PENGEMBANGAN GAME CATUR JAWA BERBASIS MOBILE MENGGUNAKAN ALGORITMA MINIMAX TUGAS AKHIR Sebagai Persyaratan Guna Meraih Gelar Sarjana Strata 1 Teknik Informatika Universitas Muhammadiyah Malang Oleh : Allif Alfiyatur Rohmah 09560047 JURUSAN TEKNIK INFORMATIKA FAKULTAS TEKNIK UNIVERSITAS MUHAMMADIYAH MALANG 2014
LEMBAR PENGESAHAN PENGEMBANGAN GAME CATUR JAWA BERBASIS MOBILE MENGGUNAKAN ALGORITMA MINIMAX TUGAS AKHIR Sebagai Persyaratan Guna Meraih Gelar Sarjana Strata 1 Teknik Informatika Universitas Muhammadiyah Malang Disusun Oleh : ALLIF ALFIYATUR ROHMAH 09560047 Tugas akhir ini telah diuji dan dinyatakan lulus melalui sidang majelis penguji pada tanggal 10 Januari 2014 Penguji I Menyetujui, Penguji II Wahyu Andhyka Kusuma, M.Kom NIDN: 072.0068.701 Agus Eko Minarno, S.Kom NIDN: 072.9118.203 Mengetahui, Ketua Jurusan Teknik Informatika Eko Budi Cahyono, S.Kom, MT NIP: 108.9504.0330
KATA PENGANTAR Dengan memanjatkan puji syukur kehadirat Allah SWT yang telah memberikan limpahan rahmat dan hidayah-nya sehingga penulis dapat menyelesaikan skripsi yang berjudul : PENGEMBANGAN GAME CATUR JAWA BERBASIS MOBILE MENGGUNAKAN ALGORITMA MINIMAX. Adapun tujuan dari penulisan skripsi ini adalah sebagai salah satu syarat untuk memperoleh gelar kesarjanaan pada Jurusan Teknik Informatika di Universitas Muhammadiyah Malang. Penulis menyadari bahwa terselesaikannya karya tulis ini tidak terlepas dari bantuan berbagai pihak. Oleh karena itu, dalam proses penulisan dan penyusunan skripsi ini, penulis meminta maaf sebesar-besarnya apabila terdapat kesalahan dalam proses penyusunan skripsi ini. Penulis juga menyadari bahwa begitu banyak bantuan, dukungan dan kerjasama yang luar biasa dari berbagai pihak. Oleh karena itu peneliti mengharapkan saran yang membangun agar tulisan ini bermanfaat bagi perkembangan ilmu pengetahuan kedepan. Malang, 1 Januari 2014 Penulis
DAFTAR ISI HALAMAN JUDUL... i LEMBAR PERSETUJUAN... ii LEMBAR PENGESAHAN... iii LEMBAR PERNYATAAN... iv ABSTRAK... v ABSTRACT... vi LEMBAR PERSEMBAHAN... vii KATA PENGANTAR... viii DAFTAR ISI... ix DAFTAR GAMBAR... xii DAFTAR TABEL... xiv BAB I PENDAHULUAN... 1 1.1 Latar Belakang... 1 1.2 Rumusan Masalah... 2 1.3 Tujuan... 2 1.4 Batasan Masalah... 2 1.5 Metodologi Pengembangan Perangkat Lunak... 3 1.5.1 Studi Literatur... 3 1.5.2 Analisa Sistem... 3 1.5.3 Perancangan Sistem... 3 1.5.4 Implementasi... 3 1.5.5 Pengujian... 3 1.5.6 Penulisan Dokumentasi Tugas Akhir... 3 1.6 Sistematika Penulisan... 4 BAB II LANDASAN TEORI... 5 2.1 Catur Jawa... 5 2.2 Game... 6 2.2.1 Teori Permainan... 7 2.2.2 Mobile Game... 7 2.2.2.1 Sejarah Singkat Mobile Game... 8
2.3 Kecerdasan Buatan... 9 2.3.1 Tujuan Kecerdasan Buatan... 9 2.3.2 Implementasi Kecerdasan Buatan... 9 2.3.3 Algoritma Minimax... 10 2.3.3.1 Cara Kerja Minimax... 11 2.4 Android... 13 2.4.1 Fitur Android... 13 2.4.2 Versi Android... 14 2.4.3 Keunggulan Android... 14 2.5 Penelitian Terkait... 15 BAB III ANALISA DAN PERANCANGAN SISTEM... 16 3.1 Analisa Sistem... 16 3.1.1 Kebutuhan Fungsional... 16 3.1.2 Kebutuhan Non-Fungsional... 17 3.1.3 Skenario Game... 17 3.1.4 Use Case Diagram... 18 3.2 Perancangan Sistem... 19 3.2.1 Flowchart... 19 3.2.1.1 Flowchart Keseluruhan Game... 19 3.2.1.2 Flowchart Algoritma Minimax... 20 3.2.2 Activity Diagram... 22 3.2.3 Sequence Diagram... 24 3.2.4 Class Diagram... 26 3.3 Desain Interface... 26 3.3.1 Rancangan Tampilan Menu Utama... 26 3.3.2 Rancangan Tampilan Bermain Single Player... 27 3.3.3 Rancangan Tampilan Bermain Multiplayer... 27 3.3.5 Rancangan Tampilan About... 28 BAB IV IMPLEMENTASI DAN PENGUJIAN... 29 4.1 Implementasi... 29 4.1.1 Implementasi Lingkungan Pengembangan... 29 4.1.2 Implementasi Aplikasi... 30
4.1.2.1 Implementasi Menu Utama... 30 4.1.2.2 Implementasi Menu Single Player... 32 4.1.2.3 Implementasi Menu Multiplayer... 35 4.1.2.4 Implementasi Menu About... 39 4.1.2.5 Implementasi Algoritma Minimax... 40 4.2 Pengujian... 42 4.2.1 Pengujian Black Box... 43 4.2.1.1 Pengujian Black Box Menu Utama... 43 4.2.1.1 Pengujian Menu Single Player... 47 4.2.1.1 Pengujian Menu Multiplayer... 50 4.2.1.1 Pengujian Menu About... 53 BAB V KESIMPULAN DAN SARAN... 55 5.1 Kesimpulan... 55 5.2 Saran... 55 DAFTAR PUSTAKA... 56
DAFTAR GAMBAR Gambar 2.1 : Papan dam-daman... 6 Gambar 2.2 : Cara kerja algoritma Minimax... 11 Gambar 3.1 : Use case diagram keseluruhan game Catur Jawa... 18 Gambar 3.2 : Flowchart game Catur Jawa... 20 Gambar 3.3 : Flowchart algoritma minimax... 21 Gambar 3.4 : Activity diagram bermain single player... 22 Gambar 3.5 : Activity diagram bermain multiplayer... 23 Gambar 3.6 : Activity diagram melihat about... 23 Gambar 3.7 : Sequence diagram bermain single player... 24 Gambar 3.8 : Sequence diagram bermain multiplayer... 25 Gambar 3.9 : Sequence diagram melihat about... 25 Gambar 3.10 : Class diagram keseluruhan game Catur Jawa... 26 Gambar 3.11 : Rancangan tampilan menu utama... 27 Gambar 3.12 : Rancangan tampilan bermain single player... 27 Gambar 3.13 : Rancangan tampilan bermain multiplayer... 28 Gambar 3.14 : Rancangan tampilan about... 28 Gambar 4.1 : Potongan script menu utama... 31 Gambar 4.2 : Tampilan menu utama... 32 Gambar 4.3 : Potongan script menu single player... 35 Gambar 4.4 : Tampilan menu single player... 35 Gambar 4.5 : Potongan script menu multiplayer... 38 Gambar 4.6 : Tampilan menu multiplayer... 39 Gambar 4.7 : Potongan script menu about... 40 Gambar 4.8 : Tampilan menu about... 40 Gambar 4.9 : Cara kerja Catur Jawa 1... 41 Gambar 4.10 : Cara kerja Catur Jawa 2... 41 Gambar 4.11 : Tampilan sebelum dan sesudah algoritma minimax berjalan... 42 Gambar 4.12 : Tampilan awal pengujian menu single player... 43 Gambar 4.13 : Tampilan menu pilihan single player... 44 Gambar 4.14 : Tampilan awal pengujian menu multiplayer... 45
Gambar 4.15 : Tampilan menu pilihan multiplayer... 45 Gambar 4.16 : Tampilan awal pengujian menu about... 46 Gambar 4.17 : Tampilan menu pilihan about... 46 Gambar 4.18 : Tampilan isi menu single player... 48 Gambar 4.19 : Tampilan ketika buah dam dijalankan... 49 Gambar 4.20 : Tampilan isi ketika algoritma minimax berjalan... 49 Gambar 4.21 : Tampilan isi menu multiplayer... 52 Gambar 4.22 : Tampilan ketika diklik server... 52 Gambar 4.23 : Tampilan ketika diklik client... 53 Gambar 4.24 : Tampilan isi menu about... 54
DAFTAR TABEL Tabel 2.1 : Versi-versi Android... 14 Tabel 3.1 : Kebutuhan fungsional game Catur Jawa... 16 Tabel 3.2 : Kebutuhan non-fungsional game Catur Jawa... 17 Tabel 3.3 : Penjelasan use case... 19 Tabel 4.1 : Spesifikasi hardware dan software... 29 Tabel 4.2 : Pengujian menu utama... 47 Tabel 4.3 : Pengujian menu single player... 47 Tabel 4.4 : Pengujian menu multiplayer... 50 Tabel 4.5 : Pengujian menu about... 53
DAFTAR PUSTAKA Anonim1. 2011. Cara Bermain Dam-daman. http://www.urangkampoeng.com/2011/12/bermain-dam-daman.html (Diakses tanggal 25 September 2013) Coppin, Ben. 2004. Artificial Intelligence Illuminated. http://books.google.co.id/books?id=lcolqodw28ec&printsec=frontcove r&hl=id&source=gbs_ge_summary_r&cad=0#v=onepage&q&f=false (Diakses tanggal 24 September 2013) Enggar. 2012. Cara Bermain Dham-dhaman. http://segitiga.net/article/behind-thegame/dham-dhaman (Diakses tanggal 24 September 2013) Ertel, Wolfgang. 2011. Introduction to Artificial Intelligence. http://books.google.co.id/books?id=viqiijgwqt0c&printsec=frontcover& dq=ertel,+2011&hl=id&sa=x&ei=cnhbuubufyw3rae204h4dw&ved= 0CCwQ6AEwAA#v=onepage&q=Ertel%2C%202011&f=false (Diakses tanggal 24 September 2013) Henry Winston, A., & Karen A.P. 1984. The AI Business: Commercial Uses of Artficial Intelligence. http://www.amazon.com/the-business-commercial- Artificial-Intelligence/dp/B009F7JB04 (Diakses tanggal 24 September 2013) Herbert A Simon. The Science of Artificial. http://books.google.co.id/books?id=k5sr0nfw7psc&printsec=frontcover &hl=id&source=gbs_ge_summary_r&cad=0#v=onepage&q&f=false (Diakses tanggal 24 September 2013) Lam, Jason. 2003. J2ME & Gaming. http://www.jasonlam604.com/books.php (Diakses tanggal 24 September 2013) Leyton-Brown, K., & Shoham, Y. 2008. Essentials of Game Theory: A Concise Multidisciplinary Introduction. http://www.slideshare.net/hodarasmey/game-theory-kevin-leytonbrownyoav-shoham-essentials-of-game-theory-2008 (Diakses tanggal 24 September 2013) Millington, I., & Funge, J. 2009. Artificial Intelligence For Games 2 nd ed. http://lecturer.ukdw.ac.id/~mahas/dossier/gameng_aifg.pdf (Diakses tanggal 24 September 2013) Nugroho, Andi Taru. 2012. Cara Mudah Membuat Game di Android. Yogyakarta: Andi Publisher. Pelkonen, Tommi. 2004. Mobile Games:E-Content Report 3. http://www.acten.net/uploads/images/382/ir3_010304-2.pdf (Diakses tanggal 24 September 2013) Rich, E., & Knight, K. 1991. Artificial Intelligence. Singapore: McGraw-Hill, Inc. Salen, K., & Zimmerman, E. 2003. Rules of Play: Game Design Fundamentals. Cambridge, MA: The MIT Press. Tyas. 2013. Kecerdasan Buatan. http://informatika.web.id/category/kecerdasanbuatan (Diakses tanggal 24 September 2013) Tyugu, Enn. 2007. Algorithms and Architectures of Artificial Intelligence. http://books.google.co.id/books?id=o2s83nuchn8c&printsec=frontcover &dq=algorithms+and+architectures+of+artificial+intelligence&hl=id&s
a=x&ei=mhrbureymmijrqf934gocq&ved=0ccwq6aewaa#v=onep age&q=algorithms%20and%20architectures%20of%20artificial%20inte lligence&f=false (Diakses tanggal 24 September 2013) Umroh, Dian FS. 2012. Game Catur Jawa Menggunakan Algoritma Minimax. Malang: Teknik Informatika UMM Wahana Komputer. 2012. Membuat Aplikasi Android untuk Tablet dan Handphone. Jakarta: PT. Elex Media Komputindo Kelompok Gramedia.