RANCANG BANGUN APLIKASI GAME KOCOK DADU PADA PLATFORM ANDROID DENGAN METODE LINIER CONGRUENTIAL GENERATOR (LCG) TUGAS AKHIR Diajukan guna memenuhi sebagian persyaratan dalam rangka menyelesaikan Pendidikan Sarjana Strata Satu (S1) Program Studi Teknologi Informasi DEWA GEDE HENDRA ADINATA NIM. 1104505081 JURUSAN TEKNOLOGI INFORMASI FAKULTAS TEKNIK UNIVERSITAS UDAYANA 2015
RANCANG BANGUN APLIKASI GAME KOCOK DADU PADA PLATFORM ANDROID DENGAN METODE LINIER CONGRUENTIAL GENERATOR (LCG) TUGAS AKHIR Diajukan guna memenuhi sebagian persyaratan dalam rangka menyelesaikan Pendidikan Sarjana Strata Satu (S1) Program Studi Teknologi Informasi DEWA GEDE HENDRA ADINATA NIM. 1104505081 JURUSAN TEKNOLOGI INFORMASI FAKULTAS TEKNIK UNIVERSITAS UDAYANA 2015
PERNYATAAN Dengan ini saya menyatakan bahwa dalam Tugas Akhir ini tidak terdapat karya yang pernah diajukan untuk memperoleh gelar kesarjanaan di perguruan tinggi lain, dan sepanjang pengetahuan tidak terdapat karya atau pendapat yang pernah ditulis atau diterbitkan orang lain, kecuali yang secara tertulis diacu dalam naskah ini dan disebutkan pada daftar pustaka. Denpasar, Juli 2015 Dewa Gede Hendra Adinata iii
iv
v
KATA PENGANTAR Puji dan syukur penulis panjatkan kehadapan Tuhan Yang Maha Esa, karena atas Berkat RahmatNya, akhirnya penulis dapat menyelesaikan Tugas Akhir yang berjudul Rancang Bangun Aplikasi Game Kocok Dadu pada Platform Android dengan Metode Linier Congruental Generator (LCG). Selama pelaksanaan tugas akhir ini penulis mendapat banyak masukan dan bimbingan dari berbagai pihak. Untuk itu, penulis ingin mengucapkan rasa terima kasih kepada: 1. Bapak Prof. Ir. Ngakan Putu Gede Suardana, MT.,Ph.D, selaku Dekan Fakultas Teknik universitas Udayana. 2. Bapak Dr. Eng. I Putu Agung Bayupati, ST., MT, selaku Ketua Jurusan Teknologi Informasi Universitas Udayana. 3. Bapak Prof. Dr. I Ketut Gede Darma Putra, S.Kom., M.T., selaku dosen pembimbing I dan Bapak A.A Kompiang Oka Sudana, S.Kom, MT. selaku dosen pembimbing II yang telah banyak memberikan masukan dan bimbingan selama penyusunan tugas akhir ini. 4. Bapak Putu Wira Buana, S.Kom., M.T., selaku dosen pembimbing akademik, yang telah memberikan bimbingan selama menempuh pendidikan di Jurusan Teknologi Informasi Fakultas Teknik Universitas Udayana. 5. Orang tua dan saudara yang telah memberikan motivasi dalam menyelesaikan Tugas Akhir ini. 6. Yoga Nugraha P., teman-teman dan rekan-rekan yang tidak bisa disebutkan satu per satu, yang sudah banyak membantu didalam perancangan game Tugas Akhir ini. Penulis menyadari bahwa tugas akhir ini masih jauh dari sempurna. Akhir kata penulis memohon maaf jika ada kesalahan dalam penulisan tugas akhir ini. Denpasar, 12 Juni 2015 vi (Dewa Gede Hendra Adinata)
DAFTAR ISI HALAMAN SAMPUL... i HALAMAN JUDUL... ii PERNYATAAN... iii LEMBAR PENGESAHAN TUGAS AKHIR... iv BERITA ACARA TUGAS AKHIR... v KATA PENGANTAR... vi ABSTRAK... vii ABSTRACT... viii DAFTAR ISI... ix DAFTAR GAMBAR... xii DAFTAR TABEL... xiv DAFTAR ISTILAH... xv BAB I PENDAHULUAN... 1 1.1 Latar Belakang... 1 1.2 Rumusan Masalah... 2 1.3 Tujuan... 2 1.4 Manfaat... 3 1.5 Batasan Masalah... 3 1.6 Sistematika Penulisan... 3 BAB II TINJAUAN PUSTAKA... 5 2.1 State of the Art... 5 2.2 Kecerdasan Buatan atau Artificial Intelligence (AI)... 7 2.3 Linier Congruent Generator (LCG)... 7 2.4 Teori Peluang... 10 2.4.1 Teori Klasik... 10 2.4.2 Pengertian Berdasarkan Frekuensi Relatif... 11 2.4.3 Dasar-dasar Peluang... 11 2.4.4 Peluang sebuah Kejadian pada Pelemparan Satu Buah Dadu... 12 2.4.5 Peluang Sebuah Kejadian pada Pelemparan Dua Buah Dadu Sekaligus... 13 2.5 Game... 14 2.6 Game Engine... 15 2.6.1 Tipe-tipe Game Engine... 15 2.6.1.1 Roll Your-Game Engine... 16 2.6.1.2 Mostly Ready Game Engine... 16 2.6.1.3 Point and Click Engine... 16 2.6.2 Elemen pada Game Engine... 16 2.6.2.1 Tools / Data... 16 2.6.2.2 Sistem... 17 2.6.2.3 Console... 17 2.6.2.4 Support... 17 2.6.2.5 Renderer / Engine Core... 17 2.6.2.6 Game Interface... 17 ix
2.6.2.7 The Game... 18 2.7 Android... 18 2.7.1 Sejarah Perkembangan Android... 19 2.7.2 Arsitektur Android... 21 2.7.3 Keunggulan Android... 23 2.7.4 Android SDK... 23 2.8 Corona SDK... 23 2.9 Lua... 25 2.10 Notepad++... 25 2.11 SQLite... 26 2.12 Animasi... 27 2.13 Adobe Illuslator... 27 2.14 Corel Draw... 28 2.15 Adobe Flash... 31 2.16 Spriteloq... 31 2.17 Permainan Kocok Dadu... 32 2.17.1 Blandang/Bandar... 33 2.17.2 Ukup... 33 2.17.3 Nyapih... 33 2.17.4 Tembus... 34 2.18 Sejarah Permainan Dadu... 34 BAB III PERANCANGAN SISTEM... 36 3.1 Tempat dan Waktu Penelitian... 36 3.2 Alur Penelitian... 36 3.3 Data... 37 3.3.1 Sumber Data... 37 3.3.2 Metode Pengumpulan Data... 38 3.4 Gambaran Umum Sistem... 38 3.5 Skenario Permainan... 40 3.6 Perancangan Game... 41 3.6.1 Konfigurasi Software Perancangan... 41 3.6.2 Analisis Kebutuhan Software... 42 3.6.3 Perancangan Design... 42 3.6.4 Pembuatan Kode (Coding)... 43 3.6.1 Pengujian (Testing)... 43 3.6.6 Pembuatan Gambar... 43 3.7 Alur Permainan... 47 3.7.1 Flowchart Game Kocok Dadu... 47 3.7.2 Diagram Use Case... 49 3.7.3 Activity Diagram Play Game... 50 3.7.4 Activity Diagram Credit... 53 3.7.5 Activity Diagram Tutorial Permainan... 54 3.7.6 Activity Diagram Exit... 55 3.8 Jadwal Pelaksanaan... 56 BAB IV PEMBAHASAN DAN ANALISIS SISTEM... 57 4.2 Konfigurasi Minimal Hardware & Software Device... 57 x
4.2 Konfigurasi Hardware & Software PC... 57 4.3 Hasil Perancangan... 58 4.3.1 Splash Screen... 58 4.3.2 Scene Main Menu... 59 4.3.3 Scene Utama... 61 4.3.3.1 Rule Pengecekan Kemenangan dengan Tipe Pemasangan Biasa... 62 4.3.3.2 Rule Pengecekan dengan Nilai Dadu Sama... 63 4.3.3.1 Rule Pemasangan Nyapih... 66 4.3.3.2 Rule Pengecekan Pemasangan Tembus... 66 4.3.4 Scene Menu Credit... 73 4.3.5 Scene Tutorial... 74 4.3.6 Scene Dialog Exit... 75 4.4 Pengujian Metode Linier Congruential Generator (LCG) pada Proses Pengacakan Dadu... 77 4.5 Pengujian Kemenang Player dan Kemunculan Angka Dadu yang sama dengan Metode Linier Congruential Generator (LCG)... 81 4.6 Pengujian Hasil Pengacakan Metode Linier Congruential Generator (LCG) pada Game dengan Perhitungan Manual... 82 4.7 Pengujian Kemenangan Player dengan Player PC... 85 4.8 Algoritma Player PC pada Game... 87 4.9 Uji Coba pada Device... 88 4.10 Uji Coba pada Samsung Galaxy S4 GT-I9500... 89 4.11 Penelitian Studi Kasus... 93 4.12 Analisis Sistem... 94 4.12.1 Metode Pengumpulan Data... 94 4.12.2 Kreteria Variable... 94 4.12.2.1 Aspek Grafis Game... 94 4.12.2.1 Aspek Entertainment... 94 4.12.3 Penetapan Skor... 95 4.13 Perhitungan dan Penyajian Data... 95 4.13.1 Aspek Grafis Game... 95 4.13.2 Aspek Entertainment... 97 4.14 Kelebihan dan Kekurangan Sistem... 99 4.14.1 Kelebihan Sistem... 99 4.14.2 Kekurangan Sistem.. 99 BAB V PENUTUP... 100 5.1 Simpulan... 100 5.2 Saran... 100 DAFTAR PUSTAKA LAMPIRAN xi
DAFTAR GAMBAR Gambar 2.1 Logo Android... 18 Gambar 2.2 Logo Corona SDK... 24 Gambar 2.3 Logo Lua... 25 Gambar 2.4 Logo Notepad++... 26 Gambar 2.5 Logo Addobe Illuslator... 28 Gambar 2.6 Logo Corel Draw... 29 Gambar 2.7 Logo Adobe Flash... 31 Gambar 2.8 Logo Spriteloq... 31 Gambar 2.9 Permainan Kocok Dadu... 32 Gambar 3.1 Alur Penelitian... 37 Gambar 3.2 Flowchart Skenario Permainan... 40 Gambar 3.3 Blandang/Bandar... 43 Gambar 3.4 Background... 44 Gambar 3.5 Koin... 44 Gambar 3.6 Dadu... 45 Gambar 3.7 Tempat Taruhan... 45 Gambar 3.8 Alur Gambaran Umum Sistem... 49 Gambar 3.9 Diagram Use Case game kocok dadu.... 50 Gambar 3.10 Activity Diagram Menu Play.... 51 Gambar 3.11 Activity Diagram Credit... 53 Gambar 3.12 Activity Diagram Tutorial Permainan... 54 Gambar 3.13 Activity Diagram Keluar... 55 Gambar 4.1 Tampilan Splash Screen.... 58 Gambar 4.2 Tampilan Scene Main Menu... 59 Gambar 4.3 Tampilan Scene Pilih Karakter... 60 Gambar 4.4 Tampilan Loading Scene... 60 Gambar 4.5 Tampilan Scene Utama.... 61 Gambar 4.6 Player Memasang Taruh.... 62 Gambar 4.7 Script Pengecekan Salah Satu Dadu Sama dengan Taruhan Player.... 63 Gambar 4.8 Script Pengecekan Dua Dadu Sama.... 63 Gambar 4.9 Script Pengecekan Tiga Dadu Sama... 64 Gambar 4.10 Model Pemasangan Mengarah ke 2 Nomor Sekaligus.... 64 Gambar 4.11 Tampilan yang Muncul pada saat Pemasangan ke 2 Gambar Sekaligus... 65 Gambar 4.12 Potongan Script Pengecekan Pemasangan Nyapih... 66 Gambar 4.13 Potongan Script Pengecekan Pemasangan Tembus... 67 Gambar 4.14 Pemasangan Secara Diagonal... 67 Gambar 4.15 Sistem Mengacak Nomor dengan Menampilkan Animasi Pengocokan Dadu... 68 Gambar 4.16 Sistem Menampilkan Hasil Pengacakan Nomor... 69 Gambar 4.17 Tampilan Gambar yang Ukup pada setiap Putaran... 69 xii
Gambar 4.18 Tampilan Hasil Pengacakan Dengan Metode LCG pada Simulator Corona SDK... 70 Gambar 4.19 Tampilan Setelah Pengecekan Nomor yang Ukup... 71 Gambar 4.20 Tampilan Pause... 71 Gambar 4.21 Tampilan Ketika Player menekan Button Home... 72 Gambar 4.22 Tampilan Ketika Player Kehabisan Modal... 73 Gambar 4.23 Tampilan Scene Credit... 74 Gambar 4.24 Tampilan Scene Tutorial... 75 Gambar 4.25 Tutorial... 75 Gambar 4.26 Tampilan Dialog Exit... 76 Gambar 4.27 Tampilan Hasil Pengacakan dengan Metode LCG... 78 Gambar 4.28 Gambar Acak yang diperoleh dengan Metode LCG... 78 Gambar 4.29 Script Metode Linear Congruential Generator (LCG) pada Game... 79 Gambar 4.31 Tampilan yang Muncul pada saat Player PC Memasang Taruhan diantara 2 Gambar Sekaligus... 88 Gambar 4.32 Tampilan Uji Coba Splash Screen pada Device... 89 Gambar 4.33 Tampilan Uji Coba Menu Utama pada Device... 89 Gambar 4.34 Tampilan Uji Coba Pilihan Karakter pada Device... 90 Gambar 4.35 Tampilan Uji Coba Loading Scene pada Device... 90 Gambar 4.36 Tampilan Uji Coba Scene Utama Utama pada Device... 90 Gambar 4.37 Tampilan Uji Coba Animasi Pengocokan Dadu pada Device... 91 Gambar 4.38 Tampilan Uji Coba Hasil Mata Dadu Setelah Proses Pengacakan pada Device... 91 Gambar 4.39 Tampilan Uji Coba Ketika Proses Pengecekan Selesai pada Device... 91 Gambar 4.40 Tampilan Uji Coba Tampilan Uji Coba Button Pause pada Device... 92 Gambar 4.41 Tampilan Uji Coba Scene Credit pada Device... 92 Gambar 4.42 Tampilan Uji Coba Scene Tutorial pada Device... 92 Gambar 4.43 Tampilan Uji Coba Tutorial pada Device... 93 Gambar 4.44 Diagram Aspek Grafis... 97 Gambar 4.45 Diagram Aspek Entertainment... 98 37 xiii
DAFTAR TABEL Tabel 2.1 Peluang munculnya setiap mata dadu pada pelemparan satu buah dadu.... 12 Tabel 2.2 Peluang munculnya setiap mata dadu pada pelemparan 2 buah dadu.... 13 Tabel 2.3 Hasil Pengelompokan dari Peluang yang dihasilkan pada tabel 2.2 berdasarkan nilai genap dan ganjil yang muncul setiap angka dari enam sisi dadu... 14 Tabel 3.1 Button dalam Game.... 46 Tabel 3.2 Timeline jadwal kegiatan perancangan game.... 56 Tabel 4.1 Perbandingan Hasil Implementasi Metode LCG pada Game dengan Aplikasi Sederhana dari Metode LCG... 80 Tabel 4.2 Hasil Random Angka dengan Menggunakan Metode LCG... 81 Tabel 4.3 Tabel Kemenangan dan Kekalahan Player... 81 Tabel 4.4 Hasil Pengacakan Angka Dadu pada Game... 82 Tabel 4.5 Hasil dari Perhitungan Manual dengan Metode LCG... 84 Tabel 4.6 Hasil Kemenangan dan Kekalahan dari Player Asli dan Player PC 85 Tabel 4.7 Rincian Kegiatan dari Player Asli dan Player PC Selama 10 Putaran... 86 Tabel 4.8 Tabel 4.8 Penilaian Responden Terhadap Aspek Grafis Game... 95 Tabel 4.9 Tabel 4.8 Penilaian Responden Terhadap Aspek Entertainment Game... 97 xiv
DAFTAR ISTILAH Blandang/Bandar.... 33 Nyapih.... 33 Tembus.... 33 Ukup.... 34 xv
LAMPIRAN
Dokumentasi Uji Coba Game pada Responden Kuisioner