## PENERAPAN ALGORITME FINITE STATE MACHINE PADA GAME "SI JAMPANG" BERBASIS ANDROID
Ar-Rijalul Haq 1* , Mardi Hardjianto 2
1,2 Fakultas Teknologi Informasi, Teknik Informatika, Universitas Budi Luhur, Jakarta Selatan, Indonesia Email: 1* 1811501210@student.budiluhur.ac.id, 2 mardi.hardjianto@budiluhur.ac.id
(Naskah masuk: 19 Agustus 2022, diterima untuk diterbitkan: 1 September 2022)

## Abstrak
Perkembangan teknologi saat ini jauh lebih pesat dari tahun-tahun sebelumnya, transformasi dari teknologi masa lalu  menjadi  teknologi  yang  lebih  mudah  dan  cepat  khususnya  game. Game adalah  sebuah  salah  satu  sarana hiburan  dengan  tujuan  bersenang-senang  dan  mengisi  waktu  luang. Game dapat  menjadi  suatu  proses pembelajaran yang unik untuk masyarakat, karena mereka tidak hanya mendapat pengetahuan tentang cerita rakyat tetapi mereka juga akan merasa terhibur. Dengan dibuatkannya game ini diharapkan dapat membantu mengedukasi anak-anak agar lebih mengenal dan menambah pengetahuan mereka tentang cerita rakyat Indonesia. Selain sebagai media hiburan untuk menghilangkan kepenatan ataupun mengisi waktu luang, game juga dapat digunakan sebagai media penyampaian yang menarik bagi generasi muda terutama anak muda. Game ini menjadi pintu bagi generasi muda khususnya anak muda untuk mengenal karakter pendekar di Indonesia. Perancangan game android berjudul Si  Jampang  ini  dibuat  untuk  memberikan  pengenalan  kepada  tokoh  Si  Jampang  dan  bisa  memberikan  hiburan kepada  siapa  saja  yang  memainkannya.  Perkembangan  media  dan  budaya  asing  yang  sudah  menyebar  luas, dikhawatirkan  jika  tokoh  Si  Jampang  tidak  dipertahankan,  maka  tokoh  yang  satu  ini  akan  terlupakan.  Sangat disayangkan jika tokoh Si Jampang sampai hilang tertelan oleh zaman, sehingga pencegahan harus dilakukan agar tokoh Si Jampang tidak benar-benar terlupakan. Yaitu dengan menggunakan media game . Untuk itu game android ini dibuat sebagai solusi permasalahan bagi penulis untuk menjadi pencegah agar permasalahan ini tidak benar- benar terjadi, tetapi juga dapat memberi hiburan terhadap pengguna, agar mereka tertarik untuk memainkan game android ini. Game ini merupakan game 2D yang berbasis android. Game ini akan diimplementasikan kecerdasan buatan dengan menggunakan metode Finite State Machine . Metode tersebut akan mengatur perilaku objek saat terjadi perubahan keadaan atau kondisi permainan. Hasil pengujian yang dibangun dalam karakteristik usability pada game mendapatkan hasil persentase keberhasilan sebesar 80,4% Nilai yang diperoleh selanjutnya dikonversi berdasarkan skala konversi nilai pengujian.
Kata kunci : game android, si jampang, finite state machine

## APPLICATION OF THE FINITE STATE MACHINE ALGORITHM ON ANDROID BASED "SI JAMPANG" GAME

## Abstract
The development of technology today is much faster than in previous years, the transformation of past technology into  technology  that  is  easier  and  faster,  especially  games.  Game  is  a  means  of  entertainment  with  the  aim  of having fun and filling spare time. Games can be a unique learning process for the community, because they will not only gain knowledge about folklore but they will also feel entertained. By making this game, it is hoped that it can  help  educate  children  to  get  to  know  and  increase  their  knowledge  about  Indonesian  folklore.  Aside  from being  an  entertainment  medium  to  relieve  fatigue  or  fill  spare  time,  games  can  also  be  used  as  an  attractive delivery  medium  for  the  younger  generation,  especially  young  people.  This  game  is  a  door  for  the  younger generation, especially  young people,  to  get  to  know  the  character  of  warriors  in  Indonesia.  The  design  of  this android game entitled Si Jampang was made to provide an introduction to the character of Si Jampang and can provide  entertainment  to  anyone  who  plays  it.  The  development  of  foreign  media  and  culture  that  has  spread widely, it is feared that if the Si Jampang character is not maintained, then this one character will be forgotten. It is very unfortunate if the character of Si Jampang is swallowed up by the times, so precautions must be taken so that the character of Si Jampang is not completely forgotten. Namely by using the media game. For this reason, this android game was created as a problem solution for the author to be a deterrent so that this problem does not actually happen, but also can provide entertainment to users, so that they are interested in playing this android game. This game is a 2D game based on android. This game will be implemented by artificial intelligence using
the Finite State Machine method. The method will regulate the behavior of the object when a change in the state or condition of the game occurs.
Keywords: game android, si jampang, finite state machine

## 1. PENDAHULUAN
Perkembangan  teknologi  saat  ini  jauh  lebih pesat dari tahun-tahun sebelumnya, transformasi dari teknologi  masa  lalu  menjadi  teknologi  yang  lebih mudah  dan  cepat  khususnya game . Game adalah sebuah  salah  satu  sarana  hiburan  dengan  tujuan bersenang-senang  dan  mengisi  waktu  luang. Game dapat  menjadi  suatu  proses  pembelajaran  yang  unik untuk  masyarakat,  karena  mereka  tidak  hanya mendapat  pengetahuan  tentang  cerita  rakyat  tetapi mereka  juga  akan  merasa  terhibur.  Dengan dibuatkannya game ini diharapkan dapat membantu  mengedukasi  anak-anak  agar  lebih mengenal  dan  menambah  pengetahuan  mereka tentang cerita rakyat Indonesia. Selain sebagai media hiburan  untuk  menghilangkan  kepenatan  ataupun mengisi  waktu  luang, game juga  dapat  digunakan sebagai  media  penyampaian  yang  menarik  bagi generasi  muda  terutama  anak  muda. Game ini menjadi  pintu  bagi  generasi  muda  khususnya  anak muda  untuk  mengenal  karakter  pendekar  di Indonesia. Game Si  Jampang  merupakan  seorang kesatria dari Betawi. Dia dikenal memiliki ilmu silat yang  tinggi  dan  pandai  menggunakan  golok  untuk senjatanya.  Si  Jampang  dikenal  suka  menolong orang-orang yang sedang menderita.
Semakin  pesatnya  perkembangan  zaman  juga mempengaruhi  industri  video  game  yaitu  dengan munculnya Artificial intelligence (AI) yang memungkinkan game menjadi  semakin  menarik untuk  di  mainkan.  AI  biasanya  digunakan  untuk mengendalikan  sebuah Non  Playable  Character (NPC) untuk membuatnya memiliki sebuah perilaku yang dapat di trigger oleh pemain. Salah satu metode untuk  membuat  AI  yang  dipasang  di  NPC  adalah Finite State Machine merupakan salah satu algoritma yang  memungkinkan  kita  membuat  beberapa state atau  kondisi  yang  dapat  di trigger berdasarkan kejadian yang player lakukan.
Metode  yang  digunakan  dalam  game  Si Jampang  adalah Finite  State  Machine . Finite  State Machine adalah  sebuah  metodologi  perancangan sistem  kontrol  yang  menggambarkan  tingkah  laku atau  prinsip  kerja  sistem  dengan  menggunakan  tiga hal  berikut: State (Keadaan), Event (Kejadian)  dan Action (Aksi). Penerapan Finite State Machine pada game  berguna  untuk  menentukan  respon  dari  NPC berdasarkan interaksi yang dilakukan oleh pemain.
Maka dari permasalahan diatas untuk penelitian kali  ini  penulis  akan  membuat  game  dalam  sistem operasi  Android. Game yang  akan  dibuat  peneliti adalah game Si Jampang berbasis Android. Game ini memiliki  grafik  2D.  Serta  menambahkan  sebuah Enemy AI  untuk  membuat game menjadi  semakin
menarik  dengan  memanfaatkan  metode Finite  state Machine (FSM) sebagai dasar pembuatan AI.

## 2. METODE PENELITIAN

## 2.1 Penerapan Metode
Pada  penelitian  kali  ini  menggunakan  metode Finite  State  Machine (FSM)  yang  digunakan  untuk memberikan state (keadaan), event (kejadian), action (aksi)  fungsi  tersebut  di  program  dan  diberikan kepada Enemy AI.

## Gambar 1. Finite State Machine
Gambar  1  menunjukkan  bahwa Finite  State Machine dengan dua state dan dua input serta empat buah  aksi  output  yang  berbeda-beda.  Ketika  sebuah sistem  mulai  dijalankan,  maka  sistem  tersebut  akan berpindah  menuju state .  Dalam  kondisi  ini,  sistem akan  menampilkan Action 1,  jika  terjadi  masukan Event 0, tetapi jika menunjukkan Event 1 maka Action 2  akan  diselesaikan  yang  kemudian  sistem selanjutnya  berpindah  ke  keadaan State 1  dan seterusnya.
Perancangan Game ini memakai metode Finite State  Machine yang  pakai  untuk  memberikan state (keadaan), event (kejadian), action (aksi),  fungsi tersebut  diberikan  kepada enemy dimana enemy memiliki Health point  30. Enemy tersebut  memiliki state yaitu idle state , patrol state , chase state , attack state . Pada saat game di mulai enemy akan memasuki kondisi idle state selama 5 detik dan setelah 5 detik dia akan berpindah ke patrol state , patrol state akan berjalan selama 20 detik dan selama proses tersebut musuh  akan  bergerak  ke  titik-titik  yang  telah  di tentukan, dan setelah 20 detik patrol state enemy akan kembali  ke idle state ,  proses  ini  akan  berlangsung berulang-ulang jika pemain tidak di dekat enemy . Jika pemain mendekati enemy dengan jarak kurang dari 2 maka enemy akan  masuk  ke attack state dan  mulai menyerang pemain, jika jarak pemain dengan enemy lebih besar dari 10 maka enemy akan memasuki chase state dan akan mengejar pemain akan tetapi jika jarak pemain lebih besar dari 10 maka enemy akan berhenti mengejar dan kembali ke patrol state untuk patrol ke titik-titik  yang  di  tentukan.  Pada  gambar  2  adalah diagram pada Finite State Machine .
Bit (Fakultas Teknologi Informasi Universitas Budi Luhur) Vol.19, No.2, September 2022,hlm.130-134
Gambar 2. Implementasi Finite State Machine

## 2.2 Data Asset
Pada table 1 berikut adalah tabel data asset yang digunakan dalam pembuatan game Si Jampang.
Tabel 1. Daftar Asset No. Nama Asset Kegunaan Asset 1 Standard Asset Untuk Membuat Pergerakan Karakter 2 Medieval Warrior Untuk Membuat Karakter Utama 3 Bandits Pixel Art Untuk Membuat Karakter Musuh 4 Fantasy Mobile GUI Untuk Membuat UI Dalam Game 5 Pixel Art Platformer Untuk Membuat Platform Game 6 TextMesh Pro Untuk Membuat Text

## 2.3 Perancangan Menu Game
Gambar 3. Rancangan Menu Game
Pada  gambar  3  merupakan  rancangan  menu game  pada game Si  Jampang  yang  dimana  pada awalan game menu  utama  terdapat  tombol Start
Game , About dan Exit lalu  ada  tampilan  menu backstory , game level 1 dan game level 2.

## 2.4 Storyline
Alur  cerita  dalam game ini  menceritakan tentang seorang tokoh Betawi yaitu Si Jampang yang sedang  mencari  golok  dan  membantu  masyarakat miskin  yang  membutuhkan.  Untuk  alur  cerita game Si Jampang adalah seorang jagoan dari Betawi yang dikenal memiliki ilmu silat yang tinggi dan ahli dalam menggunakan  golok  untuk  senjatanya.  Dia  dikenal selalu membela warga yang di tindas oleh para tuan tanah  pada  zaman  Belanda.  Sering  kali  dia  melihat kehidupan  rakyat  Betawi  banyak  yang  menderita akibat  di  tindas  oleh  tuan  tanah.  Melihat  rakyat Betawi  yang  menderita  Si  Jampang  tidak  diam  saja dan  dengan  keahliannya  dia  berencana  untuk membantu masyarakat miskin dengan cara merampok di rumah- rumah orang kaya pada zaman itu,  dan  hasilnya  dia  kemudian  membagikannya kepada rakyat miskin yang membutuhkan. Tetapi aksi Jampang tidak semulus itu, dia harus mencari golok dan  melawan  orang-  orang  suruhan  tuan  tanah tersebut.

## 2.5 Desain Level
Game Si Jampang terdapat 2 level utama dimana setiap level terdapat perbedaan Cerita yang berbeda.
1. Peraturan  yang  ada  di  dalam game dan  berikut adalah  peraturan-peraturan  yang  ada  di  dalam game:
a. Pemain memiliki Health point .
b. Terdapat control utama  untuk  pemain  yaitu berjalan, menyerang, dan melompat.
c. Pemain akan mati jika Health point habis.
d. Pemain  harus  mengumpulkan point dan mengambil golok pada level 1.
e. Pemain harus mengalahkan musuh pada level 2.
f. Terdapat 2 karakter musuh yang memiliki Health point dimana musuh 1 memiliki Health point 30
sedangkan musuh 2 memiliki Health point 30.
g. Untuk  menyelesaikan game , player harus melewati semua level yang ada.
h. Apa bila pemain mati harus mengulang level .
2. Kondisi  yang  terjadi  di  setiap  level  dan  berikut adalah  kondisi-kondisi  yang  terjadi  di  setiap level:
a. Level  Satu,  Pada  level  satu  pemain  diharuskan mengumpulkan  point  dan  mencari  golok  untuk mengalahkan  musuh,  dalam  level  satu  pemain juga  harus  menghindari  musuh  dengan  cara menjaga jarak dari musuh.
b. Level  Dua,  Pada  level  dua  pemain  diharuskan mengalahkan semua musuh dan mengumpulkan point  untuk  menyelesaikan  dan  memenangkan game pada level 2.
Bit (Fakultas Teknologi Informasi Universitas Budi Luhur) Vol.19, No.2, September 2022,hlm.130-134
3. HASIL DAN PEMBAHASAN

## 3.1 Implementasi Metode
Pada  tabel  3  berikut  adalah  hasil  dari implementasi Finite  State  Machine yang  akan dijabarkan melalui tabel berikut.
Tabel 2. Implementasi Finite State Machine Keadaan Kejadian Tindakan Hasil Idle Setelah 5 detik Idle Musuh akan memasuki state patrol Berhasil Idle Jarak pemain < 10 Musuh akan memasuki state chase Berhasil Patrol Setelah 20 detik Patroli Musuh akan memasuki state Idle Berhasil Patrol Jarak pemain < 10 Musuh akan memasuki state chase Berhasil Chase Jarak pemain < 2 Musuh akan memasuki attack state Berhasil Chase Jarak pemain > 6 Musuh akan memasuki patrol state/idle Berhasil Attack Jarak pemain < 2 Musuh akan menyerang pemain Berhasil Attack Jarak pemain > 10 Musuh akan memasuki
chase state
Berhasil

## 3.2 Flowchart Sistem
Gambar 4. Flowchart Sistem
Gambar 4 merupakan flowchart yang digunakan pada game ini  dimana  pemain  saat start game akan masuk ke dalam menu dan diberikan 3 pilihan yaitu start game , about , dan exit dimana tombol start game akan  memulai game sedangkan  tombol about akan menampilkan  deskripsi  pembuat game dan  tombol exit yang  digunakan  untuk  keluar  aplikasi.  Setelah mengklik  tombol start game , player akan  bermain game  dari level satu  dan  harus  menyelesaikan  misi untuk  lanjut  ke level 2  lalu  berhasil  menyelesaikan
game , setelah game selesai pemain akan masuk menu end dimana diberikan 3 pilihan yaitu play again untuk bermain lagi dan tombol quit untuk keluar

## 3.3 Hasil Tampilan Aplikasi
Gambar 5. Tampilan menu utama
Pada  Gambar  5  adalah  tampilan  layar  menu utama  dari game yang  telah  dibuat,  berikut merupakan hasil tampilan menu utama yang muncul saat  memulai game .  Terdapat  beberapa  tombol dengan  fungsi  yang  berbeda  yang  dimana  tombol Start Game jika diklik akan memulai permainan, jika tombol About di  klik  maka  akan  menampilkan deskripsi pembuat game dan jika tombol Exit di klik pemain akan keluar dari aplikasi.
Gambar 6. Tampilan menu backstory
Pada  gambar  6  berikut  merupakan  tampilan menu backstory yang akan muncul saat user mengklik tombol start game pada tampilan menu utama.
Gambar 7. Hasil game Level 1
Pada gambar 7 merupakan tampilan hasil game level 1  yang  dimana  pemain  harus  menghindari semua  musuh  dan  mencari  golok  untuk  mencapai level selanjutnya.
Pada gambar 8 merupakan tampilan hasil game level  2  yang  dimana  pemain  harus  mengalahkan semua musuh  dan  menuju  ke  rumah  rakyat  untuk menyelesaikan game
Bit (Fakultas Teknologi Informasi Universitas Budi Luhur) Vol.19, No.2, September 2022,hlm.130-134
Gambar 8. Hasil game Level 2

## 3.4 Pengujian
Tabel 3. Jawaban Kuesioner Nama P1  P2  P3  P4  P5  P6  P7  P8  P9  Jumlah Inanda Putikasari 4 4 5 5 5 5 5 5 5 43 Riko Febrians 5 4 5 4 4 5 4 5 4 40 Ail 5 4 5 4 5 4 5 4 5 41 Hikmal R.H. 4 5 5 5 5 5 5 5 5 44 Syifa 5 5 5 5 5 5 5 5 5 45 Ali Shodikin 1 3 4 5 4 4 4 4 3 32 Achmad Prianto 5 5 5 4 5 5 5 4 5 43 Aris 4 4 4 5 4 4 4 4 4 37 Ferry Andreas 4 5 4 5 4 4 4 5 4 39 Bimo Adi  4 4 4 4 4 4 4 4 4 36 Denny Saputra 4 5 4 4 4 4 4 4 4 37 Amelia 4 4 4 4 4 4 4 4 4 36 Della 3 3 3 4 3 4 3 4 4 31 Sulton Ramadhan 4 4 3 4 3 3 3 4 3 31 Fajri Hermawan 4 3 3 3 3 3 1 3 3 26 Awaludin  3 4 4 4 3 3 4 4 4 33 Nindah 3 3 3 3 3 3 3 3 3 27 Fara Safira  3 4 4 4 3 3 4 4 4 33 Daffa Imanuddin 4 5 4 4 4 4 4 4 4 37 Bayu 3 4 3 4 4 3 4 4 4 33 Jumlah Total 724 Perhitungan Persamaan (1): Skor  = 724 x  100%
900
=  80,4% Tabel 4. Presentase Keberhasilan Persentase(%) Skor Kriteria 0 – 20 Sangat Buruk 21 – 40 Buruk 41 – 60 Cukup Baik 61 – 80 Baik 81 – 100 Sangat Baik
Berdasarkan  hasil  pengujian  yang  dibangun dalam karakteristik usability pada game mendapatkan hasil  persentase  keberhasilan  sebesar  80,4%  Nilai
yang  diperoleh  selanjutnya  dikonversi  berdasarkan skala  konversi  nilai  pengujian.  Dapat  disimpulkan bahwa nilai persentase yang diperoleh menunjukkan kualitas  karakteristik usability mempunyai  skala “Baik”.

## 4. KESIMPULAN
Berdasarkan  permasalahan  dan  hasil  pengujian game  yang  telah  dibuat,  penulisan  ini  dapat disimpulkan metode algoritme Finite State Machine diterapkan pada enemy telah diuji dan hasilnya dapat berjalan  dengan  baik,  sehingga enemy memiliki perilaku  sesuai  dengan  interaksi  pemainnya.  Dari pengujian  yang  menggunakan  kuesioner  didapatkan hasil usability “Baik”  dengan  nilai  80,4%.  Dapat disimpulkan  bahwa game dapat  dikatakan  berjalan dan dapat diterima oleh para responden dengan baik. Setelah melakukan proses perancangan dan pembuatan game serta  berdasarkan  permasalahan yang sudah disebutkan pada pembahasan sebelumnya maka  dapat  disimpulkan  yaitu,  Dengan  membuat game pada  penelitian  ini  menjadi  alat  bantu  untuk memperkenalkan  kembali  kepada  anak  muda  dan masyarakat  tentang  cerita  rakyat  Si  Jampang  serta menjadi sebuah inovasi baru untuk pengembangan AI game .

## DAFTAR PUSTAKA
[1] Agustin, A., Evel, A., Susanti, S., & Rahmaddeni, R. “Implementasi  Metode  Finite  State  Machine  pada Permainan  Tradisional  Setatak  Berbasis  Android” 2021.
[2] Arfyanti, I., Salmon, S., Nursobah, N., & Suryani, S. “Development  Zombie  Hunter  Battleground  With Finite State Machine Dan Collision Detection” 2021.
[3] Asyraq, F. A., Hormansyah, D. S., & Astiningrum, M. “Implementasi Fsm (Finite State Machine) Pada Game Surabaya Membara” 2020.
[4] Basrie,  B.,  Hasiholan,  J.  D.,  &  Suteja,  A.  R. “Implementasi  Algoritma  Finite  State  Machine Sebagai  Perubahan  Perilaku  Otonom  Dan  Adaptif Pada Non-Player Character Dalam Game Petualangan Ksatria Pancasila. Sebatik” 2021.
[5] Cahya ardi wahana, Z., Adi Wibowo, S., & Wahid, A. “Game  Adventure  Horror  “Let’S  Escape”  Dengan Unity Engine Berbasis Desktop Menggunakan Metode Finite State Machine” 2020.
[6] Darwin,  Jeanny  Pragantha,  D.  A.  H.  “Pembuatan Game Platformer “ Neo the Defender of Native Land ” Pada Platform” 2019.
[7] Hoesen, N. “Rancang Bangun Game Berbasis Android Bertemakan Cerita Rakyat Betawi Si Pitung” 2022.
[8] Hormansyah, D. S., Ririd, A. R. T. H., & Pribadi, D. T.  “Implementasi  Fsm  (Finite  State  Machine)  Pada Game Perjuangan Pangeran Diponegoro” 2018.
[9] Kristiyanti,  D.  A.  “Rancang  Bangun  Game  Side Scrolling Gatotkaca Berbasis Android” 2017.
[10] Muhammad,  F.  R.,  Hidayat,  E.  W.,  Adi,  M.,  & Anshary,  K.  “Rancang  Bangun  Game  Side  Scroller Kopasus  Mission  Berbasis  2D  Platformer  pada Perangkat Android” 2019.