RANCANG BANGUN GAME TICTACTOE SECARA ONLINE BERBASIS JAVA 2 MICRO EDITION (J2ME) LAPORAN TUGAS AKHIR Disusun sebagai salah satu syarat untuk menyelesaikan Program Pendidikan Diploma 3 Oleh ANGGA PRASATRIA NIM. 1205113301 Pembimbing Dr. Benny B Nasution, Dipl.Ing., M.Eng. NIP. 19680809 199702 1 001 PROGRAM STUDI TEKNIK KOMPUTER JURUSAN TEKNIK KOMPUTER DAN INFORMATIKA POLITEKNIK NEGERI MEDAN 2014
ABSTRAK Pada saat ini perkembangan mobile phone dan teknologi java yang cukup pesat. Aplikasi Java telah banyak digunakan pada perangkat mobile phone sebagai penunjang aktifitas manusia sehari-hari. Sebagai contoh aplikasi yang dapat dikembangkan lebih lanjut dengan memanfaatkan teknologi Java 2 Micro Edition (J2ME) ialah game yang dapat dimainkan secara online di perangkat mobile phone. Tujuannya yaitu untuk mengoptimalkan fungsi perangkat mobile, selain sebagai sarana komunikasi juga dapat berfungsi sebagai alat media hiburan dalam memainkan game online. Pada tugas akhir ini proses pembutan game tictactoe ini menggunakan teknologi wireless messaging API yang dimiliki oleh J2ME. WMA ini berguna untuk bisa menghubungkan antara emulator pertama dengan emulator kedua melalui pengiriman SMS. Game tictactoe secara online memungkinkan pengguna mobile phone untuk memainkannya secara bersamaan dilokasi yang berbeda. Aplikasi game tictactoe online ini dibuat dengan teknologi Java 2 Micro Edition (J2ME). Berdasarkan hasil pengujian, sistem game tictactoe dapat berjalan dengan baik pada emulator oracle Java Micro Edition 3.4. Kata Kunci: Game tictactoe, Game Online, WMA, J2ME iv
KATA PENGANTAR Puji dan syukur penulis panjatkan kepada Tuhan Yang Maha Esa atas segala berkat, kasih dan karunia-nya sehingga penulis dapat menyelesaikan Tugas Akhir ini tepat pada waktunya. Dalam laporan Tugas Akhir ini, penulis merancang dan membuat game tictactoe secara online berbasis Java 2 Micro Edition. Laporan tugas akhir ini merupakan mata kuliah yang wajib ditempuh guna memenuhi syarat kelulusan Kurikulum Tingkat Diploma 3 teknik komputer Jurusan Teknik Komputer dan Informatika Politeknik Negeri Medan. Berbagai pihak telah ikut berperan membantu penulis dalam menyelesaikan tugas akhir ini dengan memberikan arahan dan bimbingan serta motivasi. Untuk itu pada kesempatan ini penulis mengucapkan terima kasih yang sebesar-besarnya kepada: 1. Allah SWT yang selalu memberikan kekuatan dan kesehatan untuk dapat menyelesaikan laporan tugas akhir ini. 2. Bapak M. Syahruddin, S.T., M.T. Selaku Direktur Politeknik Negeri Medan. 3. Bapak Ferry Fachrizal, S.T., M.Kom. Selaku Ketua Jurusan Teknik Komputer dan Informatika Politeknik Negeri Medan. 4. Bapak Zakaria Sembiring, S.T., Msc. Selaku Ketua Program Studi Teknik Komputer Jurusan Teknik Komputer dan Informatika Politeknik Negeri Medan. v
5. Dr. Benny B Nasution, Dipl. Ing., M.eng. Selaku dosen pembimbing tugas akhir yang telah banyak memberikan pengarahan bimbingan, dukungan dan saran. 6. Drs. Ansharuddin, S.S.T. Selaku Wali Kelas CE-6A. 7. Moderator, Bapak Zakaria Sembiring, S.T., Msc; Penguji I, Ir. Morlan Pardede, M.T.; Penguji II, Bapak Kadri Yusuf, S.T., M. Kom atas masukan dan saran yang diberikan melalui revisi Laporan Tugas Akhir. 8. Ibu Eviliana Sembiring selaku Administrasi Program Studi Teknik Komputer Politeknik Negeri Medan, yang telah banyak membantu penulis untuk keperluan administrasi Laporan Tugas Akhir ini. 9. Ibunda tercinta (Trisna Ningsih) dan keluarga besar yang menjadi sumber inspirasi bagi penulis yang selama hidupnya telah mendukung dan memberi limpahan kasih sayangnya didalam menyelesaikan Laporan Tugas Akhir ini. 10. Teman-teman dikelas CE-6A 2011. Khususnya Reza selaku teman seperjuangan satu bimbingan TA. Teman-teman seperjuangan lainnya: Roybar, Bintang, Fahmi, Riky, Angga M, Jasa, Kornelius, Junjung, Bento, Ervin, Try, Tanto, Yosly, Aika, Dyan, Fika, Maya, Desi, Tren, dan Lydia. 11. Buat CE-12 dan CE-13 terimakasih atas semangat dan dukungannya. Terutama kepada panitia sidang yang sudah mempersiapkan tempat sidang kami dengan bagus, terimakasih untuk kerja keras kalian. 12. Kepada mas heri, gilang, dan laila selaku sahabat-sahabat sekaligus saudaraku yang selalu menemani disaat kesulitan dalam mengerjakan TA. 13. Semua pihak yang telah membantu dalam penyelesaian tugas akhir ini. vi
Usaha yang maksimal telah dilakukan demi selesainya penulisan tugas akhir ini. Baik dengan mengimplementasikan pengetahuan yang didapat dari perkuliahan maupun teori-teori penunjang lain yang didapat dari luar perkuliahan. Diharapkan dengan menerapkan ilmu yang didapat dari perkuliahan dan menambahnya dengan ilmu yang didapat dari luar perkuliahan dapat membuka mata agar tidak melihat dari satu sudut pandang saja. Penulis menyadari masih banyak kekurangan dalam penulisan tugas akhir ini. Penulis mengharapkan masukan, saran dan kritik yang bersifat membangun demi penyempurnaan. Semoga laporan Tugas Akhir ini bermanfaat bagi pembaca. Medan, 20 Agustus 2014 Hormat Penulis, ANGGA PRASATRIA NIM. 1205113301 vii
DAFTAR ISI Halaman LEMBAR PERSETUJUAN... ii LEMBAR PENGESAHAN... iii ABSTRAK... iv KATA PENGANTAR... v DAFTAR ISI... xi DAFTAR GAMBAR... xii DAFTAR TABEL... xiii BAB 1 PENDAHULUAN... 1 1.1. Latar Belakang...1 1.2. Rumusan Masalah...3 1.3. Batasan Masalah...3 1.4. Tujuan Tugas Akhir...4 1.5. Manfaat...4 1.6. Metode Tugas Akhir...4 1.6.1. Melakukan Observasi dan Studi Literatur...4 1.6.2. Melakukan Perancangan Sistem...4 1.6.3. Pembuatan Sistem...5 1.6.4. Uji Coba dan Evaluasi...5 xi
1.6.5. Penyusunan Laporan Tugas Akhir...5 1.7. Sistematika Penulisan...5 BAB 2 LANDASAN TEORI... 7 2.1. Teknologi Java...7 2.2. Java 2 Micro Edition (J2ME)... 8 2.2.2. Profil...14 2.2.3. Jenis-Jenis Aplikasi J2ME...15 2.2.4. MIDlet...15 2.2.5. Daur Hidup MIDlet...17 2.2.6. Komponen-komponen J2ME...20 2.2.7. Perangkat MIDlet dan Emulator Ponsel Java...23 2.3. Wireless Messaging API (WMA)...23 2.4. Game...25 2.4.1. Sejarah Game...25 2.4.2. Era Sebelum Munculnya Game...26 2.4.3. Era Mulainya Game...26 2.4.4. Masa Keemasan (1978-1981)...27 2.4.5. Jenis-Jenis Game...28 2.4.6. Game Yang Bermanfaat...29 2.5. UML...34 xi
BAB 3 PERANCANGAN DAN PEMBUATAN... 37 3.1. Tujuan Perancangan Game...37 3.2. Cara Kerja Sistem...37 3.3. Perancangan Game...38 3.3.1. Perancangan Struktur Navigasi...38 3.3.2. Use Case Diagram Aplikasi...39 3.3.3. Use Case Diagram User...42 3.3.4. Activity Diagram Game...43 3.3.5. Activity Diagram Sistem...44 3.3.6. Class Diagram...45 3.4. Perancangan Fungsi...55 3.5. Perancangan Antar Muka (Interface)...56 xi
3.6. Pembuatan Sistem...59 3.6.1. Persiapan...60 3.6.2. Penulisan Kode Program...60 BAB 4 IMPLEMENTASI DAN PEMBAHASAN... 61 4.1. Kebutuhan Hardware dan Software...61 4.2. Implementasi...62 4.2.1. Implementasi Antarmuka...62 4.3. Pengujian...66 4.3.1. Lingkungan Pengujian...67 BAB 5 PENUTUP... 68 5.1. Simpulan...68 5.2. Saran...68 DAFTAR PUSTAKA... 69 xi
DAFTAR GAMBAR Halaman Gambar 2.1. Java Platform... 9 Gambar 2.2. Daur Hidup MIDlet... 18 Gambar 2.3. Game Scrabble... 30 Gambar 2.4. Game Catur... 31 Gambar 2.5. Game Lego... 32 Gambar 2.6. Rubiks... 32 Gambar 2.7. Game Sudoku... 33 Gambar 3.1. Struktur Navigasi Game... 38 Gambar 3.2. Use Case Diagram Game... 40 Gambar 3.3. Use Case Diagaram User... 42 Gambar 3.4. Activity Diagram Game... 43 Gambar 3.5. Activity Diagram Sistem... 44 Gambar 3.6. Class Diagram... 45 Gambar 3.6. Rancangan Tampilan Menu... 57 Gambar 3.7. Rancangan Tampilan Invite... 58 Gambar 3.8. Rancangan Tampilan Menu Help... 59 Gambar 3.9. Rancangan Tampilan About Page... 59 Gambar 4.1. Data Registrasi... 62 Gambar 4.2. Menu Utama... 63 Gambar 4.3. Tampilan Menu Invite... 64 Gambar 4.4. Tampilan Menu Help... 64 Gambar 4.5. Tampilan Halaman Menu Setting... 65 Gambar 4.6. Tampilan Halaman Menu About Page... 66 Gambar 4.7. Tampilan Setelah Keluar Dari Aplikasi... 66 xii
DAFTAR TABEL Halaman Tabel 2.1. Arsitektur J2ME... 10 Tabel 2.2. Arsitektur CLDC... 12 Tabel 2.3. Perbedaan CLDC dan CDC... 13 Tabel 3.1. Tabel Deskripsi Use Case Diagram... 41 Tabel 3.2. Daftar kelas game Tictactoe online... 46 Tabel 3.3. Deskripsi Kelas Main Midlet... 46 Tabel 3.4. Deskripsi Kelas Main Canvas... 49 Tabel 3.5. Deskripsi Kelas Menu Canvas... 51 Tabel 3.6. Deskripsi Kelas SendMessage... 52 Tabel 3.7. Deskripsi Kelas AddFriend... 53 xiii
BAB 1 1.1. Latar Belakang PENDAHULUAN Game merupakan sebuah permainan elektronik yang bertujuan untuk memberikan hiburan dan mengisi waktu luang kepada pemainnya. Selain menjadi media hiburan, game juga dapat melatih daya ingat dan mengasah kemampuan dalam berpikir [1]. Game memiliki beberapa jenis. Jenis yang diterapkan pada sebuah game merupakan format dari game. Beberapa jenis game ialah permainan maze, permainan papan, permainan teka-teki, permainan pertarungan, permainan strategi real time, permainan edukasi, dan lain lain [1]. Secara umum game dikelompokkan berdasarkan jumlah pemainnya, single player yang hanya dimainkan sendiri dan multi players yang dapat dimainkan lebih dari dua orang. Dari sifat permainannya, game dapat dimainkan secara offline maupun online. Dimana game online itu sendiri didefinisikan sebagai fasilitas permainan digitasl yang dapat terhubung dengan puluhan orang sekalius serta dengan beragam permainan yang menarik bagi pemain yang suka bersaing (Rolling, Andrew; Ernest Adams, 2006). Game online merupakan jenis game dimana para pemainnya berada pada lokasi yang berbeda, namun saling terhubung satu sama lain. Game online dapat dimainkan kapanpun dan dimanapun selama terkoneksi secara online. Sejak beberapa tahun terakhir, game online berkembang dengan begitu pesat dan dengan mudah dapat ditemukan ditengah masyarakat. Seiring dengan perkembangan teknologi, jenis game yang dihadirkan pun cukup beragam. Dari game ringan 1
hingga game yang cukup berat untuk kalangan anak-anak dapat dengan mudah ditemui. Pada perkembangannya saat ini game online dapat dimainkan pada perangkat desktop computer, laptop dan pada perangkat mobile seperti PDA, portable media player, tablet ataupun smartphone. Game online juga bersifat multiplatform ketika game dibuat berbasis web application. Menurut survei yang dilakukan oleh penyelenggara Game Developers Conference tahun 2013, para game developper saat ini lebih tertarik untuk membuat game di platform mobile. Survei tersebut dilakukan pada 2500 game developer di Amerika Utara. Sebelumnya sebanyak 38% game developer sudah merilis game pada smartphone dan tablet. Sedangkan saat ini sebanyak 55% game developer berencana untuk merilis game pada platform mobile [6]. Berdasarkan pengamatan sementara, salah satu game yang paling diminati oleh sebagian besar masyarakat saat ini ialah mobile game online dengan lebih dari satu pemain. Mobile game online ialah sebuah permainan elektronik yang dimainkan di mobile phone, smartphone dan tablet. Salah satu cara merancang dan membuat mobile game online adalah dengan menggunakan teknologi Java Micro Edition. Java Micro Edition merupakan teknologi yang telah banyak digunakan dalam pengembangan aplikasi pada mobile phone dewasa ini, mulai dari aplikasi yang berupa permainan sampai dengan aplikasi mobile phone sebagai pendukung aplikasi yang lebih besar seperti enterprise [4]. Keunggulan menggunakan teknologi java micro edition adalah aplikasi yang dibangun dapat digunakan disemua perangkat mobile phone yang mendukung platform java mobile. 2
Berdasarkan keunggulan yang dimiliki oleh platform java micro edition dan berkembangnya game online, maka akan dibangun suatu game tictactoe secara online menggunakan perangkat mobile phone yang didukung oleh platform java mobile. Diharapkan dengan adanya game tictactoe secara online di mobile phone, pengguna yang memainkannya dapat saling terhubung satu sama lain walaupun berada dilokasi yang berbeda dan dapat memainkannya secara bersama. 1.2. Rumusan Masalah Dari penjelasan diatas ada beberapa masalah yang dapat dirumuskan dari tugas akhir ini ialah sebagai berikut: 1) Bagaimana cara merancang game tictactoe secara online berbasis Java Micro Edition. 2) Bagaimana cara membangun game tictactoe secara online berbasis Java Micro Edition. 1.3. Batasan Masalah Untuk menjaga fokus permasalahan dalam tugas akhir ini, maka akan diberi batasan permasalahan sebagai berikut: Hanya membahas tentang game tictactoe secara online berbasis Java Micro Edition. Game ini hanya dapat diterapkan pada mobile phone yang mendukung platform java mobile. Program dibangun dengan perangkat lunak Java 2 Micro Edition untuk pembuatan game MIDlet pada telepon seluler, netbeans 6.9.1 untuk compiler. 3
1.4. Tujuan Tugas Akhir Berdasarkan latar belakang yang telah dibahas, tujuan pembuatan tugas akhir ini adalah membuat sebuah mobile game online berbasis java micro edition yang dapat digunakan dimobile phone yang mendukung platform java mobile. 1.5. Manfaat Manfaat yang dapat diberikan dalam pembuatan tugas akhir ini ialah: Dapat memberikan manfaat dan menjadi bahan refrensi bagi mahasiswa tingkat akhir selanjutnya dalam hal menyelesaikan tugas akhir dengan kasus permasalahan yang mirip. Sebagai modul pratikum dalam pembuatan mobile game online berbasis Java Micro Edition. 1.6. Metode Tugas Akhir Metode yang digunakan dalam menyelesaikan tugas akhir ini adalah sebagai berikut: 1.6.1. Melakukan Observasi dan Studi Literatur Melakukan pencarian dan pengumpulan data atau informasi yang menjadi refrensi untuk merancang game berbasis java mobile. Refrensi yang dibutuhkan berbentuk literatur, jurnal maupun e-book yang berkaitan dengan teori-teori multimedia, java mobile dan game design. 1.6.2. Melakukan Perancangan Sistem Setelah melakukan observasi dan studi literatur, langkah selanjutnya adalah melakukan perancangan mobile game online. Teknologi yang digunakan adalah 4
Java Micro Edition yang merupakan bagian dari platform java. Dalam perancangan tampilan game, disini menggunakan low level user interface. Kemudian dilakukan perancangan flow diagram dengan UML terhadap alur kerja dan user interface sebelum dilakukan proses coding. 1.6.3. Pembuatan Sistem Melalui hasil perancangan mobile game online yang telah dilakukan, maka akan dibuat sebuah game tictactoe secara online melaui proses coding. 1.6.4. Uji Coba dan Evaluasi Game yang telah dibuat selanjutnya diuji coba. Pengujian ini dilakukan untuk menganalisis proses runtime dan hasil tampilan user interface. Apabila dalam proses pengujian ini terjadi error, maka akan dilakukan kembali evaluasi pada program melalui proses debugging (perbaikan). Pengujian dan evaluasi ini dimaksudkan untuk mendapatkan hasil yang maksimal. 1.6.5. Penyusunan Laporan Tugas Akhir Penyusunan laporan tugas akhir meliputi penulisan dan penyusunan laporan dari semua dasar teori dan metode yang digunakan serta hasil yang diperoleh dari pelaksanaan penelitian tugas akhir. 1.7. Sistematika Penulisan Berikut sistematika penulisan laporan tugas akhir ini yang meliputi: BAB 1 PENDAHULUAN Bab ini berisi tentang penjelasan mengenai latar belakang pemilihan judul, batasan masalah, motivasi dan tujuan tugas akhir, metode pelaksanaan tugas akhir dan sistematika penulisan.
BAB 2 LANDASAN TEORI Bab ini berisi landasan teori yang menjadi referensi utama dalam penulisan tugas akhir. Teori yang dibahas berhubungan dengan aplikasi yang akan dibuat dan juga yang digunakan untuk kepentingan analisis dan perancangan alikasi. BAB 3 PERANCANGAN DAN PEMBUATAN Bab ini menjelaskan analisis dan peracangan sistem. Tahap analisis menggambarkan dan menjabarkan kegiatan yang dilakukan pada sistem yang sedang berjalan. Sedangkan tahap perancangan aplikasi seperti perancangan tampilan aplikasi, algoritma pemrograman dan UML yang akan dibuat sebagai sistem yang baru. BAB 4 IMPLEMENTASI DAN PEMBAHASAN Bab ini menjelaskan implementasi dan pembahasan berisi rancangan dari game tictactoe secara online menggunakan bahasa pemrograman java mobile berbasis Java 2 Micro Edition (J2ME) di handphone. BAB 5 SIMPULAN DAN SARAN Bab ini menjelaskan hasil akhir dari semua penulisan yang dikerjakan yaitu simpulan dan saran yang berisi masukan untuk mengembangkan dan melengkapi aplikasi game yang sudah dibangun dimasa yang akan datang dan hasil penelitian serta saran-saran guna penelitian lebih lanjut untuk pengujian tictactoe secara online berbasis Java 2 Micro Edition.