## GAME PERTUALANGAN “SHERIFF VILLAGE ” DENGAN METODE FINATE STATE MACHINE
Fijar Alija Guntara
Program Studi Teknik Informatika S1, Fakultas Teknologi Industri Institut Teknologi Nasional Malang, Jalan Raya Karanglo km 2 Malang, Indonesia fijaralija3@gmail.com

## ABSTRAK
Finite  State  Machine  (FSM) adalah  sebuah  metode  perancangan  sistem  kontrol  yang  menggambarkan tingkah laku atau prinsip kerja sistem dengan menggunakan tiga hal berikut: State (Keadaan), Event (kejadian) dan action (aksi).  Sebagai  sebuah  metodologi  perancangan  sistem  kontrol,  penerapan  FSM  telah  banyak diterapkan  pada  perangkat  lunak,  khususnya  pada game .  Metode  FSM  dapat  diterapkan  untuk  nilai-nilai  batas perpindahan  yang  pasti  dan  sangat  mudah  diterapkan  pada game  Adventure    “Sheriff  Village”.  Game ini merupakan  sebuah game berbasis desktop  genre petualangan  dengan sub-genre simulasi  dan  menggunakan grafis  2  dimensi.  Pengembangan game ini  menggunakan tools Unity3D  dan  bahasa  pemrograman C#(Sharp) . Hasil dari penelitian ini adalah terealisasinya suatu game dengan menerapkan metode finite state machine untuk menentukan respon karakter non-player character yang  berbeda tergantung dari  interaksi  yang dilakukan oleh pemain.
Dalam  game  ini  menggunakan game  engine  Unity3D ,  dengan  menerapkan  kecerdasan  buatan FSM  (Finite  State Machine) . FSM  (Finite  State Machine) digunakan pada karakter NPC  (Non  Playable Character) atau karakter  musuh, yaitu karakter yang digerakan oleh kecerdasan buatan yang digunakan untuk mendukung game tersebut. Seperti karakter Enemy dan Boss yang menggunakan tiga hal yaitu : Keadaan, Kejadian, dan Aksi.
Dari pengujian yang telah dilakukan hasil dari kecerdasan buatan FSM (Finite State Machine) pada game Adventure “Sheriff Village” ini karakter NPC (Non Playable Character) dapat mendeteksi keberadaan player untuk menentukan aksi serangan dari musuh tanpa melibatkan pengguna game, dari hasil pengujian persentase yang di capai yaitu 100 % berhasil.
Kata kunci : game, Adventure Sheriff Village, FSM
1. PENDAHULUAN
1.1 Latar Belakang
Pada  saat  ini  beberapa  media game sebagian besar digunakan hanya sebagai  media hiburan , selain digunakan  sebagai  media  hiburan  juga  dapat menghilangkan kejenuhan dan sangat bermanfaat jika digunakan sebagai suatu hal yang positif, dengan cara menggabungkan pembelajaran dengan  hiburan, game dimainkan  untuk  mencapai  setiap  level  atau  tujuan yang ditempuh, dan untuk meningkatkan pengetahuan khusunya anak-anak sebagai ajaran untuk melatih otak masa  anak  masa  kini,  karakter  game  yang  menarik juga  sangat  berperan  penting  sebagai  daya  seseorang untuk  memainkanya,  aplikasi  komputer  pada  saat  ini juga  berkembang  dengan  pesat  dan  menjadi  salah satu hiburan utama untuk mengisi waktu luang. Tidak sedikit  metode  pembelajaran  berbasis  game  maupun aplikasi lain yang tertanam pada komputer. [1]
Ada  banyak  media  atau  perangkat  yang  dapat digunakan untuk memainkan sebuah game diantaranya smartphone , komputer, dan konsol game . Komputer adalah salah satu terget media yang paling banyak digunakan para pengembang di industri game untuk  meluncurkan  produknya.  Hal  ini  dikarenakan komputer  merupakan  media  yang  paling  cepat berkembang  dan  memungkinkan developer  game untuk  memaksimalkan  kinerja game mereka,  hal  ini dikarenakan dari sisi hardware yang cepat
berkembang,  dan  makin  banyaknya game  engine yang dapat digunakan secara gratis. [3] Metode  yang  digunakan  dalam  game  “ Sheriff Village” ini menggunakan metode FSM ( Finite State Machine ),  dimana  metode  tersebut  berfungsi  untuk pengambilan  keputusan  pada  karakter  NPC  ( Non Playable  Character )  yaitu  karakter  yang  digerakkan oleh  kecerdasan  buatan  yang  digunakan  untuk mendukung game tersebut  seperti  karakter  musuh agar  gerakan  dan  aksi  dari  musuh  tanpa  melibatkan pengguna game .  Dari  uraian  diatas  penulis  ingin mengimplementasikan  penggunaan  metode  FSM ( Finite  State  Machine )  untuk  melakukan  pembuatan game dengan judul ” Sheriff Village” yang merupakan game 2D  dengan  genre Side  Scroller , Adventure , menggunakan Unity sebagai game engine . [1]

## 1.2 Rumusan Masalah
Berdasarkan uraian diatas maka diambil rumusan masalah sebagai berikut :
1. Bagaimana  merancang game “ Sheriff  Village ” dengan menggunakan Unity sebagai game engine ? 2. Bagaimana mengimplementasikan metode kecerdasan  buatan  AI Finite  State  Machine pada karakter musuh?

## 1.3 Batasan Masalah
Agar  penulisan  dalam  penelitian  yang  dibuat tidak  keluar  dari  topik  yang  ditentukan,  maka penelitian  ini  terdapat  batasan  permasalahan  sebagai berikut:
1. Game “ Sheriff    Village ”  ini  dibuat  dengan menggunakan game engine Unity3D .
2. Game  “Sheriff  Village” ini  bergenre Adventure game .
3. Game  “Sheriff  Village” ini  memiliki  3  level yang berbeda dimana disetiap level terdapat bos pada setiap level.
4. Karakter utama pada Game “Sheriff Village” ini adalah  seorang  Sheriff  yang  ingin  melindungi desa nya dari serangan penjajah.
5. Kecerdasan  buatan  dalam  pembuatan game ini adalah  FSM  ( Finite  State  Machine )  untuk digunakan  sebagai  kondisi  tindakan  pada musuh.
6. Game ini berbasis desktop.
7. Cerita dari game ini merupakan cerita fiksi yang dibuat oleh penulis

## 1.4 Tujuan
Adapun  yang  menjadi  tujuan  pembuatan game “Sheriff  Village” adalah  untuk  menciptakan game yang menarik dengan mengimplementasikan kecerdasan  buatan  algoritma  FSM  ( Finite  State Machine )  pada  karakter  musuh  dalam game . Tampilan  game  menggambarkan  interaksi  antara karakter  dengan  lingkungan  di  dalam game ,  di  mana lingkungan  di  dalam  game  berada  pada  perdesaan yang  selalu  dijaga  oleh  Penjajah  ( enemy )  yang berpatroli  di  dalam  hutan  tersebut,  apabila  player mendekati penjajah ( enemy ) maka player akan dikejar dan  apabila  sudah  mendekati  jarak  serang  maka penjajah ( enemy ) akan menyerang.
2. TINJAUAN PUSTAKA
2.1. Game
Game pada dasarnya bersifat hiburan karena jika pengguna memainkan game maka akan terasa senang. Dalam  era  saat  ini, game disajikan  dengan  kualitas visualisasi yang cukup canggih karena didukung oleh teknologi  sehingga  pemain  lebih  interkatif  sesuai kemaunnya  sendiri  dan  pemain  terasa  hidup  dalam game tersebut.  Maka  bisa  disebutkan  bahwa game berkembang beriringan dengan teknologi. [2]

## 2.2. AI (Artificial Intelligence)
Artificial Intelligence (AI)
atau kecerdasan  buatan  termasuk  bidang  ilmu  yang relatif  muda.  Pada  tahun  1950-an  para  ilmuwan dan peneliti mulai memikirkan bagaimana caranya agar mesin dapat melakukan pekerjaannya  seperti  yang  bisa  dikerjakan  oleh manusia.  Alan  Turing,  seorang  matematikawan dari  Inggris  pertama  kali  mengusulkan  adanya pengujian  untuk  melihat  bisa  tidaknya  sebuah mesin dikatakan cerdas. Hasil pengujian
tersebut  kemudian  dikenal  dengan Turing  Test , di  mana  mesin  tersebut  menyamar  seolah-olah sebagai  seseorang  di  dalam  suatu  permainan yang mampu memberikan respon terhadap serangkaian pertanyaan yang diajukan. [3] Kecerdasan buatan atau Artificial Intelligence  (AI) itu  sendiri  dimunculkan  oleh seorang  professor  dari Massachusetts  Institute of  Technology yang  bernama  John  McCarthy pada  tahun  1956  pada Dartmouth  Conference yang dihadiri oleh para peneliti AI. Pada konferensi tersebut juga didefinisikan tujuan utama  dari  kecerdasan  buatan,  yaitu  mengetahui dan memodelkan proses-proses berpikir manusia dan mendesain mesin agar dapat menirukan kelakuan manusia tersebut. [4][5]
2.3. FSM ( Finite State Machine ) Finite  State  Machine  (FSM) 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). Sebagai  sebuah  metodologi  perancangan  sistem kontrol,  penerapan  FSM  telah  banyak  diterapkan pada perangkat lunak, khususnya pada game . [4]

## 3. MEETODE PENELITIAN
3.1. Flowchart Game Pada perancangan flowchart game berfungsi untuk
mengetahui alur proses dari alur program dimulai dari mulai game hingga selesai seperti Gambar
3.1 START Menu Prolog Menu Awal Game Pilih Mulai Misi 1 Y Berhasil Misi 2 Y Berhasil Misi 3 Y T T Berhasil END Y T T Pilh Petunjuk Pilih Tentang T Pilih Keluar T Y Petunuk Y About Y Kembali Y Kembali Y T T T Gambar 3.1 flowchart game
3.2. Strukur Menu Pada game  Adventure  “Sheriff  Village” terdiri  dari beberapa  menu  yaitu Play Game,  Instruction,  About, dan Exit. Diagram struktur menu seperti Gambar 3.2
Gambar 3.2 struktur menu

## 3.3. Penerapan Finite State Machine pada Game
Finite  State  Machine  merupakan  salah  satu  logika penalaran  yang  memperlihatkan  prilaku  system  dengan berdasarkan tiga hal, yaitu state (keadaa), event (kejadian), dan  action  (aksi).  Pada  suatu  saat,  system  akan  berada pada salah satu state yang aktif. Sistem dapat beralih atau  bertransisi  menuju  state  lain  jika  mendapatkan masukan  atau  event  tertentu.  Transisi  keadaan  ini umumnya    juga  disertai   oleh    aksi    yang    dilakukan oleh    system    ketika    menanggapi    masukan    yang terjadi.  Pada  game  Adventure  Franco  ini  metode Finite State Machine diterapkan pada karakter musuh, masing-masing  karakter  musuh  memiliki  alur  Finite State Machine yang berbeda. Alur kecerdasan buatan finite state machine seperti Gambar 3.3
Patroli (State 0) Mengejar (State 1) Memukul (State 2) Jarak 4 pixel dari player Mati (State 3) Health 0% Jarak 9 pixel dari player Jarak 3 pixel dari player Jarak 10 pixel dari player Health 0%
Gambar 3.3 alur finite state machine pada musuh

## 4. HASIL DAN PEMBAHASAN
4.1. Tampilan Menu Utama
Tampilan  menu  utama  adalah  tampilan  awal yang  akan  muncul  pada  saat  pemain  menjalankan Game Petualangan  PhantomAssasin.  Pada  tampilan awal  ini  berisikan  tombol Play Game , Help ,  dan About . Play Game untuk  memulai  game  baru, Tombol Instructure berisi  cara controller player , tombol about berisi  tentang  pembuat game dan
tombol Quit untuk  keluar  dari game .  tampilan  menu utama seperti Gambar 4.1
Gambar 4.1 tampilan menu utama
4.2. Tampilan Menu Game Over
Tampilan  menu game over adalah  tampilan menu  ketika  player  mati  maka  diarahkan  ke  tampilan menu game over yang  didalamnya  terdapat  tombol try again unuk mengulang game dari level 1 dan quit untuk kembali ke bagian menu utama game , tampilan dari menu game over seperti pada Gambar 4.2
Gambar 4.2 tampilan menu game over

## 4.3. Tampilan Next Level 1
Tampilan Next  Level  1 adalah  tampilan  yang akan  memberikan  penjelasan  untuk  masuk  ke game Level 1 seperti pada Gambar 4.3
Gambar 4.3 tampilan next level 1

## 4.4. Tampilan Next Level 2
Tampilan Next  Level  2 adalah  tampilan  yang akan  memberikan  penjelasan  untuk  masuk  ke game Level 2 seperti pada Gambar 4.6
Gambar 4.9 tampilan next level 2

## 4.5. Tampilan Next Level 3
Tampilan Next  Level  3 adalah  tampilan  yang akan  memberikan  penjelasan  untuk  masuk  ke game Level 3 seperti pada Gambar 4.7
Gambar 4.7 tampilan next level 3

## 4.6. Pengujian Game Play
Pengujian gameplay adalah pengujian bagaimana  game  tersebut  berjalan  sesuai  dengan rancangan sistem yang  telah  dibuat.  Tampilan pengujian game menggambarkan  interaksi  antara karakter dengan lingkungan didalam game , menunjukan  posisi  awal  karakter  ketika  permainan dimulai.  Pada game ini  karakter  memiliki  beberapa aksi  yaitu, jump , attack,  dan  throw .  Pada  awal permainan player akan  melihat enemy yang  sudah terintregasi oleh kecerdasan buatan FSM ( Finite State Machine ) yang mempunyai beberapa kondisi berpatroli,  mengejar  dan  menyerang.  Tampilan interaksi  antara  karakter  dengan  lingkungan  saat enemy sedang  patroli  didalam  game  seperti  Gambar 4.8
Pada  Gambar  4.9  menggambarkan  interaksi antara karakter dengan musuh dimana musuh melihat keberadaan player dengan jarak jangkauan >= 3 pixel dan  melakukan  output  serangan  terhadap  player,  jika dari  hasil  serangan  musuh  mengenai  player  maka health bar player akan berkurang.
Gambar 4.9karakter enemy menyerang player dengan jarak <= 3 pixel
Pada  Gambar  4.10  menggambarkan  interaksi antara karakter dengan musuh dimana enemy melihat keberadaan player dengan jarak jangkauan <= 11 dan melakukan output mengejar terhadap player .
Gambar 4.10 karakter enemy mengejar terhadap player
Pada  Gambar  4.11  menggambarkan  ketika player menyerang enemy dengan  senjatanya,  jika serangan player mengenai enemy ,  maka  health  bar enemy akan berkurang.
Gambar 4.11 karakter player menyerang enemy dengan senjatanya.
Gambar  4.12  menggambarkan  ketika  karakter playe r  menyerang enemy dan  health  bar enemy habis maka enemy akan mati.
Gambar 4.12 karakter enemy mati.
Gambar  4.12  menggambarkan  ketika  karakter playe r  terkena  senyerang  dari enemy dan  health  bar player habis maka player akan mati.
Gambar 4.12 karakter palyer mati.
Gambar  4.13  menggambarkan  karakter  enemy yaitu  boss  pada  level  1  yang  terkena  serangan  jarak jauh menggunakan senjata palu dari player level 1 .
Gambar 4.13 karakter boss level 1 terkena serangan jarak jauh dari senjata player.
Gambar  4.14  menggambarkan  karakter  enemy yaitu  boss  pada  level  1  yang  terkena  serangan  jarak jauh  menggunakan  senjata  palu  dari player  level  1 dan  memberikan effeck saat terkena serangan senjata palunya.
Gambar 4.14 karakter boss level 1 mendapatkan effeck serangan saat terkena senjata player
Gambar  4.15  menggambarkan  karakter  boss  pada level  1  yang  memiliki health lebih  besar  dari level enemy lainya.
Gambar 4.19 karakter boss level 1 mempunyai health bar 100%
4.7. Pengujian AI (Artificial Intelligence) Pengujian artificial
intelligence adalah pengujian  mengenai  fungsi  yang  berkaitan  dengan artificial intelligence yang ada pada Game Petualangan Sheriff  Village .  Hasil  pengujian  dari artificial intelligence pada game ini seperti pada table 4.1
Table 4.1 pengujian artificial intelligence
4.8. Pengujian Control Player
Pengujian control player adalah  pengujian setiap fungsi dari tombol yang sudah diterapkan untuk menggerakan  karakter  utama.  Hasil  pengujian player pada table 4.2
Table 4.2 pengujian control player

## 5. KESIMPULAN DAN SARAN
5.1 Kesimpulan Setelah  pembuatan Game  Adventure  Sheriff Village , maka penulis dapat mengambil kesimpulan :
1. Aplikasi  Game  ini  mengimplementasi  FSM ( Finite State Machine )  yang  diterapkan  pada game  2  dimensi  bergenre  adventure  dengan indikasi  musuh  dapat  mengejar  dan  menyerang player dengan kondisi tertentu.
2. Semua  fungsi  dari  menu,  pergerakan  unit pemain  dan  musuh  berjalan  dengan  tingkat keberhasilan 100% sesuai dengan yang diharapkan.
3. Metode  kecerdasan  buatan  FSM  ( Finite  State Machine ) semua keadaan dapat diterapkan pada game Adventure Sheriff Village
5.2 Saran
Setelah  dilakukan  pengujian  terhadap  Game Adventure Sheriff Village maka masih ada kekurangan  sehingga  untuk  pengembangan  lebih lanjut disarankan :
1. Dapat  dikembangkan  sebagai  mobile  game berbasis platform android atau IOS. 2. Untuk sekarang  Game ini hanya bisa digunakan untuk  pada  satu  computer  atau  notebook  saja, harapannya semoga aplikasi ini dapat dikembangkan  supaya  dapat    dipergunakan secara  luas  seperti  pada  jaringan  komputer  atau internet.
3. Harapan  penulis  semoga  aplikasi  ini  dapat  di kembnagkan  dengan  penambahan  fitur-  fitur yang lebih menerik dan atraktif.

## DAFTAR PUSTAKA
[1] Arif,  Yunifa  Miftahul  dan  Hariadi,  Mochamad, 2012. Intergrasi Hierarchy  Finite State Machine dan  Logika  Fuzzy  untuk  Desain  Strategi  NPC Game.
[2] Pratama,  W.,  2014.  Game  Adventure  Misteri Kotak Pandora. Telematika , 7 (2).
[3] Edi  Wijaya.,  2013.  Analisis  Penggunaan Algoritma  Breadth  First  Search  Dalam  Konsep Artificial  Intellegencia, Jurnal  Time  Vol.  2,
No.2, 18 - 26 .
[4] Rahadian,  M.F.,  Suyatno,  A.  and  Maharani,  S.,
2017. PENERAPAN METODE FINITE STATE  MACHINE  PADA  GAME  “THE RELATIONSHIP”.
[5] Arsawiguna, M. G., Wiranatha, A. K. A. C., and Wibawa, K. S. 2015. Rancang Bangun Aplikasi Game  Tajen  Berbasis  Android  menggunakan Artificial Intelligence. Lontar Komputer: Jurnal Ilmiah Teknologi Informasi , 84-95.
[6] McCarthy., 2014. Father of Artificial
Intelligence, biography, LISP, arti-ficial intelligence,  commonsense  knowledge,  India  : Institute of ScienceBangalore.
[7] Nugroho, B. A., Siswanti, E., and Andriyani, S. 2015.  Jejak  Merah  Putih:  Rpg  (role  Playing Game) Perjuangan
Berbasis Dekstop. eProceedings of Applied Science ,
[8] Irawan ,  J.D.,  Prasetyo,  S.,  Wibowo,  S.A.  and Pranoto,  Y.A.,  2016.  Pelatihan  Pembuatan Game Menggunakan Greenfoot. Industri Inovatif Jurnal Teknik Industri , 5 (2).