Institutional Repository | Satya Wacana Christian University: 3D LAN Tower Defence PC Game dengan Menggunakan Unreal Development Kit dan UnrealScript

3D LAN Tower Defence PC Game dengan Menggunakan
Unreal Development Kit dan UnrealScript

Oleh:
Michael Ade Soewondo
NIM: 612005048

Skripsi
Untuk melengkapi persyaratan memperoleh
Gelar Sarjana Teknik Elektro

FAKULTAS TEKNIK ELEKTRONIKA DAN KOMPUTER
UNIVERSITAS KRISTEN SATYA WACANA
SALATIGA
2012

3D LAN Tower Defence PC Game dengan Menggunakan
Unreal Development Kit dan UnrealScript

Oleh:
Michael Ade Soewondo

NIM: 612005048

Skripsi ini telah diterima dan disahkan
Sebagai salah satu persyaratan guna mencapai
SARJANA TEKNIK ELEKTRO

FAKULTAS TEKNIK ELEKTRONIKA DAN KOMPUTER
UNIVERSITAS KRISTEN SATYA WACANA
SALATIGA

Disahkan oleh :
Pembimbing I

Pembimbing II

Handoko, M.Eng

Hartanto K. Wardana,MT.

Tgl.


Tgl.

INTISARI
Teknologi komputer grafis telah mengalami perkembangan yang sangat pesat dalam
kurun waktu 1 dekade terakhir. Salah satu industri yang sangat dipengaruhi oleh
perkembangan teknologi komputer grafis adalah industri game. Berangkat dari
kesadaran ini, penulis mempunyai mimpi untuk ikut mengambil bagian dalam industri
game dengan membuat game sebagai topik skripsi sebagai langkah awal.
Game dibuat dengan menggunakan game engine Unreal Development Kit (UDK) yang
tersedia gratis. UDK dipilih karena memiliki beberapa kelebihan, diantaranya fiturnya
yang lengkap sebagai game engine, komunitas yang cukup besar, dan free license untuk
pemakaian non komersial. UDK juga dipilih dengan pertimbangan penulis akan
memberikan evaluasi terhadap game engine tersebut.
Game yang telah berhasil dibuat adalah game berjenis tower defence yang dapat
dimainkan secara multiplayer hingga maksimal 4 pemain. Evaluasi game engine
menunjukkan bahwa UDK memang adalah game engine terbaik yang bebas digunakan
dengan tujuan non komersial. Dari hasil pengujian, menunjukkan adanya korelasi antara
performa benchmark suatu graphic card dengan frame rate game, dimana semakin
tinggi nilai benchmark, maka semakin tinggi pula frame rate yang dihasilkan.


i

KATA PENGANTAR

Skripsi ini disusun untuk melengkapi salah satu syarat untuk guna mencapai
gelar Sarjana Teknik Elektro di Fakultas Teknik Elektronika dan Komputer Universitas
Kristen Satya Wacana.
Pelaksanaan skripsi ini merupakan kesempatan yang berharga bagi penulis untuk
belajar menuangkan ide dan kreativitas yang bermanfaat bagi perkembangan diri
penulis maupun merupakan sumbangan bagi masyarakat di mana penulis berada, secara
khusus bagi perkembangan ilmu di bidang elektro komputasi.
Diharapkan dengan adanya skripsi ini mahasiswa menjadi termotivasi untuk
memdalami teknik pemrograman grafis bahkan hingga fakultas dapat mengembangkan
engine grafisnya sendiri.

Segala puji syukur kepada Tuhan Yesus Kristus untuk setiap kasih, berkat,
hikmat, dan talenta yang telah diberikan. Apa yang telah dicapai penulis sejauh ini
tentu tidak terlepas dari bimbingan dan dorongan dari berbagai pihak. Oleh karena itu
dalam kesempatan ini penulis ingin mengucapkan terima kasih yang sebesar – besarnya

kepada:
1.

Bapak Handoko, M.Eng sebagai pembimbing I dan Bapak Hartanto K Wardana,
MT sebagai pembimbing II. Terima kasih atas dukungan, koreksi, dan sumbangan
pemikiran yang membantu penulis dalam menyusun skripsi ini.

2.

Bapak Andreas AF, MT dan Bapak Drs. Harsono selaku wali studi untuk
bimbingan dan pengarahan selama menentukan rencana studi dan skripsi.

3.

Staff administrasi khususnya Mas Witjak dan Mbak Tin.

4.

Seluruh keluarga besar, papi, mami, dan adik yang telah banyak memberikan
dukungan moril maupun materiil.

ii

5.

Special thanks to John P Doran From Digipen Singapore who helped me to
understand Unrealscript.

6.

Teman Elektro: Ore, Tjiong, Patria, Yabert dan semua yang tidak dapat penulis
sampaikan satu-persatu. Terima kasih telah membantu memberi masukan ketika
penulis sedang mengerjakan skripsi ini.

7.

Teman-teman PEDRO yang selalu setia menemani penulis bermain sebagai
hiburan saat penulis mengalami kepenatan dalam mengerjakan skripsi.
Akhir kata penulis berharap semoga skripsi ini dapat bermanfaat bagi mereka

yang membutuhkan, meskipun masih jauh dari sempurna. Penulis menantikan kritik dan

saran untuk skripsi ini agar dapat dikembangkan guna mencapai hasil terbaik.

Salatiga, Januari 2012
Penyusun

iii

DAFTAR ISI

Halaman
INTISARI ………………………………………………………………………….

i

KATA PENGANTAR …………………………………………………………….

ii

DAFTAR ISI ………………………………………………………………………


iv

DAFTAR TABEL ………………………………………………………………… vii
DAFTAR GAMBAR …………………………………………………………….. viii

BAB I PENDAHULUAN …………………………………………………………. 1
1.1 Latar Belakang ………………………………………………………..

1

1.2 Maksud dan Tujuan …………………………………………………..

3

1.3 Batasan Masalah ………………………………………………………

3

1.4 Gambaran Tugas ………………………………………………………. 5
1.5 Garis Besar Penulisan …………………………………………………


6

BAB II DASAR TEORI …………………………………………………..……….. 8
2.1 Game Engine ………………………………………………..………… 8
2.1.1 Apa itu Game Engine …………………………………………. 8
2.1.2 Komponen Game Engine ……………………..…….………… 9
2.2 Unreal Development Kit ……………………………………………… 12
2.2.1 UnrealScript …………………………………………………… 12
2.2.1.1 Istilah-Istilah Bahasa………………………………….. 13
2.2.1.2 Hirarki Bahasa………………………………………….. 14
2.2.1.3 Contoh Kode……….…………………………………… 15
iv

2.2.2 UnrealEd …………………………………………………….... 16
2.2.2.1 Kismet……..……….…………………………………. 17
2.2.2.2 Archetype….……….…………………………………. 18
2.2.2.3 Matinee…………….…………………………………. 21
2.2.2.4 Material Editor…….………………………………….. 23
2.2.2.5 Cascade…………….…………………………………. 24

2.2.2.6 AnimSet Editor…….…………………………………. 28
2.2.2.7 AnimTree Editor….…………………………………… 31
2.2.2.8 Lightmass………….………………………………….. 34
2.2.2.9 Navigation Mesh….…………………………………..

36

2.3 SpeedTree ……………………………………………………………. 38

BAB III PERANCANGAN SISTEM ……………………………………………. 41
3.1 Cerita Dalam Game ……………….…………………………………

41

3.2 Mekanisme dalam game …………………………………………….

42

3.3 Kontrol ……………………………...………………………………..


42

3.4 Map/Peta ...…………………………………………………………… 43
3.5 HUD (Heads Up Display) ……………………………………………. 44
3.6 Menu Utama ……………….………………………………………… 45
3.7 Sistem Gameplay ………………….…………………………………

46

3.7.1 Sistem Wave Spawner atau Wave Generator…………………..

47

3.7.2 Sistem Penghitung kerusakan markas………………………….. 50
3.7.3 Sistem Tower ……………………………….………………….. 53
3.7.4 Sistem HUD dan Menu……………………...………………….. 55

v

3.8 Sistem Multiplayer …………………………………………………… 56

3.9 Class Diagram ………………………………………………………… 58

BAB IV PENGUJIAN DAN ANALISIS ………………………………………… 61
4.1 Penilaian terhadap UDK ...…………………………………………… 61
4.1.1 Pembelajaran …………………………………………………… 61
4.1.2 Kecepatan Pengembangan……………………………………… 63
4.1.3 Fleksibilitas ..…………………………………………………… 64
4.1.4 Stabilitas ..……………………………………………………… 65
4.1.5 Dokumentasi .…………………………………………………… 65
4.1.6 Lisensi ……..…………………………………………………… 66
4.1.7 Kemampuan Berkompetisi……………………………………… 68
4.2 Usability Testing ………..……………………………………………

69

4.3 Compatibility Testing ………….…………………………………….

70

BAB V KESIMPULAN DAN SARAN ………………………………………….. 73
5.1 Kesimpulan …………………………………………………………… 73
5.2 Saran …………………………………………………………………. 74

DAFTAR PUSTAKA …………………………………………………………….. 75

vi

DAFTAR TABEL

Halaman
Tabel 3.1 Kontrol Pada Game……………………………………………………… 42
Tabel 4.1 Kemampuan yang dibutuhkan dalam pengembangan……………..…… 62
Tabel 4.2 Kelebihan dan kekurangan pada pembelajaran……………...………… 62
Tabel 4.3 Kelebihan dan kekurangan pada kecepatan pengembangan…………... 63
Tabel 4.4 Kelebihan dan kekurangan pada fleksibilitas …………………………

64

Tabel 4.5 Kelebihan dan kekurangan pada stabilitas ……………………………

65

Tabel 4.6 Kelebihan dan kekurangan pada dokumentasi ………………………… 66
Tabel 4.7 Kelebihan dan kekurangan pada lisensi ………………………….…… 67
Tabel 4.8 Kelebihan dan kekurangan pada kemampuan berkompetisi………..…

69

Tabel 4.9 Hasil usabillity testing ……………………..…………………………

69

Tabel 4.10 Hasil compatibility testing …………………………………………… 71

vii

DAFTAR GAMBAR
Halaman
Gambar 2.1 Tampilan Kismet Editor…………………………………………….

18

Gambar 2.2 Tampilan Unreal Editor memperlihatkan rumah hasil archetype….

20

Gambar 2.3 User Interface dari Matinee...……………………………………….

21

Gambar 2.4 Screenshot Material Editor………………………………………….

24

Gambar 2.5 User Interface Unreal Cascade.……………………………………..

25

Gambar 2.6 Screenshot dari AnimSet Editor .…………………………………..

31

Gambar 2.7 Tampilan AnimTree Editor………………………………..………..

32

Gambar 2.8 Contoh animasi kompleks dengan AnimTree.……………………..

34

Gambar 2.9 Perbandingan hasil bayangan dengan dan tanpa lights..…………..

35

Gambar 2.10 Contoh visualisasi ruangan dengan sistem pencahayaan langsung.

36

Gambar 2.11 Cahaya menembus jendela terlihat menarik…..…………………..

36

Gambar 2.12 Contoh Ambient Occlusion.……………………………………….. 37
Gambar 2.13 Navigation mesh pada Unreal Editor……………………………… 38
Gambar 2.14 User Interface dari SpeedTree………………...…………………….. 39
Gambar 2.15 Interaksi antara mesh dengan SpeedTree……………………….….. 40
Gambar 3.1 Konsep awal map……………………………..…………………….. 43
Gambar 3.2 Custom HUD ………………………………...……………………..

45

Gambar 3.3 Main Menu …………………………………..……………………..

45

Gambar 3.4 Diagram alir sistem wave spawner……………….………………..

48

Gambar 3.5 Contoh pemrograman visual dengan Kismet .……………………..

50

Gambar 3.6 Diagram alir sistem penghitung kerusakan markas………………..

51

Gambar 3.7 Diagram alir sistem tower…………………...……………………..

55

Gambar 3.7 Model relasi server-client…………………...……………………..

57

viii

Gambar 3.9 Class Diagram dari game …………………….…………………….. 58
Gambar 4.1 Hasil benchmark dari cpubenchmark.net……..……………………..

ix

72