NIM : 10107449
Nama Lengkap : Wahyu Suhendra Jenis Kelamin : Laki-laki
Tempat & Tgl Lahir : Bengkalis, 16 Desember 1988 Alamat
:
Jalan Jalak No.06 RT/RW 01/01 Desa Alahair Timur, Kecamatan Tebing Tinggi, Selat Panjang - Riau
No. Telepon : 085221538480
Email : suhendra.wahyu@gmail.com
PENDIDIKAN
1994 - 2000 : SDN 020 Alah Air
2000 - 2003 : SLTP Negeri 3 Selat Panjang
2003 - 2006 : SMKN 2 Dumai
2007 - 2013
SKRIPSI
Diajukan untuk Menempuh Ujian Akhir Sarjana Program Studi S1 Teknik Informatika
Fakultas Teknik dan Ilmu Komputer Universitas Komputer Indonesia
Oleh:
WAHYU SUHENDRA
10107449
PROGRAM STUDI TEKNIK INFORMATIKA
FAKULTAS TEKNIK DAN ILMU KOMPUTER
iii
Assalammuʻalaikum Wr.Wb.
Alhamdu lillahi rabbil ʻaalamiin, segala puji dan syukur penulis panjatkan kepada
Allah SWT sang pencipta alam semesta, manusia, dan kehidupan beserta seperagkat aturan-Nya, karena dengan izin-Nya dan setitik ilmu pengetahuan yang diberikan kepada makhluk-Nya penulis dapat menyelesaikan skripsi yang
berjudul “Pembangunan Game Save Your Ricefield”. 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.
Penulis menyadari bahwa skripsi ini masih banyak kekurangan dari berbagai macam hal, namun berkat bantuan dan bimbingan dari beberapa pihak akhirnya skripsi ini dapat diselesaikan tepat pada waktunya. Dengan penuh rasa syukur, ucapan terima kasih yang mendalam serta penghargan yang tidak terhingga penulis sampaikan kepada:
1. Allah SWT yang telah memberikan kesehatan, keteguhan hati, setitik pengetahuan-Nya kepada penulis dalam menyelesaikan skripsi ini.
2. Kedua orang tua penulis, Bapak, Emak, dan kedua Adikku yang telah memberikan segenap perhatian, dorongan, nasehat, titah, dan pantang larang, serta doa yang tulus tanpa batas.
3. Ibu Nelly Indriani W, S.Si., M.T., selaku dosen pembimbing dari penulis yang bersedia meluangkan waktu, tenaga, dan pikiran, serta memberikan pengarahan dalam penyusunan skripsi ini.
iv
6. Henky Jaya Dinata yang telah membantu penulis menemukan ide pembuatan skripsi ini, dan Deni Anggara sebagai pendesain karakter.
7. Adam Winarto Kusumaatmaja, teman seperjuangan selama pengerjaan skripsi ini yang selalu memberikan info-info penting.
8. Seluruh teman-teman alumni IF-10 angkatan 2007 dan teman-teman satu kost yang tidak dapat disebutkan satu persatu. Terima kasih atas semua dukungan kalian.
9. Bapak dan Ibu dosen IF UNIKOM yang telah memberikan ilmunya selama penulis duduk dibangku kuliah.
10. Keluarga besar Emak di Bengkalis yang memberikan dorongan dan semangat kepada penulis dalam menyusun skripsi ini.
11. Seluruh teman-teman di Selat Panjang yang selalu menanyakan “kapan lulus?” yang secara tidak langsung memberikan dorongan kepada penulis untuk menyelesaikan skripsi ini.
Penulis menyadari bahwa pada laporan skripsi ini masih banyak terdapat kekurangan, baik dalam penyajian laporan maupun kelengkapan data. Tidak lupa penulis memohon maaf apabila dalam penulisan skripsi ini, penulis telah menyinggung perasaan atau menyakiti hati kepada orang lain baik secara sengaja maupun secara tidak sengaja. Semoga hasil skripsi ini dapat bermanfaat bagi kita semua dan dapat dikembangkan lagi kedepannya. Akhir kata, penulis mengucapkan banyak-banyak terima kasih.
Wassalamuʻalaikum Wr. Wb. Penulis,
v
ABSTRACT ... ii
KATA PENGANTAR ... iii
DAFTAR ISI ... v
DAFTAR GAMBAR ... viii
DAFTAR TABEL ... xiii
DAFTAR PROPERTI GAME ... xv
DAFTAR SIMBOL ... xvi
DAFTAR LAMPIRAN ... xxi
BAB 1 PENDAHULUAN ... 1
1.1 Latar Belakang Masalah ... 1
1.2 Rumusan 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 Budidaya Tanaman Padi ... 7
2.1.1 Botani Tanaman Padi ... 7
2.1.2 Pedoman Budi Daya Padi Sawah ... 7
2.1.2.1 Pembibitan ... 7
2.1.2.2 Pengolahan Media Tanam... 8
2.1.2.3 Penanaman ... 8
2.1.2.4 Pemeliharaan ... 9
2.1.2.5 Panen... ... 12
2.2 Game... ... 12
2.2.1 Pengertian Game ... 13
vi
2.5 Algoritma A* (A Star) ... 18
2.6 Finite State Machines ... 21
2.7 UML (Unified Modeling Language) ... 22
2.8 Tools yang digunakan ... 25
2.8.1 Adobe Flash CS5 Professional ... 25
2.8.2 ActionScript... 26
BAB 3 ANALISIS DAN PERANCANGAN SISTEM ... 29
3.1 Analisis Sistem... 29
3.1.1 Analisis Masalah ... 29
3.1.2 Analisis Game Sejenis ... 29
3.1.2.1 Analisis Game Plants vs Zombies ... 30
3.1.2.2 Analisis Game Farmville ... 32
3.1.3 Pengenalan Game Save Your Ricefield ... 33
3.1.3.1 Storyline Game Save Your Ricefield ... 33
3.1.3.2 Gameplay Game Save Your Ricefield ... 33
3.1.4 Analisis Algoritma A* (A Star) ... 36
3.1.5 Analisis Algoritma Finite State Machines (FSM) ... 54
3.1.6 Analisis Kebutuhan Non-Fungsional ... 57
3.1.6.1 Analisis Kebutuhan User ... 58
3.1.6.2 Analisis Kebutuhan Hardware (Developer) ... 58
3.1.6.3 Analisis Kebutuhan Hardware (User) ... 58
3.1.6.4 Analisis Kebutuhan Software (Developer) ... 59
3.1.6.5 Analisis Kebutuhan Software (User) ... 59
3.1.7 Analisis Kebutuhan Fungsional ... 59
3.1.7.1 Diagram Use Case…... ... 59
3.1.7.2 Skenario Use Case…... ... 61
3.1.7.3 Activity Diagram…….... ... 70
vii
3.2.2 Perancangan Storyboard ... 104
3.2.3 Perancangan Antar Muka ... 107
3.2.4 Jaringan Semantik…... ... 112
3.2.5 Perancangan Method.... ... 113
BAB 4 IMPLEMENTASI DAN PENGUJIAN ... 125
4.1 Implementasi Sistem ... 125
4.1.1 Impelementasi Perangkat Keras ... 125
4.1.2 Implementasi Perangkat Lunak ... 125
4.1.3 Impelementasi Instalasi Game ... 126
4.1.4 Implementasi Antar Muka ... 126
4.2 Pengujian Sistem ... 133
4.2.1 Pengujian Alpha ... 133
4.2.1.1 Skenario Pengujian Aplikasi ... 133
4.2.1.2 Kasus Hasil Pengujian Pengujian (Black Box Testing)... 136
4.2.1.3 Kasus dan Hasil Pengujian (White Box Testing)... 141
4.2.2 Pengujian Beta ... 152
4.2.3 Kesimpulan Pengujian Beta ... 170
BAB 5 KESIMPULAN DAN SARAN ... 173
5.1 Kesimpulan ... 173
5.2 Saran... ... 173
174
[1] Wartakotalive, 2012, Jumlah Petani Terus Turun. [online],
(http://wartakota.tribunnews.com, diakses tanggal 28 Maret 2013) [2] Ant, 2012, HKTI: Jumlah Petani Indonesia Terus Turun. [online],
(http://diperta.jabarprov.go.id, diakses tanggal 28 Maret 2013)
[3] Jurnas, 2012, Rusman: Petani Harus Pake Dasi Agar Dilirik Generasi Muda. [online], (http://www.jurnas.com, diakses tanggal 28 Maret 2013) [4] Suswono, 2013, Pedoman Pengembangan Generasi Muda Pertanian, [pdf],
(perundangan.deptan.go.id, diakses 25 Februari 2013)
[5] Digital Games in Education: The Design of Game-Based Learning
Environment. Gros, Begona. 1, s.l. : International Society for Technology
in Education, 2007, Vol. 40.
[6] Edward, S. L. (2009). Learning Process and Violent Video Games. Hand Book of Research on Effective Electronic Game in Education. Florida:
University of Florida.
[7] Fostering Agriculture Environmental Awareness. Rui Prada, Daniel Dias,
Helmut Prendinger, Arturo Nakasone. 2010.
[9] Cyber Extension. (2012), Syarat Pertumbuhan Tanaman Padi Sawah. [online], (http://cybex.deptan.go.id, di akses tanggal 17 April 2013)
[10] Warintek (2002), Padi: Oryza Sativa. [pdf],
(http://www.warintek.ristek.go.id, diakses tanggal 17 April 2013). [11] Nurman Ihsan,SP. (2011), Pemupukan yang Tepat Bagi Tanaman Padi.
[online]. (http://ceritanurmanadi.wordpress.com/2011/10/03/kapan-tanaman-padi-dipupuk, diakses tanggal 17 Mei 2013).
[12] Pedersen, R.E, (2003). Game Design Foundation, Wodware Publishing inc Company, Texas
[13] Andriyanto. (2013). "Rancang Bangun Game Edukasi Pengetahuan Dasar Islam". Skripsi. Bandung. Universitas Komputer Indonesia.
[14] Hofstetter, Fred T. (2001). Multimedia Literacy. Third Edition. McGraw-Hill International Edition, New York.
[15] Russel, Stuart and Norvig Peter, 1995, Artificial Intelligence: A Modern Apprach, Prentice Hall Internasional Inc, New Jersey.
[16] Victor, Ivan Hamidi, Diko Aldillah, 2005. “Algoritma A* (A Star) Sebagai Salah Satu Contoh Metode Pemrograman Branch and Bound”. Makalah
Laboratorium Ilmu dan Rekayasa Komputasi Departemen Teknik Informatika, Institut Teknologi Bandung.
[17 Millington, I., Funge, J. (2009). Artificial Intelligence for Games, Second
[18] Rosenaweig, Gary. (2008). ActionScript 3.0 Game Programming University. USA : Que Publishing.
[19] Nugroho, Adi. 2010. Rekayasa Perangkat Lunak Berorientasi Objek dengan Metode USDP (Unified Software Development Process).
Yogyakarta: Andi Offset.
[20] Fakhroutdinov, Kirill. (2007). UML. [online],
1 1.1 Latar Belakang Masalah
Indonesia dikenal sebagai negara agraris karena sebagian masyarakatnya hidup dari pertanian. Kondisi alam dan tanah yang subur merupakan faktor utama yang menjadikan Indonesia sebagai negara agraris. Dalam perkembangannya kondisi pertanian Indonesia semakin melemah. Himpunan Kerukuan Tani Indonesia (HKTI) mencatat jumlah petani Indonesia dari waktu ke waktu terus menurun, hal ini berdampak pada penurunan jumlah produksi padi [1]. Badan Pusat Statistik (BPS) Jawa Barat mencatat adanya penurunan produksi padi [2]. Selain karena adanya penurunan luas sawah yang disebabkan alih fungsi lahan pertanian menjadi kawasan industri dan perumahan, juga disebabkan semakin berkurangnya penyerapan tenaga kerja disektor pertanian. Penurunan jumlah petani ini disebabkan oleh kurangnya minat generasi muda mempelajari dan menekuni bidang pertanian.
Pertanian saat ini dianggap sebagai pekerjaan kotor dan tidak menjanjikan dimasa depan [3]. Untuk menanggulangi ini pemerintah telah membuat kelompok binaan bagi generasi muda yang berusia antara 15-22 tahun, yang bertujuan menarik minat generasi muda guna mencintai dan bekerja dibidang pertanian [4]. Guna mendukung program pemerintah ini masyarakat hendaknya dapat lebih mendekatkan generasi muda dan anak-anak dengan dunia pertanian.
Menurut Edward [6], game merupakan sebuah tools yang efektif untuk belajar karena mengandung prinsip-prinsip pembelajaran dan teknik instruksional yang efektif digunakan dalam penguatan pada level-level yang sulit. Selain itu topik mengenai pertanian telah mendapatkan perhatian, walaupun dalam skala kecil. Pada kenyataannya, dunia pertanian telah dieksplorasi menjadi suatu tema permainan komputer yang menarik saat ini [7]. Permainan digital berbasis pembelajaran dapat menjadi sarana yang menjanjikan untuk memotivasi dan meningkatkan pembelajaran serta pengetahuan bidang pertanian di Indonesia.
Berdasarkan uraian latar belakang di atas maka penting dibuat sebuah media pembelajaran berupa permainan digital pengenalan pertanian yang berjudul
“Pembangunan Game Save Your Ricefield” sebagai judul dari tugas akhir.
1.2 Rumusan Masalah
Adapun perumusan masalah dari latar belakang diatas adalah bagaimana membuat game sebagai media pengenalan dasar-dasar menanam padi, pengenalan jenis hama, dan pengenalan predator.
1.3 Maksud dan Tujuan
Berdasarkan permasalahan yang diteliti, maka maksud dari penulisan tugas akhir ini adalah membangun Game Save Your Ricefield sebagai media pembelajaran dengan pola permainan digital yang dapat menumbuhkan rasa cinta generasi muda terhadap pertanian padi di Indonesia.
Tujuan dari pembuatan game save your ricefield yang bertemakan pertanian padi ini adalah :
1. Menyajikan pengetahuan tentang dasar-dasar dalam menanam padi.
2. Memperkenalkan jenis-jenis hama yang sering menyerang pertanian padi di Indonesia.
3. Memperkenalkan jenis hewan yang menjadi predator alami hama padi. 4. Menjadikan game sebagai sarana pembelajaran yang dapat meningkatkan
1.4 Batasan Masalah
Adapun batasan masalah yang ada dalam pembuatan skripsi ini adalah: 1. Game dimainkan oleh satu permain atau bersifat single player.
2. Target pengguna untuk game ini adalah usia 8-18 tahun.
3. Informasi yang dituangkan adalah cara pembibitan padi, mengolah tanah, memberi pupuk, menumbuhkan padi, menampilkan jenis-jenis hama perusak padi dan jenis-jenis predator yang dapat membasmi hama.
4. Level game di batasi sampai 3 level.
5. Game dibangun menggunakan Adobe Flash CS5 dengan bahasa
pemrograman Actionscript 3.0 dan dengan tampilan grafis 2D (dua dimensi).
6. Game save your ricefield ini merupakan game dengan menggunakan
metode Finite State Machines (FSM) dan A* (A star).
7. Metode Finite State Machines (FSM) digunakan pada predator dan hama. 8. Algoritma A* (A Star) digunakan sebagai pathfinding hama untuk sampai
ke lokasi penanaman padi, dan digunakan predator sebagai pathfinding untuk sampai ke posisi hama.
9. Game berakhir ketika quest (misi) terpenuhi atau tidak dalam waktu yang telah ditentukan.
10.Model analisis yang digunakan adalah pemodelan berorientasi objek. 11.Kontrol game dilakukan dengan menggunakan mouse.
1.5 Metodologi Penelitian
1. Metode Penelitian Deskriptif
Dalam metode pengumpulan data ini dilakukan penelitian secara langsung dari objek penelitian. Adapun teknik pengumpulan data yang dilakukan yaitu:
a. Studi pustaka
Pengumpulan data dengan cara mengumpulkan literatur, browsing internet dan bacaan-bacaan yang berkaitan dengan topik yang diambil.
b. Kuesioner
Teknik pengumpulan data yang dilakukan dengan cara menggunakan daftar pertanyaan yang akan diberikan kepada responden.
2. Tahap Pembangunan Aplikasi
Dalam pembangunan aplikasi game save your ricefield ini digunakan metode linear sequential model atau lebih dikenal dengan metode waterfall yang meliputi beberapa proses diantaranya:
a. Perancangan Sistem (System Engineering)
Perancangan sistem meliputi pengumpulan kebutuhan dari semua elemen yang diperlukan sistem dan mengalokasikannya ke dalam pembentukan perangkat lunak.
b. Analisa Kebutuhan Piranti Lunak (Software Requirement Analysis)
Merupakan tahap mengumpulkan kebutuhan secara lengkap kemudian dianalisis dan didefinisikan kebutuhan yang harus dipenuhi oleh game yang akan dibangun.
c. Perancangan (Design)
Tahap penerjemahan dari data yang di analisis kedalam bentuk yang lebih mudah dimengerti, Seperti perancangan antar muka dan prosedur.
d. Pengkodean (Coding)
Pengkodean adalah tahap penerjemahan data atau pemecahan masalah yang telah dirancang ke dalam bahasa pemrograman Actionscript 3.0. e. Pengujian (Testing)
f. Pemeliharaan (Maintenance)
Tahap akhir dimana game yang telah selesai dibangun dapat mengalami perubahan-perubahan, penambahan atau pengurangan fitur.
System Engineering
Software Requirement Analysis
Design
Coding
Testing
Maintenance
Gambar 1. 1 Model Waterfall [8] 1.6 Sistematika Penulisan
Sistemika penulisan disusun untuk memberikan gambaran umum tentang penelitian yang dijalankan, sistematika penulisan skripsi ini sebagai berikut: BAB I PENDAHULUAN
Bab ini menguraikan tentang latar belakang permasalahan, rumusan masalah, menentukan maksud dan tujuan dibuatnya, yang kemudian di ikuti dengan batasan masalah, serta sistematika penulisan.
BAB II. LANDASAN TEORI
BAB III. ANALISIS MASALAH DAN PERANCANGAN GAME
Bab ini membahas analisis game sejenis, analisis finite state machines (FSM), algoritma A* (A star), perancangan game, dan perancangan sistem.
BAB IV. IMPLEMENTASI DAN PENGUJIAN GAME
Bab ini membahas tentang implementasi antar muka game, spesifikasi, cara penggunaan, pengujian black box dan pengujuan white box dan serta hasil evaluasi.
BAB V. KESIMPULAN DAN SARAN
7 2.1 Budidaya Tanaman Padi
2.1.1 Botani Tanaman Padi
Tanaman padi (Oryza sativa) adalah tanaman pangan berupa rerumputan yang tersusun dari beberapa ruas. Tanaman padi merupakan jenis tanaman merumpun, yang dalam waktu singkat 1 batang bibit padi dapat membentuk rumpun sejumlah 20 sampai 30 anakan. Tanaman padi pada umumnya memiliki 3 fase pertumbuhan, yaitu fase vegetatif, fase reprodukif, dan fase pematangan.
Fase vegetatif meliputi pertumbuhan tanaman dari mulai berkecambah sampai dengan inisiasi primordial malai. Fase reproduktif dimulai dari inisiasi primordia malai sampai berbunga (heading) dan pematangan dimulai dari
berbunga sampai masak panen.
Berdasarkan iklim padi tumbuh di daerah tropis/subtropics pada 45 derajat LU sampai 45 derajat LS dengan cuaca panas dan kelembaban tinggi dengan musim hujan 4 bulan. Rata-rata curah hujan yang baik adalah 200 mm/bulan atau 1500-2000 mm/tahun. Padi dapat di tanam dimusim kemarau atau hujan, pada musim kemarau produksi padi meningkat asalkan air irigasi selalu tersedia, sedangkan musim hujan walaupun air melimpah produksi dapat menurun karena penyerbukan kurang intensif [9].
2.1.2 Pedoman Budi Daya Padi Sawah
Dalam pembudidayaan padi sawah mencakup proses pembibitan, pemindahan atau penanaman, pemiliharaan (termasuk perlindungan tanaman dan pemupukan), dan panen. Aspek lain yang penting namun bukan termasuk dalam rangkaian bercocok tanam padi sawah adalah proses penyimpanan biji benih. 2.1.2.1 Pembibitan
guna mendapatkan benih yang baik untuk dilakukan pembibitan/persemaian. Berikut adalah tahapan dalam pembibitan padi sawah [10].
1. Persyaratan Benih
Syarat benih yang baik yaitu yang tidak mengandung gabah hampa, potongan jerami, kerikil, tanah dan hama gudang. Warna gabah sesuai dengan aslinya serta daya perkecambahan 80%.
2. Persiapan Benih
Untuk melakukan pembibitan biji benih terlebih dahulu dilakukan perendaman di air mengalir dan dimasukkan kedalam karung goni selama satu malam supaya perkecambahan benih bersamaan.
3. Penyemaian Benih
Untuk satu hektar padi sawah diperlukan 25-40 kg benih, tergantung pada jenis padinya. Lahan persemaian sebaiknya dipersiapkan 50 hari sebelum semai dengan luas kira-kira 1/20 dari area sawah yang akan ditanami.
4. Pemindahan Benih
Bibit yang siap dipindahtanamkan ke sawah berumur sekitar 25-40 hari, berdaun 5-7 helai.
2.1.2.2 Pengolahan Media Tanam
Sebelum melakukan penanaman perlu dilakukan pembajakan sawah dengan membalik tanah dan memasukkan bahan organik yang ada dipermukaan. Pembajakan pertama dilakukan pada awal musim tanam dan dibiarkan 2-3 hari. Setelah itu dilakukan pembajakan kedua yang disusul oleh pembajakan ketiga 3-5 hari menjelang proses penanaman [10].
2.1.2.4 Pemeliharaan 1. Pemupukan
Pemupukan padi dilakukan sebanyak tiga kali, pemupukan pertama disebut pupuk dasar. Sewaktu bibit pindah tanam pembibitan perlu dilakukan pada waktu sekitar 8-12 hari setelah tanam. Pemupukan susulan ke satu diberikan sekitar pekan ketiga atau sekitar 21-25 hari setelah tanam, kemudian disusul dengan pemupukan susulan kedua yang diberikan pada umur tanaman mencapai pekan ketiga atau sekitar 30-40 hari setelah tanam [11].
2. Membasmi Hama
Berikut adalah jenis-jenis hama yang sering menyerang padi pada pertaninan di Indonesia [10].
a. Ulat Tentara/Grayak
Ulat grayak menyerang tanaman padi pada semua stadia. Serangan terjadi biasanya pada malam hari sedangkan siang harinya larva ulat grayak bersembunyi pada pangkal tanaman, dalam tanah atau di tempat tempat yang tersembunyi. Seranga ulat ini memakan helai-helai daun dimulai dari ujung daun dan tulang daun utama ditinggalkan sehingga tinggal tanaman padi tanpa helai daun. Pada tanaman yang telah membentuk malai, ulat grayak seringkali memotong tangkai malai, bahkan ulat grayak ini juga menyerang padi yang sudah mulai menguning. Batang padi yang mulai menguning itu membusuk dan mati yang akhirnya menyebabkan kegagalan panen. Serangan saat padi menguning atau keluar malai inilah yang sangat merugikan petani. Gambaran bentuk ulat tentara/grayak dapat dilihat pada Gambar 2.1.
b. Hama Penggerek Batang
Penggerek batang adalah ulat yang hidup dalam batang padi. Hama ini berubah menjadi ngengat berwarna kuning atau coklat. Biasanya 1 larva berada dalam 1 anakan. Ngengat aktif di malam hari. Larva betina menaruh 3 massa telur sepanjang 7-10 hari masa hidupnya sebagai organisme dewasa. Massa telur dari penggerek batang kuning berbentuk cakram dan ditutupi oleh bulu-bulu berwarna coklat terang dari abdomen betina. Setiap massa telur mengandung sekitar 100 telur. Penggerek batang padi dapat merusak pertanaman padi pada stadia apa saja, sejak persemaian sampai matang. Bila tanaman masih muda, daun-daun yang di tengah dari anakan yang rusak berwarna coklat dan mati. Kondisi ini disebut sundep. Bila kerusakan timbul setelah terbentuknya malai, maka malai berwarna putih dan disebut beluk. Gambaran bentuk hama penggerek batang yang ada di pertanian dapat dilihat pada Gambar 2.2.
Gambar 2. 2 Hama Penggerek Batang c. Walang Sangit
Gambar 2. 3 Walang Sangit d. Wereng Coklat
Hama ini dapat menyebabkan tanaman padi mati kering dan tampak seperti terbakar atau puso, serta dapat menularkan beberapa jenis penyakit. Tanaman padi yang rentan terserang wereng coklat adalah tanaman padi yang dipupuk dengan unsur N terlalu tinggi dan jarak tanam yang merupakan kondisi yang disenangi wereng coklat.
Hama wereng coklat menyerang tanaman pada mulai dari pembibitan hingga fase masak susu. Gejala serangan adalah terdapatnya imago wereng coklat pada tanaman dan menghisap cairan tanaman pada pangkal batang, kemudian tanaman menjadi menguning dan mengering. Gambaran wereng coklat yang ada di pertanian dapat dilihat pada Gambar 2.4.
e. Tikus
Tikus merusak tanaman pada semua fase pertumbuhan dan dapat menyebabkan kerusakan besar apabila tikus menyerang pada saat primodia. Tikus akan memotong titik tumbuh atau memotong pangkal batang untuk memakan bulir gabah. Tikus menyerang pada malam hari dan pada siang hari tikus bersembunyi di lubang pada tanggul irigasi, pematang sawah, pekarangan, semak atau gulma. Gambaran tikus yang sering menyerang padi dapat dilihat pada Gambar 2.5.
Gambar 2. 5 Tikus Sawah 2.1.2.5 Panen
Padi siap panen yaitu padi dengan 95% bulir yang telah menguning atau sekitar 33-36 hari setelah berbunga, bagian malai masih terdapat gabah hijau dan kadar air gabah 21-26 % serta bulir hijau rendah. Cara memanen padi yaitu dengan menggunakan sabit tajam untuk memotong pangkal batang [10].
2.2 Game
Video games merupakan salah satu sarana hiburan yang saat ini mengalami
2.2.1 Pengertian Game
Game diambil dari bahasa Inggris yang berarti permainan. Aktivitas yang
dilakukan dalam permainan biasanya melibatkan pemain (player) didalamnya guna untuk menentukan keputusan dan alur dari permainan tersebut. Pada perkembangan teknologi saat ini kata game sering digunakan untuk menyebutkan kata video game yang merupakan game atau permainan dengan interaksi utamanya melibatkan video serta audio.
2.2.2 Elemen Dasar Game
Dalam suatu game terdapat beberapa elemen yang menyusun game tersebut, seperti jenis game, karakter game, background, elemen sound/suara, dan gerakan-gerakan dasar.
2.2.3 Genre Game
Adapun genre game dapat diklasifikasikan menjadi beberapa tipe antara lain adalah [12] :
1. Action games
Game ini dikenali dari aksi didalamnya yang berupa pergerakan, attack,
reaksi dan pergerakan-pergerakan lainnya. Hal yang lebih ditekankan pada game jenis ini adalah aksi didalamnya, bukan dari sudut pandang cerita.
2. Adventure
Dalam game tipe ini, player akan menyelesaikan misi yang diberikan sepanjang petualangan di dalam game. Player memulai permainan dengan inventori yang terbatas, senjata dan makanan, kemudian dikirim untuk melakukan suatu quest, dan dalam perjalanannya ada tugas yang harus diselesaikan.
3. Casual Game
Yang termasuk dalam casual game adalah board game, card game dan game shows. Game ini bertujuan untuk menghibur player, dan selain itu
4. Educational Game
Game edukasi memberikan penekanan pada unsur pendidikan dan
pembelajaran. Contoh game edukasi yang sederhana dapat berupa pertanyaan pilihan ganda, isian maupun essai.
5. Role-Playing Game (RPG)
Pada game bertipe ini memiliki dunia yang luas untuk dieksplorasi oleh player, baik untuk mencari harta karun, objek dan status (leveling), sambil
menghancurkan monster dan objek yang menghalaginya. Dalam RPG ada tujuan yang harus dicapai player untuk menyelesaikan permainan.
6. Strategy
Dalam game tipe ini dibutuhkan pemikiran dan perencanaan yang benar untuk dapat memenangkan permainan dan biasanya menggunakan sudut pandang overhead sehingga player dapat melihat seluruh area permainan.
7. Simulation
Simulation game atau sims adalah suatu bentuk game yang menggambarkan
situasi dunia nyata, baik dalam rupa simulasi driving maupun dalam hubungannya dengan lingkungan interaksi antara manusia.
8. Puzzle
Puzzle game memiliki tujuan yang sangat sederhana yaitu untuk
menyelesaikan puzzle yang diberikan. 2.3 Multimedia
Multimedia adalah sebuah fungsi dari komputer yang mempresentasikan dan menggabungkan teks, grafik, suara, video, dan animasi sehingga pengguna dapat berinteraksi, menciptakan, berkomunikasi. Definisi tersebut mendefinisikan empat komponen yang harus ada pada multimedia [14].
1. Adanya sebuah komputer untuk mengkoordinasi apa yang bisa dilihat, didengar, dan yang dapat berinteraksi dengan penggunanya.
2. terdapatnya sebuah hubungan ke informasi.
4. karena multimedia bukan hanya menyaksikan, maka harus ada cara untuk memperoleh, memproses, dan berkomunikasi dengan informasi dan ide. 2.3.1. Elemen Multimedia
Adapun elemen-elemen multimedia adalah sebagai berikut [14]. 1. Teks
meskipun dimungkinkan untuk menciptakan sebuah multimedia tanpa teks, tetapi kebanyakan sistem multimedia menggunakan teks karena adalah cara efektif untuk mengkomunikasikan ide-ide dan memberikan petunjuk kepada pengguna. pada multimedia ada empat macam teks yaitu: printed text, scanned text, electoric text, dan hypertext.
2. Grafik
Multimedia memungkinkan pengguna untuk melakukan merubah gambar menjadi objek atau link. Grafik seringkali muncul sebagai latar dibalik suatu teks. Selain itu gambar juga dapat berfungsi sebagai ikon yang digabungkan dengan teks dan menampilkan pilihan-pilihan, atau dapat ditampilakn secara fullscreen untuk menggantikan teks. Grafik terdiri dari beberapa bentuk antara lain: bitmap, vector images, clip art, digitized pictures, dan hyperpictures.
3. Suara
Suara atau sound yang sering digunakan dalam multimedia adalah waveform audio, midi, audio CD, CD plus, Mp3, dan hyperaudio
4. Video
Video menyediakan sumber daya yang besar bagi multimedia. terdapat
empat jenis video yang dapat digunakan pengguna sebagai objek link dalam multimedia yaitu: live video feeds, video tape, video disc, dan digital video.
5. Animasi
a. Frame Animation
Frame Animation membuat objek bergerak dengan menampilkan
serangkaian gambar yang disebut frame, dimana objek yang tampilkan bebeda-beda.
b. Vector Animation
Sebuah vektor adalah garis yang memiliki awal, arah, dan panjang. vector animation membuat objek bergerak dengan merubah titik awal, arah dan
ukuran dari objekdan disuaikan dengan segmen objek.
c. Computional Animation
Computional animation adalah teknik merubah objek untuk dapat bergerak
dengan merubah koordinat x dan y pada layar.
d. Morphing
Morphing berarti transisi suatu bentuk ke bentuk lain dengan menampilkan
serangkaian frame untuk menciptakan gerakan yang halus. 2.4 AI (Artificial Intelligence)
Istilah intelligence atau kecerdasan cukup samar-samar. Didalam kamus penjelasan bahwa intellingence adalah kapasitas untuk memperoleh dan menerapkan pengetahuan, tetapi definisi tersebut terlalu umum. Karena tidak ada definisi yang lebih baik, intelligence dapat diartikan sebagai seperangkat keterampilan yang memungkinkan manusia untuk memecahkan masalah dengan sumber daya yang terbatas. Keterampilan seperti belajar, berpikir abstrak, perencanaan, imajinasi, dan kreativitas mencakup aspek yang paling penting dari kecerdasan manusia.
Pada saat bermain game hal yang penting bukan hanya sekedar tentang kekuatan tangan atau reflek yang sempurna, tetapi bagaimana menjadikan game sebagai sarana hiburan dan dapat memecahkan masalah pada game tersebut. Game yang menggunakan konsep artificial intelligence merupakan mesin pencari
solusi untuk memecahkan masalah dengan cara yang lebih mirip manusia.
1. Actinghumanly: The Turing Test approach
Pada tahun 1950, Alan Turing mendefinisikan prilaku intelligence (kecerdasan) sebagai kemampuan untuk mencapai level performa manusia dalam semua tugas yang berkaitan dengan teori, untuk dapat mengelabui pemakainya yang menginterogasinya melalui teletype (komunikasi berbasis teks jarak jauh). Jika intelligence tidak dapat membedakan yang tidak dapat membedakan yang diinterogasi adalah manusia atau komputer, maka komputer tersebut lolos dari turing test. Untuk dapat melakukan pemeriksaan yang benar komputer tersebut
harus memiliki kemampuan berikut :
a. Natural Language Processing
b. Knowledge Representation
c. Automated Reasoning
d. Machine Learning
e. Computer Vision f.Robotics
2. Thinkinghumanly: The cognitive modelling approach
Untuk membuat program yang memilki pola pikir seperti manusia, harus mengetahui dulu bagaimana cara manusia berpikir. Untuk melakukan pendekatan ini dapat dilakukan dengan dua hal yaitu, melalui introspeksi dengan cara mencoba menangkap pemikiran-pemikiran yang biasanya dilakukan manusia, dan dengan cara eksprerimen-eksprerimen psikologi.
3. Thinkingrationally: The laws of thought approach
Dalam melakukan pendekatan ini terdapat dua masalah utama yang sering dihadapi. Masalah pertama yang timbul adalah untuk membuat pengetahuan informal yang menyatakan pengetahuan tersebut ke dalam formal term yang diperlukan oleh notasi logika tidaklah mudah. Kemudian yang kedua terdapat perbedaan besar antara dapat memecahkan masalah kode dan dalam dunia nyata.
4. Actingrationally: The rational agent approach
Acting rationally adalah bertindak untuk mencapai suatu tujuan yang
rasional adalah dengan menalar secara logis. Dengan menalar secara logis, maka bisa didapatkan kesimpulan bahwa aksi yang diberikan akan mencapai tujuan atau tidak. Jika mencapai tujuan, maka agent dapat melakukan aksi berdasarkan kesimpulan tersebut.
2.5 Algoritma A* (A Star)
2.5.1 Deskripsi Algortima A* (A Star)
Algortima A* (A Star) identik dengan pathfinding dalam game. Algoritma ini mudah diimplementasikan dan merupakan perbaikan dari metode BFS dengan memodifikasi fungsi heuristic nya. Algoritma A* membuang langkah-langkah yang tidak perlu dengan pertimbangan bahwa langkah-langkah yang dibuang sudah pasti merupakan langkah yang tidak akan mencapai solusi yang diinginkan.
Ada beberapa terminologi dasar yang terdapat pada algoritma ini diantaranya [16]:
1. Starting Point: Starting point adalah sebuah terminologi untuk posisi awal sebuah benda.
2. N: Adalah posisi node yang sedang dijalankan dalam algoritma pathfinding. 3. Simpul (Nodes) : Node adalah petak-petak kecil sebagai representasi dari area pathfinding. Bentuknya dapat berupa persegi, lingkaran, maupun segitiga.
4. Open List: Open List adalah tempat menyimpan data node yang mungkin diakses dari starting point maupun node yang sedang dijalankan.
5. Closed List: Closed List adalah tempat menyimpan data node sebelum N yang juga merupakan bagian dari jalur terpendek yang telah berhasil didapatkan.
6. Harga (Cost): Harga (cost) adalah nilai yang diperhitungkan oleh algoritma untuk menemukan jalur terdekat dengan node tujuan.
2.5.2 Cara Kerja Algoritma A* (A Star)
Prinsip kerja algoritma A* adalah mencari node open list yang memiliki nilai biaya-sejauh-ini terkecil dari node awal. Algoritma akan memilih node yang paling memungkinkan untuk sampai ke tujuan dengan jarak terpendek. Untuk menentukan node yang paling memungkinkan jadi jalur terpendek diperlukan suatu nilai heuristic (nilai biaya-seberapa-jauh jarak dari suatu node ke node tujuan). Keakuratan pencarian pada algoritma tergantung dari keakuratan nilai heuristic nya. jika nilai heuristic nya akurat maka pencarian akan efesien. Secara
rinci algoritma akan bekerja dalam iterasi-iterasi (perulangan). Pada setiap iterasi, algoritma akan melakukan perhitungan dari satu node ke node berikutnya.
Selama iterasi, algoritma menganggap setiap relasi yang keluar adalah berasal dari current node. Setiap relasi yang keluar bertujuan untuk mencari node akhir dan menyimpan total biaya dari perjalanan tersebut. Selain itu algoritma akan menyimpan biaya lainnya, yaitu biaya-sejauh-ini (biaya dari node awal ke current node) dan biaya-seberapa-jauh (biaya dari current node ke node tujuan)
atau lebih dikenal dengan heuristic. Kedua nilai biaya tersebut bukanlah hasil perhitungan dari algoritma A*, tetapi ditentukan secara manual dan nilai biaya tersebut tidak boleh bernilai negatif. Untuk lebih jelasnya dapat dilihat pada Gambar 2.6.
Algoritma A* akan tetap memberi label open list ke node yang telah di cek tetapi tidak dijadikan perlintasannya karena estimasi-total-biaya nya lebih besar dari yang lainnya dan akan memberi label closed list kepada node yang menjadi yang memiliki estimasi-total-biaya terkecil, hal tersebut memungkinkan algoritma untuk memeriksa node yang lebih menjanjikan untuk dijadikan perlintasan selanjutnya. Untuk mendapatkan perkiraan biaya terkecil maka algoritma harus mempunyai biaya-sejauh-ini dan nilai heuristic terkecil. jika perkiraan biaya tersebut tepat, maka node yang lebih dekat dengan node tujuan akan diprioritaskan.
Dengan adanya pemberian label open list kembali kepada node yang tidak jadi perlintasan pertama maka akan sangat menguntungkan, karena algoritma dapat memperbaharui nilai yang telah dicacatnya. Bila terjadi kasus dimana nilai yang baru lebih kecil dari nilai yang sekarang, maka algoritma perlu memperbaharuinya. Algoritma akan melakukan perbandingan pada biaya-sejauh-ini, dikarenakan biaya-sejauh-ini bukanlah hasil dari perhitungan algoritma, maka
nilai dari biaya-sejauh-ini dapat dijadikan patokan. Untuk lebih jelasnya dapat dilihat pada Gambar 2.7.
2.6 Finite State Machines
Finate State Machines (FSM) adalah sebuah metodologi perancangan
sistem kontrol yang menggambarkan tingkah laku atau prinsip kerja sistem dengan menggunakan state (Keadaan), event (kejadian) dan action (aksi) [17].
Dalam state machine sistem menempati satu state (keadaan). Sistem akan beralih atau bertransisi menuju ke state lain jika mendapatkan masukan event tertentu. Sistem akan tetap melakukan aksi yang sama pada suatu state sampai sistem menerima event tertentu baik yang berasal dari perangkat luar atau komponen dari sistem itu sendiri. Setiap state terhubung oleh transisi dan setiap transisinya mengarah ke satu state lainnya. Transisi keaadan ini umumnya juga disertai oleh aksi yang dilakukan oleh sistem ketika menanggapi masukan yang terjadi. Aksi yang dilakukan tersebut dapat berupa aksi sederhana yang melibatkan rangkaian proses yang relatif rumit. Berikut adalah gambaran state machines sederhana.
Gambar 2. 8 State Machine Sederhana [17]
2.7 UML (Unified Modeling Language)
Unified Modeling Language (UML) adalah bahasa pemodelan untuk sistem
atau perangkat lunak yang berparadigma berorientasi objek. Pemodelan (modeling) sesungguhnya digunakan untuk penyederhanaan permasalahan-permasalahan yang kompleks sedemikian rupa sehingga lebih mudah dipelajari dan dipahami [19]. UML tidak hanya merupakan sebuah bahasa pemograman visual saja, namun juga dapat secara langsung dihubungkan ke berbagai bahasa
pemograman, seperti JAVA, C++, Visual Basic, atau bahkan dihubungkan secara langsung ke dalam sebuah object-oriented database. Begitu juga mengenai pendokumentasian dapat dilakukan seperti; requirements, arsitektur, design, source code, project plan, tests, dan prototypes.
Berikut adalah contoh beberapa UML yang digunakan untuk memodelkan aplikasi berorientasi Objek.
1. Use Case Diagram
Use case diagram biasanya disebut sebagai diagram perilaku yang
digunakan untuk menggambarkan serangkaian tindakan (use case) terhadap sistem yang harus atau dapat melakukan kolaborasi dengan satu atau lebih pengguna dari luar sistem atau aktor [20]. Gambar 2.9 merupakan contoh dari use case diagram sistem check-in di bandara.
2. Sequence Diagram
Sequence diagram adalah jenis yang paling umum dari diagram interaksi
yang berfokus pada pertukaran pesan antara sejumlah objek [20]. Pada Gambar 2.10 dapat dilihat contoh sequence diagram online bookshop.
Gambar 2. 10 Contoh Sequence Diagram Online Bookshop 3. State Diagram
Gambar 2. 11 Contoh State Diagram Fase Air 4. Activity Diagram
Activity diagram adalah diagram UML yang menunjukkan aliran objek
dengan penekanan pada urutan dan kondisi aliran. Tindakan dikoordinasi oleh model kegiatan dapat dimulai karena tindakan lainnya selesai dilaksanakan [20]. Berikut adalah contoh activity diagram proses order yang ditunjukkan pada Gambar 2.12.
Gambar 2. 12 Contoh Activity Diagram Proses Order 5. Class Diagram
Class diagram adalah dekripsi kelompok objek dengan properti, perilaku
class-class yang ada dan relasinya satu dengan yang lainnya [20]. Sebuah sistem
biasanya mempunyai beberapa class. Pada Gambar 2.13 dapat dilihat contoh class diagram online shopping domain.
Gambar 2. 13 Contoh Class Diagram Online Shopping Domain 2.8 Tools yang digunakan
2.8.1 Adobe Flash CS5 Professional
Adobe Flash merupakan salah satu perangkat lunak komputer yang
merupakan produk unggulan Adobe System. Berkas yang dihasilkan dari perangkat lunak ini mempunya file extension .swf dan dapat diputar di browser web yang telah di install Adobe Flash Player. Flash menggunakan bahasa
pemrograman yang bernama ActionScript yang muncul pertama kalinya pada Flash 5.
membuat dokumen Flash/file ActionScript atau membuat dokumen baru dari template yang sudah ada. Start Page pada Adobe Flash CS5 Professional dapat
dilhat pada Gambar 2.14.
Gambar 2. 14 Start Page Adobe Flash CS5 Professional
Jendela utama merupakan awal dari pembuatan program, pembuatannya dilakukan dalam kotak movie dan stage yang didukung oleh tools lainnya. Seperti yang pernah dijelaskan dalam sebuah tulisan Jendela kerja flash terdiri dari stage dan panel-panel. Stage merupakan tempat objek diletakkan, tempat menggambar dan menganimasikan objek. Sedangkan panel disediakan untuk membuat gambar, mengedit gambar, menganimasi, dan pengeditan lainnya.
2.8.2 ActionScript
ActionScript merupakan bahasa pemrograman berorientasi objek (OOP)
yang spesifikasi bahasanya bebasis ECMA Script dan ditunjukan untuk berjalan di atas sebuah runtime environment (serperti Flash Player, Adobe AIR atau Flash Lite. Actionscript) merupakan sebuah program yang mampu berinteraksi dengan
Kelebihan terbesar dari flash adalah interkativitas terhadap suatu objek. Dalam membangun interaktivitas tersebut digunakan perintah-perintah maupun program yang disebut actionscript. Secara umum, actionscript pada flash hampir sama dengan pemrograman javascript. Jadi jika sudah terbiasa menggunakan bahasa pemrograman javascript, hal itu akan sangat membantu dalam membuat aplikasi-aplikasi yang ada pada actionscript.
Dalam membangun suatu interaktivitas, ada tiga komponen yang penting dalam actionsctipt yaitu:
1. Event (Kejadian)
Event merupakan peristiwa atau kejadian untuk mendapatkan aksi sebuah
objek. Beberapa event pada actionscript 3.0 adalah sebagai berikut:
a. Mouse Event : event yang berkaitan dengan penggunaan mouse, diantaranya mouseclick, mouseover, mousedown, mousemove.
b. KeyboardEvent : event yang berkaitan dengan keyboard, seperti input. c. FrameEvent : event yang diletakkan pada keyframe.
d. MovieClipEvent : event yang berkaitan dengan movieclip. 2. Action (Aksi)
Action merupakan aksi atau kerja yang dikenakan atau diberikan pada suatu
objek untuk pembuatan interkasi antar objek. Beberapa action dalam actionscipt 3.0 adalah sebagai berikut:
a. Action Frame : Action frame adalah action yang diberikan pada keyframe. Keyframe yang telah diberikan action biasanya akan ditandai
dengan huruf a.
b. Action Object : Action pada objek diberikan bertujuan untuk membuat objek dapat bergerak yang berupa MovieClip atau merespon aksi dari mouse yang berupa button.
3. Target
125 4.1 Implementasi Sistem
Tahap implementasi merupakan tahap kelanjutan dari kegiatan perancangan sistem. Wujud dari hasil implementasi ini nantinya adalah sebuah sistem yang siap untuk diuji dan digunakan.
4.1.1 Impelementasi Perangkat Keras
Berikut adalah spesifikasi perangkat keras (hardware) yang digunakan untuk menjalankan game save your ricefiled.
Tabel 4. 1 Perangkat Keras yang Digunakan
Nama Perangkat Spesifikasi
Processor CPU 1.80 Ghz
Memory 1 GB
HDD 1 GB Free Hardisk
Display Resolusi 1024 x 768
Mouse 1 Unit
Keyboard 1 Unit
4.1.2 Implementasi Perangkat Lunak
Spesifikasi perangkat lunak (software) yang digunakan untuk menjalankan game save your ricefield dapat dilihat pada tabel 4.2.
Tabel 4. 2 Perangkat Lunak yang Digunakan Nama Perangkat Lunak Keterangan
Windows Sebagai sistem operasi
Flash Player 9/10/11 Sebagai player
4.1.3 Impelementasi Instalasi Game
Sebelum dapat memainkan game save your ricefield, game harus tersimpan di direktori komputer. Petunjuk dalam instalasi game ini adalah sebagai berikut:
1. Copy file Save Your Rice Field.swf pada direktori komputer 2. Install flash player untuk menjalankan game
3. Buka file Save Your Rice Field.swf untuk menjalankan game 4.1.4 Implementasi Antar Muka
Implementasi antar muka merupakan tahap dimana sebuah sistem siap dioperasikan pada tahap yang sebenarnya, sehingga bisa diketahui apakah sistem yang telah di buat ini sudah sesuai dengan apa yang sudah di rancang sebelumnya.
1. Tampilan Menu Utama Game Save Your Ricefield
Saat pemain membuka game save your ricefield pertama kali, maka antar muka yang ditampilkan oleh sistem adalah antar muka menu utama. Pemain dapat memilih menu play now untuk dapat memainkan permainan. Selain itu pemain bisa mengatur sound dan music pada game. Tampilan menu utama game save your ricefield dapat dilihat pada Gambar 4.1.
2. Tampilan Pembuatan Profil Pemain
Pembuatan profil bertujuan menyimpan data pemain dan data permainan yang nantinya dapat di mainkan kembali. Tampilan pembuatan profil merupakan tampilan pesan yang muncul ketika pemain memilih menu play now. Berikut adalah tampilan pembuatan profil game save your ricefield.
Gambar 4. 2 Tampilan Pembuatan Profil Pemain 3. Tampilan Pesan Intruksi Permainan
Gambar 4. 3 Tampilan Pesan Intruksi Permainan 4. Tampilan Lahan Permainan
Setelah sistem selesai menampilkan pesan intruksi, maka tampilan lahan pertanian dapat dimainkan. Lahan permainan berisikan semua resource yang dapat digunakan pemain untuk memenangkan permainan. Pada lahan permainan pemain dapat menanam dan merawat padi, serta membasmi hama yang akan menyerang padi. Berikut adalah tampilan lahan permainan pada game save your ricefield.
5. Tampilan Pesan Info Predator
Tampilan info predator merupakan tampilan pesan yang berisikan keterangan predator yang dapat digunakan pemain untuk memburu hama. Tampilan info predator akan muncul sekali untuk setiap jenis predator dalam setiap permainan. Berikut adalah tampilan pesan info jenis predator yang ditunjukkan pada Gambar 4.5.
Gambar 4. 5 Tampilan Pesan Info Predator 6. Tampilan Pesan Info Hama
Gambar 4. 6 Tampilan Pesan Info New Hama 7. Tampilan Pesan Info Tips
Tampilan pesan info tips berisikan tips atau saran yang berikan kepada pemain untuk dapat memenangkan permainan. Pesan info tips akan muncul beberapa saat setelah pemain memulai permainan yang ditandakan dengan muncul tombol disisi kiri atas lahan permaian. Pemain dapat membuka pesan tersebut dengan mengklik tombol tersebut. Untuk lebih jelasnya dapat dilihat pada Gambar 4.7.
8. Tampilan Option (Pengaturan)
Tampilan option dapat digunakan pemain untuk mengaktifkan dan menonaktifkan sound dan music game. Selain itu tampilan option juga dapat digunakan pemain untuk kembali ke menu pembuka atau mengulang permainan. Berikut tampilan option game save your ricefield.
Gambar 4. 8 Tampilan Option Game Save Your Ricefield 9. Tampilan Pesan Victory (Kondisi Menang)
Gambar 4. 9 Tampilan Pesan Victory 10.Tampilan Pesan Lose (Kondisi Kalah)
Tampilan pesan lose tampil ketika pemain tidak berhasil menyelesaikan sejumlah misi pada level tersebut. Pada pesan lose sistem akan memberikan pilihan kepada pemain yaitu mengulang permainan pada level tersebut atau mengakhiri permainan dengan memilih tombol quit. Berikut adalah tampilan pesan lose pada game save your ricefield.
4.2 Pengujian Sistem
Pengujian sistem dilakukan bertujuan untuk menemukan kesalahan atau kekurangan pada perangkat lunak yang diuji. Pengujian bermaksud untuk mengetahui perangkat lunak yang dibuat sudah memenuhi kriteria yang sesuai dengan tujuan perancangan perangkat lunak tersebut.
Pengujian yang akan digunakan dalam menguji game save your ricefield ini adalah dengan menggunakan pengujian alpha (fungsional) dan pengujian beta. 4.2.1 Pengujian Alpha
Pengujian dilakukan terhadap game untuk memastikan bahwa game dapat berjalan dengan benar sesuai dengan kebutuhan dan tujuan yang diharapkan. Pengujian alpha berfokus pada persyaratan fungsional perangkat lunak.
4.2.1.1 Skenario Pengujian Aplikasi
Skenario pengujian menjelaskan pengujian terhadap sistem yang ada pada aplikasi game save your ricefield. Berikut ini merupakan skenario pengujian dari aplikasi game dapat dilihat pada Tabel 4.3.
Tabel 4. 3 Skenario Pengujian Game Save You Ricefield
No Komponen yang
di uji Skenario Pengujian Jenis Pengujian
1 Menu Utama Pilih Menu Play Now Black Box
Pilih New Game Black Box
Isi profil baru Black Box
Pilih Tombol Close Black Box
Pilih Tombol Sound dan Music Black Box
2 Lahan Permainan Tampil Intructions Black Box
Pilih Tombol Next Intructions Black Box Pilih Tombol Skip Intructions Black Box
Pilih Kotak Predator Black Box
Pilih Tombol OK Pada Info
Perendaman Selesai Black Box
Tampil Penambahan Jumlah
Benih Bibit Black Box
Pilih Kotak Cangkul Black Box
Tampil Tanah Semai Terolah Black Box Pilih Kotak Benih Bibit Black Box Tampil Bibit di Tanah Semai Black Box Tampil Info Bibit Butuh Pupuk Black Box Bibit Setelah Pemupukan Black Box Tampil Info Pembibitan Selesai Black Box Pilih Tombol OK Pada Info
Pembibitan Selesai Black Box
Tampil Penambahan Jumlah
Bibit Tanam Black Box
Pilih Kotak Kerbau Black Box
Tampil Tanah Tanam Terolah Black Box Pilih Kotak Bibit Tanam Black Box Tampil Padi di Tanah Tanam Black Box Tampil Info Padi Bubuh Pupuk Black Box Padi Setelah Pemupukan Black Box Tampil Info Padi Siap Panen Black Box
Padi Pasca Panen Black Box
Tampil Jumlah Misi (Quest)
Bertambah Black Box
Tampil Uang Bertambah Hasil
Panen Padi Black Box
Tampil Uang Bertambah Hasil
Pembasmian Hama Black Box
Penjualan Pestisida
Pilih Kotak Pupuk Black Box
Pilih Kotak Celurit Black Box
Pilih Tombol Jerigen Black Box
Pilih Kotak Pestisida Black Box
Pilih Info Tips Black Box
Pilih Info New Hama Black Box
Pilih Tombol Options Black Box
Pilih Tombol Sound On/Off Black Box Pilih Tombol Music On/Off Black Box
Pilih Tombol Resume Black Box
Pilih Tombol Quit Black Box
Pilih Tombol Restart Black Box
Tampil Kondisi Menang Black Box
Pilih Tombol Continue Pada
Kondisi Menang Black Box
Pilih Tombol Quit Pada Kondisi
Menang Black Box
Tampil Kondisi Kalah Black Box
Pilih Tombol Restart Pada
Kondisi Kalah Black Box
Pilih Tombol Quit Pada Kondisi
Kalah Black Box
3 Algoritma A* Algoritma A* Pada Hama dan
Predator White Box
4 Finite State Machines (FSM)
FSM Hama White Box
4.2.1.2 Kasus Hasil Pengujian Pengujian (Black Box Testing)
Black box bertujuan untuk menunjukkan fungsi perangkat lunak tentang
cara beroperasinya, apakah pemasukan data keluaran telah berjalan sebagaimana yang diharapkan. Berikut ini merupakan kasus untuk menguji perangkat lunak yang sudah dibangun dengan menggunakan metode black box testing berdasarkan skenario pengujian aplikasi yang terdapat pada Tabel 4.3 yang sudah dijabarkan. Hasil pengujian yang akan dilakukan pada aplikasi ini selengkapnya dapat dilihat pada Tabel 4.4 :
Tabel 4. 4 Pengujian Black Box
No Kasus yang akan di uji
Skenario dan Hasil Uji Skenario Uji Hasil yang
Diharapkan Kesimpulan
Pilih New Game Sistem menampilkan form isi nama pemain
[] Berhasil [ ] Tidak Berhasil Isi profil baru Sistem menyimpan data
nama pemain
[] Berhasil [ ] Tidak Berhasil Pilih Tombol Close Sistem kembali ke
tampilan menu utama music jika sound music
dalam keadaan hidup
[] Berhasil [ ] Tidak Berhasil
2 Lahan
Permainan Tampil Intructions
Sistem menampilkan petunjuk permainan
saat pemain pertama
Pilih Kotak Predator Sistem memberikan hak drag pada predator drag pada biji benih
[] Berhasil
proses perendaman [] Berhasil [ ] Tidak Berhasil
Tampil Penambahan Jumlah Benih Bibit
Sistem menampilkan penambahan jumlah benih bibit pada kotak benih bibit drag pada benih bibit
Tanah Semai bibit di tanah semai [ ] Tidak Berhasil Tampil Info Bibit
Butuh Pupuk
Sistem memberikan pesan bibit butuh pupuk
[] Berhasil bibiti tanam di kotak bibit tanam drag pada bibit tanam
[] Berhasil [ ] Tidak Berhasil Tampil Padi di
Tanah Tanam
Sistem menampilkan padi di tanah tanam
[] Berhasil [ ] Tidak Berhasil Tampil Info Padi
Bubuh Pupuk
Sistem menampilkan pesan padi butuh pupuk
[] Berhasil [ ] Tidak Berhasil Padi Setelah
Pemupukan
Sistem merubah fase tumbuh padi ke fase selanjutnya
Tampil Info Padi Siap Panen
Sistem menampilkan pesan padi siap untuk di panen
[] Berhasil [ ] Tidak Berhasil
Padi Pasca Panen
Sistem menampilkan padi pasca panen dan mengakhiri proses Pilih Kotak Pestisida Sistem memberikan hak
drag pada pestisida
[] Berhasil [ ] Tidak Berhasil
Pilih Info Tips
Sistem menampilkan pesan tips atau petunjuk bantuan
Menang menampilkan menu
4.2.1.3 Kasus dan Hasil Pengujian (White Box Testing)
White Box adalah teknik meramalkan cara kerja perangkat lunak secara
rinci, karenanya logical path (jalur logika) perangkat lunak akan di test dengan menyediakan test case yang akan mengerjakan kumpulan kondisi dan atau pengulangan secara spesifik. Secara sekilas dapat diambil kesimpulan white box testing merupakan petunjuk untuk mendapatkan program yang benar secara
100%.
1. Pengujian White Box Algoritma A*
Pengujian algoritma A* hama merupakan proses dimana akan di uji implementasi algoritma A* yang digunakan hama terhadap padi dan predator terhadap hama sebagai pencarian jalur terpendek.
DEKLARASI :
1. OpenNodes : array [ ] of integer { inisialisasi open node kosong } ClosedNodes : array [ ] of integer { inisialisasi close node kosong } currentNode = firstNode { set node awal ke node open }
l , I : integer
const travelCost = 1.0 { inisialisasi biaya perjalanan } g, h, f : real
{ menentukan nilai heuristic dengan rumus pythagoras }
currentNode.g = 0
currentNode.h = euclidianHeuristic(currentNode, destinationNode) currentNode.f = currentNode.g + currentNode.h
ALGORITMA :
2. while currentNode ≠ destinationNode
{ Hentikan loop jika currentNode telah sampai ke rute tujuan }
3. for i ← 0 to connectedNodes testNode ← connectedNodes + i
4. if (testNode = currentNode) or (testNode.traversable = false) then 5. g ← currentNode.g + travelCost
h ← euclidianHeuristic( testNode, destinationNode);
{ fungsi euclidianHeuristic adalah fungsi utk menghitung jarak dari
node A ke B.. dlm A star ini, digunakan rumus phytagoras } ganti parent dari node ini di open list menjadi current node, lalu kalkulasi ulang nilai g dan f dari node ini }
testNode.f ← f
testNode.g ← g
testNode.h ← h
testNode.parentNode ← currentNode 10. else
testNode.g ← g
testNode.h ← h
testNode.parentNode ← currentNode
{ Jika belum ada di open list . Buat current node parent dari node tetangga ini. Simpan nilai f,g dan h dari node ini }
openNodes.push(testNode) 11. endif
12. endif 13. endfor
14. closedNodes.push (currentNode)
{ Keluarkan current node dari open list dan masukan ke close list } 15. if openNodes.length = 0 then
16. return null 17. endif
18. openNodes.sortOn (“f”, Array.NUMERIC)
{ Cari node (n) dengan nilai f(n) yang paling rendah dalam open list. Node ini sekarang menjadi current node }
19. currentNode ← openNodes
a. FlowGraph
Berikut ini merupakan flow graph algoritma A* berdasarkan psedocode di atas yang dapat dilihat pada Gambar 4.11.
1
Gambar 4. 11 Flow Graph Algoritma A* (A Star) Keterangan:
= Menggambarkan Kondisi = Menggambarkan Aksi b. CyclomaticComplexity V(G)
V(G) = E – N + 2 V(G) = 26 – 20 + 2 V(G) = 6 + 2 = 8 Dimana:
E = jumlah edge pada diagram alir N = jumlah node pada diagram alir
c. IndependentPath
Dari hasil perhitungan cyclomatic complexity terdapat 8 independent path yaitu:
Path 1 = 1 – 2 – 3 – 4 – 5 – 6 – 7 – 8 – 10 – 11 – 12 – 13 – 14 – 15 – 16 – 17 – 18 – 19 – 20
Path 2 = 1 – 2 – 3 – 4 – 6 – 7 – 8 – 10 – 11 – 12 – 13 – 14 – 15 – 16 – 17 – 18 – 19 – 20
Path 3 = 1 – 2 – 3 – 4 – 5 – 6 – 7 – 8 – 10 – 11 – 12 – 13 – 14 – 15 – 17 – 18 – 19 – 20
Path 4 = 1 – 2 – 3 – 4 – 5 – 6 – 7 – 8 – 9 – 11 – 12 – 13 – 14 – 15 – 16 – 17 – 18 – 19 – 20
Path 5 = 1 – 2 – 3 – 4 – 5 – 6 – 7 – 12 – 13 – 14 – 15 – 17 – 18 – 19 – 20 Path 6 = 1 – 2 – 3 – 4 – 5 – 6 – 7 – 8 – 11 – 12 – 13 – 14 – 15 – 16 – 17
– 18 – 19 – 20
Path 7 = 1 – 2 – 3 – 4 – 5 – 6 – 7 – 8 – 10 – 11 – 12 – 13 – 3
d. GraphMatric
Gambar 4. 12 Graph Matric Algoritma A* Penerapan dihama dan Predator Keterangan:
1. Baris dan kolom merepresentasikan simpul (node)
2. Nilai 1 merepresentasikan adanya keterhubungan antar simpul e. Kesimpulan
Dari hasil pengujian algoritma A* yang dilakukan, maka didapat kesimpulan bahwa seluruh node yang ada pada setiap path telah dikerjakan, serta tidak terjadi pengulangan.
2. Pengujian White BoxFinite State Machine Hama a. FlowChart
Mulai
Gambar 4. 13 Flow Chart Finite State Machine Hama b. FlowGraph
1
2
3
4
5
6
7
8
9
10
Gambar 4. 14 Flow Graph Finite State Machine Hama Keterangan
= Menggambarkan Kondisi = Menggambarkan Aksi c. CyclomaticComplexity V(G)
Dari diagram alir di atas, dapat dihitung cyclomatic complexity, yakni Region = 5 yang di dapat dari perhitungan dibawah ini:
V(G) = E – N + 2 V(G) = 13 – 10 + 2 V(G) = 3 + 2 = 5 Dimana:
E = jumlah edge pada diagram alir N = jumlah node pada diagram alir d. IndependentPath
Path 1 = 1 – 2 – 3 – 4 – 5 – 6 – 7 – 10 Path 2 = 1 – 2 – 3 – 4 –8 – 9 – 10
Path 3 = 1 – 2 – 3 – 4 – 8 – 9 – 8 – 9 – 10 Path 4 = 1 – 2 – 3 – 4 – 5 – 6 – 7 – 6 – 7 – 10 Path 5 = 1 – 2 – 3 – 10
e. GraphMatriks
1 2 3 4 5 6 7 8 9 10 n(E) – 1
1 1 1 – 1 = 0
2 1 1 – 1 = 0
3 1 1 2 – 1 = 1
4 1 1 2 – 1 = 1
5 1 1 – 1 = 0
6 1 1 – 1 = 0
7 1 1 2 – 1 = 1
8 1 1 – 1 = 0
9 1 1 2 – 1 = 1
10 1 1 – 1 = 0
sum (E) +1 4 + 1 = 5
Gambar 4. 15 Graph Matric Finite State Machine Hama f. Kesimpulan
Dari hasil pengujian finite state machine hama yang dilakukan, maka didapat kesimpulan bahwa seluruh node yang ada pada setiap path telah dikerjakan, serta tidak terjadi pengulangan.
3. Pengujian White BoxFinite State Machine Predator a. FlowChart
Mulai
Gambar 4. 16 Flow Chart Finite State Machine Predator b. FlowGraph
1
2
3 4
5 6
7
8
9
10
11
12
13
Gambar 4. 17 Flow Graph Finite State Machine Predator c. CyclomaticComplexity V(G)
Dari diagram alir di atas, dapat dihitung cyclomatic complexity, yakni Region = 6 yang di dapat dari perhitungan dibawah ini:
V(G) = E – N + 2 V(G) = 17 – 13 + 2 V(G) = 4 + 2 = 6 Dimana:
E = jumlah edge pada diagram alir N = jumlah node pada diagram alir d. IndependentPath
Path 1 = 1 – 2 – 3 – 5 – 13
Gambar 4. 18 Graph Matrics Finite State Machine Predator f. Kesimpulan
Dari hasil pengujian finite state machine predator yang dilakukan, maka didapat kesimpulan bahwa seluruh node yang ada pada setiap path telah dikerjakan, serta tidak terjadi pengulangan.
4.2.2 Pengujian Beta
usia antara 14 tahun sampai 18 tahun. Berdasarkan data hasil kuesioner tersebut, dapat dicari persentase masing-masing jawaban dengan menggunakan rumus.
P =f/N x 100%. P : Persentase f : Frekuensi data
N : Jumlah sampel yang di olah
Berikut adalah data-data yang didapat dari hasil kuesioner yang berkaitan dengan game save your ricefield dan tujuan penelitian.
1. Pertanyaan 1: Seberapa lama Anda menggunakan komputer dalam sehari? Tabel 4. 5 Hasil Kuesioner Frekuensi Waktu Penggunaan Komputer perhari
No Jawaban Responder Persentase
1 Kurang dari 2 jam/hari 19 46%
2 2 -5 jam/hari 14 34%
3 Lebih dari 5 jam/hari 7 17%
4 Tidak pernah 1 3%
Total Responder 41 100%
2. Pertanyaan 2: Seberapa lama Anda bermain game dalam seminggu? Tabel 4. 6 Hasil Kuesioner Frekuensi Waktu Bermain Game Perminggu
No Jawaban Responder Persentase
1 Lebih dari 10 jam 6 14%
2 4 – 10 jam 13 32%
3 Kurang dari 4 jam 22 54%
Total Responder 41 100%
Gambar 4. 20 Diagram Frekuensi Waktu Bermain Game Perminggu Berdasarkan hasil jawaban kuesioner yang digambarkan pada diagram di atas, diketahui bahwa sekitar 54% responder bermain game selama kurang dari 4 jam dalam satu minggu.
3. Pertanyaan 3: Apa alasan Anda bermain game?
Tabel 4. 7 Hasil Kuesioner Alasan Bermain Game
No Jawaban Responder Persentase
1 Hiburan 22 54%
2 Mengisi waktu luang 13 32%
3 Hobi 6 14%
Total Responder 41 100%
14%
32% 54%
Frekuensi Waktu Bermain Game
Gambar 4. 21 Diagram Alasan Bermain Game
Berdasarkan hasil jawaban kuesioner yang digambarkan pada diagram di atas, diketahui bahwa 54% responder bermain game untuk mencari hiburan dan 32% responder bermain game untuk mengisi waktu luang. Sedangkan yang menjadikan game sebagai hobi adalah sekitar 14%.
4. Pertanyaan 4: Apa yang membuat Anda tertarik dari sebuah game? (Jawaban boleh lebih dari satu)
Tabel 4. 8 Hasil Kuesioner Poin-poin yang Menarik pada Game
No Jawaban Responder
1 Karakter game 13
2 Alur cerita 9
3 Kualitas grafis 10
4 Gameplay yang menarik 27
54% 32%
14%
Alasan Bermain Game
Hiburan
Mengisi waktu luang