SKRIPSI
Diajukan untuk Menempuh Ujian Akhir Sarjana
ARIE SOHIBUL WAFA
10109636
PROGRAM STUDI TEKNIK INFORMATIKA
FAKULTAS TEKNIK DAN ILMU KOMPUTER
iii
Puji dan syukur penulis panjatkan kehadirat Allah SWT yang telah
memberikan rahmat serta hidayah-Nyasehingga penulis dapat menyelesaikan
penulisan skripsi dengan judul “PEMBANGUNAN APLIKASI GAME
KARAPAN SAPI BERBASIS MOBILE” sebagai salah satu syarat kelulusan
pada Program Strata 1 Jurusan Teknik Informatika Fakultas Ilmu dan Teknik
Komputer di Universitas Komputer Indonesia.
Dengan selesainya penyusunan laporan tugas akhir ini penulis banyak
memperoleh dukungan, masukan dan bimbingan yang sangat bermanfaat dari
berbagai pihak selama penulisan laporan tugas akhir ini, oleh karena itu penulis
mengucapkan terima kasih kepada :
1. Allah SWT atas rahmat, berkah dan izin-Nya saya bisa menyelesaikan
penulisan skripsi ini.
2. Orang tua serta keluarga yang telah memberikan dukungan baik secara
moril maupun materil dan doa yang tiada hentinya sehingga penulis bisa
bertahan dan berpijak hingga saat ini.
3. Bapak Galih Hermawan, S.Kom., M.T. selaku pembimbing, yang telah
membimbing penulis dalam menyelesaikan tugas akhir.
4. Irawan Aprianto , S.T., M.T. selaku reviewer yang telah banyak
memberikan masukan dan arahan.
5. Ibu Utami Dewi W, S.kom. selaku dosen wali IF-14 2009 selama penulis
menempuh pendidikan di UNIKOM
6. Tiefanny Meyriza, Lesikah, Rizki Syafari, Irvan yang selalu ada di samping
memberikan dukungan.
7. Untuk teman-teman IF-14 2009 seperjuangan dan semua pihak yang
v
ABSTRACT ... ii
KATA PENGANTAR ... iii
DAFTAR ISI ... v
DAFTAR GAMBAR ... viii
DAFTAR TABEL ... x
DAFTAR SIMBOL ... xi
DAFTAR LAMPIRAN ... xv
BAB 1 PENDAHULUAN ... 1
1.1 Latar Belakang... 1
1.2 Perumusan Masalah ... 2
1.3 Maksud dan Tujuan ... 2
1.4 Batasan Masalah ... 3
1.5 Metodologi Penelitian ... 3
1.6 Sistematika Penulisan ... 5
BAB 2 LANDASAN TEORI ... 7
2.1 Karapan Sapi ... 7
2.2 Permainan (Game) ... 8
2.2.1 Permainan Video (Video Game) ... 9
2.2.2 Klasifikasi Permainan ... 10
2.2.3 Jenis Permainan (Genre Game) ... 10
2.3 Kecerdasan Buatan ... 13
2.4 Multimedia ... 17
2.4.1. Pengertian Multimedia ... 17
2.5.2 Adobe Flash ... 20
2.6 Metode Penguijian Sistem ... 21
2.6.1 Pengujian White-box ... 21
2.6.2 Pengujian Black-box... 22
2.7 Analisis Sistem Berorientasi Objek ... 22
2.7.1 OOP (Object Oriented Programing)... 23
BAB 3 ANALISIS DAN PERANCANGAN ... 26
3.1 Analisis Sistem ... 26
3.1.1 Analisis Masalah ... 26
3.1.2 Analisis Game Sejenis... 26
3.1.3 Analisis Game Yang Dibangun ... 27
3.1.4 Analisis Algoritma ... 29
3.1.5 Analisis Kebutuhan Non Fungsional ... 37
3.1.6 Analisis Kebutuhan Fungsional ... 40
3.2 Perancangan Sistem ... 58
3.2.1 Perancangan Kompnen Permainan ... 58
3.2.2 Perancangan Struktur Menu ... 63
3.2.3 Perancangan Antar Muka ... 64
3.2.4 Perancangan Pesan ... 68
3.2.5 Jaringan Semantik ... 70
3.2.6 Perancangan Metode ... 71
BAB 4 IMPLEMENTASI DAN PENGUJIAN SISTEM ... 76
4.1 Implementasi ... 76
4.1.1 Implementasi Perangkat Keras ... 76
4.1.2 Implementasi Perangkat Lunak ... 76
vii
4.2.3 Pengujian White Box ... 85
4.2.4 Pengujian Beta ... 90
BAB 5 KESIMPULAN DAN SARAN ... 97
5.1 Kesimpulan ... 97
5.2 Saran ... 97
101
[2] Sommerville, Ian .2007.Software Engineering – Eight Edition, Addison Wesley, Massachussets.
[3] Karapan Sapi : Madura Punya Tradisi [online]. Di akses 22 september
2013.http://www.eastjava.com/tourism/pasuruan/ina/bull-race.html
[4] Maxwell Chandler, H., Chandler, R. 2011, Fundamentals of Game
Development. LLC: Jones & Barlett Learning.
[5] Ernest Adams.2010. Fundamentals of Game Design, 2nd ed. Berkeley: New Rider.
[6] Sigit, dkk. .2008. Pengembangan Pembelajaran Dengan Menggunakan Multimedia Interaktif Untuk Pembelajaran Yang Berkualitas.Semarang,Laporan Karya Tulis Ilmiah.
[7] Kecerdasan Buatan [online].Diakses 1 oktober 2013.
http://informatika.web.id/category/kecerdasan-buatan
[8] Wahana Komputer.2012.Beragam Desain Game Edukasi dengan Adobe
Flash CS5.Yogyakarta : Andi Offset.
[9] Colin Moock, Essential ActionScript 3.0, First Edition ed. Sebastopol, CA:
O'Reilly Media, Inc.
[10] Pressman, Roger S. 2012. Software Engineering : A Practitioner‟s
Approach, 7th edition, McGraw Hill Higher Education.
[11] Pudjo Prabowo.2011.Menggunakan UML. Informatika, Bandung.
[12] Suyanto, ST, MSc. 2007, Artificial Intelligence Searching, Reasoning,
Game race atau racing game merupakan salah satu dari genre game yang tujuan utamanya adalah mencapai garis finish dari suatu race dimana pemain harus memiliki kecepatan dan ketepatan dalam memainkan game tersebut.
Biasanya jalur atau lintasan yang harus dilewati memiliki perbedaan dalam
permainannya serta objek yang dimainkan salah satu contohnya mobil ataupun
motor. Pemain akan mendapatkan kemenangan apabila bisa mengalahkan musuh
dengan mencapai garis finish terlebih dahulu [1]. Tema atau konsep game race
yang ada saat ini kurang mengangkat tema kebudayaan dan menggunakan
karakter ciri khas Indonesia karena kebanyakan game race mengangkat tema seputar balap mobil atau balap motor saja.
Karapan sapi merupakan istilah untuk menyebut perlombaan pacuan sapi
yang berasal dari Pulau Madura, Jawa Timur. Pada perlombaan ini, sepasang sapi
yang menarik semacam kereta dari kayu (tempat joki berdiri dan mengendalikan
pasangan sapi tersebut) dipacu dalam lomba adu cepat melawan
pasangan-pasangan sapi lain. Trek pacuan tersebut biasanya sekitar 100 meter dan lomba
pacuan dapat berlangsung sekitar sepuluh detik sampai satu menit. Awal mula
kerapan sapi dilatar belakangi oleh tanah Madura yang kurang subur untuk lahan
pertanian, sebagai gantinya orang-orang Madura mengalihkan mata
pencahariannya sebagai nelayan untuk daerah pesisir dan beternak sapi yang
sekaligus digunakan untuk bertani khususnya dalam membajak sawah atau
ladang.Saat ini beberapa kota di Madura masih menyelenggarakan karapan sapi
pada bulan Agustus dan September setiap tahun, dengan pertandingan final pada akhir September atau Oktober di eks Kota Karesidenan, Pamekasan untuk
memperebutkan Piala Bergilir Presiden [2].
Game yang bertemakan karapan sapi sudah ada yaitu “Game Perawatan Karapan Sapi” namun dari game yang sudah ada tadi fokus permainan hanya pada perawatan sapi saja belum mengarah kepada perlombaan karapan sapi sehingga
karapan sapi. Game karapan sapi ini adalah game bergenre balapan atau race. Juga dengan menerapkan Artificial Intelligence (AI) atau kecerdasan buatan pada NPC agar pergerakannya lebih dinamis.
1.2 Perumusan Masalah
Berdasarkan uraian pada latar belakang masalah, maka yang menjadi
pokok permasalahan adalah bagaimanana membangun game race dengan tema karapan sapi serta menerapakan AI kepada NPC.
1.3 Maksud dan Tujuan
Berdasarkan masalah yang telah dikemukakan diatas, maka maksud dari
penulisan tugas akhir Pembangunan Aplikasi Game Permainan Tradisional Karapan Sapi sebagai media untuk memperkenalkan dan melestarikan permainan
tradisional.
Adapun tujuan yang ingin dicapai antara lain :
1. Pemain mengetahui karapan sapi yang mempunyai karakter dengan
ciri khas Indonesia
2. Menyajikan gameplay yang menarik dengan pergerakan NPC menjadi lebih dinamis sehingga tidak hanya bisa melewati rintangan saja tetapi
bisa mencari rute yang lebih pendek untuk bisa mencapai garis finish.
3. Pemain mengenal salah satu permainan tradisional Indonesia melalui
game.
1.4 Batasan Masalah
Batasan masalah dalam membangun aplikasi ini antara lain :
1. Game yang dibuat berbasis mobile dengan tampilan jenis 2 Dimensi. 2. Game berupa single player game.
3. Game berupa offline game.
4. Target penggunanya adalah untuk umum
5. Genre game adalah balapan (race)
7. Tools yang digunakan untuk membangun game ini menggunakan bahasa pemrograman action script 3.0 dengan software pembangunadobe flash 5.5
8. Pemodelan perancangan sistem menggunakan UML.
9. Metode yang akan digunakan adalah A* sebagai implementasi dari
pergerakan musuh agar dapat melewati rintangan dan mencari rute yang
lebih cepat
10.Aplikasi game yang akan dibangun berbasis mobile, dengan sistem operasi
Android.
1.5 Metodologi Penelitian
Metodologi yang digunakan dalam penelitian ini terbagi menjadi dua
tahap yaitu pengumpulan data dan pengembangan aplikasi.
1. Tahap pengumpulan data
Metode pengumpulan data yang digunakan dalam penelitian ini adalah
sebagai berikut :
a. Studi Literatur
Studi literatur dilakukan dengan cara mengumpulkan literatur, jurnal,
paper, buku dan bacaan-bacaan yang ada kaitannya dengan materi
penelitian yang sedang dilakukan, khususnya tentang game, game race
dan teori karapan sapi .
b. Kuisioner
Pembagian kuisioner dilakukan pada tahap pengujian kepada
pengguna yaitu 12 tahun keatas dan hasilnya akan menjadi kesimpulan
dari penelitian ini.
2. Tahap pengembangan perangkat lunak
Tahap pembangunan perangkat lunak ini menggunakan paradigma
perangkat lunak secara waterfall, yang meliputi beberapa proses yaitu :
System services, kendala dan tujuan, dibentuk oleh konsultasi dengan pengguna system. kemudian didefinisikan secara rinci dan berfungsi sebagai
spesifikasi sistem.
b. System and Software Design
System design process mempartisi requirements baik perangkat keras maupun perangkat lunak sistem. Ini menetapkan arsitektur sistem secara keseluruhan.
Desain perangkat lunak melibatkan proses mengidentifikasi dan menggambarkan
abstraksi sistem perangkat lunak yang mendasar antara kedua perangkat tersebut.
c. Implementation and Unit Testing
Selama tahap ini, desain perangkat lunak direalisasikan sebagai serangkaian
program atau unit program. Unit pengujian melibatkan verifikasi bahwa setiap
unit memenuhi spesifikasinya.
d. Integration and System Testing
Unit program individu atau program yang terintegrasi dan diuji sebagai sistem
yang lengkap untuk memastikan bahwa persyaratan perangkat lunak telah
dipenuhi.Setelah pengujian, sistem perangkat lunak disampaikan kepada
pelanggan.
e. Operation and Maintenance
Biasanya ini adalah fase siklus hidup terpanjang.Sistem ini diinstal dan
dimasukkan ke dalam penggunaan praktis.Pemeliharaan melibatkan mengoreksi
kesalahan yang tidak ditemukan pada tahap-tahap awal dari siklus hidup,
meningkatkan implementasi unit sistem dan meningkatkan layanan sistem sebagai
persyaratan baru ditemukan.
Gambar 1-1 Waterfall
1.6 Sistematika Penulisan
Sistematika penulisan proposal penelitian ini disusun untuk memberikan
gambaran umum tentang penelitian yang dijalankan. Sistematika penulisan tugas
akhir ini adalah sebagai berikut :
BAB I PENDAHULUAN
Bab ini menguraikan tentang latar belakang , perumusan masalah , maksud dan
tujuan , batasan masalah , metodologi penelitian dan sistematika penulisan.
BAB II LANDASAN TEORI
Bab ini menguraikan tentang karapan sapi , permainan , kecerdasan buatan ,
multimedia ,tools yang digunakan , metode pengujian sistem dan analisis sistem
berorientasi objek.
BAB III ANALISIS DAN PERANCANGAN
Bab ini menguraikan tentang analisis sistem , analisis masalah , analisis game
yang akan dibangun , spesipikasi kebutuhan perangkat lunak , analisis kebutuhan
sistem , analisis kebutuhan fungsional , analisis kebutuhan non fungsional dan
BAB IV IMPLEMENTASI DAN PENGUJIAN
Bab ini menguraikan mengenai implementasi sistem dan pengujian sistem pada
pembangunan game race karapan sapi dari analisis dan perancangan.
BAB V KESIMPULAN DAN SARAN
Bab ini menguraikan mengenai kesimpulan dari setiap tahapan pembangunan
2.1 Karapan Sapi
Karapan Sapi adalah acara khas masyarakat Madura yang di gelar setiap
tahun pada bulan Agustus atau September, dan akan di lombakan lagi pada final
di akhir bulan September atau Oktober. Pada Karapan Sapi ini, terdapat seorang
joki dan 2 ekor sapi yang di paksa untuk berlari sekencang mungkin sampai garis
finis.Joki tersebut berdiri menarik semacam kereta kayu dan mengendalikan gerak
lari sapi.Panjang lintasan pacu kurang lebih 100 meter dan berlangsung dalam
kurun waktu 10 detik sampai 1 menit.
Selain di perlombakan, karapan sapi juga merupakan ajang pesta rakyat
dan tradisi yang prestis dan bisa mengangkat status sosial seseorang. Bagi mereka
yang ingin mengikuti perlombaan karapan sapi, harus mengeluarkan dana yang
tidak sedikit untuk melatih dan merawat sapi-sapi yang akan bertanding
sebelumnya. Untuk membentuk tubuh sepasang sapi yang akan ikut karapan agar
sehat dan kuat, dibutuhkan biaya hingga Rp 4.000.000 per pasang sapi untuk
makanan maupun pemeliharaan lainnya. Sapi karapan diberikan aneka jamu dan
puluhan telur ayam per hari, terlebih-lebih menjelang diadu di arena karapan.
Bagi masyarakat Madura, Kerapan dilaksanakan setelah sukses menuai
hasil panen padi atau tembakau.Untuk saat ini, selain sebagai ajang yang
membanggakan, kerapan sapi juga memiliki peran di berbagai bidang.Misal di
bidang ekonomi, yaitu sebagai kesempatan bagi masyarakat untuk berjualan,
peran magis religious; misal adanya perhitungan-perhitungan tertentu bagi
pemilik sapi sebelum bertanding dan adanya mantra-mantra tertentu. Terdapat
seorang 'dukun' yang akan 'mengusahakan'nya. Pada setiap tim pasti memiliki
seorang 'dukun' sebagai tim ahli untuk memenangkan perlombaan.
Prosesi awal dari karapan sapi ini adalah dengan mengarak
pasangan-pasangan sapi mengelilingi arena pacuan dengan diiringi gamelan Madura, yaitu
Saronen.Babak pertama adalah penentuan kelompok menang dan kelompok
adalah penentuan juara kelompok menang. Piala Bergilir Presiden hanya
diberikan pada juara kelompok menang [3].
2.2 Permainan (Game)
Permainan merupakan sebuah aktivitas rekreasi dengan tujuan
bersenang-senang ataupun untuk mengisi waktu luang. Permainan biasanya dilakukan secara
sendiri-sendiri ataupun secara kelompok. Permainan sendiri terbagi menjadi
2 bagian yaitu [4]:
1. Permainan Anak - Anak
Banyak permainan yang sering dilakukan oleh anak-anak
bersama teman-teman mereka di sekitar rumah mereka. Mereka biasanya
berkelompok, senang berlarian, ataupun kadang duduk melingkar untuk
memainkan salah satu permainan, dan dari situlah biasanya akan
tercipta suatu keakraban diantara mereka. Beberapa permainan dari
masa lalu disebut dengan permainan tradisional, sedangkan untuk
permainan yang muncul di jaman sekarang ini disebut dengan
permainan modern dan biasanya menggunakan peralatan canggih seperti
halnya video game. Dan berikut beberapa jenis permainan yang bisa dimainkan oleh anak-anak [7]:
a. Congklak
pemikiran untuk memainkannya. Dan berikut beberapa jenis
permainan yang bisa dimainkan oleh orang dewasa [7]:
a. Kartu remi
b. Catur
c. Domino
2.2.1 Permainan Video (Video Game)
Permainan video (video game) adalah permainan yang menggunakan interaksi antarmuka pengguna melalui gambar yang dihasilkan oleh piranti video.
Permainan video umumnya menyediakan sistem penghargaan, misalnya score
yang dihitung berdasarkan tingkat keberhasilan yang dicapai dalam
menyelesaikan tugas-tugas yang ada di dalam permainan video tersebut.
Sistem elektronik yang digunakan untuk menjalankan permainan video disebut
platform, contohnya adalah komputer pribadi (personal computer) ataupun konsol permainan (game console) [7].
1. Permainan komputer (Computer Game)
Permainan komputer adalah permainan video yang di mainkan pada
komputer pribadi, dan bukan pada konsol permainan.Permainan komputer
telah berevolusi dari sistem grafis sederhana menjadi sangat kompleks dan
mutakhir.
Permainan online (online game) adalah jenis permainan video atau permainan komputer dengan menggunakan jaringan internet sebagai
media interaksinya.
Permainan online terdiri dari dua unsur utama, yaitu server dan
client.Server adalah penyedia layanan gaming yang merupakan basis agar
client –client yang terhubung dapat memainkan permainan dapat melakukan komunikasi dengan baik. Suatu server pada prinsipnya hanya melakukan administrasi permainan dan menghubungkan client-client. Sedangkan client adalah pengguna permainan dan memakai kemampuan server. Contoh permainan online adalah Ragnarok Online, Risk Your Life, Xian [7].
2. Konsol Permainan (Game Console)
Konsol permainan adalah sebuah mesin elektronik yang dirancang
khusus untuk memainkan permainan video. Perangkat keluarannya biasa
berupa sebuah pengendali. Konsol permainan yang pertama kali dibuat
adalah Atari, kemudian dilanjutkan dengan Nintendo yang sukses pada tahun 1985-1989. Konsol permainan modern sekarang ini antara lain
adalah Playstationbuatan perusahaan Sony. Untuk Console yang berbentuk kecil dan dapat dibawah kemana-mana biasa disebut
Portable Console [7].
2.2.2 Klasifikasi Permainan
Sejarah game tidak lepas dengan namanya platform, dari yang awalnya hanya mesin Arcade (Mesin ding dong) hingga sampai sekarang ini yang sudah mencapai era Mobile Games. Untuk lebih jelasnya, berikut ini adalah klasifikasi
game berdasarkan jenis Platform yang di gunakan [8]:
1. Arcade Games yaitu yang sering disebut ding-dong di Indonesia, biasanya berada di daerah / tempat khusus dan memiliki box atau mesin yang
memang khusus didesain untuk jenis video games tertentu dan tidak jarang
bahkan memiliki fitur yang dapat membuat pemainnya lebih merasa “masuk” dan menikmati. Seperti pistol, kursi khusus, sensor gerakan, sensor injakkan dan stir mobil (beserta transmisinya).
2. PC Games (personal computer) yaitu video game yang dimainkan menggunakan Personal Computers.
3. Console Games yaitu video game yang dimainkan menggunakan
consoletertentu sepertiplaystation XBOX, Nitendo, dan lan-lain.
4. Handheld Game yaitu game yang dimainkan di console khusus video game yang dapat dibawa kemana-mana, contoh nitendo DS dan Sony PSP. 5. Mobile Games yaitu game yang biasa dimainkan khusus untuk handphone
atau PDA.
2.2.3 Jenis Permainan (Genre Game)
beberapa genre. Pada dasarnya, genre-genre game yang beredar di pasaran dapat dikelompokkan sebagai berikut [5]:
a. Advergames
Permainan yang dikembangkan untuk tujuan periklanan.
b. Action Game
Adalah tipe game dengan fitur utama berupa banyaknya aksi di mana pemain harus memiliki keterampilan reaksi yang cepat untuk
menghindari musuh atau menghindari rintangan. Pengembang game tipe
ini perlu memastikan game yang dibuat dioptimasi sehingga pemain memiliki pengalaman bermain yang baik, yang tidak terganggu oleh delay
proses yang lama, contohnya : Metal Gear Solid.
c. Adventure Game
Adalah tipe game yang umumnya membuat pemain harus berjalan mengelilingi suatu tempat yang terkondisi, seperti sebuah istana, gua
yang berkelok, dan planet yang jauh. Pemain melakukan navigasi suatu
area mencari pesan-pesan rahasia, memperoleh obyek yang memiliki
kemampuan yang bervariasi, bertempur dengan musuh, dan lain-lain.
Untuk membuat game ini, diperlukan perencanaan yang akurat sehingga memiliki alur cerita yang menarik bagi pemain, contohnya : Tomb Raider, Prince of Persia, Hitman, dan lain-lain.
d. Fighting Game
Adalah tipegame yang intinya harus menjatuhkan lawan tandingnya, entah itu dengan pukulan, tendangan, combo, maupun dengan jurus
special, contohnya : Tekken, Mortal Kombat, Naruto, dan lain-lain.
e. FPS (First Person Shooter)
Adalah tipe game yang mengunakan sudut pandang orang pertama untuk membidik atau membunuh musuh, sehingga kita hanya melihat
tangannya saja dan tidak melihat tubuh karakter yang dimainkan,
f. RPG (Role Playing Game)
Adalah tipe game yang seringkali berupa multi karakter game di mana setiap pemain memiliki karakter dengan kemampuan, kekuatan, dan
kelemahan yang spesifik. Para pemain saling berkompetisi, berinteraksi,
dan bertempur satu sama lain. Tampilan grafis yang khas untuk setiap
karakter pemain ditambah dengan storyline yang mendebarkan akan sangat menarik dan memberikan pengalaman yang berbeda di dalam
bermain, contohnya :Final Fantasy, Warcraft, dan lain-lain.
g. Platform Game
game ini, contohnya : Sonic The Hedgehog, Mario Bros, Metal Slug.
h. Puzzle Game
Adalah tipe game yang umumnya membuat pemain menggunakan kemampuan berpikirnya sebagai pengganti keterampilan reaksi yang
cepat karena terdapat rahasia yang perlu dipecahkan. Game ini lebih bersifat statis dibanding action game. Pembuatan game tipe ini seringkali ditunjang dengan AI (Artificial Intelligence), contohnya :7 Wonders of The Ancient World.
i. Racing Game
Adalah tipe game yang tujuannya adalah mencapai garis finish dari suatu race, dalam game ini biasanya pemain dapat memilih dan membeli kendaraan, mendandani, melakukan upgrade mesin , contohnya :
Need For Speed.
j. Simulation Game
Adalah tipe game yang memberikan pengalaman atau interaksi sedekat mungkin dengan keadaan yang aslinya, meskipun terkadang
khusus pada detail dan pengalaman realistik menggunakan keadaan
tersebut, contohnya : Gran Turismo.
k. Sandbox Game
Adalah tipegame yang umumnya ditujukan untuk menjelajahi suatu kota atau tempat dan bebas berinteraksi dengan objek disekitarnya.
Mungkin game ini bisa di bilang mirip RPG tapi Sandbox sangat berbeda dengan RPGgame, perbedaannya adalah tidak adanya peningkatan level karakternya, contohnya : GTA dan Bully.
l. RTS (Real Time Strategy)
Adalah tipegame yang mengharuskan pemainnya menggunakan taktik dan strategi untuk jeli dalam melihat setiap peluang, kelemahan
musuh dan bijaksana dalam menggunakan sumber daya yang ada,
contohnya : Command and Conquer.
m. Sport Game
Adalah tipegame yang berupa kompetisi antara dua pemain atau lebih, di mana pemain dapat berupa individual atau tim. Contoh gametipe ini antara lain sepakbola, bola basket, tenis, dan bilyard. Tergantung
seberapa cepat permainan yang terjadi, aplikasi game perlu dioptimalkan, contohnya : Pro Evolution Soccer.
2.3 Kecerdasan Buatan
Kecerdasan Buatan atau Artificial Intelligence merupakan salah satu bagian
ilmu komputer yang membuat agar mesin (komputer) dapat melakukan pekerjaan
seperti dan sebaik yang dilakukan manusia.Pada awal diciptakannya, komputer
hanya difungsikan sebagai alat hitung saja.Namun seiring dengan perkembangan
jaman, maka peran komputer semakin mendominasi kehidupan umat manusia.
Komputer tidak lagi hanya digunakan sebagai alat hitung, lebih dari itu, komputer
diharapkan untuk dapat diberdayakan untuk mengerjakan sesuatu yang bisa
dikerjakan oleh manusia [7].
Manusia bisa menjadi pandai dalam menyelesaikan segala permasalahan di
diperoleh dari cara mempelajarinya. Semakin banyak bekal pengetahuan yang
dimiliki oleh seseorang tentu saja diharapkan akan lebih mampu dalam
menyelesaikan permasalahan. Namun bekal pengetahuan saja tidak cukup,
manusia juga diberi akal untuk melakukan penalaran, mengambil kesimpulan
berdasarkan pengetahuan dan pengalaman yang mereka miliki. Tanpa memiliki
kemampuan untuk menalar dengan baik, manusia dengan segudang pengalaman
dan pengetahuan tidak akan dapat menyelesaikan masalah dengan baik. Demikian
juga dengan kemampuan menalar yang sangat baik, namun tanpa dibekali
pengetahuan dan pengalaman yang memadai, manusia juga tidak akan bisa
menyelesaikan masalah dengan baik
Dengan adanya kecerdasan buatan, diharapkan tidak menutup kemungkinan
hanya dengan data pengetahuan yang terbatas, sebuah komputer dapat berpikir
seperti manusia dalam menghadapi masalah.
Implementasi kecerdasan buatan dapat diterapkan pada bidang:
1. Visualisasi komputer
Kecerdasan buatan pada bidang visualisasi komputer ini
memungkinkan sebuah sistem komputer mengenali gambar sebagai input.
2. Pengenalan Suara
Kecerdasan buatan pada pengenalan suara ini dapat mengenali suara
manusia.Cara mengenali suara ini dengan mencocokannya pada acuan
yang telah diprogramkan terlebih dahulu.Contohnya perintah komputer
dengan menggunakan suara user.
3. Sistem Pakar
Kecerdasan buatan pada Sistem Pakar ini memungkinkan sebuah
sistem komputer memiliki cara berpikir dan penalaran seorang ahli dalam
mengambil keputusan, untuk memecahkan masalah yang ada pada saat itu.
Contohnya program komputer yang dapat mendiagnosa penyakit dengan
memasukan gejala-gejala yang dialami pasien.
4. Permainan
Kecerdasan buatan pada permainan ini memungkinkan sebuah sistem
Contohnya permainan yang memiliki fasilitas orang melawan
komputer.Komputer sudah di program sedemikian rupa agar memiliki cara
bermain seperti seorang manusia bahkan bisa melebihi seorang manusia.
1. Kecerdasan Buatan Yang Digunakan
Algoritma A* diperkenalkan oleh Peter Hart, Nils Nilsson dan Bertram
Raphael pertama kali pada tahun 1968 dengan menggunakan heuristik.
Algoritma A* merupakan format pencarian heuristik untuk menghitung
efisiensi solusi optimal [12].
Algoritma A* tanpa fungsi heuristik yang baik akan memperlambat
pencarian dan dapat menghasilkan rute yang tidak tepat. Untuk
menghasilkan rute yang benar-benar tepat, maka fungsi heuristiknya harus
underestimate dari suatu node ke final node. Fungsi Heuristik yang
sempurna akan membuat algoritma A* langsung menuju ke final node
tanpa menuju ke arah-arah lain. Sehingga apabila fungsi heuristiknya
terlalu underestimate, sehingga akan menyebabkan algoritma ini
beranggapan ada rute yang lebih baik dari rute yang telah ada. Untuk
fungsi heuristik yang underestimate, bila nilainya terlalu rendah akan
menyebabkan akan menyebabkan algoritma ini seperti algoritma Djikstra
yang mencari ke segala arah yang mungkin. Hal ini disebabkan karena
tidak cukupnya informasi mengenai masalah yang dihadapi sehingga
menyebabkan algoritma A* melakukan pencarian yang lebih banyak dan
lebih lama.
Algoritma A* adalah algoritma best-first search dimana cost yang
terkait dengan node adalah f (n) = g(n) + h(n), dan g(n) adalah cost of the
path dari keadaan awal ke node n dan h(n) adalah perkiraan heuristik atau
cost atau path dari node n ke tujuan. Jadi, f(n) adalah perkiraan total cost
terendah dari setiap path yang akan dilalui node n ke node tujuan. Dengan
kata lain, cost adalah jarak yang telah ditempuh, dan panjang garis lurus
antara node n dengan node akhir adalah perkiraan heuristiknya. Semakin
Beberapa fungsi heuristic yang di yang umumnya di gunakan dalam
algoritma A* adalah sebagai berikut:
1. Manhattan Dinstance
Manhattan Distance adalah fungsi standar untuk algoritma A*. Digunakan
untuk aplikasi yang memiliki 4 arah gerakan (tidak dapat bergerak
b. Xn adalah koordinat x dari node pertama pada grid.
c. Xgoal adalah koordinat X pada final node
d. Yn adalah koordinat dari node pertama pada grid.
e. Ygoal adalah koordinat Y pada final node.
2. Straight Line Distance
Straight Line Distance adalah fungsi heuristik yang digunakan pada
aplikasi yang dapat bergerak ke segala arah/sudut.
h(n)= sqrt ((Xn-Xgoal + abs (Yn-Ygoal ) (2,2)
a. Xn adalah koordinat x dari node pertama pada grid.
b. Xgoal adalah koordinat X pada final node
c. Yn adalah koordinat dari node pertama pada grid.
d.Ygoal adalah koordinat Y pada final node.
3. Diagonal Distance
Diagonal Distance adalah fungsi heuristik yang digunakan pada
aplikasi yang yang memiliki delapan arah gerakan (dapat bergerak
diagonal).
h(n)= d* maxabs (Xn-Xgoal), abs (Yn-Ygoal)) (2,3)
a. d adalah nilai biaya. Nilai d di dapat antara nilai minimum cost di
pindah antar node
b. Xn adalah koordinat x dari node pertama pada grid.
d. Yn adalah koordinat dari node pertama pada grid.
e. Ygoal adalah koordinat Y pada final node.
2.4 Multimedia
Konsep multimedia telah banyak diterapkan dalam dunia
pendidikan.Pembelajaran menggunakan multimedia interaktif berkembang atas
dasar pembelajaran konvensional yang tidak bisa memenuhi kebutuhan peserta
didikdalam pembelajaran. Multimedia dapat menjadikan suatu aplikasi menjadi
sangat interaktif dan menyajikan interface yang menarik [6].
2.4.1. Pengertian Multimedia
Multimedia merupakan kombinasi dari teks, gambar, seni grafik, suara,
animasi dan elemen-elemen video yang dimanipulasi secara digital.Tampilan dan cita rasa dari proyek multimedia harus menyenangkan, estetis, mengundang dan
mengikat.Proyek harus memuat konsistensi visual, hanya dengan menggunakan
elemen-elemen yang mendukung pesan keseluruhan dari program.
Menurut Gayestik seperti dikutip oleh Idris, multimedia merupakan suatu
sistem komunikai interaktif berbasis komputer yang mampu menciptakan,
menyimpan, menyajikan, dan mengakses kembali informasi berupa teks, grafik,
suara, video, atau animasi.
2.4.2. Kriteria Multimedia dalam Pembelajaran:
1. Memilki lebih dari satu media yang konvergen, misalnya menggabungkan
unsur audio dan visual.
2. Bersifat interaktif, dalam pengertian memiliki kemampuan untuk
mengakomodasi respon pengguna.
3. Bersifat mandiri, dalam pengertian memberi kemudahan dan kelengkapan
isi sedemikian rupa sehingga pengguna bisa menggunakan tanpa
bimbingan orang lain.
2.4.3. Objek Multimedia
Menurut, objek multimedia terbagi menjadi beberapa yaitu teks, gambar,
a. Teks
Hampir semua orang yang biasa menggunakan komputer sudah terbiasa
dengan teks.Teks merupakan dasar dari pengolahan kata dan informasi
berbasis multimedia.Dalam kenyataannya multimedia menyajikan
informasi kepada audiens dengan cepat, karena tidak diperlukan membaca
secara rinci dan teliti.Menurut Hofstetter adalah kebanyakan sistem
multimedia dirancang dengan menggunakan teks karena teks merupakan
sarana yang efektif untuk mengemukakan ide-ide dan menyediakan
instruksi-instruksi kepada user (pengguna).
b. Gambar
Secara umum image atau grafik berarti still image seperti foto dan
gambar. Manusia sangat berorientasi pada visual dan gambar merupakan
sarana yang sangat baik untuk menyajikan informasi.
c. Animasi
Animasi adalah pembentukan gerakan dari berbagai media atau objek
yang divariasikan dengan gerakan transisi, efek-efek, juga suara yang
selaras dengan gerakan animasi tersebut atau animasi merupakan
penayangan frame-frame gambar secara cepat untuk menghasilkan kesan
gerakan.
d. Audio
Penyajian audio atau suara merupakan cara lain untuk lebih memperjelas
pengertian suatu informasi. Contohnya, narasi merupakan kelengkapan
dari penjelasan yang dilihat melalui video.Suara dapat lebih menjelaskan
karakteristik suatu gambar, misalnya musik dan suara efek (sound effect). Salah satu bentuk bunyi yang bias digunakan dalam produksi multimedia
adalah Waveform Audio yang merupakan format file audio yang berbentuk digital. Kualitas produknya bergantung pada sampling rate (banyaknya sampel per detik).Waveform (wav) merupakan standar untuk Windows PC.
e. Video
Video merupakan elemen multimedia paling kompleks karena
biasa. Walaupun terdiri dari elemen-elemen yang sama seperti grafik,
suara dan teks, namun bentuk video berbeda dengan animasi.
Perbedaan terletak pada penyajiannya.Dalam video, informasi disajikan
dalam kesatuan utuh dari objek yang dimodifikasi sehingga terlihat saling
mendukung penggambaran yang seakan terlihat hidup.
f. Interactive Link
Interactive link dengan informasi yang dihubungkannya sering kali dihubungkan secara keseluruhan sebagai hypermedia.Secara spesifik, dalam hal ini termasuk hypertext (hotword), hypergraphics dan
hypersound menjelaskan jenis informasi yang dihubungkan.
Interactive link diperlukan bila pengguna menunjuk pada suatu objek atau button agar dapat mengakses program tertentu. Interactive link
diperlukan untuk menggabungkan beberapa elemen multimedia sehingga
menjadi informasi yang terpadu.Cara peng-aksesan informasi pada
multimedia terdapat dua macam, yaitu linier dan non-linier.Informasi
linier adalah informasi yang ditampilkan secara sekuansial, yaitu dari atas
ke bawah atau halaman demi halaman, sedangkan pada informasi
non-linier seperti ditunjukkan pada Gambar 2-1, dapat ditampilkan langsung
sesuai dengan kehendak pengguna.
2.4.4. Kelebihan Pembelajaran Menggunakan Multimedia
Multimedia memiliki beberapa keuntungan beberapa keuntungan bagi
pembelajaranyaitu:
1. Multimedia masuk akal sehingga dapat meningkatkan pembelajaran.
2. Multimedia meningkatkan ekpresi diri dengan membiarkan pelajar untuk
memutuskan sendiri.
3. Multimedia membuat pelajar menjadi ‟pemilik‟ sehingga mereka bisa
menciptakan apa yang hendak mereka pelajari.
4. Multimedia menciptakan suasana yang aktif, sehingga pelajar dapat terlibat
langsung.
5. Multimedia dapat menjembatani komunikasi pelajar dengan instruktur.
6. Pemakaian multimedia sudah tidak asng lagi karena telah digunakan dalam
kehidupan sehari-hari seperti video game dan televisi.
2.5 Tools yang digunakan
2.5.1 Action Script 3.0
Actionscript 3.0 atau disingkat AS3 adalah bahasa pemograman yang terdapat pada flash setelah release flash versi ke 9 yang telah di akusisi oleh adobe sehingga namanya menjadi Adobe Flash CS3. AS3 ini merupakan pengambangan dari versi sebelumnya yang dirasa kurang cepat dalam performa dan lambat dalam
pengolahan data. AS3 kini telah dibundle untuk beberapa produk milik adobe
lainnya seperti Adobe FlashBuilder dan Adobe Flex [8].
Beberapa fitur kunci dari bahasa ActionScript 3.0 adalah :
1. First-class support untuk constructs berorientasi objek umum, seperti kelas, objek, dan interface
2. Single-threaded execution model
3. Runtime type-checking
4. Compile-time type-checking opsional
5. Fitur dinamis seperti runtime pembuatan fungsi konstruktor baru dan variable
6. Runtime exceptions
7. Direct support untuk CML sebagai tipe data built-in
8. Package untuk pengorganisasian code libraries
9. Namespaces untuk kualifikasi identifier
2.5.2 Adobe Flash
Adobe Flash merupakan aplikasi multiguna yang dapat dimanfaatkan untuk berbagai macam kebutuhan. Dengan berbagai fitur canggih yang ada di
dalamnya, seperti menggambar, membuat animasi, hingga membuat berbagai
jenis permainan yang luar biasa [9].
Flash tidak hanya digunakan untuk aplikasi web, tetapi dapat dikembangkan untuk membuat aplikasi desktop karena aplikasi flash selain dikompilasi menjadi format .swf, flash juga dapat dikompilasi menjadi format.exe.
Flash dapat untuk memanipulasi vektor dan citra rasler, dan dapat mendukung bidirectional streaming video. Flash juga berisi bahasa skrip yang diberi nama “Actionscript”. Beberapa produk software, sistem dan device dapat membuat dan menampilkan flash.Flashdijalankan dengan adobe flash player yang dapat ditanam pada browser, telepon seluler, software lain.
Format file flash adalah swf, biasanya disebut ShockWafe Flashmovie
biasanya file berekstensi .swf dapat dijalankan melalui web,secara stand alone
pada flash player atau dijalankan di windows secara langsung dengan membuatnya dalam format ekstensi.exe.. Versi terbaru dari Adobe Flash adalah
Adobe Flash CS5 Professional.Dalam pembuatan animasi ini penulis sudah
menggunakan Adobe Flash CS5 Professional sebagai aplikasinya.
2.6 Metode Penguijian Sistem
Metode pengujian sistem untuk mengetahui efektifitas dari software yang
digunakan selain memberikan kesempatan kepada pengguna untuk
mengoperasikan dan melakukan pengecekan terhadap laporan yang dihasilkan
melalui software. Metode pengujian sistem terdiri dari Pengujian White-box dan Pengujian Black-box [10].
2.6.1 Pengujian White-box
Pengujian white-box dilakukan untuk menguji prosedur-prosedur yang ada.Lintasan lojik yang dilalui oleh setiap bagian prosedur diuji dengan
terhadap semualintasan yang tidak bergantungan minimal satu kali, mencoba semua keputusanlojik dari sisi „true‟ dan „false‟, eksekusi semua loop dalam batasan kondisi danbatasan operasionalnya dan pengujian validasi data internal.
Konsep Pengujian Basis Path
a. Merupakan bagian dari pengujian white-box dalam hal pengujian prosedur-prosedur;
b. Mempergunakan notasi aliran graph (node, link untuk merepresentasikan
sequence, if, while, until dan sebagainya);
c. Konsep kompleksitas cyclomatic antara lain cara perhitungan daerah tertutup pada graph planar dimana dapat menghubungkan batas atas
jumlah pengujian yang harus direncanakan dan dieksekusi untuk
menjamin pengujian seluruh statement program.
d. Memunculkan kasus-kasus yang akan diuji dengan membuat daftar
lintasan kasus pengujian berdasarkan kompleksitas dan cyclomatic yang didapat.
e. Membuat alat bantu graph matriks yang membantu pengawasan pengujian.
2.6.2 Pengujian Black-box
Pengujian yang dilakukan untuk antarmuka perangkat lunak, pengujian ini
dilakukan untuk memperlihatkan bahwa fungsi-fungsi bekerja dengan baik
dalamarti masukan yang diterima dengan benar dan keluaran yang dihasilkan
benar-benartepat, pengintegrasian dari eksternal data berjalan dengan baik.
Metode pengujian black-box memfokuskan pada requirement fungsi dariperangkat lunak, pengujian ini merupakan komplenetari dari pengujian white-box. Pengujian white-box dilakukan terlebih dahulu pada proses pengujian, sedangkan pengujian black-box dilakukan pada tahap akhir dari pengujian perangkat lunak. Proses yang terdapat dalam proses pengujian black-box antara lain sebagai berikut :
a. Pembagian kelas data untuk pengujian setiap kasus yang muncul pada
pengujian white-box.
2.7 Analisis Sistem Berorientasi Objek
Analisis dan desain berorientasi objek adalah cara baru dalam memikirkan
suatu masalah dengan menggunkan model yang dibuat menurut konsep sekitar
dunia nyata. Dasar pembuatan adalah objek, yang merupakan kombinasi antara
struktur data dab perilaku dalam suatu entitas. Model berorientasi objek
bermanfaat untuk memahami masalah, komunikasi dengan ahli aplikasi,
pemodelan suatu organisasi, meyiapkan dokumentasi serta perancangan program
dan basis data. Pertama-tama suatu model analisis dibuat untuk menggambarkan
aspek dasar dari domain aplikasi, dimana model tersebut berisi objek yang
terdapat dalam domain aplikasi termasuk deskripsi dari keterangan objek dan
perilakunya[11].
2.7.1 OOP (Object Oriented Programing)
Pemrograman berorientasi objek (object-oriented programming disingkat OOP) merupakan paradigma pemrograman yang berorientasikan kepada
objek.Semua data dan fungsi di dalam paradigma ini dibungkus dalam kelas-kelas
atau objek-objek.Bandingkan dengan logika pemrograman terstruktur. Setiap
objek dapat menerima pesan, memproses data, dan mengirim pesan ke objek
lainnya,Model data berorientasi objek dikatakan dapat memberi fleksibilitas yang
lebih, kemudahan mengubah program, dan digunakan luas dalam teknik piranti
lunak skala besar.
Konsep dasar dari Pemrograman Berorientasi Objek menekankan konsep berikut:
1. Class - kumpulan atas definisi data dan fungsi-fungsi dalam suatu unit untuk suatu tujuan tertentu. Sebuah class adalah dasar dari modularitas dan
struktur dalam pemrograman berorientasi object. Sebuah class secara
tipikal sebaiknya dapat dikenali oleh seorang non-programmer sekalipun
terkait dengan domain permasalahan yang ada, dan kode yang terdapat
dalam sebuah class sebaiknya (relatif) bersifat mandiri dan independen
2. Objek - membungkus data dan fungsi bersama menjadi suatu unit dalam sebuah program komputer; objek merupakan dasar dari modularitas
dan struktur dalam sebuah program komputer berorientasi objek.
3. Abstrak - Kemampuan sebuah program untuk melewati aspek informasi yang diproses olehnya, yaitu kemampuan untuk memfokus pada
inti. Setiap objek dalam sistem melayani sebagai model dari "pelaku"
abstrak yang dapat melakukan kerja, laporan dan perubahan keadaannya,
dan berkomunikasi dengan objek lainnya dalam sistem, tanpa
mengungkapkan bagaimana kelebihan ini diterapkan. Proses, fungsi atau
metode dapat juga dibuat abstrak, dan beberapa teknik digunakan untuk
mengembangkan sebuah pengabstrakan.
4. Enkapsulasi - Memastikan pengguna sebuah objek tidak dapat mengganti keadaan dalam dari sebuah objek dengan cara yang tidak layak
hanya metode dalam objek tersebut yang diberi izin untuk mengakses
keadaannya. Setiap objek mengakses interface yang menyebutkan bagaimana objek lainnya dapat berinteraksi dengannya. Objek lainnya
tidak akan mengetahui dan tergantung kepada representasi dalam objek
tersebut.
5. Polimorfisme - melalui pengiriman pesan. Tidak bergantung kepada pemanggilan subrutin, bahasa orientasi objek dapat mengirim pesan;
metode tertentu yang berhubungan dengan sebuah pengiriman pesan
tergantung kepada objek tertentu di mana pesa tersebut dikirim.
6. Inheritas (Inheritance) - Mengatur polimorfisme dan enkapsulasi denganmengijinkan objek didefinisikan dan diciptakan dengan jenis
khusus dariobjek yang sudah ada objek-objek ini dapat membagi dan
memperluasperilaku mereka tanpa harus mengimplementasi ulang perilaku
tersebut (bahasa berbasis-objek tidak selalu memiliki inheritas).
1. UML (Unified Modeling Language)
Pada pertengahan 1990-an, metodologi yang paling terkenal adalah
yang ditemukan oleh Ivar Jacobson, James dan Grady Booch.Masing-masing
notasi sendiri. Pada tahun 1996, Jacobson dan Rumbaugh bergabung Rasional
Corporation (didirikan oleh Booch), dan mereka mengembangkan satu set
notasi yang dikenal sebagai Unified Modeling Language (UML).
UML memiliki 13 jenis diagram. Spesifikasi UML tidak mengatakan di
mana diagram harus digunakan dalam metodologi tertentu.
1. Use Case Diagram mengkategorikan cara di mana sistem yang digunakan. 2. Class Diagram menunjukkan kelas dan bagaimana mereka dapat dipasang
bersama-sama (mereka juga dapat menunjukkan object).
3. Object Diagram memperlihatkan obyek saja dan bagaimana mereka dapat dipasang bersama-sama.
4. Activity Diagram menunjukkan aktivitas oleh manusia atau objek dalam cara yang mirip dengan Flow Chart.
5. State Machine Diagram menunjukkan berbagai state setiap obyek dengan siklus hidup yang menarik atau rumit.
6. Communication Diagram menunjukkan pesan yang dikirim antara objek dalam skenario tertentu.
7. Sequence Diagram menunjukkan informasi yang sama dengan
communication diagram, tetapi menekankan urutan daripada koneksi. 8. Package Diagram menunjukkan bagaimana kelas terkait dikelompokkan
bersama-sama, untuk kepentingan pengembang.
9. Deployment Diagram menunjukkan mesin, proses dan artefak dikerahkan untuk jadi seorang sistem.
10.Component Diagram menunjukkan komponen dapat digunakan kembali (benda atau subsistem) dan interface mereka.
11.Interaction Overview Diagram menunjukkan langkah-langkah individu dari suatu kegiatan menggunakan sequence diagram.
12.Timing Diagram menunjukkan kendala waktu yang tepat untuk pesan dan menyatakan objek.
13.Composite Structure Diagram menunjukkan bagaimana benda cocok bersama dalam suatu agregasi atau komposisi, menampilkan antarmuka
3.1 Analisis Sistem
Analisis sistem dapat didefinisikan sebagai penguraian dari suatu sistem
yang utuh kedalam bagian-bagian komponennya dengan maksud untuk
mengidentifikasi dan mengevaluasi kebutuhan-kebutuhan yang diharapkan
sehingga dapat diusulkan perbaikan-perbaikannya
3.1.1 Analisis Masalah
Berdasarkan analisis sistem yang dilakukan dengan mengevaluasi game
sejenis yang sudah ada yaitu game perawatan karapan sapi maka masalah yang
didapatkan yaitu gameplay yang kurang menarik untuk dimainkan dan juga perlu
ditambahkan entitas musuh.Untuk lenih jelasnya lagi akan dijelaskan sebagai
berikut :
1. Masih jarangnnya game race yang bertemakan kebudayaan dan karakter
dengan ciri khas Indonesia
2. Bagaimana membuat pergerakan NPC menjadi lebih dinamis sehingga
tidak hanya bisa melewati rintangan saja tetapi bisa mencari rute yang
lebih pendek untuk bisa mencapai garis finish
3.1.2 Analisis Game Sejenis
Sebelum merancang game yang akan dibuat, terlebih dahulu dilakukan analisis pada game sejenis yang sudah ada. Ini bertujuan agar game yang sudah dibuat nanti memiliki solusi dari permasalahan game yang sudah ada.
3.1.2.1 Analisis Game Perawatan Sapi Kerapan
Game Perawatan Sapi Karapan merupakan game bergenre peternakan berbasis desktop.Gameplay pada game ini cukup sederhana yaitu pemain harus memelihara seekor sapi diantaranya memberikan makan , minum , menjemur sapi
Gambar 3-1 Game Perawatan Sapi Karapan
Pada game ini tidak mempunyai level pemain hanya memelihara sapi sampai besar dan dijual sampai mamasuki kategori mahal. Secara umum game perawatan sapi karapan dapat dikategorikan sebagai permainan yang sederhana dan mudah dimainkan tetapi membutuhkan konsentrasi yang tinggi. Namun game
perawatan sapi karapan memiliki gameplay yang monoton dimana pemain hanya dapat memelihara sapi saja tanpa bisa mengikuti pertandingan karapan sapi yang
sebenarnya.
3.1.3 Analisis Game Yang Dibangun
Aplikasi game yang akan dibangun yaitu berupa game 2D, bergenre race. Pada menu utama terdapat pilihan yaitu: new game (memulai permainan), petunjuk dan keluar. Game ini haya memiliki satu pemain atau single player, tokoh utama dari game bernama slamet, pemain akan melakukan balapan melawan musuh dan disetiap stage akan jumlah musuh yang bertanding berbeda beda.Di dalam permainan ini pemain harus mendapatkan karung rumput yang
akan berguna untuk menambah kecepatan dan kekuatan sapi tersebut.Selain itu
pemain harus melompati gunukan tanah yang ada ketika permainan berlangsung
dan dilevel akhir pemain juga harus bisa menghindar sapi yang berkeliaran di
sepanjang lintasan .
Fitur-fitur yang akan dibuat pada gamerace ini adalah sebagai berikut : 1. Sistem single player
2. Karakter utama memiliki kemampuan untuk melewati rintangan dan
mendapatkan karung rumput yang akan berpengaruh terhadap kecepatan
sapi pada saat balapan berlangsung
3. Memiliki 3 level dengan tingkat kesulitan yang berbeda-beda.
5. Grafik yang digunakan merupakan grafik game 2D.
3.1.3.1 Storyline
Demi mendapatkan hadiah uang dan 5 ekor sapi. Slamet akan mengikuti
pertandingan di Pulau Madura,dimana pertandingan pertama dilakukan di
kabupaten Bangkalan didua tempat yang berbeda,selanjutnya Slamet bertanding
di Kabupaten Sampang setelah memenangkan pertandingan di dua Kabupaten
sebelumnya tiba saatnya Slamet bertanding di Kabupaten terakhir yaitu
Kabupaten Pamekasan.Disetiap kabupatennya Slamet mendapat perlawanan
sengit dari lawan yang dihadapinya
3.1.3.2 Gameplay
Pada permainan ini, tugas utama pemain adalah user akan melakukan
perlombaan dalam dengan melawan musuh yang tingkat kesulitannya berbeda
pada setiap levelnya dan juga harus melewati rintangan yang ada di sepanjang
linitasan.Game ini terdiri dari tiga level dimana setiap levelnya terdapat dua stage yang harus dimainkan oleh user,jumlah musuh pada setiap levelnya
berbeda-beda.Selain itu pada saat perlombaan berlangsung user juga harus mendapatkan
karung rumput sebanyak banyaknya , hal ini akan memberikan kekuatan
tambahan kepada sapi untuk bisa berlari lebih kencang dalam mengejar musuhnya
dan juga untuk menambah poin agar bisa melanjutkan ke stage dan level berikutnya.Dalam permainan ini algoritma a* akan diterapkan pada sapi yang
menjadi lawan user tujuannya untuk memberikan kecerdasan kepada musuh agar bisa melewati rintangan dan mencapai garis finish sehingga akan memberikan
perlawanan yang sulit kepada user.Aspek lain yang ditanamkan adalah penerapan
collision detection-nya terjadi ketika pemain menabrak rintangan,mendapatkan
karung rumput dan menabrak sapi lawan .Untuk sistem kendali pada game ini
akan menggunakan touchscreen atau layar sentuh,jadi pengguna game ini hanya
3.1.3.3 Scoring
Pada bagian ini akan dijelaskan bagaimana pemberian skor yang ada pada game. Berikut cara memperoleh score dari gamerace karapan sapi :
1. Setiap satu karung rumput yang didapat user akan mendapat poin 100
3.1.3.4 Leveling
Dalam game race Karapan Sapi terdapat 3 level yang masing-masing level dibedakan berdasarkan tingkat kesulitan rintangan yang harus dihadapi.
Berikut ini penjelasan tingkat level kesulitan dapat dilihat pada Tabel 3-1.
Tabel 3-1 Leveling Gaame
Level Deskripsi
1 Musuh yang akan dihadapi 1 sapi dengan panjang lintasan 100 meter dan rintangan yang harus dilewati adalah genangan lumpur disepanjang lintasan.
2 Musuh yang akan dihadapi 1 sapi dengan panjang lintasan 200 meter dan rintangan yang harus dilewati adalah genangan air
3 Musuh yang akan dihadapi 1 sapi dengan panjang lintasan 300 meter dan rintangan yang harus dilewati adalah genangan air dan sapi yang berkeliaran.
3.1.3.4 Kendali Game
Untuk memainkan game race karapan sapi ini pengguna hanya menggerakan jari
tangannya di layar sentuh ke arah kanan ataupun kiri.
3.1.4 Analisis Algoritma
Agar game menjadi lebih menarik dapat dilakukan dengan meningkatkan kualitas gameplay bagi pengguna yang memainkannya. AI merupakan faktor yang penting dalam meningkatkan gameplay pada semua jenis game, termasuk pada
game yang akan dibangun. AI yang akan digunankan pada pembangunan
gameracekarapan sapi ini adalah A*. A* merupakan algoritma pencarian jalur terpendek menuju suatu tujuan dengan secara optimal.Pencarian jalur dalam
permainan berupa kumpulan tile atau grid yang terdiri dari orde X × Y. Tiap grid
memiliki koordinat X dan Y atau berbentuk seperti array dua dimensi.
(0,0)
Algoritma A* dalam gamerace ini akan menganggap grid tersebut sebagai simpul-simpul yang membentuk jalan (path) dari simpul awal hingga ke simpul
akhir tujuan, lalu menghitung biaya dan mengambil jalan yang memakan biaya
paling sedikit.
f(n) = g(n) + h(n)
f(n) adalah jumlah dari g dan h yang merupakan estimasi terbaik dari biaya jalan
yang akan melalui simpul saat ini. Intinya semakin rendah nilai f maka akan lebih
efisien. g(n) adalah biaya yang didapatkan dari simpul awal ke simpul selanjutnya
yang adalah jumlah dari semua nilai di jalan antara simpul awal dan simpul
selanjutnya. h(n) merupakan singkatan dari heuristik yang merupakan perkiraan
biaya dari simpul saat ini ke simpul tujuan. Untuk menghitung h digunakan fungsi
heuristik manhattan distance dengan fungsi sebagai berikut:
h(n)= abs(nx-goal.x) + abs (ny-goal.y)
Arena permainan pada game race terdiri dari orde X×Y. Dalam analisis ini akan dijelaskan dengan ordo 6×7. Simpul awal atau posisi musuh dicontohkan
berada pada koordinat (4,5), sedangkan simpul tujuan atau posisi karakter pemain
NPC
Gambar 3-3 Posisi Musuh Dan Pemain Dalam Grid
Setelah mengetahui simpul awal dan simpul tujuan, pertama-tama simpul
awal yang ada di open list di masukkan ke closed list. Langkah selanjutnya dilakukan pemeriksaan terhadap simpul simpul yang dapat dilalui musuh dan
memiliki nilai cost / biaya terkecil sebagai bestnode. Setelah diperiksa terdapat tiga simpul yang dapat dilalui oleh musuh yaitu simpul dengan koordinat (2,1),
(1,2) dan (2,3), simpul dengan koordinat (3,2) tidak dapat dilalui karena terdapat
penghalang yang tidak dapat dilalui musuh. Simpul-simpul yang diperiksa
dimasukkan ke dalam open list. Langkah perhitungan untuk mendapatkan
bestnode sebagai berikut: 1. Langkah pertama
a. Koordinat (3,5)
Nilai nx = 3
Nilai ny = 5
Simpul tujuan (3,0) sehingga goal.x = 3 dan goal.y = 0
g(3,5) = 1
h(3,5) = abs(nx-goal.x) + abs (ny-goal.y)
= abs(3-3) + abs(5-0)
= abs(0) + abs(5)
= 5
Gambar 3-4 Langkah Pencarian Pertama Bestnode
Selanjutnya simpul tetangga dari simpul (2,5) akan diperiksa dan dimasukkan ke
dalam open list yaitu simpul simpul (2,4) dan simpul (1,5).Hasil pemeriksaan
simpul (2,4) dan (1,5) dapat dilihat pada Tabel 3-2.
Tabel 3-2 Langkah Kedua Pencarian f
Iterasi Titik g h f
1 1,5 3 5 6
2,4 3 5 8
Dari hasil perhitungan yang dilakukan simpul yang memiliki nilai cost / biaya
terkecil adalah simpul dengan koordinat (1,5) maka dipilihlah simpul (1,5)
sebagai bestnode dan simpul yang telah diperiksa dimasukkan ke closed list agar
NPC
Gambar 3-5 Langkah Pencarian Kedua Bestnode
Selanjutnya simpul tetangga dari simpul (2,4) akan diperiksa dan
dimasukkan ke dalam open list yaitu simpul (2,3) dan (1,4). Simpul (3,4) tidak
dapat diperiksa karena terdapat penghalang yang tidak bisa dilalui. Hasil
pemeriksaan simpul dapat dilihat pada Tabel 3-3.
Tabel 3-3 Langkah Ketiga Pencarian f
Iterasi Titik g h f
2 1,4 3 6 7
2,3 3 4 5
Dari hasil perhitungan yang dilakukan simpul dengan koordinat (2,3) menjadi
NPC
Gambar 3-6 Langkah Pencarian Ketiga Bestnode
Setelah mendapatkan bestnode dilangkah ketiga, dilakukan penelusuran
selanjutnya untuk mendapatkan bestnode selanjutnya dengan melakukan
penelusuran simpul-simpul yang memiliki nilai cost terkecil dari simpul tetangga
(2,3) yaitu simpul dengan koordinat (3,3)Simpul yang akan diperiksa di masukan
ke dalam open list. Hasil dari pemeriksaan dapat dilihat pada Tabel 3-4.
Tabel 3-4 Langkah Keempat pencarian f
Iterasi Titik g h f
3 3,3 4 3 4
4,3 - - -
Dari hasil perhitungan yang dilakukan, simpul dengan koordinat (3,3) menjadi
bestnode karena merupakan satu-satunya simpul yang mempunyai nilai cost
terkecil dan simpul yang telah diperiksa dimasukkan ke closed list agar tidak
NPC
Gambar 3-7 Langkah Pencarian Keempat Bestnode
Setelah mendapatkan bestnode dilangkah keempat, dilakukan penelusuran
selanjutnya untuk mendapatkan bestnode selanjutnya dengan melakukan
penelusuran simpul-simpul tetangga dari simpul (3,2). Simpul yang akan
diperiksa selanjutnya adalah simpul (3,1). Simpul yang akan diperiksa
dimasukkan ke dalam open list. Hasil dari pemeriksaan simpul (3,1). dapat dilihat
pada Tabel 3-5.
Tabel 3-5 Langkah Kelima Pencarian f
Iterasi Titik g h f
4 3,1 6 1 2
Dari hasil perhitungan yang dilakukan, simpul dengan koordinat (3,1) menjadi
bestnode karena merupakan simpul yang mempunyai nilai cost terkecil dan
NPC
Gambar 3-8 Langkah Pencarian Bestnode
Pada gamerace Karapan Sapi yang akan dibangun algoritma A* dijalankan di setiap level. Algoritma ini akan berjalan apabila NPC telah
memasuki area balapan sehingga bisa mencapau garis finish.
3.1.5 Analisis Kebutuhan Non Fungsional
Analisis non-fungsional merupakan analisis yang dibutuhkan untuk
menentukan spesifikasi kebutuhan sistem. Spesifikasi ini juga meliputi elemen
atau komponen-komponen apa saja yang dibutuhkan untuk sistem yang akan
dibangun sampai dengan sistem tersebut diimplementasikan. Analisis kebutuhan
ini juga menentukan spesifikasi masukan yang diperlukan sistem keluaran yang
akan dihasilkan sistem dan proses yang dibutuhkan untuk mengolah masukan
sehingga menghasilkan suatu keluaran yang diinginkan.
Pada analisis kebutuhan sistem non-fungsional ini dijelaskan analisis
kebutuhan perangkat lunak, analisis kebutuhan perangkat keras, dan analisis
3.1.5.1 Analisis Kebutuhan Perangkat Keras
Agar aplikasi dapat berjalan dengan baik, maka dibutuhkan perangkat keras yang
sesuai dengan kebutuhan aplikasi. Di bagian ini akan dijelaskan analisis
kebutuhan perangkat keras dari sisi pengembang dan dari sisi pemain.
1. Dari sisi pengembang
Perangkat keras yang digunakan untuk membangun game ini adalah sebagai berikut:
1. Prosesor 2 GHz
2. Memori 4 GB
3. Space kosong di harddisk 5 GB
4. VGA card 512 MB
5. Display LCD Monitor dengan resolusi 1366 x 768
2. Dari sisi pemain
Spesifikasi minimum perangkat keras yang dibutuhkan agar dapat
menjalankan game ini adalah sebagai berikut:
1.Smartphone Android 4.0 (icecream sandwich) ke atas 2.Layar touchscreen
3.Processor 1 Ghz, 512 MB RAM
3.1.5.2 Analisis Kebutuhan Perangkat Lunak
Perangkat keras komputer tidak berarti tanpa perangkat lunak, begitu juga
sebaliknya. Jadi perangkat lunak dan perangkat keras saling mendukung satu
sama lain. Perangkat keras hanya berfungsi jika diberikan instruksi - intruksi
kepadanya.Instruksi-instruksi inilah yang disebut dengan perangkat lunak. . Di
bagian ini akan dijelaskan analisis kebutuhan perangkat keras dari sisi
pengembang dan dari sisi pemain.
1. Dari sisi pengembang
Perangkat lunak yang digunakan untuk mengembangkan game ini adalah sebagai berikut:
1. Sistem operasi Windows
2. Adobe Flash 5.5
Gamerace “Karapan sapi ” ini dibutuhkan perangkat lunak untuk menjalankannya, yaitu Sistem Operasi Android 4.0 (ice cream sandwich).
3.1.5.3 Analisis Pengguna
Analisis pengguna gambaran tentang target maupun profil pengguna untuk
game yang akan dibangun. Perangkat keras dan perangkat lunak yang ada tidak akan berguna apabila tidak ada pengguna yang mengoperasikannya. Berikut ini
target maupun profil pengguna untuk game race “Karapan sapi ”, dapat dilihat
pada Tabel 3-6.
1. Target Pengguna
Target pengguna (target user) untuk game ini adalah pengguna dengan karakteristik sebagai berikut :
Tabel 3-6 Target Pengguna
1 Peran Pemain
2 Usia 12 tahun keatas
3 Tingkat Keterampilan Dapat menggunakan smartphone Android
4 Pengalaman Pernah memainkan aplikasi game mobile
Pernah memainkan aplikasi game dengan layar
a. Human Information Processing System
Sistem pemroses informasi manusia yaitu berkaitan dengan antarmuka
dan fungsionalitas. Antarmuka dan fungsionalitas yang ada dalam
game ini dibuat sederhana agar pengguna dapat dengan mudah memainkan game ini.
Karakteristik psikologi pengguna untuk game ini haruslah pengguna yang memiliki kegemaran atau setidaknya berminat untuk memainkan
game berjenis adventure. Selain itu juga tertarik dengan kebudayaan.
c. User Knowledge and Experience Characteristic
Pengguna yang memainkan game ini harus memiliki pengetahuan dasar tentang cara pengoperasian smartphone android. Selain itu, pengguna juga diharapkan pernah bermain game berjenis adventure
sebelumnya.
d. User Job and Task Characteristic
Untuk lebih memudahkan dalam memainkan game ini, Pengguna harus memiliki tingkat frekuensi penggunaan (frequency of use) yang tinggi. Kategori pekerjaan pengguna yang memainkan game ini mencakup siswa atau siapa saja yang berusia 10 tahun ke atas yang
ingin mempelajari kebudayaan dan gemar bermain game.
e. User Physical Characteristic
Diharapkan tidak positif mengidap buta warna karena game ini adalah
game yang full color, namun tidak mempengaruhi banyak saat memainkannya. Handedness user tidak mempengaruhi dalam memainkannya karena tidak akan berefek human error bila semua
skillhandedness di implementasikan, hanya perlu penyesuaian. Selain itu, Gender pengguna untuk game ini tidak dibatasi atau dengan kata lain, game ini dapat dimainkan oleh pengguna dengan gender apapun.
f. User Physical Environment
Dalam memainkan game ini, dibutuhkan cukup konsentrasi pengguna agar cerita dan pesan dalam game ini dapat tersampaikan dan dapat diingat dengan baik oleh pengguna. Selain itu, game ini tidak terlalu mempermasalahkan mengenai privasi karena pada dasarnya game ini dibuat untuk umum.
g. User Tools
Selain smartphone android, pengguna tidak perlu menggunakan alat