RANCANG BANGUN GAME ROGUELIKE 2D TOP DOWN
SHOOTING MENGGUNAKAN ALGORITMA DRUNKARD
WALK
SKRIPSI
Diajukan sebagai salah satu syarat untuk memperoleh gelar Sarjana Komputer (S.Kom.)
Disusun Oleh Handy Goandy
00000010056
PROGRAM STUDI INFORMATIKA FAKULTAS TEKNIK DAN INFORMATIKA UNIVERSITAS MULTIMEDIA NUSANTARA
TANGERANG 2019
v
KATA PENGANTAR
Puji Syukur kepada Tuhan Yang Maha Esa atas rahmat dan karunia-Nya
yang berlimpah sehingga penulis dapat menyelesaikan Skripsi yang berjudul “Rancang Bangun Game Roguelike 2D Top Down Shooting Menggunakan
Algoritma Drunkard Walk”. Pembuatan laporan ini ditujukan untuk memenuhi
syarat kelulusan pada mata kuliah skripsi dan juga dibuat dengan ketepatan waktu
penulis untuk memperoleh gelar Sarjana Komputer (S.Kom).
Selama penulis mengerjakan Skripsi, tentunya tidak pernah terlepas dari dukungan
dan keterlibatan dari semua pihak yang membantu terwujudnya laporan Skripsi ini.
Untuk itu ucapan terima kasih tidak lupa ditunjukkan kepada.
1. Dr. Ninok Leksono, Rektor Universitas Multimedia Nusantara, yang memberi
inspirasi bagi penulis untuk berprestasi,
2. Friska Natalia, S.Kom., M.T., Ph.D., Dekan Fakultas Teknik dan Informatika
Universitas Multimedia Nusantara,
3. Nunik Afriliana, S.Kom., M.M.S.I. Ketua Program Studi Informatika
Universitas Multimedia Nusantara, yang menerima penulis dengan baik untuk
berkonsultasi,
4. Seng Hansun, S.Si., M.Cs. yang membimbing pembuatan skripsi dan yang telah
mengajarkan tata cara penulisan karya ilmiah dengan benar terhadap penulis,
5. Julio Christian Young, S.Kom., M.Kom. selaku Dosen Pembimbing Skripsi
yang telah membantu dan memberikan banyak masukan kepada penulis selama
vii
RANCANG BANGUN GAME ROGUELIKE 2D TOP DOWN
SHOOTING MENGGUNAKAN ALGORITMA DRUNKARD
WALK
ABSTRAK
Video Game adalah sebuah jenis permainan yang dimainkan oleh pemain yang
berinteraksi dengan perangkat video. Video Game sendiri merupakan bagian dari
entertainment yang berkembang pesat setiap tahunnya seiring dengan
berkembangnya konten dan permintaan dari pemain. Untuk meningkatkan perkembangan konten, permainan itu harus dapat menciptakan suasana permainan yang tidak membosankan seperti meningkatkan Replayability, yaitu konten yang dihasilkan secara berulang kali dan unik untuk meningkatkan long-term enjoyment. Salah satu genre permainan yang dapat mencapai nilai Replayability adalah permainan Roguelike, di mana permainan ini mengandalkan Procedural Content
Generation dan sistem permadeath sebagai mekanisme dari permainan. Dengan
memberikan Procedural Content Generation, konten permainan yang diciptakan secara otomatis dan acak dapat meningkatkan nilai Replayability. Salah satu algoritma yang termasuk bagian dari Procedural Content Generation adalah algoritma Drunkard Walk, di mana algoritma ini menciptakan ruangan dan konten dari suatu permainan berdasarkan arah pergerakan algoritma itu pergi. Pergerakan yang bersifat tidak pasti dapat menghasilkan sebuah ruangan dan konten secara acak. Namun metode ini tidak memiliki riset yang banyak dalam perkembangan permainan bersifat Procedural Content Generation. Padahal metode ini dapat membantu untuk memotong biaya permainan tanpa menghilangkan konten dari permainan tersebut. Berdasarkan permasalhan tersebut, dibangun sebuah permainan Roguelike yang menerapkan metode tradisional berupa Top-Down Shooting dan menerapkan algoritma Drunkard Walk untuk meningkatkan tingkat kepuasan pemain terhadap permainan yang mereka mainkan. Permainan ini berhasil dibangun dengan baik dan diuji kepada 30 responden untuk mengetahui tingkat kepuasan responden terhadap permainan yang telah dibuat. Permainan yang diuji lalu dievaluasi dengan Game User Experience Satisfaction Scale (GUESS) dan mendapatkan hasil 71% (Bagus) pada tingkat kepuasannya.
viii
DESIGN AND DEVELOPMENT OF 2D TOP DOWN
SHOOTING ROGUELIKE GAME USING WALK DRUNKARD
ALGORITHM
ABSTRACT
Video Game is a type of game that is played by players who interact with video devices. Video Game itself is a part of entertainment that grows rapidly every year along with the development of content and demand from players. To improve the development of content, the game must be able to create a non-boring game atmosphere such as increasing Replayability, which is repeatedly and unique content that is produced to increase long-term enjoyment. One of the game genres that can achieve Replayability is the Roguelike game, where the game relies on Procedural Content Generation and permadeath systems as the mechanism of the game. By providing Procedural Content Generation, game content that is created automatically and randomly can increase the value of Replayability. One algorithm that is part of the Procedural Content Generation algorithm is the Drunkard Walk, where the algorithm creates space and content from a game based on the direction the algorithm is going. Uncertain movements can generate a random space and content. However, this method does not have much research in the development of procedural content generation games. Though this method can help to cut game costs without removing the content from the game. Based on this problem, a Roguelike game was built that applied the traditional method of Top-Down Shooting and implemented the Drunkard Walk algorithm to increase the level of player satisfaction with the game they were playing. This game was successfully built and tested on 30 respondents to find out the level of satisfaction of respondents with the game that was made. The tested game is then evaluated with the Game User Experience Satisfaction Scale (GUESS) and gets a 71% (good) result on the level of satisfaction.
ix
DAFTAR ISI
HALAMAN JUDUL ... i
LEMBAR PENGESAHAN SKRIPSI ... ii
PERNYATAAN TIDAK MELAKUKAN PLAGIAT ... iii
PERNYATAAN PERSETUJUAN PUBLIKASI ... iv
KATA PENGANTAR ... v
ABSTRAK ... vii
ABSTRACT ... viii
DAFTAR ISI ... ix
DAFTAR GAMBAR ... xi
DAFTAR TABEL ... xiii
BAB I PENDAHULUAN ... 1
1.1 Latar Belakang Masalah ... 1
1.2 Rumusan Masalah ... 4
1.3 Batasan Masalah ... 5
1.4 Tujuan Penelitian ... 5
1.5 Manfaat Penelitian ... 6
1.6 Sistematika Penulisan ... 6
BAB II LANDASAN TEORI ... 8
2.1 Video Game Design ... 8
2.2 Roguelike ... 8
2.3 Drunkard Walk Algorithm ... 12
2.4 Pathfinding ... 15
2.5 Game User Experience Satisfaction Scales ... 16
BAB III METODE DAN PERANCANGAN SISTEM ... 20
3.1 Metodologi Penelitan ... 20
3.2 Perancangan Aplikasi ... 21
3.2.1 Struktur Permainan ... 21
3.2.2 Flowchart Penggunaan Asset ... 25
3.2.3 Penggunaan Aset ... 34
3.2.4 Desain Mockup ... 36
BAB IV IMPLEMENTASI DAN UJI COBA ... 41
4.1 Spesifikasi Sistem ... 41
4.2 Implementasi ... 41
4.2.1 Roguelike ... 42
4.2.2 Drunkard Walk Algorithm ... 43
4.3 Hasil Implementasi ... 53
4.4 Pembuatan dan Pengujian Aplikasi ... 59
4.5 Evaluasi ... 60
BAB V SIMPULAN DAN SARAN ... 65
5.1 Simpulan ... 65
5.2 Saran ... 66
x
xi
DAFTAR GAMBAR
Gambar 2.1 Gameplay Rogue ... 12
Gambar 2.2 Hasil dari PCG terhadap permainan Rogue ... 13
Gambar 2.3 Nuclear Throne merupakan contoh permainan RogueLike PCG ... 14
Gambar 2.4 Hasil dari pergerakan algoritma A* Pathfinding ... 16
Gambar 2.5 Skala likert yang dijadikan pengukuran pada GUESS ... 18
Gambar 3.1 Flowchart pada sistem Main Menu ... 25
Gambar 3.2 Flowchart pada sistem Cutscene ... 26
Gambar 3.3 Flowchart untuk mekanisme GamePlay Scene ... 27
Gambar 3.4 Flowchart untuk mekanisme Level Generator ... 29
Gambar 3.5 Flowchart untuk mekanisme Boss Level ... 31
Gambar 3.6 Flowchart kendali pada pemain ... 32
Gambar 3.7 Flowchart untuk mekanisme Enemy Patrol ... 33
Gambar 3.8 Mockup Splash Screen ... 36
Gambar 3.9 Mockup awal pada Main Menu ... 36
Gambar 3.10 Mockup pada Settings ... 37
Gambar 3.11 Mockup pada How to Play ... 37
Gambar 3.12 Mockup pada Statistics ... 38
Gambar 3.13 Mockup pada Cutscene ... 38
Gambar 3.14 Mockup Gameplay ... 39
Gambar 3.15 Mockup ketika Paused ... 39
Gambar 3.16 Mockup ketika Game Over... 40
Gambar 4.1 Potongan kode untuk menyimpan data permainan ... 42
Gambar 4.2 Potongan kode untuk mengatur ulang statistik pemain ... 42
Gambar 4.3 Potongan kode untuk penciptaan ruangan secara umum ... 43
Gambar 4.4 Potongan kode untuk membuat ruangan permainan ... 44
Gambar 4.5 Potongan kode yang mempengaruhi Drunkard Walk ... 45
Gambar 4.6 Potongan kode untuk menciptakan template lantai ... 46
Gambar 4.7 Potongan kode untuk menghitung jumlah lantai yang dibuat ... 48
Gambar 4.8 Potongan kode untuk template dinding ... 48
Gambar 4.9Potongan kode untuk menciptakan objek lantai dan dinding ... 49
Gambar 4.10 Potongan kode untuk membuat spawn objek didalam Grid ... 50
Gambar 4.11 Potongan kode untuk menghilangkan satu dinding ... 50
Gambar 4.12 Potongan kode berupa Spawn Enemy ... 51
Gambar 4.13 Potongan kode berupa Spawn Ammo ... 52
Gambar 4.14 Potongan kode untuk Spawn pemain ... 53
Gambar 4.15 Tampilan Menu utama... 54
Gambar 4.16 Tampilan pada “How to Play” ... 54
Gambar 4.17 Tampilan pada statistik pemain ... 55
Gambar 4.18 Tampilan pada cutscene awal... 55
Gambar 4.19 Tampilan pada Gameplay Scene ... 56
Gambar 4.20 Tampilan hasil dari level stage yang dibuat dari drunkard walk .... 57
Gambar 4.21 Tampilan ketika permainan pause ... 58
Gambar 4.22 Tampilan Game Over ... 58
Gambar 4.23 Tampilan Credits setelah keluar dari permainan ... 59
xii
Gambar 4.25 Pie Chart Peserta yang Mengisi Kuesioner ... 61
xiii
DAFTAR TABEL
Tabel 3.1 Tabel Daftar Aset ... 34 Tabel 4.1 Tabel Hasil Keseluruhan GUESS...64