• Tidak ada hasil yang ditemukan

Pengaturan Perilaku Pasukan Non Player Character menggunakan metode Flocking Behavior berbasis Agent pada permainan Real Time Strategy

N/A
N/A
Protected

Academic year: 2021

Membagikan "Pengaturan Perilaku Pasukan Non Player Character menggunakan metode Flocking Behavior berbasis Agent pada permainan Real Time Strategy"

Copied!
5
0
0

Teks penuh

(1)

Abstrak— Pergerakan berkelompok sekumpulan pasukan, akan terlihat natural apabila dapat bergerak dengan memperhitungkan pergerakan pasukan lainnya. Pada permainan Lume Wars, akan dirancang sistem perilaku pasukan yang menerapkan metode flocking behavior berbasis agent, guna memenuhi kebutuhan tersebut. Sistem perilaku pasukan yang dibuat akan dijalankan pada device yang berbeda jenis untuk memperoleh spesifikasi minimal untuk menjalankan sistem tersebut. Sistem yang dapat diterima adalah sistem yang dianggap sudah baik berdasarkan pendapat para pemain. Dari hasil survei yang dilakukan, pengguna yang menganggap sistem perilaku ini sudah baik berjumlah tidak lebih dari 30%, sehingga dirasa perlu adanya pengembanangan lebih lanjut terkait perilaku yang diterapkan pada pasukan. Sedangkan dari pengujian device didapatkan spesifikasi minimal untuk dapat menjalankan permainan Lume Wars menggunakan 10 unit pasukan dengan FPS diatas nilai 60 adalah dengan menggunakan device android os minimal 4.1, CPU Dual Core 1,2 Ghz dan RAM 1GB.

Kata Kunci—non-player character, flocking behavior, steering behavior

I. PENDAHULUAN

ermainan Real-Time Strategy (RTS) merupakan salah satu genre permainan yang mensimulasikan pertempuran antara 1 atau lebih pemain. Dalam genre permainan ini, pada umumnya pemain diberikan kemampuan untuk mengendalikan pasukan atau unit tertentu dengan tujuan menaklukan suatu wilayah atau mengalahkan musuhnya. Misi yang dilakukan untuk mengalahkan musuh umumnya berbeda-beda. Pada permainan yang akan dibuat ini, misi utama adalah menghancurkan base milik musuh.

Dalam pengerjaan tugas akhir ini, dibentuk tim yang akan mengembangkan permainan RTS berjudul Lume Wars. Lume Wars merupakan permainan yang berjalan di sistem operasi android dengan tujuan utama permainan menghancurkan markas musuh menggunakan resource yang ada. Pembuatan permainan ini akan dibagi menjadi beberapa bagian pengerjaan diantaranya adalah perancangan desain animasi

hero, dan pasukan , pembuatan gameplay dan mekanik

pasukan. Dalam publikasi ini, akan dijelaskan mengenai perancangan dan implementasi perilaku NPC pasukan.

Dalam perancangan pergerakan pasukan, pada umumnya pasukan diberi perilaku yang sama menggunakan FSM[1] tanpa memperhatikan pasukan lainnya sehingga akan bertindak dengan menganggap karakter lain termasuk pasukan lain adalah sama. Pada perancangan perilaku pasukan dalam permainan Lume Wars ini, akan diterapkan metode flocking

behavior[2] dengan pengaruh dari karakter hero sebagai leader, agar pergerakan pasukan dapat memperhatikan posisi

pasukan lainnya sehingga pergerakan pasukan tampak harmonis.

Pembuatan perilaku pasukan yang diterapkan pada permainan Lume Wars akan berjalan pada sistem operasi android, sehingga setiap device akan memiliki kemampuan menjalankan perilaku yang berbeda-beda, sehingga perlu diketahui pada kondisi pasukan seperti apa dan pada device dengan spesifikasi seperti apa agar flocking pasukan dapat berjalan optimal.

Langkah yang digunakan dalam pembuatan perilaku pasukan ini adalah dengan terlebih dahulu mengecek kondisi hero dalam permainan, untuk kemudian ditentukan perilaku-perilaku apa saja yang mungkin terjadi dalam permainan pada pasukan. Dari perilaku-perilaku yang telah ditentukan, dibuat FSM untuk menentukan setiap state perilaku dan activity atau yang menghubungkan setiap perilaku satu sama lain. Kemudian perilaku pada FSM akan diterapkan dalam permainan dengan menggunakan animasi pasukan yang telah dibuat oleh anggota lain dalam tim Lume Wars.

II. METODE PENELITIAN

A. Steering Behavior

Perilaku dalam bergerak pasukan secara individu akan menggunakan perilaku ini untuk bergerak dalam kondisi-kondisi tertentu. Perilaku ini menjelaskan bagaimana suatu unit dapat bergerak secara mandiri tanpa diberi input secara langsung dari pemain menggunakan metode steering

behavior[3] yang melakukan perilaku antara lain seek, flee, pursuit, arrival, wander, path following, obstacle avoidance, leader following, dan lain-lain.

Pengaturan Perilaku Pasukan Non Player Character

menggunakan metode Flocking Behavior berbasis

Agent pada permainan Real Time Strategy

Priyodiva Robby Nugroho, Mochamad Hariadi, Christyowidiasmoro

Teknik Elektro, Fakultas Teknologi Industri, Institut Teknologi Sepuluh Nopember (ITS)

Jl. Arief Rahman Hakim, Surabaya 60111

E-mail: mochar@ee.its.ac.id

(2)

B. Flocking Behavior

Flocking merupakan perilaku bergerak secara berkelompok pada agent atau karakter-karakter permainan komputer. Flocking terinspirasi dari pergerakan kelompok hewan, contohnya adalah sekumpulan ikan yang berenang, atau sekelompok burung yang terbang. Contoh penggunaan

flocking adalah pada publikasi shen dan zhou[4] yang

menjelaskan penerapan flocking dalam pergerakan karakter militer dalam permainan Unreal Tournament. Pada publikasi lain, Davison[5] menjelaskan penggunaan flocking untuk mengendalikan pergerakan unit militer atau mengkoordinasikan formasi dari unit-unit dalam permainan

Half-Life.

Dalam makalah reynold mengenai perilaku flocking [1], setiap unit yang diberi perilaku flocking ini disebut boid. Tiap boid akan bergerak menyesuaikan pergerakan mereka dengan boid lain dengan mengikuti 3 aturan, yaitu:

1. Separation: Setiap boid akan bergerak menjauhi boid lainnya. Aturan ini merupakan lawan dari perilaku

cohesion, dan dapat dianggap seperti perilaku collision avoidance dalam flocking.

2. Cohesion: Boid bergerak menuju pusat kerumunan untuk bergabung dengan boid lainnya

3. Alignment: Menerapkan arah yang sama pada masing-masing boid.

Perilaku flocking tersebut sepeti digambarkan pada Gambar 1. Arah dan kecepatan dari tiap boid adalah hasil dari perhitungan dari ketiga aturan tersebut.

Gambar 1. Ilustrasi dari ketiga aturan flocking

Pada Gambar 1, gambar kiri merupakan aturan separation, dimana boid bergerak menjauhi neighbornya, gambar tengah merupakan aturan cohesion, dimana boid bergerak ke tengah kerumunan, dan gambar kanan merupakan aturan alignment, dimana boid diberikan gaya untuk bergerak ke arah boid lainnya.

C. Gambaran Umum Sistem

Gambar 2. Diagram Blok Sistem

Pada sistem perancangan dan penerapan perilaku pasukan ini, akan ditentukan terlebih dahulu ditentukan perilaku apa saja yang akan dimiliki oleh pasukan didalam permainan. Dari setiap perilaku yang telah dimiliki, dibuat FSM yang menghubungkan setiap state perilaku melalui transisi berupa kondisi atau activity. FSM perilaku yang dibuat kemudian diterapkan didalam pasukan. Pasukan yang telah dibuat akan disatukan didalam permainan Lume Wars bersama dengan bagian lainnya dalam permainan.

D. Perilaku Pasukan dalam Permainan

Setiap pasukan akan memiliki perilaku sesuai dengan kondisi didalam permainan. Perilaku perilaku tersebut adalah sebagai berikut :

1) Idle 2) Walk

3) Spawn & Respawn 4) Follow

5) Evade 6) Pursuit

7) Attack (Melee & Range) 8) Back to Position 9) Escape

10) Defend 11) Dead

Perilaku pasukan idle, walk, attack, dan dead merupakan perilaku yang termasuk dalam perilaku dasar pasukan. Perilaku tersebut nantinya akan digunakan pada perilaku lain semisal walk akan digunakan pada perilaku follow, evade,

pursuit, dan escape.

E. Perancangan FSM Perilaku Pasukan

Setelah perilaku-perilaku pasukan pada permainan telah ditentukan, perilaku tersebut harus diterapkan didalam permainan. FSM disusun untuk menentukan pada kondisi tertentu pasukan akan melakukan perilaku apa dari perilaku yang telah dibuat sebelumnya. Perilaku pasukan akan dipengaruhi oleh perilaku dari hero dalam permainan.

Kondisi yang menentukan perilaku pasukan ada 2 , yaitu ketika kondisi hero hidup dan ketika kondisi hero mati. Ketika hero hidup dan masih ada dalam permainan, pasukan akan menggunakan fsm perilaku pada gambar 3.

(3)

IDLE PURSUIT

FOLLOW

SPAWN Berada di Kerumunan

EVADE Hero Idle ATTACK BACK TO POSITION DIE Hero Dekat Hero Jauh Hero Dead Musuh Dekat / Hero Attack HP Habis Musuh Mati Menunggu Respawn Time

Hero Alive

FSM

asd Pada Koordinat Awal Hero Menghadang Hero Dead FSM Hero Alive Hero Tidak Menghadang

Gambar 3. FSM Perilaku ketika Hero Alive

Pada kondisi hero alive, terdapat 9 state perilaku yang berbeda. Setelah spawn pasukan akan mengikut pergerakan hero ketika jarak hero dekat. Pada kondisi follow, pasukan akan memasuki kondisi evade ketika hero memotong kerumunan pasukan. Ketika menyerang unit musuh dan hero mati maka pasukan akan melarikan diri dari pertempuran dan menggunakan FSM perilaku ketika hero tidak ada dalam arena permainan seperti pada gambar 4.

Hero Dead

FSM

Musuh Dekat HP Habis Musuh Mati Menunggu Respawn Time Pada Koordinat Awal Pada Koordinat Defense Pada Koordinat Defense Hero Respawn BACK TO POSITION ATTACK DIE SPAWN DEFEND ESCAPE Hero Alive FSM Hero Dead

Gambar 4. FSM perilaku ketika Hero Dead

Pada kondisi hero dead, pasukan harus mempertahankan markas menggunakan kondisi defend. Ketika terdapat musuh pada jarak serang pasukan, maka pasukan akan memasuki kondisi attack. Apabila hero respawn maka pasukan akan kembali menggunakan FSM perilaku pada kondisi hero alive seperti pada Gambar 3.

F. Implementasi dalam Permainan

Setelah FSM perilaku diterapkan pada pasukan, dilakukan penyatuan bagian-bagian permainan Lume Wars yang telah dikerjakan secara terpisah menjadi satu bagian., dimana bagian yang telah selesai dikerjakan adalah Gameplay Permainan, NPC Pasukan, Animasi Karakter, dan Animasi Lingkungan Permainan. Pasukan dalam permainan tampak pada Gambar 5

Gambar 5. Implementasi Pasukan dalam permainan Lume Wars

III. HASIL PENGUJIAN

A. Pengujian Pada Device Android

Pada pengujian ini, digunakan 6 buah device dengan spesifikasi berbeda-beda. Device yang digunakan adalah :

1) Smartphone Lenovo S880 (Device 1) 2) Smartphone Sony Xperia M (Device 6)

3) Smartphone Samsung Galaxy S III I9300 (Device 2) Selain itu juga digunakan device berupa tablet sebagai berikut:

1) Tablet Samsung Galaxy Tab GT-P1000 (Device 5) 2) Tablet Samsung Galaxy Tab 7.0 GT-P6200 (Device 4) 3) Tablet Novo 7 Numy AX1(Device 3)

Dari device-device berikut, hasil yang akan diambil nilainya adalah nilai Frame Per Second (FPS), CPU Load, dan

Memory Usage.

a. Hasil Pengambilan Data Frame per Second (FPS)

Gambar 6. Hasil FPS rata-rata pada tiap device

Pengujian nilai FPS pada tiap device dilakukan dengan cara mengambil 3 nilai FPS pada waktu yang berbeda. Pengambilan data dilakukan ketika pasukan sedang melakukan perilaku yang telah dibuat sebelumnya. Perilaku

(4)

follow, attack, dan idle. Setiap pengambilan data dilakukan

dengan jumlah pasukan 10 sampai 100 dengan selisih 10 pasukan.

Setelah dilakukan pengujian, tampak pada Gambar 6 didapatkan nilai rata-rata FPS pada device 1 adalah 30.5, pada

device 2 adalah 42.3, pada device 3 adalah 45.7, pada device 4

adalah 50.5, pada device 5 adalah 28.9, pada device 6 adalah 27.1.

b. Hasil Pengambilan Data CPU Load

Gambar 7. Hasil CPU Load rata-rata pada tiap device

Pengambilan nilai CPU Load dilakukan pada 3 perilaku pasukan, yaitu follow, idle, dan attack. Pengambilan data dilakukan 3 kali pada tiap perilaku, satu siklus pengambilan dilakukan dengan urutan pengambilan data saat follow, pengambilan saat idle, dan pengambilan saat attack. Siklus tersebut dilakukan sebanyak 3 kali. Setiap pengambilan dilakukan dengan pasukan berjumlah 10 sampai 100 pasukan, dengan selisih 10 pasukan setiap pengambilan.

Dari hasil pengambilan data CPU Load perilaku pasukan, didapatkan nilai rata-rata CPU Load pada device 1 adalah 84.2%, nilai rata-rata CPU Load pada device 2 adalah 95.9%, nilai rata-rata CPU Load pada device 3 adalah 96.1%, nilai rata-rata CPU Load pada device 4 adalah 96.1%, nilai rata-rata CPU Load pada device 5 adalah 79.3%, nilai rata-rata CPU

Load pada device 6 adalah 94.3%.

c. Hasil Pengambilan Data Memory Usage

Gambar 8. Hasil Memory Usage rata-rata pada tiap device

Pengambilan nilai Memory Usage dilakukan pada 3 perilaku pasukan, yaitu follow, idle, dan attack. Pengambilan dilakukan sebanyak 3 kali, pengambilan pertama ketika permainan baru dimulai, pengambilan kedua setelah ditengah-tengah

permainan, dan pengambilan ketiga setelah pengambilan kedua selesai dilakukan.

Dari hasil pengambilan data Memory Usage, didapatkan nilai rata-rata Memory Usage pada device 1 adalah 186593.1 KB, nilai rata-rata Memory Usage pada device 2 adalah 69473.9 KB, nilai rata-rata Memory Usage pada device 3 adalah 376386.3 KB, nilai rata-rata Memory Usage pada

device 4 adalah 69964.6 KB, nilai rata-rata Memory Usage

pada device 5 adalah 137811.2 KB, nilai rata-rata Memory

Usage pada device 6 adalah 183989.1 KB. B. Pengujian FSM Perilaku

Setelah dilakukan pengujian dalam permainan, ternyata ada beberapa perilaku yang tidak berjalan sesuai dengan skenario yang diharapkan pada awal perancangan FSM perilaku. Hal tersebut terjadi karena adanya pengaruh lain baik yang diketahui penyebabnya maupun yang tidak diketahui penyebabnya.

Contoh penyebab yang diketahui mengakibatkan tidak terlaksananya suatu perilaku adalah adanya gaya atau pengaruh dari perilaku lain. Hasil yang didapatkan dari pengujian FSM Perilaku ini terdapat pada Tabel 1.

Tabel 1.

Hasil Pengujian FSM Perilaku

No State Kemungkinan Perilaku

Terlaksana

1 Spawn - Ya

2 Pursuit 1. Hero dalam kondisi Attack/Idle Ya 2. Hero dalam kondisi Walk Ya 3 Follow 1. Pasukan tidak dalam kondisi menyerang Ya

2. Pasukan dalam kondisi Attack dan jarak dengan hero kurang dari 200 pixel

Tidak 4 Idle 1. Tidak semua pasukan berada pada Idle

Radius

Tidak 2. Seluruh pasukan ada pada Idle Radius Ya 3. Hero berada ditengah kerumunan pasukan

Tidak 5 Attack 1. Musuh berada disebelah unit pasukan Ya

2. Terdapat Hero diantara Pasukan dan Musuh

Tidak 6 Back to

Position

1. Terdapat musuh disekitar pasukan Tidak 2. Tidak terdapat musuh lain disekitar pasukan

Ya

7 Escape - Ya

8 Evade - Ya

9 Defend 1. Tidak semua Pasukan berada pada

Defense Region

Tidak 2. Seluruh pasukan berada pada Defense

Region

Ya

10 Die - Ya

Dari 10 perilaku yang dibuat, terdapat 17 kemungkinan perilaku yang mungkin terjadi didalam permainan. Pada tabel 1 terdapat 7 kemungkinan yang terjadi ketika perilaku yang seharusnya dijalankan menjadi tidak terlaksana. Perilaku yang pada kondisi tertentu tidak terlaksana yaitu perilaku pursuit,

(5)

C. Pengujian Survei Pengguna

Pengujian ketiga adalah pengujian untuk mengetahui respon pengguna terhadap perilaku pasukan yang dibuat apakah dinilai baik atau tidak dari sudut pandang pengguna. Survei ini dilakukan kepada pengguna yang telah mencoba permainan Lume Wars terlebih dahulu. Terdapat 5 pertanyaan mengenai perilaku pasukan, yaitu mengenai perilaku follow, evade,

pursuit, attack, juga mengenai parameter jarak hero terhadap

pasukan, dan jarak pasukan terhadap pasukan lainnya dalam kerumunan.

Gambar 9. Hasil jawaban survei

Pada Gambar 8, ditunjukkan hasil yang diperoleh dari 6 pertanyaan yang diajukan dalam survei. Pada Perilaku follow, diperoleh hasil 3 sangat baik, 21 cukup baik, dan 8 kurang baik. Pada perilaku Evade, diperoleh hasil 5 sangat baik, 23 cukup baik, 3 tidak baik, 1 sangat tidak baik . Pada perilaku Attack, diperoleh hasil 4 sangat baik, 19 cukup baik, 7 tidak baik, dan 2 sangat tidak baik. Pada perilaku Pursuit, diperoleh hasil 5 sangat baik, 23 cukup baik, 3 tidak baik, 1 sangat tidak baik.

Selain itu survei pada parameter yang digunakan yaitu parameter distance leader yang berarti jarak antara Hero dengan pasukan, yang diperoleh hasil 9 sangat baik, 14 cukup baik, 7 tidak baik dan 2 sangat tidak baik. Pada hasil mengenai parameter unit distance yang berarti jarak antara unit pasukan satu dengan lainnya di dalam kerumunan, diperoleh hasil 8 sangat baik, 16 cukup baik, 7 tidak baik, dan 1 sangat tidak baik.

IV. KESIMPULAN

Dari hasil perancangan, implementasi dan pengujian seluruh sistem yang dikerjakan tentang perilaku pasukan NPC dalam permainan Lume Wars, diketahui bahwa perilaku yang dirancang telah dapat diimplementasikan dan dimainkan secara langsung didalam permainan Lume Wars. Pada device yang diujikan, nilai fps yang diperoleh, membentuk pola beraturan dimana semakin banyak pasukan yang digunakan dalam pengujian, maka nilai fps akan semakin rendah. Sedangkan pada nilai CPU load dan memory usage, banyak atau sedikit jumlah pasukan yang digunakan, kedua nilai tersebut tetap tidak membentuk pola tertentu, sehingga yang dapat dijadikan acuan hanya nilai pada fps saja. Fsm perilaku yang telah diimplementasikan dalam pasukan, tidak

terlaksana, hal tersebut dapat disebabkan karena adanya pengaruh dari luar baik yang diketahui maupun tidak.

Berdasarkan hasil survei sebanyak 32 pengguna, didapatkan nilai 57.81% dari total keseluruhan jawaban memilih nilai cukup baik dan 19.79 % yang memberikan pilihan sangat baik. Sehingga berdasarkan survei pengguna dimana jawaban sangat baik masih sangat sedikit, perilaku yang dibuat ini dianggap belum cukup baik dan masih perlu dilakukan pengembangan lebih lanjut.

DAFTAR PUSTAKA

[1] J. Funge and I. Millington, Artificial Intelligence for Games Second

Edition. Burlington,MA : Morgan Kaufmann (2009)

[2] C. W. Reynolds, “Flocks, Herds, and Schools : A Distributed Behavioral Model“ ACM SIGGRAPH Conference, California(1987) 25–34. [3] C. W. Reynolds, “Steering Behavior for Autonomous Characters“ Game

Developers Conference, California (1999) 763-782.

[4] Z. Shen and S. Zhou, “Behavior representation and simulation for military operations on urbanized terrain,” International Journal of Computer Games Technology, vol. 82, no. 9, 593–607 (2006)

Gambar

Gambar 1. Ilustrasi dari ketiga aturan flocking
Gambar 3. FSM Perilaku ketika Hero Alive
Gambar 7. Hasil CPU Load rata-rata pada tiap device
Gambar 9. Hasil jawaban survei

Referensi

Dokumen terkait

Yaitu obat antibiotik diminum sesuai aturan yang diberikan oleh dokter penulis resep dan tertera pada etiket obat, misalnya obat diminum 3 kali sehari sesudah

berada pada kawasan pantai yang mempunyai topografi yang relatif datar sehingga tidak memerlukan penanganan khusus. analisa terhadap lokasi dipilih berdasarkan

dihubungi oleh petani sayuran dalam lingkungan terdekat maka semakin tinggi dalam menerapkan perilaku berusahatani dalam bidang kognisi dan panen dan

Metode pencampuran (blending) telah dilakukan oleh berbagai peneliti dalam bidang migas, khususnya untuk memperoleh hasil baru yang lebih unggul, percampuran minyak

Hasil penelitian menunjukkan ada perbedaan pengaruh kemampuan kognitif, ada perbedaan pengaruh sikap IPA dan kesadaran metakog- nitif siswa yang dibelajarkan dengan menggunakan

Tujuan penelitian ini adalah untuk membandingkan / meghitung berapa besar tarif seharusnya yang diberikan rumah sakit kepada pasien rawat inap berdasarkan metode

Objektif kajian ini dilakukan adalah untuk meninjau bahan-bahan sejarah matematik hasil sumbangan Euclid bagi tajuk segitiga, sudut dan garis selari, persamaan

Disamping itu juga untuk mengembangkan potensi pada media stensil sebagai pembuatan motif dan pewarna Indigofera, sebagai teknik dalam perancangan produk busana