## RANCANG BANGUN GAME NINJA AND THE LOST TRASURE MENGGUNAKAN METODE FINITE STATE MACHINE

## Christianto Dwijo Sapuytra
Program Studi Teknik Informatika S1, Fakultas Teknologi Industri Institut Teknologi Nasional Malang, Jalan Raya Karanglo km 2 Malang, Indonesia christiantodwijosaputra@gmail.com

## ABSTRAK
Game  merupakan  salah  satu  hiburan  yang  sangat  digemari  oleh  semua  kalangan  baik  dari  anak-  anak hingga  orang  dewasa.  Game  ini  di  kembangkan  dalam  berbagai  jenis  salah  satu  yang  paling  populer  adalah permainanan, di mana permainan memiliki jalan cerita yang bermacam macam, dan juga pada permainan selalu membuat permainan penasaran akan akhir cerita game tersebut.game Shooter Platformer merupakan permainan di  mana  permainan  akan  menjalakan  karakter  shooter  platformer  yang  harus  menyelamatkan  bumi  dari kehancuran yang ingi di kuasai oleh musuh dan pengikutnya.
Dalam  game  ini  menggunakan  sofware  Unity  3D,  dengan  menerapkan  kecerdasan  buatan  FSM  ( Finite State Machine ). FSM  di gunakan pada karakter NPC ( Non playable Character ) yaitu karakter yang digerakan oleh  kecerdasan  buatan  yang  di  gunakan  untuk  mendukung    game  tersebut.  Seperti  karakter  Enemy  yang  di gunakan tiga hal yaitu : keadaan, kejadian, dan aksi.
Dari pengujian yang telah di lakukan hasil dari kecerdasan buatan FSM  pada game Ninja And The Lost Trasure  ini  karakter  NPC  dapat  mendektesi  keberadaan  player  untuk  menentukan  aksi  serangan  dari  musuh tanpa melitbahkan pengguna game anak-anak SD sampai orang dewasa. Dari hasil pengujian persentase yang di capai yaitu 100%
Kata kunci : Game Ninja And The Lost Treasure, Finite State Machine, Unity3D
1. PENDAHULUAN
1.1 Latar Belakang
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,  untuk  meningkatkan  pengetahuan khusunya  anak-anak  sebagai  ajaran  untuk  melatih otak  anak di masa kini, karakter game yang menarik juga  sangat  berperan  penting  sebagai  daya  seseorang untuk  memainkannya game ,  aplikasi  ini  juga  sangat berfungsi  untuk  mengembangkan  minat  dan  bakat anak-anak  dan  orang  dewasa  di  zaman  era  modern. 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.  (  Arif,  Y.M.  dan Hariadi, M, 2012)

## 1.2 Rumusan Masalah
Berdasarkan  dari  uraian  latar  belakang  di  atas maka  dapat  dirumuskan  suatu  permasalahan  yang akan di selesaikan berikut ini :
1. Bagaimana  mengimplementasikan Finite  State Machine sebagai  kecerdasan  buatan  pada game 2D Ninja And The Lost Treasure ?
2. Bagaimana  membuat game 2D  Ninja  And  The Lost Treasure dengan Unity 3D ?

## 1.3 Batasan Masalah
Tujuan agar pembahasan dalam skripsi ini tidak meluas,  maka  di  tentukan  beberapa  batasan  masalah di antaranya, yaitu :
1. Game di buat menggunakan Unity 3D
2. Grafika dalam game ini adalah 2D
3. Terdapat  3  level    pada game ninja  and  the  lost treasure.
4. Game ninja and the lost treasure ini hanya dapat dimainkan pada PC (berbasis dekstop ).

## 1.4 Tujuan masalah
Ada tujuan dari pembuatan game ini yaitu
1. Mengimplemtasikan Finite State Machine sebagai kecedasan  buatan  pada game ninja  and  the  lost treasure
2. membuat Game  2D  Shooter  Platformer dengan Unity 3D
2. TINJAUAN PUSTAKA
2.1. Penelitian Terkait
Dalam  bahasa  indonesia  “ Game ”  berarti “permainan”.  Permainan  yang  di  maksud  juga  game juga  merujuk  pada  pengertian  sebagi  “kelincahan intelektual ”(intellctual  Playablity). Semntara  kata “game”  bisa  di  artikan  sebagai  arena  keputusan  dan aksinya  permainya.  Ada  target  target  yang  ingin  di capai permainya. Kelincahan intelektual, pada tingkat
tertentu,  merupakan  ukuran  sejauh  mana  game  ini menarik untuk di maikan secara maksimal.
Salah  satu  unsur  yang  berperan  dalam penting dalam sebuah game adalah kecerdatan buatan atau Artifical Intelligence ( AI ) yang merupakan suatu program  komputer  yang  bertindak  dan  berpikir seperti  manusia  dan  juga  bertindak  dan  berpikir secara  rasional  pada  saat  yang  bersamaan.  Dengan kecerdasan buatan, elemen elemen dalam  game  yang berperilaku  seperti  manusia.  Game  paying  (permaian game)  merupakan Artifical  Intelligence  ( AI)  yang sangat  populer  berupa  permainan  antara  manusia melawan  mesin  yang  di  miliki  intelektual  untuk berpikir.  Komputer  dapat  bereaksi  dan  menjawab tindakan tindakan yang di berikan oleh lawan mainya (Utari, 2012)

## 2.2. 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.(wijaya,2009, irawan, 2016)
Game  juga  merupakan  bentuk  partisipatif, interaktif  dan  hiburan.  Menonton  televisi,  membaca, dan pergi ke teater merupakan segala bentuk hiburan pasif.  Sedangkan  ketika  seseorang  bermain  game, mereka  terhibur  dengan  berpartisipasi  secara  aktif. Game  ditempatkan  pada  sebuah  dunia  buatan  yang diatur  melalui  aturan-aturan  (rules).  Aturan  tersebut menentukan  tindakan  atau  langkah  yang  pemain dapat  dan  tidak  dapat  lakukan  dalam  sebuah  game. (wijaya,2009).

## 2.3. Kecerdasan Buatan(Artificial Intelligence)
Kecerdasan  buatan  ( Artifical  Intellingence ) merupakan  salah  satu  bagian  dari  ilmu  komputer yang mempelajari bagimana membuat mesin (komputer)  dapat  melakukan  perkerjaan  seperti  yang sebaiknya yang di lakuakn oleh manusia bahkan lebih baik dari dari pada yang di lakuakn manusia. Menurut Jhon  McCarthy,  1956  AL  :  untuk  mengetahui  dan memodelkan  proses-  proses  berpikir  manusia  dan mendesain  mesin  agar  dapat  menirukan  perilaku manusia.  Cerdas,  berarti  memiliki  pengetahuan    di tambah  pengalaman  penaralan  (bagimana  membuat keputusan  dan  mengambil  tindakan  ),  moral  yang baik (Dahria, 2008).
Manusia  cerdas  pandai  dalam  menyelesiakan permasalahan karena manusia mempunyai pengetahuan  dan  pengalaman  penegetahuan  di peroleh dari pelajaran. Semakin banyak banyak bekal pengetahuan  yang  di  miliki  akan  lebih    mampu menyelesaiakan permasalahan. Tapi bekal pengetahuan tidak cukup,  manusia di beri akal untuk
melakukan penalaran, mengambil kesimpulan berdasarkan  pengetahuan  dan  pengalaman  yang  di miliki.  Tampa  memiliki  kemampuan  untuk  menalar dengan  baik,  manusia  dengan  segudang  pengalaman yang  pengetahuan  tidak  akan  menyelesiakan  dengan baik  (Dahria, 2008).

## 2.4. 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).  Pada  satu  saat  dalam periode  waktu  yang  cukup  signifikan,  sistem  akan berada pada salah satu state yang aktif. Sistem dapat beralih  atau  bertransisi  menuju state lain  jika mendapatkan  masukan  atau event tertentu,  baik  yang berasal  dari  perangkat  luar  atau  komponen  dalam sistemnya  itu  sendiri.  Transisi  keadaan  ini  umumnya juga  disertai  oleh  aksi  yang  dilakukan  oleh  sistem ketika  menanggapi  masukan  yang  terjadi.  Aksi  yang dilakukan  tersebut  dapat  berupa  aksi  yang  sederhana atau  melibatkan  rangkaian  proses  yang  relatif (Setiawan, 2006).
Gambar 2.2  diagram state sederhana
Diagram  tersebut  memperlihatkan  FSM  ( Finite State  Machine )  dengan  dua  buah  state  dan  dua  buah input  serta  empat  buah  aksi  yang  berbeda  :  seperti terlihat pada gambar, ketika sistem mulai dihidupkan, sistem  akan  bertransisi  menuju State 0,  pada  keadaan ini  sistem  akan  menghasilkan Action 1  jika  terjadi masukan Event 0, sedangkan jika terjadi Event 1 maka Action 2 akan dieksekusi kemudian sistem selanjutnya bertransisi ke keadaan State 1 dan seterusnya.
Salah  satu  alternatif  implementasi  FSM  adalah menggunakan pemrograman berorientasi objek ( Object  Oriented  Programming )  atau  yang  sering disingkat  sebagai  OOP  (Rahadian,  M.F  dkk,  2016). Kelebihan  penggunaan  OOP  pada  FSM  adalah fleksibilitasnya  yang  tinggi  dan  pemeliharaannya yang  mudah  baik  pada  sistem  yang  sederhana, menengah, maupun sistem yang kompleks. Selain itu juga  mendapatkan  manfaat  dari  salah  satu  kelebihan OOP  yaitu  penggunaan  kembali  kode  yang  telah diketik  ( code reusability )  sehinga  pengetikan  kode menjadi lebih sedikit (Rahadian, M.F dkk, 2016).

## 3. METODOLOGI
3.1 perancanangan Struktur Menu Game
Perancan struktur menu adalah perancangan tata urutan menu dari game ninja and the lost treasure
Gambar 3.1 Struktur Menu Game
START END Menu Play Options About Exit Level 1 Level 2 Level 3 Sound on / off Panduan Geme Over Menang Menang Menang No Yes No No Yes Yes Yes Yes Yes No No No
Gambar 3.2  Game  Ninja And The Lost Treasure
3.2 Perancangan Alur Game
Perancangan alur game berfungsi untuk mengetahui  alur  proses  dari  alur  program  di  mulai dari start program hinnga end seoerti gmbar 3.2

## 3.3 Peracangan Diagram Finite State Machine
Alur metode Finite State Machine secara umum yang  terdapat  pada  setiap  musuh  yang  berada  di setiap game ninja and the lost treasure
No Karakter keterangan 1 Karakter utama game Player Ninja And The Lost treasure. 2 Merupakan karakter enemy yang ada hanya pada setiap level  dan karakter ini akan terus
keluar dari titik letak spawn yang telah ditentukan. 3 Merupakan obstacles (rintangan) yang yang mana bila menyentuh player nyawa player berkurang 1. 4 Merupakan obstacles (rintangan) yang yang mana bila menyentuh player nyawa player berkurang 1. 5 Merupakan item harta yang harus ditemukan player. Dalam game player harus mengumpulkan 5 permata untuk menyelesaikan setiap level. Patroli State (0) Mengejar State (1) Menyerang State (2)
Finite State Machine pada enemy Level 1
Ketika  sistem  dijalankan  maka  sistem  mula- mula berada pada state 0 (Bergerak atau patroli), jika player  pada  jangankauan enemy maka state 1
(Mengejar) akan dijalankan dan ketika player berada pada  jarak  miusuh  maka  musuh  akan  kembali  pada state 0  atau  kembali  berpatroli.  Jika  berada  musuh pada  jangkauan  player  maka  state  2  (menyerang) maka musuh akan kembali pada state 1.
Patroli State (0) Mengejar State (1) Menyerang State (2)
Finite State Machine pada enemy Level 2
Ketika  sistem  dijalankan  maka  sistem  mula- mula berada pada state 0 (Bergerak atau patroli), jika player  pada  jangankauan enemy maka state 1 (Mengejar) akan dijalankan dan ketika player berada pada  jarak  miusuh  maka  musuh  akan  kembali  pada state 0  atau  kembali  berpatroli.  Jika  berada  musuh pada  jangkauan  player  maka  state  2  (menyerang) maka musuh akan kembali pada state 1.
Patroli State (0) Mengejar State (1) Menyerang State (2)
Finite State Machine pada enemy Level 3
Ketika  sistem  dijalankan  maka  sistem  mula- mula berada pada state 0 (Bergerak atau patroli), jika player  pada  jangankauan enemy maka state 1 (Mengejar) akan dijalankan dan ketika player berada pada  jarak  miusuh  maka  musuh  akan  kembali  pada state 0  atau  kembali  berpatroli.  Jika  berada  musuh pada  jangkauan  player  maka  state  2  (menyerang) maka musuh akan kembali pada state 1.

## 4. IMPLEMENTASI DAN PENGUJIAN 4.1. Tampilan Menu Utama
Tampilan  menu  utama  adalah  tampilan  awal yang muncul pada saat membuka game ninja and the lost  treasure.  Pada  tampilan  ini  berisi  tombol start game ,  untuk  mulai  game,  tombol About berisi petunjuk  cara  memainkan  game ,  options untuk mengatur suara pada game dan exit untuk keluar dari game .adapun  desain game menu  utama  seperti    pada Gambar ini 4.1

## Gambar 4.1 Tampilan Menu utama Ninja And The Lost Treasure

## 4.2. Tampilan Menu Options
Tampilan  menu  Options  adalah  tampilan  menu untuk  mengatur  sound, screen , graphic , resolution pada game  Ninja  And  The  Lost  Treasure, tampilan menu tentang seperti pada gambar  4.2

## Gambar 4.2 Tampilan menu Options

## 4.3. Tampilan Menu About
Tampilan  menu  About  merupakan  petunjuk tentang game bagai mana dapat menyelesaikan setiap level ditunjukkan padapada  Gambar 4.3
Gambar 4.3 Tampilan Menu About

## 4.4. Tampilan Level 1
Level  1  dalam  game  ninja  and  the  lost  treasure dibuat mudah dengan pergerakan enemy yang lambat.
Ada  pun  tampilan  game  over  terdapat  pada  gambar 4.4

## Gambar 4.4 Tampilan Level 1

## 4.5. Tampilan Level 2
Setelah permain berhasil level 1,  maka permain akan  diarahkan  menuju  level  2  .  pada  level  2  ini jumlah  musuh  lebih  banyak  pergerakan  sedang  dan rintangan    semakin  lebih  tambah.  Terdapat  pada gambar  4.5
Gambar 4.5 Tampilan Game Level 2

## 4.6. Tampilan level 3
Setelah  permainan  berhasil  level  2  ,  permainan akan  di  arahkan  menuju  ke  level  3  .  jumlah  musuh pada  level  3  ini  akan  lebih  banyak  dari  level sebelumnya  untuk  mempersulit  permainan  dan rintangan  lebih  banyak  agar  permainan  sulit  untuk menyelesaikan level ini terdapat pada gambar  4.6
Gambar 4.4 tampilan Game level 3

## 4.7. PengujianAI(ArtificialIntelnce)
Pengujian AI adalah pengujian mengenai fungsi yang  berkaitan  dengan  AI  (  Artificial  Intellingence) yang  ada  dalam  game shooter  platformer .  Hasil
pengujian dari  AI  finite  State  machine dapat  di  lihat pada tabel  4.1
Tabel 4.1pengujian AI (Artificial Intelligence) No fungsi output hasil 1 AI finite state machine pada musuh Musuh berjalan mendekati player jika jarak player Sesuai 2 AI  finite state machine Musuh akan mulai menyerang Sesuai

## 4.8. Pengujian Fungsional
Pengujian fungsional adalah pengujian mengenai proses fungsional yang terjadi dalam game. hasil dari pengujian dapat di lihat pada tabel  4.2
Tabel 4.2 Pengujian Fungsional No Fungsi Hasil 1 Musuh dapat mengejar dan menyerang sesuai 2 Tombol pada menu berjalan sesuai fungsi sesuai 3 Jump pada karakter utama berfungsi sesuai

## 4.9. Pengujian Laptop
Pada fungsionalitas game ini di coba di jalankan pada  windows.  Hasil  dari  pengujian  dapat  di  lihat pada tabel 4.3
Tabel 4.3 pengujian laptop No Tipe laptop berhasil Gagal 1 Asus X441UV  - 2 HP  Notebook Pavilion  -
Pada  hasil  pengujian  beberapa  model  tipe  lapto di  atas  didapatkan  kesimpulan  sesuai  dan  tidak  ada kendala  saat  di  maikan  di  berbagai  laptoP  dengan spesifikasi  laptoP  yang  sesuai  dengan minimum requirement yang sudah di tetapkan.

## 5. KESIMPULAN DAN SARAN
5.1. Kesimpulan Berdasarkan hasil dari perancangan dan implementasi  pada Game  shooter  platformer maka diambil beberapa kesimpulan sebagai berikut:
1. Hasil  pengujian  fungsional  berjalan  dengan tingkat  keberhasilan  100%  sesuai  dengan  yang diharapkan
2. Aplikasi game ini mengimplementasi FSM ( Finite State  Manchine )  yang  di  terapkan  pada  game  2D
dengan  indikasi  musuh  dapat  mengejar  dan menyerang player dengan kondisi tertentu
3. Implementasi metode finite state machine dapat di terapkan pada Game Ninja And The Lost Treasure yaitu  musuh  dapat  mengejar  dan  meyerang  pada Jarak tertentu.
4. Hasil  penngujian  AI Finite  State  Machine yang ada  pada  game  ninja  and  the  lost  treausure berjalan dengan tingkat keberhasilan 100 % sesuai dengan yang diharapkan.

## 5.2. Saran
Adapun saran sebagai acuan terhadap penelitian atau pengembangan selanjutnya, diantaranya :
1. Dapat  dikembangkan  dalam  bentuk  multiplayer game.
2. Dapat  dikembangkan  menjadi  game  berbasis mobile sehingga  dapat  dimainkan  pada  sistem operasi android .
3. Penambah  level  pada  game  karena  hanya  3  level pada game ninja and the lost treasure

## DAFTAR PUSTAKA
[1] Utari,  D  (2012).  Analisis  dan  Impementasi Algoritma Bacrakcking pada permainan Hangman .  Medan:  Universitas  Sumatera  Utara, 1-3
[2] 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).
[3] Rahadian,  M.F.,  Suyatno,  A.  dan  Maharani,  S., 2016.  Penerapan  Metode  Finite  State  Machine Pada Game“The Relationship”.
[4] Setiawan,  I.,  2006. Perancangan  Software Embedded  System  Berbasis  FSM. Semarang: Universitas Diponegoro .
[5] Lie Lieanto Ari ,2018 judul Game . Skripsi, Itn .
[6] Wahyudi.  2010.  Genre  Game.  Bandung. Universista komputer indonesia
[7] Arif,  Y.M.  dan  Hariadi,  M,  2012  berjudul Hierarchy Finite State Machine
[8] Wijaya,  Surya  Adi.  2009 . State  Machine Untuk
Menghasilkan  Variasi
Respon Npc  (Non-
Playable Character) Pada Game . Tesis. Surabaya: Institut Teknologi Surabaya.
[9] Al  Irsyadi,  F.  Y.,  and  Nugroho,  Y.  S.  2015. Game  edukasi  pengenalan  anggota  tubuh  dan pengenalan  angka  untuk  anak  berkebutuhan khusus  (ABK)  tunagrahita  berbasis  kinect. Prosiding SNATIF , 13-20.