Anda di halaman 1dari 9

14 Vol. 11 No.

1 Februari 2016 Jurnal Informatika Mulawarman

PENERAPAN METODE FINITE STATE MACHINE PADA GAME


“THE RELATIONSHIP”

Miftah Fauzan Rahadian1), Addy Suyatno2), Septya Maharani3)


1,2,3)
Program Studi Ilmu Komputer, FMIPA, Universitas Mulawarman
Jalan Barong Tongkok No. 4 Kampus Gunung Kelua Samarinda, Kalimantan Timur
Email : fauzan.rahadian@gmail.com1), addysuyatno@yahoo.com2), septyamaharani@gmail.com3)

Abstrak
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. Metode FSM dapat diterapkan untuk nilai-nilai batas
perpindahan yang pasti dan sangat mudah diterapkan pada game “The Relationship”. 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.

Kata kunci : Game, Finite State Machine, C#, Unity3D

PENDAHULUAN
1.1 Latar Belakang lainnya jika memenuhi kondisi yang telah
Industri game yang semakin maju ditentukan sebelumnya [5], selanjutnya untuk
menyuguhkan sebuah dunia maya yang baru yang membuat game dapat menggunakan beberapa cara,
terus menerus berkembang untuk mencoba salah satunya dengan menggunakan game engine
mendekati kehidupan nyata. Game atau permainan yang menawarkan paket pengembangan visual dan
dibuat untuk digunakan sebagai sarana menghibur elemen-elemen software yang dapat digunakan
diri saat penat maupun untuk menghilangkan rasa kembali untuk memungkinkan efisiensi
penat. Game memiliki dua pengertian, pertama pengembangan game karena sudah disediakannya
sebuah aktifitas bermain yang murni mencari fitur-fitur seperti penyisipan gambar, tombol,
kesenangan tanpa mencari hasil menang atau kalah bahkan grafik 3D [2].
dan yang kedua dapat diartikan sebagai aktifitas Penerapan FSM pada game berguna untuk
bermain yang dilakukan dalam rangka mencari menentukan berbagai macam respon NPC
kesenangan dan kepuasan. berdasarkan interaksi yang dilakukan oleh pemain,
Salah satu unsur yang berperan penting dalam hal ini disebabkan karena FSM dapat digunakan
sebuah game adalah kecerdasan buatan atau untuk mendesain dan menentukan respon perilaku
Artificial Intelligence (AI) yang merupakan suatu yang dilakukan terhadap perubahan kondisi. Dari
program komputer yang bertindak dan berpikir hasil penelitian di atas, maka penulis tertarik untuk
seperti manusia dan juga bertindak dan berpikir membuat penelitian dengan mengembangkan
secara rasional pada saat yang bersamaan. Dengan sebuah game dengan menerapkan metode finite
kecerdasan buatan, elemen-elemen dalam game state machine (FSM) pada non-playable character
dapat berperilaku seperti manusia. Game playing (NPC). Adapun penelitian tersebut dituangkan
(permainan game) merupakan bidang AI yang dalam penyusunan skripsi dengan judul “Penerapan
sangat populer berupa permainan antara manusia Metode Finite State Machine Pada Game The
melawan mesin yang memiliki intelektual untuk Relationship”.
berpikir. Komputer dapat bereaksi dan menjawab
tindakan-tindakan yang diberikan oleh lawan 1.2 Batasan Masalah
mainnya [6]. Agar pembahasan dalam skripsi ini tidak
Dalam sebuah penelitian “Membangun Game menyimpang dari topik permasalahan, maka penulis
Simulasi Finite State Machine untuk Pertanian dan melakukan pembatasan-pembatasan sebagai berikut
Peternakan” menerangkan bahwa salah satu jenis ini:
game yang digemari adalah game dengan genre 1. Membuat sebuah game “The Relationship”
simulasi yang didukung dengan kecerdasan buatan yang dimainkan secara singleplayer.
yang menggunakan Finite State Machine (FSM) 2. NPC pada game “The Relationship”
untuk mendukung interaksi dengan pemain. FSM memberikan interaksi berupa obrolan kepada
terdiri dari serangkaian state yang menentukan player.
keputusan. Setiap state dapat berpindah ke state
Jurnal Informatika Mulawarman Vol. 11 No. 1 Februari 2016 15

3. Game “The Relationship” hanya mempunyai melakukan level design atau pengelompokkan
lima lokasi yaitu di kamar pria, kelas, tingkat kesulitan serta berbagai asset yang
perpustakaan, lapangan dan aula sekolah. tepat pada tiap level (jika ada lebih dari 1
4. Hasil akhir dari permainan ini tergantung level) agar game tersebut bisa menghadirkan
dengan interaksi yang dilakukan pemain pengalaman bermain yang optimal.
selama permainan berlangsung. 4. Test Play (Prototyping)
5. Game yang dibangun dengan menggunakan Pada tahapan ini sebuah
Unity dengan bahasa C#. prototype/dummy dihadirkan untuk menguji
gameplay serta berbagai konsep yang telah
1.3 Tujuan Penelitian tersusun, baik dalam tiap level maupun secara
Mengimplementasikan metode finite state keseluruhan, serta melakukan berbagai
machine dalam membangun game “The perbaikan yang diperlukan. Tahapan ini juga
Relationship” menggunakan Unity yang diharapkan berfungsi untuk memberikan gambaran
dapat memberikan gameplay yang menarik beserta lengkap bagi seluruh tim sehingga bisa
hasil yang opportunity membuat pemain harus memudahkan proses pengembangan
mengambil keputusan disetiap interaksi. selanjutnya.
5. Development
1.4 Manfaat Penelitian Pada tahap ini seluruh konsep (karakter
Adapun manfaat secara umum dari game “The dan asset) yang sebelumnya telah tersusun
Relationship” ini adalah: mulai dikembangkan secara penuh.
1. Mampu menerapkan metode finite state 6. Percobaan
machine dalam penentuan respon NPC. Tahap ini dilakukan untuk mengetahui
2. Mengasah kemampuan dan kreatifitas pemain apakah semua komponen utama dari game
dalam mengambil setiap keputusan. telah mampu memberikan pemain pengalaman
3. Memberikan rasa keingintahuan kepada para seperti yang diharapkan sekaligus juga untuk
pemain ketika bermain mendeteksi adanya masalah teknis yang belum
terdeteksi pada tahapan sebelumnya.
TINJAUAN PUSTAKA 7. Rilis
2.1 Game Pada tahap ini game sudah siap untuk
Game adalah sebentuk karya seni di mana dirilis dan diperkenalkan pada target
peserta, yang disebut pemain, membuat keputusan pemainnya. Ketika sebuah game telah dirilis
untuk mengelola sumber daya yang dimilikinya untuk publik bukan berarti proses
melalui benda di dalam game demi mencapai tujuan pengembangan telah selesai, karena umumnya
[1]. game akan terus dioptimalkan/di-update. Hal
Sebuah game yang baik akan memberikan ini untuk memastikan bahwa game yang
pengalaman bermain yang optimal, sebuah proses dihadirkan benar-benar mampu memberikan
pengembangan game yang baik juga akan pengalaman bermain yang maksimal.
memberikan pengalaman yang istimewa serta
proses pembelajaran yang luar biasa bagi mereka 2.2 Kecerdasan Buatan
yang terlibat di dalamnya. Proses pengembangan Definisi Kecerdasan Buatan (AI) merupakan
sebuah game secara baik secara garis besar terbagi cabang dari ilmu komputer yang dalam
menjadi beberapa tahapan berikut [3] : merepresentasi pengetahuan lebih banyak
1. Merancang Game menggunakan bentuk simbol-simbol daripada
Hal yang dilakukan pertama kali adalah bilangan, dan memproses informasi berdasarkan
menentukan jenis game yang akan metode heuristic atau dengan berdasarkan sejumlah
dikembangkan. Pada tahap ini ide dasar, tema, aturan.
teknologi, media (platform), serta berbagai Ada tiga tujuan kecerdasan buatan, yaitu,
batasan lain dirumuskan. Tahapan riset ini membuat komputer lebih cerdas, mengerti tentang
menjadi sebuah tahapan krusial, berbagai kecerdasan, dan membuat mesin yang lebih.
elemen dasar dari sebuah game disusun di sini. Kecerdasan adalah kemampuan untuk belajar dan
2. Perumusan Gameplay mengerti dari pengalaman, memahami pesan yang
Gameplay adalah pola, aturan, atau kontradiktif dan ambigu, menanggapi dengan cepat
mekanisme yang mengatur bagaimana proses dan baik atas situasi yang baru, menggunakan
interaksi pemain dengan game yang penalaran dalam memecahkan masalah serta
diciptakan. Gameplay juga mengatur menyelesaikannya dengan efektif. Adapun lingkup
bagaimana seorang pemain bisa memenuhi utama dalam kecerdasan buatan adalah [6] :
objektif dari game dan mendapatkan 1. Sistem Pakar
pengalaman bermain yang menyenangkan. Komputer digunakan sebagai sarana
3. Penyusunan Asset dan Level Design untuk menyimpan pengetahuan para pakar.
Tahapan ini berfokus pada penyusunan Dengan demikian komputer akan memiliki
konsep dari semua karakter serta asset keahlian untuk menyelesaikan permasalahan
(termasuk suara atau musik) yang diperlukan. dengan meniru keahlian yang dimiliki oleh
Pada saat yang sama tim juga mulai pakar.
16 Vol. 11 No. 1 Februari 2016 Jurnal Informatika Mulawarman

2. Pengolahan Bahasa Alami (Natural


Languange Processing) Event0/Action1 Event0/Action3
Komputer dapat mengolah bahasa alami
yang diharapkan pengguna dapat Event1/Action2
berkomunikasi dengan komputer dengan
menggunakan bahasa sehari-hari. State State
init
3. Pengenalan Ucapan (Speech Recognition) 0 1
Melalui pengenalan ucapan diharapkan
pengguna dapat berkomunikasi dengan Event1/Action4
komputer menggunakan suara.
4. Robotika dan Sistem Sensor
Robot adalah sebuah alat mekanik yang Gambar 1. Diagram state sederhana (Sumber:
dapat melakukan tugas fisik, baik Setiawan, 2006)
menggunakan pengawasan dan kontrol
manusia, ataupun menggunakan program. Salah satu alternatif implementasi FSM adalah
Robot biasanya digunakan untuk tugas yang menggunakan pemrograman berorientasi objek
berat, berbahaya, pekerjaan yang berulang dan (Object Oriented Programming) atau yang sering
kotor. Robot juga dilengkapi dengan sensor disingkat sebagai OOP (Wijaya, 2010). Kelebihan
untuk pendeteksi terhadap sesuatu hal, penggunaan OOP pada FSM adalah fleksibilitasnya
misalnya seperti sensor panas. yang tinggi dan pemeliharaannya yang mudah baik
5. Computer Vision pada sistem yang sederhana, menengah, maupun
Computer Vision mencoba untuk dapat sistem yang kompleks. Selain itu juga mendapatkan
menginterpretasikan gambar atau objek-objek manfaat dari salah satu kelebihan OOP yaitu
tampak melalui komputer. penggunaan kembali kode yang telah diketik (code
6. Intelligent Computer-aided Instruction reusability) sehinga pengetikan kode menjadi lebih
Komputer dapat digunakan sebagai tutor sedikit (Wijaya, 2010).
yang dapat melatih dan mengajar.
7. Game Playing HASIL PENELITIAN DAN PEMBAHASAN
Game playing (permainan game) 3.1 Deskripsi Sistem
merupakan bidang kecerdasan buaatan yang Game “The Relationship” adalah permainan
sangat populer berupa permainan antara petualangan dengan sub genre simulasi yang
manusia melawan mesin yang memiliki dimainkan pada komputer (PC) atau laptop. Game
intelektual untuk berpikir. Komputer dapat “The Relationship” menggunakan sudut pandang
bereaksi dan menjawab tindakan-tindakan ketiga, yang artinya pemain dapat melihat karakter
yang diberikan oleh lawan mainnya. yang dimainkan maupun karakter NPC. Pemain
harus menyelesaikan objektif-objektif yang ada di
2.3 Finite State Machine dalam game untuk mendekati karakter perempuan
Finite state machine (FSM) adalah sebuah yang telah ditentukan.
metodologi perancangan sistem kontrol yang
menggambarkan tingkah laku atau prinsip kerja 3.1.1 Jalan Cerita
sistem dengan menggunakan tiga hal berikut: State Game ini mempunyai cerita utama tentang
(Keadaan), event (kejadian) dan action (aksi). Pada karakter laki-laki bernama Mizan yang telah naik
satu saat dalam periode waktu yang cukup ke kelas 3 SMA di salah satu sekolah negeri. Pada
signifikan, sistem akan berada pada salah satu state kelas 3 Mizan berkeinginan untuk membuat akhir
yang aktif. Sistem dapat beralih atau bertransisi masa sekolahnya menjadi salah satu bagian yang
menuju state lain jika mendapatkan masukan atau tak terlupakan dalam hidupnya. Oleh karena itu
event tertentu, baik yang berasal dari perangkat luar Mizan berkeinginan untuk dikenal guru maupun
atau komponen dalam sistemnya itu sendiri. teman satu sekolahnya. Selain itu di kelas 3 ini,
Transisi keadaan ini umumnya juga disertai oleh Mizan juga berambisi untuk mendapatkan
aksi yang dilakukan oleh sistem ketika menanggapi pasangan. Terdapat tiga karakter perempuan yang
masukan yang terjadi. Aksi yang dilakukan tersebut dapat didekati oleh Mizan, yaitu Tara yang gemar
dapat berupa aksi yang sederhana atau melibatkan belajar, Fina yang suka berolahraga, dan Mira yang
rangkaian proses yang relatif kompleks (Setiawan, populer di sekolah.
2006).
Gambar 1 memperlihatkan FSM dengan dua 3.1.2 Gameplay
buah state dan dua buah input serta empat buah Perumusan gameplay pada game “The
output yang berbeda seperti terlihat pada gambar, Relationship” berupa aturan, yaitu :
ketika sistem mulai dihidupkan, sistem akan 1. Permainan bersifat single player yaitu hanya
bertransisi menuju State0, pada keadaan ini sistem dimainkan oleh satu pemain.
akan menghasilkan Action1 jika terjadi masukan 2. Permainan hanya dapat dimainkan dengan
Event0, sedangkan jika terjadi Event1 maka Action2 touchpad atau mouse.
akan dieksekusi kemudian sistem selanjutnya
bertransisi ke keadaan State1 dan seterusnya.
Jurnal Informatika Mulawarman Vol. 11 No. 1 Februari 2016 17

3. Permainan terdiri dari 5 lokasi yaitu kamar b. Mira


tidur, ruang kelas, perpustakaan, aula, dan Karakter Mira merupakan karakter NPC
lapangan sekolah. utama yang dapat didekati oleh Mizan dengan
4. Pemain akan memainkan karakter utama yang melakukan interaksi. Mira dapat ditemui
bernama Mizan dengan melakukan interaksi secara acak di dalam kelas, aula atau
terhadap NPC. pepustakaan.
5. NPC yang bisa didekati oleh Mizan adalah c. Fina
Tara, Fina, dan Mira. Karakter Fina merupakan karakter NPC utama
6. Pemain dapat melakukan interaksi dengan yang dapat didekati oleh Mizan dengan
NPC dengan cara menjalankan Mizan hingga melakukan interaksi. Fina dapat ditemui
bersentuhan dengan NPC. secara acak di dalam kelas, lapangan atau
7. Pemain dapat menigkatkan skill kecerdasan, pepustakaan.
stamina, dan populer untuk membantu Mizan d. Tara
dalam mendekati NPC. Karakter Tara merupakan karakter NPC utama
8. Pemain harus berhasil mendekati salah satu yang dapat didekati oleh Mizan dengan
NPC dalam jangka waktu 30 hari permainan melakukan interaksi. Tara dapat ditemui
dalam game. secara acak di dalam kelas, aula atau
9. Pemain hanya dapat berpindah lokasi pepustakaan.
sebanyak 3 kali dalam 1 hari permainan.
Flowchart untuk ilustrasi alur permainan “The 2. Karakter Pendukung
Relationship” bisa dilihat pada gambar 2. Karakter pendukung adalah beberapa karakter
yang akan membantu pemain untuk memenangkan
permainan, untuk berinteraksi dengan karakter
pendukung pemain dapat mengarahkan Mizan
menuju karakter pendukung. Berikut adalah
karakter pendukung di dalam game ini :
a. Pak Agus
Karakter Pak agus adalah karakter yang
berprofesi sebagai guru di dalam game dan
membantu pemain untuk meningkatkan
tingkat interaksi. Pak Agus dapat ditemui di
dalam kelas dan aula.
b. Pak Budi
Karakter Pak Budi merupakan karakter yang
berprofesi sebagai guru olahraga di dalam
Gambar 2. Flowchart Alur Permainan game dan membantu pemain untuk
meningkatkan tingkat stamina. Pak Budi dapat
Flowchart tersebut menjelaskan pada saat ditemui di lapangan sekolah.
permainan dimulai pemain langsung dapat c. Mbak Desi
mengontrol karakter utama. Setelah itu pemain Karkater Mbak Desi merupakan karakter yang
dapat berpindah ruangan sebanyak tiga kali berprofesi sebagai pustakawati di dalam game
sepanjang 30 hari permainan. Selama permainan dan membantu pemain untuk meningkatkan
berlangsung pemain dapat berinteraksi dengan NPC tingkat interaksi. Mbak Desi dapat ditemui di
atau meningkatkan skill karakter utama. Setelah 30 perpustakaan dan lapangan.
hari permainan, karakter utama harus menyatakan d. Andri
perasaan ke NPC. Jika berhasil maka permainan Karakter Andri merupakan karakter teman
telah selesai, tapi jika gagal maka pemain gagal itu sekelas Mizan pindahan dari sekolah lain dan
menyelesaikan permainan. membantu pemain untuk meningkatkan
tingkat interaksi. Andri dapat ditemui di kelas
3.1.3 Karakter dalam Game dan aula.
“The Relationship” memiliki 4 (empat) e. Doni
karakter utama dan 7 (tujuh) karakter pendukun Karakter Doni merupakan karakter teman
yang merupakan komponen terpenting di dalam sekelas Mizan yang baru dan membantu
gameplay yang dimainkan, antara lain : pemain untuk meningkatkan tingkat interaksi.
1. Karakter Utama Doni dapat ditemui di perpustakaan dan
Merupakan karakter yang sangat berpengaruh lapangan.
dalam permainan “The Relationship”. Berikut f. Lida
adalah karakter utama di dalam game ini : Karakter Lida merupakan karakter teman
a. Mizan sekelas Mizan dan membantu pemain untuk
Karakter Mizan merupakan karakter utama meningkatkan tingkat interaksi. Lida dapat
yang akan dimainkan dan diarahkan oleh ditemui di perpustakaan dan lapangan.
pemain selama permainan berlangsung.
18 Vol. 11 No. 1 Februari 2016 Jurnal Informatika Mulawarman

g. Cindy Variable hubungan Mira dapat ditingkatkan


Karakter Cindy Merupakan karakter teman dengan melakukan interaksi terhadap Mira.
sekelas sekaligus teman baik Mizan dan
membantu pemain untuk meningkatkan 3.2 Perancangan Sistem
tingkat interaksi. Cindy dapat ditemui di aula Perancangan sistem adalah rencana sistematis
dan lapangan. dalam proses pengembangan sistem setelah
memiliki data yang cukup untuk menunjang
3.1.4 Objektif Game kegiatan pengembangan sistem. Dalam
Objektif game adalah tujuan utama permainan perancangan sistem kriptografi dengan
yang harus diselesaikan oleh pemain selama menggunakan metode MARS ini digunakan empat
permainan berlangsung. Objektif dari game “The diagram UML yaitu use case diagram, activity
Relationship” ini adalah : diagram, sequence diagram dan class diagram.
1. Menjalankan kehidupan karakter laki-laki di
sebuah sekolah. 3.2.1 Perancangan Arsitektur Sistem
2. Membuat karakter NPC menerima perasaan Perancangan game “The Relationship”
dari karakter utama. menggunakan state diagram. Gambar 3
menunjukan state diagram NPC Utama.
3.1.5 Variable Game
Game “The Relationship” mempunyai
variable utama yang akan mempengaruhi respon
dari NPC. Nilai dari variable akan berubah-ubah
sesuai dengan interaksi yang dilakukan oleh
karakter utama.
Berikut adalah 6 (enam) variable utama dari
game ini :
a. Variable Kecerdasan
Variable ini berisi nilai skill kecerdasan dari
karakter utama. Semakin tinggi nilai skill
kecerdasan maka ketertarikan karakter Tara
terhadap karakter utama akan semakin tinggi.
Nilai skill kecerdasan karakter utama dapat
ditingkatkan di perpustakaan melalui kegiatan
membaca buku.
b. Variable Stamina
Variable ini berisi nilai skill stamina dari
karakter utama. Semakin tinggi nilai skill Gambar 3. State Diagram NPC Utama
stamina maka ketertarikan karakter Fina
terhadap karakter utama akan semakin tinggi. Gambar 4.2 adalah state diagram yang
Nilai skill stamina karakter utama dapat menjelaskan FSM yang diterapkan pada NPC
ditingkatkan di lapangan melalui berlari utama yaitu karakter Mira, Fina, dan Tara untuk
keliling lapangan. memberikan respon yang berbeda saat
c. Variable Populer mendapatkan masukan dari pemain. Pada saat game
Variable ini berisi nilai skill kepopuleran dari dimulai NPC akan langsung bertransisi menuju
karakter utama. Semakin tinggi nilai state idle. NPC akan bertransisi menuju state
kepopuleran maka ketertarikan karakter Mira berjalan ketika NPC diatur untuk berjalan menuju
terhadap karakter utama akan semakin tinggi. arah tujuan tertentu hingga NPC berada pada posisi
Nilai skill kepopuleran karakter utama dapat tujuan. Sedangkan ketika NPC menyentuh player
ditingkat melalui interaksi karakter utama akan bertransisi menuju state berbicara yang akan
dengan para karakter NPC. menyesuaikan tingkat kedekatan player dengan
NPC berdasarkan variable NPC.
d. Variable Hubungan Tara Ketika tingkat kedekatan NPC masih berisi
Variable ini berisi nilai tingkat kedekatan
nilai 0 maka NPC akan bertransisi menuju state
karakter utama terhadap karakter Tara.
perkenalan. Tingkat kedekatan NPC yang berisi
Variable hubungan Tara dapat ditingkatkan
nilai lebih dari 0 sampai dengan 20 akan bertransisi
dengan melakukan interaksi terhadap Tara.
menuju state teman yang dapat bertransisi menuju
e. Variable Hubungan Fina state pertanyaan 1 atau pertanyaan 2 jika variable
Variable ini berisi nilai tingkat kedekatan kemungkinan terpenuhi. Tingkat kedekatan NPC
karakter utama terhadap karakter Fina. yang berisi nilai lebih dari 20 sampai dengan 50
Variable hubungan Fina dapat ditingkatkan akan bertransisi menuju state teman baik yang
dengan melakukan interaksi terhadap Fina. dapat bertransisi menuju state pertanyaan 3 atau
f. Variable Hubungan Mira pertanyaan 4 jika variable kemungkinan terpenuhi.
Variable ini berisi nilai tingkat kedekatan Sedangkan jika tingkat kedekatan NPC lebih dari
karakter utama terhadap karakter Mira. 50 akan bertransisi menuju state teman dekat yang
Jurnal Informatika Mulawarman Vol. 11 No. 1 Februari 2016 19

dapat bertransisi menuju state pertanyaan 5 atau permainan, kemudian sistem akan menampilkan
pertanyaan 6 jika variable kemungkinan terpenuhi. lingkungan permainan yang di dalamnya termasuk
Ketika permainan telah berlangsung selama 30 inisialisasi asset, posisi player, dan variable awal
hari permainan maka NPC akan bertransisi menuju game.
state perasaan akhir. Pada state ini pemain
diharuskan untuk menyatakan perasaan kepada
NPC untuk menentukan hasil akhir permainan.
Hasil akhir ditentukan oleh akumulasi variable
NPC yang dilakukan oleh pemain selama
permainan berlangsung.
Setiap state teman, state teman baik, dan state
teman dekat akan membuat NPC memberikan
obrolan kepada karakter utama yang berbed-beda.
Begitu juga dengan state pertanyaan dan variable
kemungkinan yang akan berbeda disetiap karakter
NPC.

3.1.6 Use Case Diagram Sistem “The


Relationship”

Gambar 5. Activity Diagram untuk “Play”

Selanjutnya pemain dapat menjalankan


karakter utama untuk melakukan interaksi kepada
Gambar 4. Use Case Diagram Permainan “The NPC. Ketika karakter utama dan NPC bersentuhan
Relationship” maka sistem akan memberikan respon yang diikuti
dengan update variable tingkat kedekatan NPC
Gambar 4. menjelaskan bahwa pemain dapat kemudian sistem akan mengecek variable hari. Jika
melakukan beberapa aksi sebelum memulai game belum melewati 30 hari permianan maka
permainan. Dalam menu utama terdapat beberapa pemain masih dapat melanjutkan permainan, jika
pilihan untuk pemain yaitu, Mulai, Cara Bermain, tidak maka ketika pemain menyentuh NPC sistem
Daftar, dan Keluar. Jika pemain memilih Mulai akan memberikan pertanyaan untuk pemain.
maka scene akan langsung berpindah menuju scene Selanjutnya sistem juga akan mengecek tingkat
permainan yang di dalamnya termasuk scene hasil kedekatan NPC dan karakter utama, jika iya maka
permainan. Tombol Cara Bermain menampilkan sistem akan menampilkan pesan berhasil
instruksi bagaimana cara untuk bermain yang menyelesaikan objektif game, begitu juga
meliputi menjalankan karakter utama, cara untuk sebaliknya. Setelah itu sistem akan kembali
berinteraksi dengan NPC. Tombol Daftar menampikan menu.
menampilkan nama-nama yang berjasa dalam
pembuatan game “The Relationship”. Tombol 3.3 Implementasi dan Pengujian Sistem
Keluar untuk keluar dari permainan atau aplikasi. Implementasi merupakan tahap realisasi
setelah perancangan sistem yang menghasilkan
4.2.6 Activity Diagram untuk Mulai game berjudul “The Relationship”.
Gambar 5 menjelaskan alur aktifitas yang
terjadi saat pemain memilih tombol Mulai pada 3.3.1 Perhitungan Tingkat Kedekatan
menu utama hingga pemain menyelesaikan Karakter NPC
permainan. Alur dimulai dari pemain memulai Perhitungan tingkat kedekatan dilakukan pada
permainan, sistem akan menampilkan menu utama saat pemain melakukan interaksi kepada karakter
dimana pemain memilih Mulai untuk memulai NPC selama permainan berlangsung. Sedangkan
20 Vol. 11 No. 1 Februari 2016 Jurnal Informatika Mulawarman

poin yang mempengaruhi karakter NPC dapat kedua adalah teman saat variable Fina bernilai dari
berkurang atau bertambah menyesuaikan dengan 1 sampai dengan 20. Tingkat ketiga adalah teman
interaksi yang dilakukan oleh pemain. Terdapat 4 baik saat variable Fina bernilai dari 21 sampai
tingkat kedekatan atara karakter utama dengan dengan 50. Sedangkan tingkat terakhir adalah
karakter NPC. teman dekat saat variable Fina bernilai lebih dari
Tabel 1 Tingkat Kedekatan NPC 50. Struktur kondisi tingkat kedekatan Mira dapat
No Tingkat Nilai Variable diliat pada potongan script berikut ini :
1 Perkenalan 0 if(GameState.Instance.getFina() == 0) {
2 Teman 1 s/d 20 //State Perkenalan
}else if(GameState.Instance.getFina()<= 20)
3 Teman Baik 21 s/d 50 {
4 Teman Dekat > 50 //State Teman
}else if(GameState.Instance.getFina()<= 50)
{
1. Tingkat Kedekatan Tara //State Teman Baik
Struktur kondisi untuk 4 tingkat kedekatan }else {
karakter utama dengan karakter Tara, semakin //State Teman Dekat }
tinggi nilai variable Tara semakin dekat
hubungannya. Tingkat pertama adalah perkenalan
saat variable Tara masih bernilai kosong. Tingkat 3.3.2 Perhitungan Variable Skill
kedua adalah teman saat variable Tara bernilai dari Selama permainan berlangsung pemain juga
1 sampai dengan 20. Tingkat ketiga adalah teman harus meningkatkan variable skill karakter utama.
baik saat variable Tara bernilai dari 21 sampai Terdapat tiga variable skill yang dapat ditingkatkan
dengan 50. Sedangkan tingkat terakhir adalah oleh pemain, yaitu :
teman dekat saat variable Tara bernilai lebih dari
50. Struktur kondisi tingkat kedekatan Tara dapat 1. Variable Kecerdasan
diliat pada potongan script berikut ini : Variable kecerdasan karakter utama dapat
if(GameState.Instance.getTara() == 0) { ditingkatkan dengan melakukan kegiatan membaca
//State Perkenalan buku di perpustakaan. Nilai variable kecerdasan
} else if(GameState.Instance.getTara()<= 20) akan bertambah sebanyak 1.5 poin ketika karakter
{ utama membaca buku, semakin banyak pemain
//State Teman
} else if(GameState.Instance.getTara()<= 50)
membuat karakter utama membaca buku semakin
{ besar juga nilai variable kecerdasan. Perhitungan
//State Teman Baik variable kecerdasan dapat dilihat pada potongan
} else { //State Teman Dekat } script berikut ini :
2. Tingkat Kedekatan Mira GameState.Instance.SetIntl(1.5f);
Struktur kondisi untuk 4 tingkat kedekatan
karakter utama dengan karakter Mira, semakin
2. Variable Stamina
tinggi nilai variable Mira semakin dekat
Variable stamina karakter utama dapat
hubungannya. Tingkat pertama adalah perkenalan
ditingkatkan dengan melakukan kegiatan olahraga
saat variable Mira masih bernilai kosong. Tingkat di lapangan sekolah. Nilai variable stamina akan
kedua adalah teman saat variable Mira bernilai dari bertambah sebanyak 1.5 poin ketika karakter utama
1 sampai dengan 20. Tingkat ketiga adalah teman
berolahraga, semakin banyak pemain membuat
baik saat variable Mira bernilai dari 21 sampai
karakter utama berolahraga semakin besar juga nilai
dengan 50. Sedangkan tingkat terakhir adalah
variable stamina. Perhitungan variable stamina
teman dekat saat variable Mira telah bernilai lebih
dapat dilihat pada potongan script berikut ini :
dari 50. Struktur kondisi tingkat kedekatan Mira
dapat diliat pada potongan script berikut ini : GameState.Instance.setVit(1.5f);
if(GameState.Instance.getMira() == 0) {
//State Perkenalan 3. Variable Popluer
} else if(GameState.Instance.getMira()<= 20)
Variable popluer karakter utama dapat
{
//State Teman ditingkatkan dengan mengobrol kepada karakter
} else if(GameState.Instance.getMira()<= 50) NPC pendukung. Nilai variable populer akan
{ bertambah sebanyak 0.5 poin setiap karakter utama
//State Teman Baik mengobrol dengan NPC pendukung, semakin
} else {
//State Teman Dekat }
banyak pemain membuat karakter utama mengobrol
semakin besar juga nilai akumulasi variable
populer. Perhitungan variable populer dapat dilihat
3. Tingkat Kedekatan Fina pada potongan script berikut ini :
Struktur kondisi untuk 4 tingkat kedekatan
karakter utama dengan karakter Fina, semakin GameState.Instance.setSiswa(id,
tinggi nilai variable Fina semakin dekat 0.5f);
hubungannya. Tingkat pertama adalah perkenalan
saat variable Fina masih bernilai kosong. Tingkat
Jurnal Informatika Mulawarman Vol. 11 No. 1 Februari 2016 21

3.3.3 Perhitungan Akhir Karakter NPC masing-masing untuk menghubungakan satu scene
Pada akhir permainan pemain diharuskan dan scene lainnya.
untuk menyatakan perasaan kepada salah satu
karakter NPC. Akhir permainan adalah hari ke-30 3.3.5 Scene Mulai
di dalam game dan pada saat itu tingkat kedekatan Scene Mulai dapat diakses melalui tombol
karakter NPC selama permainan akan Mulai pada scene menu utama. Scene mulai adalah
diakumulasikan untuk menentukan keberhasilan scene utama untuk memainkan game. Saat
pemain. permainan pertama kali kali dimulai karakter utama
1. Akumulasi Karakter Tara akan berada di ruang kamar dan setelah itu pemain
Perhitungan akumulasi karakter Tara adalah dapat mengontrol karakter utama untuk pindah ke
hasil akumulasi yang diambil dari 60% variable ruangan lain dan juga berinteraksi dengan NPC.
Tara dan 40% variable kecerdasan. Hasil akumulasi Total terdapat 5 (lima) scene ruangan yang dapat
akan menjadi variable penentu ketika karakter didatangi oleh pemain yaitu scene ruang kamar,
utama menyatakan perasaan kepada Tara. Pemain scene ruang kelas, scene aula sekolah, scene
hanya akan berhasil jika hasil akumulasi variable perpustakaan, dan scene halaman sekolah.Tampilan
bernilai lebih dari 65 dan akan gagal jika dibawah scene ruang kamar dapat dilihat pada gambar 7.
65. Nilai 65 adalah nilai minimum hasil akumulasi
Tara selama 30 hari permainan.
2. Akumulasi Karakter Mira
Perhitungan akumulasi karakter Mira adalah
hasil akumulasi yang diambil dari 60% variable
Mira dan 40% variable populer. Hasil akumulasi
akan menjadi variable penentu ketika karakter
utama menyatakan perasaan kepada Mira. Pemain
hanya akan berhasil jika hasil akumulasi variable
bernilai lebih dari 65 dan akan gagal jika dibawah
65. Nilai 65 adalah nilai minimum hasil akumulasi
Mira selama 30 hari permainan.
3. Akumulasi Karakter Fina
Perhitungan akumulasi karakter Fina adalah
hasil akumulasi yang diambil dari 60% variable
Fina dan 40% variable populer. Hasil akumulasi Gambar 7. Scene Ruang Kamar
akan menjadi variable penentu ketika karakter Ketika pemain mengarahkan karakter utama
utama menyatakan perasaan kepada Fina. Pemain menuju pintu untuk berpindah ruangan, maka akan
hanya akan berhasil jika hasil akumulasi variable muncul kotak dialog untuk memberikan pemain
bernilai lebih dari 65 dan akan gagal jika dibawah pilihan ruangan yang akan dituju. Tampilan kotak
65. Nilai 65 adalah nilai minimum hasil akumulasi dialog pindah ruangan dapat dilihat pada gambar 8.
Tara selama 30 hari permainan.

3.3.4 Scene Menu Utama

Gambar 8. Kotak Dialog Pindah Ruangan


Gambar 6. Scene Menu Utama
Karakter utama yang diarahkan berjalan
Gambar 6 merupakan scene yang pertama kali menuju karakter NPC hingga bersentuhan akan
ditampilkan pada saat pemain memasuki sistem. menampikan kotak dialog obrolan antara karakter
Terdapat logo “The Relationship” yang merupakan NPC dan karakter utama yang akan berpengaruh
judul game serta terdapat 4 tombol utama yaitu terhadap variable karakter NPC. Tampilan kotak
Mulai, Cara bermain, Daftar, dan Keluar. Setiap dialog mengobrol dapat dilihat pada gambar 9.
tombol pada scene utama memiliki fungsinya
22 Vol. 11 No. 1 Februari 2016 Jurnal Informatika Mulawarman

sehingga lebih banyak pilihan yang


ditawarkan.
3. Perhitungan tingkat kedekatan karakter NPC
dan karakter utama yang lebih baik agar
membuat pemain lebih tertantang.

DAFTAR PUSTAKA
[1] Costikyan, Greg. 2013. Uncertainty in
Games (Playful Thinking). MIT Press.
[2] Ekaputra, Valentino. 2014. Analisis dan
Perancangan Aplikasi Game Multiplayer
Life Simulation “Pet Master” Menggunakan
Game Engine Unity 3D. Jakarta:
Gambar 9. Kotak Dialog Mengobrol Universitas Bina Nusantara.
[3] Hikam, Arif Rahman. 2013. Pengembangan
Selain menampilkan kotak dialog mengobrol, Game Edukasi Visual Novel berbasis
ketika karakter utama menyentuh karakter NPC Pembangunan Karakter pada Materi
juga akan menampilkan kotak dialog pertanyaan.
Pelestarian Lingkungan. Semarang:
Setiap jawaban dari pertanyaan yang diberikan oleh
Universitas Negeri Semarang.
NPC akan berpengaruh terhadap variable karakter
NPC. Tampilan kotak dialog pertanyaan dapat [4] Setiawan, I. 2006. Perancangan Software
dilihat pada gambar 10. Embedded System Berbasis FSM. Semarang:
Universitas Diponegoro.
[5] Rostianingsih, Silvia. 2013. Game Simulasi
Finite State Machine Untuk Pertanian dan
Peternakan. Surabaya: Universitas Kristen
Petra.
[6] Utari, Dely. 2012. Analisis Dan
Implementasi Algoritma Backtracking Pada
Permainan Hangman. Medan: Universitas
Sumatera Utara.
[7] Wijaya, Surya Adi. 2009. Fuzzy State
Machine Untuk Menghasilkan Variasi
Respon Npc (Non-Playable Character) Pada
Game. Tesis. Surabaya: Institut Teknologi
Gambar 10. Kotak Dialog Pertanyaan NPC Surabaya.

KESIMPULAN
Berdasarkan hasil dri penerapan metode finite
state machine pada game “The Relationship”
diperoleh kesimpulan antara lain:
1. Penerapan metode finite state machine
menghasilkan respon NPC yang berbeda
menyesuaikan apa yang telah dimainkan oleh
pemain.
2. Hasil akhir game yang ditentukan oleh pemain
karena metode finite state machine
menawarkan pilihan sepanjang permainan
berlangsung.

SARAN
Dari hasil penelitian yang dilakukan, disadari
masih banyak kekurangan dalam sistem, beberapa
saran yang dapat berguna untuk mengembangkan
sistem, antara lain:
1. Memperbanyak interaksi NPC yang lebih
kompleks agar semakin banyak kemungkinan
respon yang didapatkan oleh pemain.
2. Menambahkan lebih banyak karakter NPC
yang bisa didekati oleh karakter utama

Anda mungkin juga menyukai