Nama Tegar Anurgrah P
Tempat/Tanggal Lahir Bandung, 2 Agustus 1988
Jenis Kelamin Laki-laki
Warga Negara Indonesia
Agama Islam
Status Belum Menikah
Tinggi/Berat Badan ±175cm/±65kg
Alamat Kebon Jayanti No.151/134B RT/RW 03/03
Email ptegaranugrah@yahoo.com
2. PENDIDIKAN FORMAL
2007 – 2013
Strata-1 (S1) Jurusan Teknik Informatika
Universitas Komputer Indonesia (UNIKOM) Bandung
2004 – 2007 SMA Pasundan 1 Bandung
2001 – 2004 SMP Negeri 46 Bandung
SKRIPSI
Diajukan untuk Menempuh Ujian Akhir Sarjana Program Studi S1 Teknik Informatika
Fakultas Teknik dan Ilmu Komputer
TEGAR ANUGRAH PRABEUS
10108508
PROGRAM STUDI TEKNIK INFORMATIKA
FAKULTAS TEKNIK DAN ILMU KOMPUTER
iii
rahmat hidayah dan karunia-Nya, shalawat serta salam semoga selalu tercurah
kepada Rasulullah SAW, sehingga penulis dapat menyelesaikan skripsi yang
berjudul “Pembangunan Game Tiga Sahabat Berbasis Desktop”.
Adapun tujuan dari penyusunan skripsi ini adalah untuk memenuhi salah
satu syarat dalam menyelesaikan studi jenjang strata satu (S1) di Program Studi
Teknik Informatika, Universitas Komputer Indonesia.
Dengan keterbatasan ilmu dan pengetahuan yang dimiliki oleh penulis,
maka penulis membutuhkan peran serta dari pihak lain dalam proses penyelesaian
skripsi ini. Oleh karena itu ijinkanlah penulis untuk menyampaikan ucapan terima
kasih yang sebesar-besarnya kepada :
1. Allah SWT, yang telah memberikan rahmat, hidayah, dan karunia-Nya
kepada penulis sehingga dapat menyelesaikan skripsi dengan baik.
2. Nabi Muhammad Rasulullah SAW yang telah menyampaikan wahyu Allah.
3. Kedua Orang Tua yang telah memberikan kasih sayang, doa dan dorongan
baik moril dan materil yang tiada henti.
4. Bapak Dr. Ir. Eddy Soeryanto Soegoto, M.Sc., selaku rektor Universitas
Komputer Indonesia.
5. Bapak Prof. Dr. H Denny Kurniadie, Ir., M.Sc., selaku Dekan Fakultas
Teknik dan Ilmu Komputer
6. Bapak Irawan Afrianto, S.T., M.T., selaku Ketua Jurusan Program Studi
Teknik Informatika UNIKOM.
7. Ibu Ednawati Rainarli, S.Si., M.Si., selaku dosen pembimbing. Terima kasih
karena telah banyak meluangkan waktu untuk memberikan bimbingan, saran
iv
9. Bapak Irawan Afrianto, S.T., M.T., selaku dosen wali kelas IF-10 Angkatan
2008.
10. Seluruh staf dosen jurusan Teknik Informatika Universitas Komputer
Indonesia.
11. Sekretariat jurusan Teknik Informatika Universitas Komputer Indonesia.
12. Special ucapan terimakasih untuk Nurul Fathiah Arsuti Dalimunthe atas
dukungan dan doa selama mengerjakan skripsi ini.
13. Atep O, Arif TM, Ahmad, Ahmad V, Aji E, Anggi, Ali B, Beni K, Diky,
Deni G, Deni MCD, Dewan, Hilman, Edy, Febri T, Fauzan, Jafrin, Lutfi S,
Refi S, Tegar G, Toro G, Yana, Zul, Yudi MC yang telah mendukung dan
bersedia untuk meminjamkan buku selama penyusunan skripsi ini.
14. Teman-teman di Jurusan Teknik Informatika Angkatan 2008 khususnya kelas
IF-10 terima kasih atas doa, bantuan dan dorongannya.
15. Serta semua pihak yang telah turut membantu dalam penyusunan skripsi ini,
yang tidak bisa disebutkan satu persatu.
Didalam penulisan skripsi ini, penulis telah berusaha semaksimal mungkin
walaupun demikian penulis menyadari bahwa skripsi ini jauh dari sempurna.
Untuk itu penulis akan selalu menerima segala masukan yang ditujukan untuk
menyempurnakan skripsi ini. Akhir kata, penulis berharap semoga skripsi ini
dapat bermanfaat bagi penulis pada khususnya dan pembaca pada ummnya.
Wassalamualaikum Wr. Wb.
Bandung, Februari 2013
v
ABSTRAK ... i
ABSTRACT ... ii
KATA PENGANTAR ... iii
DAFTAR ISI ... v
DAFTAR GAMBAR ... viii
DAFTAR TABEL ... x
DAFTAR SIMBOL ... xii
DAFTAR PROPERTI GAME ... xiii
DAFTAR LAMPIRAN ... xiv
BAB I PENDAHULUAN ... 1
I.1 Latar Belakang Masalah ... 1
I.2 Perumusan Masalah ... 2
I.3 Maksud dan Tujuan ... 2
I.4 Batasan Masalah ... 3
I.5 Metode Penelitian ... 3
I.6 Sistematika Penulisan ... 5
BAB II TINJAUAN PUSTAKA ... 7
II.1 Multimedia ... 7
II.1.1 Jenis Multimedia ... 8
II.2 Game ... 9
II.2.1 Game 2d ... 10
II.2.2 Game Multiplayer ... 11
II.2.3 Game Pathfinding ... 11
II.2.4 Genre Game ... 11
II.3 Kecerdasan Buatan ... 12
II.3.1 Algoritma Pencarian (Search Algoritms) ... 14
vi
II.4 Diagram Konteks ... 20
II.4.1 Data Flow Diagram (DFD)... 21
II.5 Adobe Flash ... 22
II.6 ActionScript ... 22
II.7 Adobe Illustrator ... 22
BAB III ANALISIS DAN PERANCANGAN SISTEM ... 23
III.1 Analisis Sitem ... 23
III.1.1 Analisi Game ... 23
III.1.1.1 Battle City1990 ... 24
III.1.1.1.1 Storyline Game Battle City 1990 ... 24
III.1.1.1.2 Storyboard Game Battle City 1990 ... 24
III.1.2 Analisi Game Yang Akan Dikembangkan ... 26
III.1.2.1 Storyline ... 26
III.1.2.2 Gameplay ... 26
III.1.2.3 Komponen Pada Game Tiga Sahabat ... 29
III.1.2.4 Analisis Tingkat Kesulitan ... 30
III.1.2.5 Analisis Scoring ... 32
III.2 Analisis Algoritma ... 32
III.2.1 Struktur Data Game Tiga Sahabat ... 32
III.2.2 Analisis Algoritma A* ... 33
III.3 Analisis dan Kebutuhan Non-Fungsional ... 37
III.3.1 Analisis Perangkat Keras ... 37
III.3.2 Analisis Perangkat Lunak ... 37
III.3.3 Analisis Pengguna ... 38
III.4 Anlisis dan Kebutuhan Fungsional ... 39
III.4.1 Spesifikasi Proses ... 43
vii
III.5.1.3 Storyboard ... 50
III.5.2 Perancangan Struktur Menu ... 53
III.5.3 Perancangan Antarmuka ... 54
III.5.4 Perancangan Pesan ... 60
III.5.5 Jaringan Semantik ... 61
III.5.6 Perancangan Prosedural ... 61
BAB IV IMPLEMENTASI DAN PENGUJIAN SISTEM ... 65
IV.1 Implementasi Sistem ... 65
IV.1.1 Perangkat Keras yang Digunakan ... 65
IV.1.2 Perangkat Lunak yang Digunakan ... 66
IV.2 Implementasi Aplikasi ... 66
IV.2.1 Implementasi Antarmuka ... 67
IV.3 Pengujian Sistem ... 79
IV.3.1 Pengujian Alpha ... 79
IV.3.1.1 Kasus dan Hasil Pengujian Black-box ... 81
IV.3.1.2 Kasus dan Hasil Pengujian White-box ... 84
IV.3.1.3 Kesimpulan Hasil Pengujian White-boxdan Black-box ... 89
IV.3.2 Pengujian Beta ... 89
IV.3.2.1 Pertanyaan Pengguna ... 89
IV.3.2.2 Kuesioner ... 90
IV.3.2.2.1 Hasil Kuesioner ... 91
IV.3.2.3 Kesimpulan Pengujian Beta ... 96
BAB V KESIMPULAN DAN SARAN ... 97
V.1 Kesimpulan ... 97
V.2 Saran ... 97
99
[2] Suyanto. (2007). Artificial Intelligence Searching, Reasoning, Planning and
Learning. Bandung: Informatika.
[3] Sri Kusumadewi. 2003. Artificial Intelligence (Teknik dan Aplikasinya).
Yogyakarta : Graha Ilmu.
[4] Andang Ismail (2009: 26). Pengertian Game. Diakses 15 Desember 2012,
dari http://belajarpsikologi.com/metode-permainan-dalam-pembelajaran/
[5] Jogiyanto Hartono. 2005. Pengertian Data Flow Diagram (DFD). Diakses 27
November 2012, dari
http://mohamadkemaludin.wordpress.com/2012/10/18/tugas-softskill-2-1-data-flow-diagram/
[6] Actionsript. Pengertian actionsript. Diakses 13 November 2012, dari
http://www.ilmugrafis.com/flash.php?page=dasar-pembuatan-games-flash
[7] Hasil pencarian Battle city 1990. Diakses 27 Desember 2012, dari
http://www.ranker.com/review/battle-city/550608
[8] Bjorn Hubert-Wallander . Video Gaming Boosts Your Ability to Concentrate
in a Crisis. Diakses 27 Desember 2013, dari
http://blogbacanih.blogspot.com/2012/07/manfaat-main-games.html
[9] Hasil voting dari game action.Game action. Diakses 2 Januari 2013, dari
www.games.co.id
[10] Hasil review dan ratting dari game battle city. Diakses pada 2 Januari 2013,
dari http://www.gamefaqs.com
[11] hasil download battle city diakses pada 2 Januari 2013 , dari
1
I.1 Latar Belakang Masalah
Perkembangan teknologi membuat kebutuhan dan keinginan manusia
bertambah. Pada awalnya kebutuhan hanya mencakup sandang dan pangan,
namun saat ini hiburan digital juga menjadi salah satu kebutuhan contohnya game
(permainan). Minat game yang tinggi membuat jenis game pun mengalami
peningkatan. Jenis game yang meningkat membuat adanya pengelompokan bagi
game-game tersebut, antara lain : action game, adventure game, strategy game
dan lain-lain. Salah satu jenis game yang sering dimainkan adalah game action.
Action game merupakan game yang membutuhkan kecepatan respon, akurasi
dan ketepatan waktu. Game action juga dapat meningkatkan konsentrasi otak,
meningkatkan koordinasi mata dan tangan serta melatih kecepatan berpikir bagi
anak-anak. Hal ini diperkuat dengan adanya penelitian oleh Bjorn
Hubert-Wallander pada artikel yang berjudul Video Gaming Boosts Your Ability to
Concentrate in a Crisis yang mengemukakan, ”sama seperti pengemudi yang
harus fokus pada jalan, mobil-mobil dan hambatan potensial sekaligus
mengabaikan informasi tak penting, game action juga menuntut konsentrasi penuh
dari pemainnya. Permainan di layar juga mengharuskan pemain untuk membidik
dan menembak secara akurat di tengah layar. Sekaligus terus melacak dan
mengikuti objek yang bergerak cepat” [8].
Banyaknya para pemain game dalam memainkan game action dapat dilihat
dari banyaknya jumlah voting dalam permainan game action yang mencapai 85%
atau sebesar 26.480 orang menyatakan menyukai game action pada
www.games.co.id [9]. Adapun contoh game action yaitu game battle city 1990.
Game battle city 1990 merupakan game tank yang menceritakan pertempuran
antar tank. Tetapi pada game ini belum terdapat storyline, pemain tidak dapat
memilih sendiri tank yang diinginkan dan musuh tidak bisa mengejar tank pemain
menunjukan bahwa para pemain game masih memiliki minat yang besar
terhadapat game action.
Game tiga sahabat adalah game yang hampir sama dengan game battle city
akan tetapi memiliki memiliki cerita awal dan akhir yang saling berkaitan, pemain
pada memilih karakter tank, musuh diberikan AI (artificial intelegence) atau
keceradasan buatan untuk menemukan tank pemain, dan memiliki highscore.
Game tiga sahabat diharapkan dapat menjadi alternatif sarana hiburan bagi
anak-anak..
Berdasarkan latar belakang yang telah dijelaskan di atas maka dalam tugas
akhir ini akan dibuat game yang berjudul PEMBANGUNAN GAME TIGA
SAHABAT BERBASIS DESKTOP.
I.2 Perumusan Masalah
Berdasarkan latar belakang masalah yang telah diuraikan di atas, maka yang
menjadi pokok permasalahan adalah bagaimana membangun game tiga sahabat
khususnya genre action yang dapat melengkapi kekurangan yang terdapat pada
game battle city seperti menambahkan komponen game menjadi lebih bervariatif
dan memberikan AI (artificial intelegence) atau kecerdasan buatan pada musuh
untuk pencarian jalur pemain. Serta membuat game action yang dapat menjadi
alternatif sarana hiburan khususnya untuk anak-anak.
I.3 Maksud danTujuan
Maksud dari penulisan skripsi ini adalah untuk merancang dan membangun
game action perang. Adapun tujuan dari pembuatan game action perang ini,
adalah sebagai berikut :
1. Memberikan kecerdasan buatan dalam pencarian jalan tercepat dengan
algoritma A* pada kecerdasan musuh untuk pencarian jalur pemain pada
game action.
2. Menambahkan komponen yang terdapat pada game pembanding
menjadi lebih bervariatif agar dapat menjadi alternatif sarana hiburan
I.4 Batasan Masalah/Ruang Lingkup kajian
Berdasarkan latar belakang yang telah diuraikan sebelumnya, maka batasan
masalah yang dibuat adalah sebagaiberikut:
1. Game ini menggunakan algoritma A* pada kecerdasan musuh.
2. Jenis game ini merupakan Zero Sum, dimana hanya ada kondisi menang
atau kalah.
3. Game berbasis 2D dan berjenis action.
4. Jumlah pemain satu orang atau single player.
5. Target pengguna pada game ini berusia 5 - 9 tahun.
6. Aplikasi dibangun menggunakan bahasa pemograman action script 2.0
dengan tool adobe flash 5.5.
7. Model analisis yang digunakan adalah perancangan tersruktur yaitu
menggunakan flowchart dan untuk menggambarkan diagram proses
menggunakan DFD.
I.5 Metodologi Penelitian
Metodologi yang digunakan dalam penulisan laporan tugas akhir ini adalah
sebagai berikut :
1. Metode pengumpulan data
Metode pengumpulan data yang digunakan dalam penelitian ini yaitu :
a. Studi literatur dimana pengumpulan data dengan cara mengumpulkan
literatur, dan bacaan-bacaan yang berkaitan dengan game action.
b. Observasi pada game battle city.
2. Metode Pengembangan Perangkat Lunak
Metode pembangunan perangkat lunak yang digunakan menggunakan model
waterfall yang dirumuskan oleh Ian Sommerville, karena menghasilkan sistem
yang terstruktur dengan baik ditiap prosesnya. Waterfall merupakan salah satu
model pembangunan software, dimana kemajuan suatu proses dipandang sebagai
aliran yang mengalir ke bawah seperti air terjun, maka tahapan dalam model ini
dari satu tahap dapat kembali ke tahap sebelumnya. Tahapan yang meliputi
beberapa proses tersebut adalah sebagai berikut :
Gambar I.1 Model Waterfall[1]
1. Requirements analysis and definition
Requirements analysis and definition merupakan tahap pengumpulan
kebutuhan secara lengkap kemudian dianalisis dan didefinisikan
kebutuhan yang harus dipenuhi oleh program yang akan dibangun. Fase
ini harus dikerjakan secara lengkap untuk bisa menghasilkan desain yang
lengkap.
2. System and software design
System and software design adalah tahap dimana proses desain sistem
terbagi dalam kebutuhan perangkat keras dan perangkat lunak secara
keseluruhan. Desain perangkat lunak mewakili fungsi sistem perangkat
lunak dalam suatu bentuk yang dapat ditransformasikan ke dalam satu atau
lebih program yang dapat dieksekusi.
3. Implementation and unit testing
Implementation and unit testing adalah tahap dimana desain program
diterjemahkan ke dalam kode-kode dengan menggunakan bahasa
pemrograman yang sudah ditentukan. Program yang dibangun langsung
4. Integration and system testing
Integration and system testing merupakan tahap dimana penyatuan
unit-unit program kemudian diuji secara keseluruhan (system testing).
5. Operation and maintenance
Operation and maintenance adalah tahap mengoperasikan program
dilingkungannya dan melakukan pemeliharaan, seperti penyesuaian atau
perubahan karena adaptasi dengan situasi sebenarnya.
I.6 Sistematika Penulisan
Sistematika penulisannya disusun sebagai berikut :
BAB I Pendahuluan
Bab ini berisi latar belakang, perumusan masalah, maksud dan tujuan, batasan
masalah, metodologi penelitian, sistematika penulisan dari tugas akhir yang
akan dibuat.
BAB II LandasanTeori
Membahas mengenai berbagai konsep dasar dan teori-teori yang berkaitan
dengan game tiga sahabat yang dilakukan dan hal-hal yang berguna dalam
proses analisis permasalahan serta tinjauan terhadap penelitian-penelitian
dalam membangun game tiga sahabat.
BAB III Analisis dan Perancangan Sistem
Membahas tentang analisis sistem, game pembanding, analisis algoritma A*,
analisis kebutuhan fungsional dan non-fungsional, serta perancangan sistem
untuk membuat game tiga sahabat.
Bab IV Implementasi dan Pengujian Sistem
Membahas tentang hasil implementasi dari game tiga sahabat serta
menerapkan kegiatan implementasi dan pengujian terhadap game tiga sahabat
untuk melihat apakah game yang dibuat telah berjalan sesuai dengan analisis
dan perancangan game yang dibuat.
Pada bab ini disampaikan hasil yang diperoleh dari pembangunan game tiga
sahabat yang berbasis dekstop serta saran untuk pengembangan game tiga
7
II.1 Multimedia
Multimedia adalah media yang menggabungkan dua unsur atau lebih media
yang saling berhubungan diantara satu dengan yang lainnya seperti teks, grafik,
gambar, audio, video dan animasi. Terdapat dua kategori multimedia yaitu :
1. Multimedia Linier merupakan multimedia yang tidak dilengkapi dengan
alat pengontrol yang dapat dioperasikan oleh pengguna. Contohnya TV
dan Film.
2. Multimedia Interaktif merupakan multimedia yang dilengkapi alat
pengontrol yang dapat dioperasikan oleh pengguna sehingga dapat
memilih apa yang dikehendaki untuk proses selanjutnya. Contohnya
multimedia pembelajaran interaktif, aplikasi game dan lain-lain.
Menurut beberapa ahli multimedia memiliki beberapa definisi yaitu :
1. Turban dan kawan-kawan
Multimedia adalah kombinasi dari paling sedikit dua media input dan
output. Media ini dapat berupa audio, animasi, video, teks, grafik dan
gambar.
2. Robin dan Linda
Multimedia adalah alat yang dapat menciptakan presentasi yang dinamis
dan interaktif yang mengkombinasikan teks, grafik, animasi, audio dan
video.
3. Hofstetter
Multimedia adalah pemanfaatan komputer untuk membuat dan
menggabungkan teks, grafik, audio, video dengan menggunakan tool yang
memungkinkan pemakai berinteraksi, berkreasi dan berkomunikasi.
Dalam definisi ini terdapat empat komponen multimedia yaitu :
a. Harus ada peralatan elektronik yang dapat mengkoordinasikan apa yang
dapat dilihat dan didengar dan yang dapat berinteraksi dengan
b. Harus ada link yang dapat menghubungkan pengguna dengan informasi.
c. Harus ada alat navigasi yang dapat memandu pengguna untuk
menjelajahi jaringan informasi yang saling terhubung.
d. Harus dapat menyediakan tempat kepada pengguna untuk
mengumpulkan, memproses dan mengkomunikasikan informasi dan ide
dari pengguna itu sendiri.
Penggunaan multimedia dapat digunakan di beberapa bidang seperti:
1. Bidang periklanan yang efektif dan interaktif.
2. Bidang pendidikan dalam penyampaian bahan pengajaran secara
interaktif dan dapat mempermudah pembelajaran karena didukung oleh
berbagai aspek seperti suara, video, animasi, teks dan gambar.
3. Bidang jaringan dan internet yang dapat membantu dalam pembuatan
website yang menarik, informatif dan interaktif.
II.1.1 Jenis Multimedia
Multimedia terdiri dari beberapa jenis yaitu :
1. Teks
Teks merupakan dasar dari pengolahan kata dan informasi berbasis
multimedia. Teks mudah disimpan dan membentuk kata, surat atau narasi
dalam multimedia. Kebutuhan teks tergantung pada kegunaan aplikasi
multimedia. File teks memiliki struktur linier sederhana. Dalam multimedia,
teks sangat banyak digunakan karena teks sangat efektif untuk menyampaikan
ide serta memberikan panduan kepada pengguna.
2. Image
Image atau gambar merupakan presentasi multimedia yang lebih menarik
perhatian dan dapat mengurangi kebosanan dibandingkan dengan teks.
Gambar dapat meringkas dan menyajikan data kompleks dengan cara yang
baru dan lebih berguna.
Berikut nilai intensitas warna pada suatu pixel yaitu :
a. 1 bit : binary value image (0-1).
c. 16 bits : high color (216).
d. 24 bits : 224 true color.
e. 32 bits : true color (232).
3. Audio
Fenomena fisik yang dihasilkan oleh benda yang berupa sinyal analog
dengan amplitudo yang berubah secara kontiniu terhadap waktu. Pola isolasi
yang terjadi dinamakan sebagai gelombang. Gelombang yang memiliki pola
yang berulang pada interval tertentu disebut periode sedangkan frekuensi
adalah banyaknya periode dalam 1 detik.
4. Video
Teknologi untuk menangkap, merekam, memproses, mentransmisikan dan
menata ulang gambar bergerak. Biasanya menggunakan film seluloid, sinyal
elektronik atau media digital. Digital video adalah jenis video recording yang
bekerja menggunakan sistem digital dibandingkan dengan analog dalam hal
representasi videonya.
5. Animasi
Animasi merupakan illusion of motion yang dibuat dari image statis yang
ditampilkan secara berurutan. Animasi mengacu kepada teknik dimana setiap
frame dalam film dibuat secara terpisah. Frame dapat dihasilkan dari
komputer, fotografi atau gambar lukisan.
II.2 Game
Menurut Andang Ismail terdapat dua pengertian game (permainan).
Pertama, game (permainan) adalah sebuah aktifitas bermain yang murni mencari
kesenangan tanpa mencari menang atau kalah. Kedua, permainan diartikan
sebagai aktifitas bermain yang dilakukan dalam rangka mencari kesenangan dan
kepuasan, namun ditandai pencarian menang – kalah [4].
Berdasarkan representasinya,game dapat dibedakan menjadi 2 jenis yaitu
game 2 dimensi (2D) dan 3 dimensi (3D). Game 2D adalah game yang secara
matematis hanya melibatkan 2 elemen koordinat kartesius yaitu x dan y,sehingga
dilihat oleh pemain.Sedangkan game 3D adalah game yang selain melibatkan
elemen x dan y juga melibatkan elemen pada perhitungannya sehingga konsep
kamera pada game 3D benar-benar menyerupai konsep kamera pada kehidupan
nyata.
II.2.1 Game 2D
Game dua dimensi dapat diketahui berdasarkan ruangnya yang hanya
memiliki dua sisi ( X dan Y). Sedangkan untuk gambarnya sendiri dapat
menggunakan vector maupun Bitmap.Untuk membuat animasi bergerak seperti
berjalan, melompat, berlari, dan lainnya maka harus membuat gambar satu persatu
yang disebut dengan frame. Kerealisasian gerakan ditentukan dari gambar yang
dibuat, jumlah gambar (frame) yang digunakan, serta hitungan gambar per detik
(frame per second) semakin tinggi hitungan gambar per detik maka semakin
mulus gerakan yang akan dihasilkan.
Game 2D atau dua dimensi adalah konsep di mana semua objek berada
pada satu bidang datar. Pemain game 2D tidak dapat bergerak bebas ke segala
sisi, gerakan pada game 2D dibatasi hanya horisontal dan vertikal atau secara
koordinat gerakan dibatasi hanya dapat bergerak pada sumbu X danY.
Berdasarkan pergerakannya, game 2D dapat dibagi menjadi :
1. Game statis adalah game yang gambar latar dan tempat game 2D tidak
bergerak sama sekali contohnya adalah tetris.
2. Side Scrolling adalah game yang saat dimainkan, kamera akan bergeser ke
kanan atau ke kiri dengan kecepatan sesuai dengan gerakan dan kecepatan
karakter yang dimainkan pada game tersebut, contohnya seperti super
Mario bross, Sonic dan Megaman.
Pada side scrolling game sendiri dapat juga ditemukan game dimana screen
yang tidak bergerak mengikuti karakter game, ada juga jenis game yang harus
melewati berbagai rintangan, menembak musuh, mengkoleksi berbagai item
II.2.2 Game Multiplayer
Game multiplayer adalah jenis game yang dapat dimainkan lebih dari satu
pemain pada arena game yang sama dan pada waktu yang bersamaan pula. Setiap
pemain dalam game multiplayer memungkinkan setiap pemainnya saling
berinteraksi dengan pemain lainnya, bekerja sama dalam tim yang sama, menjadi
lawan tanding, hingga mampu menyediakan bentuk komunikasi sosial yang
hampir tidak ditemukan pada game dengan orientasi single-player.
II.2.3 Game Pathfinding
Merupakan game untuk mencari jalan terpendek dari titik awal menuju
titik tujuan pada sebuah map. Game pathfinding yang dibuat dengan AI (Artificial
Intelligence) tersebut menerapkan algoritma A* (A Star). Algoritma ini digunakan
untuk menentukan pilihan jalan terpendek menuju titik tujuan. Untuk mengetahui
performansi dalam hal waktu pencarian, jumlah langkah dari titik awal menuju
titik tujuan dan simpul yang diperiksa pada game pathfinding.
II.2.4 Genre Game
Berdasarkan genre, game dapat dibagi menjadi beberapa genre yaitu :
1. Action Game
Sebuah game action membutuhkan pemain dengan kecepatan reflex,
akurasi, dan ketepatan waktu untuk menghadapi sebuah rintangan.
Biasanya mempunyai gameplay yang berhubungan dengan pertarungan.
Ada banyak sub jenis dari game action, contohnya fighting games dan
first-person shooters.
2. Adventure Game
Adventure game dikategorikan sebagai game play yang mengharuskan
pemain memecahkan bermacam–macam teka-teki melalui interaksi
dengan orang lingkungan dalam game tersebut.
3. Role Playing Game
Role playing game adalah game yang memiliki game play dimana karakter
4. Simulation Game
Genre ini bertujuan untuk memberikan pengalaman simulasi kepada
pemain.
5. Strategy Game
Genre strategy game berfokus pada game play dimana dibutuhkan
pemikiran yang tepat agar dapat meraih kemenangan.
a. Real Time Action
Dalam real time action, action dilakukan dalam waktu yang
bersamaan oleh masing-masing pihak dimana action dimainkan per
ronde atau bergiliran. Contoh game dari genre ini adalah Warcraft
series.
b. Tactical Game
Dalam genre ini pemain harus menggunakan bermacam-macam
taktik dan action untuk mencapai kemenangan. Contoh game dari
genre ini adalah Dark Omen.
c. 4X Game
Genre ini berarti penjelajahan,menjajah dan memusnahkan.Contoh
game dari genre ini adalah Galactic Civizations.
d. Artillery Game
Genre game ini biasanya mengikutkan combat dengan tank atau
tentara militer. Contoh game dari genre ini adalah Tanarus.
6. Vehicle Simulation Game
Genre ini merupakan simulasi yang memberikan pemain sebuah
pengalaman realistik dalam mengendarai kendaraan tertentu.
II.3 Kecerdasan Buatan
Kecerdasan buatan atau Artificial Intelligence (AI) merupakan cabang dari
ilmu komputer yang berhubungan dengan pengautomatisan tingkah laku cerdas.
Kecerdasan buatan didasarkan pada teori suara (sound theoretical) dan
prinsip-prinsip aplikasi dari bidangnya. Prinsip-prinsip-prinsip ini meliputi struktur data yang
mengaplikasikan pengetahuan tersebut serta bahasa dan teknik pemrograman yang
digunakan dalam mengimplementasikannya.
Berdasarkan sudut pandang, kecerdasan buatan dapat dipandang sebagai berikut :
1. Sudut pandang kecerdasan, adalah bagaimana membuat mesin yang cerdas
dan dapat melakukan hal-hal yang sebelumnya hanya dapat dilakukan
manusia.
2. Sudut pandang bisnis, kecerdasan buatan adalah sekelompok alat bantu
yang berdayaguna dan metodologi yang menggunakan alat-alat bantu
tersebut untuk menyelesaikan masalah-masalah bisnis.
3. Sudut pandang pemrograman, kecerdasan buatan meliputi studi tentang
pemrograman simbolik, pemecahan masalah dan proses pencarian.
4. Sudut pandang penelitian :
a. Riset tentang kecerdasan buatan dimulai pada awal tahun 1960-an,
percobaan pertama adalah membuat program permainan
catur,membuktikan teori dan general problem solving.
b. Kecerdasan buatan adalah nama pada akar dari studi area.
Kecerdasan buatan memiliki sejumlah sub disiplin ilmu yang sering
digunakan untuk pendekatan yang esensial bagi penyelesaian suatu masalah dan
dengan aplikasi bidang kecerdasan buatan yang berbeda. Aplikasi penggunaan
kecerdasan buatan dapat dibagi ke dalam tiga kelompok yaitu :
1. Expert Task
Kecerdasan buatan dibentuk berdasarkan pengalaman dan pengetahuan
yang dimiliki oleh para ahli yang bertujuan untuk membantu para ahli
dalam menyampaikan ilmu-ilmu yang dimiliki.Contohnya adalah Analisis
finansial, Analisis medical, Analisis ilmu pengetahuan, Rekayasa (
desain,pencarian,kegagalan,perencanaan,manufaktur).
2. Formal Task
Kecerdasan buatan digunakan untuk melakukan tugas-tugas formal yang
selama ini manusia biasa lakukan dengan lebih baik. Contohnya adalah
Game, Matematika (geometri,logika,kalkulus,integral).
Secara harfiah mundane adalah keduniaan. Kecerdasan buatan digunakan
untuk melalukan hal-hal yang sifatnya duniawi atau melakukan kegiatan
yang dapat membantu manusia. Contohnya adalah Persepsi, Bahasa alami,
Robot control.
Aplikasi kecerdasan buatan memiliki dua bagian utama yaitu :
1. Basis Pengetahuan (Knowledge Base) berisi fakta-fakta, teori, pemikiran
dan hubungan antara satu dengan lainnya.
2. Motor Inferensi (Inference Engine) kemampuan menarik kesimpulan
berdasarikan pengalaman.
II.3.1 Algoritma Pencarian (Search Algoritms)
Terdapat banyak metode pencarian yang telah disulkan. Semua metode
yang ada dapat dibedakan kedalam dua jenis : pencarian buta (blind atau
un-informed seacrh) dan pencarian terbimbing (heuristic atau informed seacrh).
Setiap metode mempunyai karakteristik yang berbeda-beda dengan kelebihan dan
kekurangannya masing-masing.[2]
Untuk lebih lengkapnya pembagian metode pencarian dapat dilihat pada
gambar II.1 dibawah ini :
II.3.2 Metode Pencarian Terbimbing (Pencarian Heuristik)
Kata heuristik berasal dari kata kerja bahasa Yunani, heuriskein, yang
berarti „mencari‟ atau „menemukan‟. Dalam dunia pemograman, sebagian orang
menggunakan kata heuristik sebagai lawan kata dari algoritmik, dimana kata
heuristik ini diartikan sebagai „suatu proses yang mungkin dapat menyelesaikan
suatu masalah tetapi tidak ada jaminan bahwa solusi yang dicari selalu dapat
ditemukan‟. Di dalam mempelajari metode – metode pencarian ini, kata heuristik
diartikan sebagai suatu fungsi yang memberikan suatu nilai berupa biaya
perkiraan (estimasi) dari suatu solusi.[2]
II.3.3 Best First Search (Pencarian Terbaik Lebih Dulu)
Algoritma best first search merupakan metode yang membangkitkan
suksesor dengan mempertimbangkan harga dari setiap node, gambar dibawah ini
akan mengilustrasikan langkah-langkah yang dilakukan oleh algoritma best first
search. Pertama kali, dibangkitkan dari node A. Kemudian semua sukseor A
dibangkitkan, dan dicari harga yang minimal. Pada langkah 2, node D
dibangkitkan, kemudian harganya akan dibandingkan dengan harga node B dan C.
Ternyata harga node B paling kecil dibandingkan harga node C, E, dan F.
Sehingga B terpilih dan selanjutnya akan dibangkitkan semua suksesor B.
Gambar II.2 Langkah Algoritma Best First Search
II.3.4 Greedy Best First Search
Algoritma ini merupakan salah satu jenis algoritma Best First Search yang
paling sederhana dengan hanya memperhitungkan biaya perkiraan (estimated
cost) saja, yakni f(n) = h(n). f(n) = fungsi evaluasi, h(n) = estimasi biaya untuk
sampai pada suatu tujuan dari node awal.Biaya yang sebenarnya (actual cost)
tidak diperhitungkan. Dengan hanya memperhitungkan biaya perkiraan yang
belum tentu kebenarannya, maka algoritma ini menjadi tidak optimal [2].
II.3.5 Algoritma A* (A Star)
Algoritma A* (A Star) merupakan perbaikan dari metode BFS dengan
memodifikasi fungsi heuristiknya. A* (A Star) akan meminimumkan total biaya
waktu yang optimal. Pencarian menggunakan algoritma A* mempunyai prinsip
yang sama dengan algoritma BFS hanya saja dengan dua faktor tambahan yaitu :
1. Setiap sisi mempunyai cost yang berbeda-beda, seberapa cost untuk pergi
dari satu simpul ke simpul lain.
2. Cost dari setiap simpul ke simpul tujuan bisa diperkirakan. Ini membantu
pencarian sehingga lebih kecil kemungkinan mencari ke arah yang salah.
Cost untuk setiap simpul tidak harus berupa jarak. Cost bisa saja berupa
waktu bila ingin mencari jalan dengan waktu tercepat untuk dilalui. Algoritma A*
bekerja dengan prinsip yaitu :
1. Simpul-simpul di list terbuka diurutkan oleh cost keseluruhan dari simpul
awal ke simpul tujuan, dari cost terkecil sampai cost terbesar.Cost
keseluruhan dihitung dari cost dari simpul awal ke simpul sekarang
(current node) ditambah cost perkiraan menuju simpul tujuan.
2. Simpul di list tertutup bisa dimasukkan ke list terbuka bila jalan terpendek
menuju simpul tersebut ditemukan.
Cost antara simpul adalah jaraknya dan perkiraan cost dari suatu simpul ke
simpul tujuan adalah penjumlahan jarak dari simpul tersebut ke simpul tujuan.
Untuk lebih mudah dimengerti,berikut rumusnya.
f(n) = g(n) + h(n) (rumus II.1)
keterangan :
f(n) = fungsi evaluasi
g(n) = biaya yang sudah dikeluarkan dari keadaan awal sampai keadaan n
h(n) = estimasi biaya untuk sampai pada suatu tujuan mulai dari n
Node dengan nilai f(n) terendah merupakan solusi terbaik untuk diperiksa
pertama. Dengan fungsi heuristic yang memenuhi kondisi tersebut maka
pencarian dengan algoritma A* dapat optimal. Keoptimalan dari A* cukup
langsung dinilai optimal jika h(n) adalah admissible heuristic yaitu nilai h(n) tidak
akan memberikan penilaian lebih pada cost untuk mencapai tujuan. Salah satu
contoh dari admissible heuristic adalah jarak dengan menarik garis lurus karena
jarak terdekat dari dua titik adalah dengan menarik garis lurus.
1. Tambahkan starting point ke dalam openset.
2. Ulangi langkah berikut:
a. Carilah biaya f terendah pada setiap simpul dalam openset. Node
dengan biaya f terendah kemudian disebut current node.
b. Masukkan ke dalam closedset.
c. Untuk setiap 8 simpul (neighbor node) yang berdekatan dengan
currentnode:
1. Jika tidak walkable atau jika termasuk closedset, maka
abaikan.
2. Jika tidak ada pada openset, tambahkan ke openset.
3. Jika sudah ada pada openset, periksa apakah ini jalan dari
simpul ini ke current node yang lebih baik dengan
menggunakan biaya g sebagai ukurannya. Simpul dengan
biaya g yang lebih rendah berarti bahwa ini adalah jalan
yang lebih baik. Jika demikian, buatlah simpul ini
(neighbor node) sebagai camefrom dari current node, dan
menghitung ulang nilai g dan f dari simpul ini.
d. Stop ketika:
1. Menambahkan targetpoint ke dalam closedset, dalam hal
ini jalan telah ditemukan, atau,
2. Gagal untuk menemukan targetpoint, dan openset kosong.
Dalam kasus ini, tidak ada jalan.
3. Simpan jalan. Bekerja mundur dari targetpoint, pergi dari
masing-masing simpul ke simpul camefrom sampai mencapai startingpoint.
Pencarian Rute dengan A*
Inisialisasi list OPEN = nil, CLOSED = nil
Masukkan node awal ke list OPEN
Set Current Node = Best Node (OPEN)
Current Node = Goal?
Keluarkan Current Node dari OPEN, masukkan ke CLOSED
For i:= to jumlah neighbor Current Node do
Node(i) dapat dilalui? Ada dalam CLOSED? Ada dalam OPEN?
Nilai g node(i) < g node dalam OPEN? Masukkan node (i) dalam OPEN, set
parent node(i) = Current Node, Hitung dan simpan nilai f,g,h
Set parent node (i) = Current Node Kalkulasi ulang nilai g dan f i
OPEN = nil?
Rute tidak ada
Return Backtrack untuk Menampilkan rute Tidak Ya Ya Tidak Ya Tidak Ya Tidak Tidak Ya Ya Tidak
[image:31.595.128.476.105.677.2]II.4 Diagram Konteks
Diagram konteks merupakan alat pemodelan atau suatu diagram yang
menggambarkan sistem berbasis komputer yang dirancang secara global dan
merupakan suatu diagram alir data tingkat atas, dimana didalam diagram konteks
ini menggambarkan seluruh jaringan, baik masukan maupun sebuah keluaran
sebuah sistem.
Diagram konteks terdiri dari sebuah simbol proses tunggal yang
menggambarkan sebuah sistem dan menunjukan data aliran utama untuk dan dari
terminator. Diagram ini merupakan dasar yang digunakan untuk menentuk aliran
data yang mengalir menuju sistem (input system) dan keluar dari sistem(output
system), yang meliputi objek berupa kesatuan luar (eksternal entity). Diagram
konteks dapat mendefinisikan jangkauan proses penurunan game yaitu
menentukan apa yang menjadi bagian dari game dan apa yang tidak menjadi
bagian game. Untuk lebih jelasnya dapat dilihat pada tabel II.2
Tabel II.1 Komponen Diagram Konteks No Simbol Nama Keterangan
1 Terminator menggambarkan sumber dan tujuan data
di luar sistem
2 Proses menggambarkan entitas atau proses
dimana aliran data masuk
dikonfirmasikan ke aliran data keluar
3 Data Flow menggambarkan aliran data
II.4.1 Data Flow Diagram (DFD)
Pengertian Data Flow Diagram (DFD) menurut Jogiyanto Hartono adalah:
“Diagram yang menggunakan notasi simbol untuk menggambarkan arus data system”. (Jogiyanto Hartono, 2005, 701).
DFD sering digunakan untuk menggambarkan suatu sistem yang telah ada
atau sistem yang baru yang akan dikembangkan secara logika dan menjelaskan
arus data dari mulai pemasukan sampai dengan keluaran data tingkatan diagram
arus data mulai dari diagram konteks yang menjelaskan secara umum suatu
system atau batasan system dari level 0 dikembangkan menjadi level 1 sampai
system tergambarkan secara rinci. Gambaran ini tidak tergantung pada perangkat
keras, perangkat lunak, struktur data atau organisasi file [5].
Menurut Jogiyanto Hartono, tahun 2005 dalam bukunya Basia Data ada
beberapa simbol digunakan pada DFD untuk mewakili :
a) Kesatuan Luar (External Entity)
Kesatuan luar (external entity) merupakan kesatuan (entity) di lingkungan
luar sistem yang dapat berupa orang, organisasi, atau sistem lain yang
berada pada lingkungan luarnya yang memberikan input atau menerima
output dari sistem.
b) Arus Data (Data Flow)
Arus Data (data flow) di DFD diberi simbol suatu panah. Arus data ini
mengalir di antara proses, simpan data dan kesatuan luar. Arus data ini
menunjukan arus dari data yang dapat berupa masukan untuk sistem atau
hasil dari proses sistem.
c) Proses (Process)
Proses (process) menunjukan pada bagian yang mengubah input menjadi
output, yaitu menunjukan bagaimana satu atau lebih input diubah menjadi
beberapa output. Setiap proses mempunyai nama, nama dari proses ini
menunjukan apa yang dikerjakan proses.
Data Store merupakan simpanan dari data yang dapat berupa suatu file
atau database pada sistem komputer.
II.5 Adobe Flash
Adobe Flash (dahulu bernama Macromedia Flash) adalah salah satu
perangkat lunak komputer yang merupakan produk unggulan Adobe Systems.
Adobe Flash digunakan untuk membuat gambar vektor maupun animasi gambar
tersebut. Berkas yang dihasilkan dari perangkat lunak ini mempunyai file
extension .swf dan dapat diputar di penjelajah web yang telah dipasangi Adobe
Flash Player. Flash menggunakan bahasa pemrograman bernama ActionScript
yang muncul pertama kalinya pada Flash 5.5.
II.6 ActionScript
ActionScript adalah bahasa pemrograman yang dibuat berdasarkan
ECMAScript, yang digunakan dalam pengembangan situs web dan perangkat
lunak menggunakan platform Adobe Flash Player. ActionScript juga dipakai pada
beberapa aplikasi basis data, seperti Alpha Five. Bahasa ini awalnya
dikembangkan oleh Macromedia, tapi kini sudah dimiliki dan dilanjutkan
perkembangannya oleh Adobe, yang membeli Macromedia pada tahun 2005.
ActionScript terbaru saat ini adalah ActionScript 3.0. ActionScript 3.0 adalah
bahasa terbaru dari edisi yang sebelumnya dikenal dengan ActionScript 2.0.
ActionScript 3.0 memiliki beberapa kelebihan dibanding pendahulunya, antara
lain fitur yang ditawarkan adalah file pada ActionScript 3.0 dapat dibuat terpisah
saat runtime.[6]
II.7 Adobe Illustrator
Adobe Illustrator adalah editor grafik vektor yang dikembangkan dan
dipasarkan oleh Adobe Systems. Versi terbaru, Illustrator CS5, adalah generasi
Adobe illustrator dapat pengolah grapik yang biasa digunakan untuk berbagai
pekerjaan desain. Misalnya seperti membuat logo-logo perusahaan, cover,
23
III.1 Analisis Sistem
Pada analisis sistem akan mencakup analisis game pembanding, analisis
game yang akan dikembangkan, analisis AI, analisis kebutuhan non-fungsional,
analisis kebutuhan fungsional, serta perancangan sistem untuk membuat game
tank tiga sahabat.
III.1.1 Analisis Pembuatan Game
Sebuah game membutuhkan komponen-komponen dalam pembuatannya.
Beberapa komponen dijelaskan pada tabel III.1 [12].
Table III.1 Komponen Game
No Komponen Keterangan
1 Karakter Pemain Menceritakan tentang karakter pemain pada game
tersebut.
2 Karakter Musuh Menceritakan tentang karakter musuh pada game
tersebut.
3 Grafis Merupakan suatu hal yang penting dalam game, dimana
grafik ini akan membuat game menjadi daya tarik user
untuk memainkan game.
4 Suara suara menjadi komponen game karena dengan adanya
suara pada game maka game tersebut akan menarik
sehingga kita dapat merasakan kondisi dalam game
tersebut.
5 AI Kecerdasan buatan menjadi komponen game karena
dengan hal tersebut game menjadi lebih menantang. Dengan menggunakan AI, game dapat berpikir untuk
mengalahkan pemain sehingga membuat game lebih seru.
6 Cerita Cerita adalah salah satu komponen yang penting dalam
setiap game action karena dengan adanya cerita maka
pemaindapat lebih terbawa kedalam permaian game.
8 Skenario game Skenario game menjadi komponen game karena dengan
adanya skenario dalam game, pemain seolah-olah
bermain sesuai dengan petunjuk yang ada di game
III.1.1.1 Battle City 1990
Game battle city sangat digemari sampai sekarang terlihat pada hasil review
dengan nilai 8,5 dan hasil rating dengan nilai 7,7 yang terdapat di situs
http://www.gamefaqs.com [10]. Selain itu kegemaran orang-orang akan game
battle city juga terlihat pada jumlah download battle city mencapai skala 4,43
dengan skala maksimal 5 berdasarkan hasil dari http://www.rom-world.com [11].
Oleh karena itu dapat disimpulkan bahwa game battle city masih digemari oleh
banyak orang. Hal ini yang mendasari penulis mencoba membuat game yang
ber-ganre sama dengan game battle city.
III.1.1.1.1 Storyline Game Battle City 1990
Battle City 1990 adalah pemainan yang harus menghancurkan semua tank
musuh sambil melindungi ”garuda”. Game battle city memiliki 35 level,
Gameboard pada game battle city terdiri dari tiga belas kotak dan baris. Setiap
map terdiri dari tipe lantai yang berbeda dan tembok yang berbeda.
III.1.1.1.2 Storyboard Game Battle City 1990
Game battle city memiliki yang terdiri dari 13 kotak kolom dan baris. Setiap
map terdiri dari tipe lantai yang berbeda dan tembok (penghalang) yang berbeda.
Contohnya ada tembok yang dapat dihancurkan oleh pemain dam musuh dan ada
tembok besi yang dapat dihancurkan jika pemain sudah mengumpulkan tiga
power-up, semak-semak dapat menyembunyikan tank pemain dari musuh, lantai
es membuat tank sulit untuk dikontrol, dan lantai air tidak dapat dilewati.
Terdapat empat jenis tank musuh. Tank musuh berkedip bisa dihancurkan
untuk mendapatkan power-up. Ada beberapa jenis power-up :
1. Power-up simbol tank : memberikan extra life.
2. Power-up simbol bintang : meningkatkan kinerja tank (jika mendapatkan
satu bintang dapat membuat tembakan menjadi lebih cepat, jika
mendapatkan dua bintang dapat membuat tembakan terus menurus, dan
jika mendapatkan tiga bintang dapat menghancurkan tembok besi).
4. Power-up simbol jam : dapat membuat tank musuh berhenti.
5. Power-up simbol skop : dapat membuat dinding baja disekitar elang.
6. Power-up perisai : membuat tank pemain kebal dari serangan musuh
dalam beberapa waktu [7].
Gambar III.1 Game Battle City
Adapun komponen yang terdapat pada game battle city seperti dibawah ini :
Table III.2 Komponen Game Battle City 1990
No Komponen Keterangan
1 Karakter Pemain Terdapat dua tank pemaindalam game battle city,
tetapi tank tersebut tidak bisa dipilih.
2 Karakter Musuh Pada setiap level terdapat empat musuh dengan
kekuatan yang berbeda.
3 Grafis Game battle city memiliki bentuk grafis 2 dimensi.
4 Suara a) Dalam menu utama.
b) Efek tank hancur.
c) Tembakan.
d) Dalam permaian.
5 AI Tidak memiliki kecerdasan buatan atau AI(artificial
Inteligence) .
6 Cerita Game battle city tidak memiliki cerita.
8 Skenario game Game Tank 1990 memiliki gameboard yang
bervariasi, game ini dapat dimainkan oleh dua pemain
secara bersamaan. Fitur unik lainnya yang dimiliki
oleh game ini adalah pemain bisa membangun peta
III.1.2 Analisis Game yang Akan Dikembangkan III.1.2.1 Storyline
Game tiga sahabat menceritakan tentang tiga orang sahabat, yaitu Fahry
(seorang laki-laki yang sangat kuat dan ramah), Langit (seorang laki-laki yang
sangat baik dan pendiam) dan Lady (seorang perempuan yang sangat cantik dan
murah hati).
Ketika mereka sedang berbincang tidak diduga sekelompok prajurit istana
menghampiri yang berusaha menculik Lady. Terjadilah perkelahian yang
menyebabkan Fahry dan Langit terluka. Lady pun akhirnya dibawa pergi oleh
para prajurit istana, hal ini membuat Fahry dan Langit berencana menyelamatkan
Lady.
Pada saat Fahry dan Langit perjanan menuju istana, mereka menemukan
tank yang bisa digunakan untuk membantu melawan raja dan prajuritnya. Dalam
penyelamatan tersebut Fahry dan Lagit harus melawan tank-tank dari prajurit sang
raja sampai pada tank raja. Setelah semua tank musuh hancur Fahri dan Langit
akhirnya bisa menyelamatkan Lady. Dan pada akhirnya mereka hidup berbahagia
bersama-sama lagi.
III.1.2.2 Gameplay
Pada awal permainan akan ditampilkan menu utama yang terdapat pilihan
bermain, nilai tertinggi, bantuan dan keluar. Jika pemain memilih menu bermain
maka akan muncul pilihan menu level yaitu level mudah, level sedang dan level
sulit. Setiap level memiliki lima tahapan, setelah pemain memilih salah satu level
permainan, pemain dapat memilih tank yang akan digunakan dalam permainan,
melihat cara bermain dan cerita yang ada pada game tiga sahabat. Dalam setiap
permainan, pemain memiliki tiga nyawa, setiap nyawa memiliki lima darah.
Pada setiap tahapan pemain diharuskan menghancurkan semua tank musuh
yang ada untuk mendapatkan nilai tertinggi. Musuh pada dari setiap tahapan
memiliki tingkatan kesulitan yang berbeda. Perbedaan terlihat pada kecepatan
terdapat power-up yang bertujuan untuk meningkatkan kinerja tank. Ada
beberapa jenis power-up yang ada pada game tiga sahabat yaitu:
1. Power-up simbol tank. Power-up ini dapat merubah tank pemain menjadi
besar dan tembakan pemain dapat mengurangi dua darah musuh.
2. Power-up simbol senjata.Power-up ini membuat tembakan pemain dapat
menembak dua kali secara bersamaan.
3. Power-up simbol darah. Power-up ini menambahkan dua darah.
4. Power-up simbol perisai. Power-up ini dapat membuat tank pemain kebal
dari serangan tank musuh.
Adapun alur sistem dari permainan game tiga sahabat dapat di gambarkan
Start
Pilih menu bermain
Menampilkan nemu level
Penyajian pilihan level
Pilih tank untuk bermian Menampilkan cara
bermian Pemilihan menu
level Penyajian menu
utama Into game Menampilkan nemu
utama
Cara bermain
Menampilkan cerita
Cerita game
Menampilkan dialog
Dialog game Menampilkan permainan
tahapan satu Map permainan
Pilih level
Pilih kembali
III.1.2.3 Komponen Pada Game Tiga Sahabat
Berikut ini akan dijelaskan tentang komponen yang terdapat pada game
tiga sahabat.
Table III.3 Komponen Game Tiga Sahabat
No Komponen Keterangan
1 Karakter Pemain Game ini memiliki dua tokoh utama dan satu tokoh
pendukung, yaitu :
a) Fahri adalah seorang laki-laki yang berjuang
untuk menyelamatkan Lady dengan menggunakan tank.
b) Langit adalah seorang laki-laki yang berjuan
untuk menyelamatkan Lady dengan menggunakan tank.
c) Lady sebagai tokoh pendukung dimana pada
game ini berperan sebagai perempuan yang
diculik oleh sang raja.
2 Karakter
Enemy/musuh
Karakter enemy/musuh memilik dua tokoh musuh,
yaitu:
a) Prajurit adalah kumpulan orang yang
menggunakan tank pada tahapan satu sampai empat.
b) Raja adalah karakter utama dari antagonis yang
mengunakan tank raja pada tahapan lima.
3 Grafis Game tiga sahabat memiliki bentuk grafis 2 dimensi.
4 Suara Game ini memiliki banyak suara, seperti :
a) Pada menu utama
b) Klik menu
c) Pada history
d) Pada help
e) Pada saat bermain
f) Efek ledak tank hancur
g) Efek tembakan
5 AI Menggunaka algoritma A* (A Star) sebagai kecerdasan
musuh untuk menentukan jalur pada pemain.
6 Cerita Cerita pada game tiga sahabat adalah tentang tiga orang
sahabat yaitu Lady, Fahri dan Langit sendang asik berbincang tiba-tiba datang sekumpulan prajurit dari istana yang membawa lady untuk diserahkan kepada raja. Hal itu yang membuat Fahri dan Langit untuk menyelamatkan Lady dari sang raja.
8 Skenario game Game tiga sahabat memiliki tiga level dan lima tahapan.
Pada game tiga sahabat terdapat dua tank yang dapat
memiliki jumlah dan kekuatan yang berbeda-beda semakin tinggi tahapan akan semakin banyak jumlah musuh dan semakin kuat juga. Didalam setiap tahapan
akan terdapat powerup yang berbeda-beda untuk
membuat game ini semakin menarik.
III.1.2.4 Analisa Tingkat Kesulitan
Pada game tiga sahabat yang akan dibangun, terdapat tiga level dan pada
setiap level terdapat lima tahapan. Berikut ini rincian penjelasan pada setiap
levelnya.
Table III.4 Tingkat Kesulitan
Level Tahapan Senjata Lokasi Jumlah
Enemy/Musuh
Mudah 1 Kecepatan tembakan musuh
di set 24fps (frame per-second). Pada tahap ini keceptan tembak musuh 33fps.
Tanah kering 10
2 Kecepatan tembakan musuh
di set 24fps (frame per-second). Pada tahap ini keceptan tembak musuh 30fps.
Tanah kering 10
3 Kecepatan tembakan musuh
di set 24fps (frame per-second). Pada tahap ini keceptan tembak musuh 28fps.
Berumput 13
4 Kecepatan tembakan musuh
di set 24fps (frame per-second). Pada tahap ini keceptan tembak musuh 25fps.
Berumput 13
5 Kecepatan tembakan musuh
di set 24fps (frame per-second). Pada tahap ini keceptan tembak musuh 23fps.
Istana 15
Sedang 1 Kecepatan tembakan musuh
di set 24fps (frame per-second). Pada tahap ini keceptan tembak musuh 30fps.
2 Kecepatan tembakan musuh di set 24fps (frame per-second). Pada tahap ini keceptan tembak musuh 28fps.
Tanah kering 13
3 Kecepatan tembakan musuh
di set 24fps (frame per-second). Pada tahap ini keceptan tembak musuh 25fps.
Berumput 15
4 Kecepatan tembakan musuh
di set 24fps (frame per-second). Pada tahap ini keceptan tembak musuh 23fps..
Berumput 15
5 Kecepatan tembakan musuh
di set 24fps (frame per-second). Pada tahap ini keceptan tembak musuh 20fps.
Istana 17
Sulit 1 Kecepatan tembakan musuh
di set 24fps (frame per-second). Pada tahap ini keceptan tembak musuh 28fps.
Tanah kering 15
2 Kecepatan tembakan musuh
di set 24fps (frame per-second). Pada tahap ini keceptan tembak musuh 25fps..
Tanah kering 15
3 Kecepatan tembakan musuh
di set 24fps (frame per-second). Pada tahap ini keceptan tembak musuh 23fps.
Berumput 17
4 Kecepatan tembakan musuh
di set 24fps (frame per-second). Pada tahap ini keceptan tembak musuh 20fps.
Berumput 17
5 Kecepatan tembakan musuh
di set 24fps (frame per-second). Pada tahap ini keceptan tembak musuh 18fps.
III.1.2.5 Analisis Scoring
Pada setiap tahapan setiap tembakan yang mengenai tank musuh akan
mendapatkan nilai 200 dan 500 untuk setiap tank musuh hancur, nilai akan terus
diakumulasikan sampai permain selesai.
III.2 Analisis Algoritma
Analisis algoritma terdiri dari Struktur data dan analisis algoritma A* (A
Star).
III.2.1 Struktur Data Game Tiga Sahabat
Gameboard pada game tiga sahabat dibuat dengan menggunakan array 2
dimensi (matriks) dengan ordo 35 X 30 dengan value diisi dengan 0 dan 1, Nilai 0
sebagai jalur yang dapat dilalui sedangkan 1 adalah penghalang, seperti terlihat
pada table III.5.
Table III.5 Stuktur Data Game Tiga Sahabat
Keterangan Gambar Struktur Data
Board Map Mymap =array[1..35][1..30] of int
lantai yang bisa dilewati oleh musuh dan pemain
Lantai = array[1..35][1..30] of int
Lantai yang tidak bisa dilewati (penghalang) oleh musuh dan pemain
III.2.2 Analisis Algoritma A*(A Star)
Algoritma A* di dalam game tiga sahabat akan diterapkan pada
kecerdasan musuh sebagai penentuan jalur terpendek atau pathfinding menuju
player/pemain. Alasan algoritma A* dipilih pada game tiga sahabat karena pada
metode pencarian, algoritma A* yang paling komplit dan optimal dengan
menggabungkan nilai sesungguhnya dan nilai perkiraan pada setiap lantai [2].
Cara kerja algoritma A* di dalam game tiga sahabat lebih jelasnya sebagai
berikut:
Tabel III.6 Pecarian Jalur Pada Game Tiga Sahabat
No Kondisi Gambar
1 Masukan posisi awal
musuh/NPC (1,2) dan
posisi pemain/player
(5,2)
2 Penentuan posisi awal
segabai posisi terpilih. Posisi awal musuh akan selalu menjadi terpilih karena hanya mengecek satu posisi.
3 Setelah mendapatkan
posisi terpilih (1,2) lalu cek apakah sama dengan
posisi pemain/ player
4 Jika posisi musuh belum
sama pengan posisi
pemian maka bangkitkan posisi yang berdekatan
dengan posisi terpilih
((0,2),(1,1),(1,3),(2,2)). Jika posisi musuh sama dengan posisi pemain
maka tidak perlu
membangkitkan posisi
yang berdekatan dengan posisi terpilih.
5 Dari posisi yang
dibangkitkan,cek kembali
apakah posisi yang
dibangkitkan adalah
penghalang
((3,1),(3,2),(3,3)) atau
tidak.
6 Jika posisi dapat dilalui
maka Hitung nilai h,g,dan
f pada posisi yang
dibangkitkan.
7 Lalu cari nilai f terendah
pada posisi yang
dibangkitkan dan
8 Ulangi langkah 4,5,6 dan 7 sampai mendapatkan
posisi pemain/player
(5,2)
9 Hasil dari pencarian jalur
menggunakan algoritma
A* pada game tiga
sahabat
Maka di dapat jarak terpendek dari table diatas dengan mendapatkan posisi
(5,2) sebagai posisi player/pemain. Untuk lebih jelasnya dalam penentuan jalur
Penentuan posisi awal musuh sebagai posisi
terpilih
Apakah posisi musuh terpilih sama dengan posisi
pemain ?
Hitung nilai h, g dan f Buat jalur
Return Start
Masukan posisi awal
musuh
Bangkitkan posisi yang berdekatan dengan posisi
terpilih
YA
Posisi terpilih Cari nilai f terendah dan masukan kedalam posisi
terpilih Tidak
Apakah posisi dapat dilalui?
Ya
Tidak
III.3 Analisis dan Kebutuhan Non-Fungsional
Pada tahap ini meliputi elemen – elemen yang diperlukan dalam membuat
aplikasi game tiga sahabat. Kebutuhan non fungsional terbagi menjadi tiga yaitu
analisis perangkat keras, analisis perangkat lunak dan analisis pengguna.
III.3.1 Analisis Perangkat Keras
Perangkat keras atau hardware merupakan salah satu hal yang penting
karena tanpa hardware yang memenuhi syarat, program yang akan dibuat tidak
akan dapat berjalan.
Perangkat keras minimum bagi pengguna untuk dapat memainkan game
tiga sahabat dengan baik adalah sebagai beriku :
1. Processor Dual Core 1,80 Ghz.
2. RAM 128 MB.
3. VGA 64 MB.
4. Hard disk 20 GB.
5. Monitor.
6. keyboard dan speaker.
III.3.2 Analisis Perangkat Lunak
Perangkat lunak atau software merupakan hal yang terpenting dalam
mendukung kinerja sebuah sistem. Perangkat lunak digunakan dalam sebuah
sistem merupakan perintah-perintah yang diberikan kepada perangkat keras agar
dapat saling berinteraksi diantara keduanya. Perangkat lunak yang dibutuhkan
untuk membangun aplikasi game tiga sahabatini adalah sebagai berikut :
1. Abode Flash CS5 action script 2.0
2. Adobe Illustrator CS5
Game tiga sahabat memiliki kebutuhan perangkat lunak sebagai berikut:
1. Semua sistem operasi
III.3.3 Analisis Pengguna
Pada analisis user (pemakai) ini akan mencakup analisis beberapa
parameter terhadap calon user dari aplikasi.
1. User Knowledge and Experience dari target user yang akan menggunakan game.
Game tiga sahabat ini bisa digunakan oleh kalangan apapun, tetapi
pengetahuan dan pengalaman akan memudahkan user dalam permainannya.
Terutama pengetahuan dan pengalaman dalam memainkan game action.
Berikut ini klasifikasi knowledge and experience dari pemain aplikasi:
Tabel III.7 Analisis klasifikasi knowledge and experience
Educational level Reading Level Typing Skills
Game ini bisa
digunakan oleh anak-anak pada umur 5-9 tahun
Game ini bisa
digunakan oleh anak-anak antara umur 5-9 tahun
Game ini tidak
memerlukan typing
skills yang tinggi
Computer Literacy Task Experience System Experience
Game ini bisa
digunakan oleh pemain yang memiliki
kemampuan komputer
yang moderate
(menengah)
Game ini bisa
digunakan oleh pemain dengan pengalaman penggunaan komputer
dan game yang sedang
Game ini bisa
digunakan oleh pengguna dengan pengalaman
penggunaan komputer
dan game yang sedang
Application Experience
Native Language Use Of Other System
Game ini bisa
digunakan dalam semua sistem operasi Windows xp/vista/7
Game ini menggunakan
satu bahasa, yakni indonesia
Game harus memiliki
aplikasi pendukung yaitu flash player
2. Users Physical Characteristic
Keadaan fisik seseorang mungkin akan berpengaruh pada penggunaan
aplikasi game ini. Ada hal-hal yang harus diperhatikan juga terhadap user dari
karakteristik fisiknya untuk dapat menggunakan aplikasi ini yaitu, umur, buta
Tabel.8 Analisis Users Physical Characteristic
Umur 5-9 tahun
Jenis Kelamin Pria dan Wanita
Pengunaan Tangan Kanan dan Kiri
Buta Warna User yang tidak bisa membedakan warna yang satu
dengan yang lainnya, maka tidak akan optimal
dalam menggunakan aplikasi ini, karena pada game
tiga sahabat terdapat warna-warna yang fungsinya untuk membedakan antara fungsional yang satu dengan fungsional yang lainnya.
III.4 Analisis dan Kebutuhan Fungsional
Pemodelan yang digunakan pada game yang akan dibuat dalam aliran data
terstuktur sebagai alat bantu yaitu Diagram konteks dan DFD (Data Flow
Diagram).
1. Analisis File
Dalam pembangunan game ini, untuk penyimpanan nilai tertinggi akan
disimpan dalam bentuk file. File ini terdiri dari masukan dan keluaran. File
masukan, merupakan file/berkas yg dipakai sebagai sumber data ataupun yang
digunakan sebagai masukan proses-proses di dalam sistem. Sedangkan file
keluaran, merupakan file/berkas yg dipakai sebagai tujuan dari sistem atau yang
merupakan produk sistem. Untuk lebih jelasnya dapat dilihat pada tabel III.7.
Tabel III.9 Analisis File Nilai Tertinggi
Nama File Nilai_tertiggi
Fungsi Merekam data nilai tertinggi
Sumber Proses Nilai
Tujuan Proses Merekam data nilai tertinggi
2. Diagram Konteks
Diagram Konteks adalah diagram yang menggambarkan input, process
dan output pada sistem perangkat lunak yang akan dibangun. Berikut
Diagram konteks dari game tank tiga sahabat.
Game Tank Tiga Sahabat Player Data_pilihan_menu Data_pemilihan_level Data_pemilihan_tank Data_gerak_tank Data_tembakan Info cerita Info bermain Info_permainan_level_mudah Info_pemainan_level_sedang Info_permaian_level_sulit Info_nilai_tertinggi Info_bantuan Info_tank Info_gerak_tank Info_nilai Info_keluar Data_Darah Data_nyawa Info_darah Info_nyawa Info_cara_bermain Info_dialog Data_posisis Info_jalur Data_warna_tank Data_level Data_nilai
Gambar III.4 Diagram Konteks Game Tank Tiga Sahabat.
3. Data Flow Diagram (DFD)
Data Flow Diagram merupakan suatu media yang digunakan untuk
menggambarkan aliran data yang mengalir pada suatu sistem informasi.
Dalam Data Flow Diagram (DFD) terdiri atas entitas luar, aliran data,
Pemain 1 Penyajian permainan 2 Penyajian nilai tertinggi 3 Penyajian Bantuan 4 Keluar Data_pilihan_bermain Data_pemilihan_level Data_pemilihan_tank Data_gerak_tank Data_tembakan Info_bermain Info_pemilihan_level_mudah Info_pemilihan_level_sedang Info_pemilihan_level_sulit Info_tank Info_gerak_tank Info_nilai Data_pilihan_nilai_tertinggi Info_nilai_tertinggi Data_pilihan_bantuan Info_bantuan Data_pilihan_keluar Info_keluar Info_darah Info_nyawa Nilai Tertinggi Data_nilai_tertinggi Data_nilai_tertinggi Info_cara_bermain Info_cerita Info_dialog Data_posisi Info_jalur Data_nyawa Data_darah Data_warna_tank Data_nilai Info_posisi
Gambar III.5 DFD Level 1 Pemilihan Menu
Pemain 1.1 Pemilihan level 1.2 Pemilihan tank 1.3 Pengolahan gerak tank 1.4 Pengolahan nilai Data_pemilihan_menu_level Info_permainan_level_mudah Data_pilihan_tank Data_gerak_tank Info_gerak_tank Data_tembak Info_nilai Info_permainan_level_sedang Info_permainan_level_sulit Info_nyawa Info_darah Info_cara_bermain Info_cerita Info_dialog Data_posisi Info_jalur 1.1.1 Penyajian map Data_level Data_warna_tank Data_nyawa Data_darah info_warna_tank 1.6 Pengolahan nyawa 1.5 Pengolahan darah 1.3.1 Pencarian jalur Data_darah 0
III.4.1 Spesifikasi Proses
Spesifikasi proses merupakan deskripsi dari setiap elemen proses yang
terdapat dalam program, yang meliputi nama proses, input, output dan keterangan
dari proses. Berikut ini spesifikasi proses dari aplikasi game tank tiga sahabat
ditunjukan pada tabel berikut ini :
Table III.10 Spesifikasi Proses No Proses Keterangan
1 No. Proses 2
Nama Penyajian nilai tertinggi
Deskripsi Prose penyajian nilai tertinggi
Input Data pilihan nilai tertinggi
Output Info nilai tertinggi
Logika Proses 1. Pemain memasukan data pilihan
2. Sistem akan menampilkan <