Kalbiscientia Volume 1, Nomor 1, Agustus 2014
ISSN 2356 - 4393
Aplikasi Permainan Labirin 3D Mengenal Objek Wisata Di Indonesia Menggunakan Mobile Nuraini Purwandari
Sistem Informasi, Institut Teknologi dan Bisnis Kalbis Jalan Pulomas Selatan Kav.22 Jakarta Timur 13210 Email:
[email protected] Abstract: In today’s era of information technology, more and more programming language used to develop programs designed to facilitate the user in the field include the making of a game. The Maze game is a game that aims to find a solution determines the proper path to achieve the goals set. Based on that, the researchers made a game application running on the mobile with J2ME. The results of this research that took ten types of mobile phones that have been tested resulted in an installation length of 11.92, the length of loading of 5.8, the location of the corresponding command of 0.4, the position of the corresponding view of 0.2, as well as good image quality of 0.4 in order to obtain an average result such that the application is compatible 3D Maze game run in all types of mobile phones. Keywords: Applications, Games, 3D Maze, J2ME Abstrak:Di era teknologi Informasi sekarang ini, semakin banyak bahasa pemrograman yang digunakan dalam mengembangkan program yang dirancang untuk mempermudah pemakai di bidangnya diantaranya adalah pembuatan sebuah aplikasi permainan. Permainan Labirin adalah sebuah permainan mencari jalan keluar bertujuan menentukan jalur yang tepat mencapai tujuan yang telah ditetapkan. Aplikasi ini dibuat sebagai ajang untuk mengenalkan objek pariwisata di Indonesia sambil melakukan travelling atau perjalanan pada permainan Labirin. Berdasarkan hal itu, peneliti membuat sebuah aplikasi game yang berjalan pada mobile dengan bahasa pemrograman Java 2 Micro Edition (J2ME). Hasil dari penelitian ini yaitu mengambil sepuluh tipe handphone yang telah diujicoba menghasilkan lamanya penginstalan sebesar 11.92, lamanya loading sebesar 5.8, letak command yang sesuai sebesar 0.4, posisi tampilan yang sesuai sebesar 0.2, serta kualitas gambar yang baik sebesar 0.4 sehingga diperoleh hasil rata-rata tersebut bahwa aplikasi permainan Labirin 3D ini compatible dijalankan disemua jenis handphone. Kata kunci: Aplikasi, Permainan, Labirin 3D, J2ME
I. PENDAHULUAN Program permainan atau game merupakan salah satu implementasi dari bidang ilmu komputer. Perkembangan permainan pada masa kini sudah sangat pesat dan telah menjadi mode tersendiri di dunia karena mayoritas pengguna komputer menghabiskan sebagian besar waktu mereka di depan komputer dalam program permainan. Salah satu permainan yang banyak diminati adalah permainan Labirin. Permainan Labirin adalah sebuah permainan yang akan mencari jalan keluar yang bertujuan untuk menentukan jalur yang tepat untuk mencapai tujuan yang telah ditetapkan. Selama proses penentuan jalur tersebut, jika menemui jalan buntu maka akan dilakukan proses backtrack sampai kembali menemukan jalur yang tepat untuk mencapai tujuan yang diinginkan. Handphone adalah salah satu contoh sarana pendukung teknologi informasi. Banyak orang
26
menggunakan handphone sebagai alat komunikasi yang praktis karena dapat dibawa kemana saja dan kapan saja (portable). Selain berfungsi sebagai komunikasi yang bersifat portable handphone juga bermanfaat untuk penyediaan aplikasi game yang edukatif. Contohnya berupa aplikasi game yang dapat digunakan sebagai ajang untuk mengenalkan tempattempat atau objek pariwisata di Indonesia sambil melakukan travelling atau perjalanan pada permainan Labirin. Hal tersebut yang menjadi inspirasi peneliti untuk membangun sebuah aplikasi game edukatif yang bersifat mobile. Dalam pembuatan aplikasi ini diperlukan bahasa pemrograman yang mendukung cara kerja handphone, dan Java 2 Micro Edition (J2ME) adalah salah satu bahasa pemrograman yang dipakai untuk aplikasi berbasis mobile seperti handphone. Peneliti bermaksud membuat sebuah aplikasi permainan Labirin 3D yang dapat memberikan edukasi yang bersifat portable dan dapat dijalankan di handphone.
Aplikasi Permainan Labirin 3D Mengenal Objek Wisata ....
Adapun batasan masalah dalam penelitian ini adalah membahas tentang proses pembuatan serta pengoperasian aplikasi “Permainan Labirin 3D” dengan menggunakan bahasa pemrograman J2ME yang berjalan pada sistem operasi windows XP. Aplikasi permainan Labirin 3D ini bersifat singleUser artinya dapat dimainkan oleh satu orang pemain Sedangkan tujuannya adalah membuat aplikasi permainan Labirin 3D dengan menggunakan bahasa pemrograman J2ME. Yang diharapkan berguna terutama bagi penulis dan juga bagi pembaca yang tertarik pada game dengan bahasa pemrograman J2ME. User atau pemakai dapat menggunakan aplikasi ini di telepon seluler (handphone).
II. METODE PENELITIAN Metode penelitian merupakan cara utama yang digunakan peneliti untuk mencapai tujuan dan menentukan jawaban atas masalah yang diajukan. Metode penelitian berhubungan dengan prosedur, alat, desain penelitian yang dipergunakan didalam melaksanaan penelitian. Tahapan proses dalam penelitian ini mengalir sesuai dengan alur yang logis. Tujuannya adalah memberikan petunjuk yang jelas, teratur dan sistematis [1]. Tahapan penelitian ini dapat dilihat pada Gambar 1. START
1. Observasi Pendahuluan Tahap awal ini dilakukan bertujuan agar mendapatkan Gambaran umum tentang skenario permainan sekaligus mendapatkan berbagai informasi mengenai objek wisata yang ada di seluruh Indonesia. 2. Identifikasi Masalah Pada tahap ini dilakukan identifikasi terhadap masalah yang dihadapi yaitu proses perancangan model template, algoritma permainan, aturan permainan dan informasi pada permainan. 3. Studi Literatur Pada tahap ini merupakan kegiatan untuk mencari literature, jurnal dan berbagai sumber melalui website-website, buku, dan sebagainya yang menunjang penelitian ini. 4. Skenario 3D Skenario yang dibuat pada permainan Labirin 3D ini adalah bagaimana User atau pemain singleplayer artinya dapat dimainkan oleh satu orang pemain saja. Permainan Labirin ini selanjutnya merupakan jenis permainan untuk mengolah otak karena diperlukan kecermatan dalam mencari jalan keluar atau menentukan jalur yang tepat untuk mencapai tujuan yang telah ditetapkan. Walaupun jenis permainan ini sama dengan permainan Labirin atau sering juga disebut dengan game Maze, tetapi permainan ini sedikit berbeda dari game Maze pada umumnya. Labirin ini bersifat 3 dimensi dapat dilihat sepertui pada Gambar 2.
Observasi
Identifikasi Masalah Studi Literatur Skenario 3D
Gambar 2 Skenario 3 dimensi Pengkodean Implementasi Hasil Uji coba END
Gambar 1 Diagram Alur Penelitian
Berikut ini adalah penjelasan dari diagram alur penelitian, yaitu :
Dalam permainan Labirin ini, pemain berupa bergerak untuk memulai permainan yaitu melakukan penelusuran jalur dan tempat yang dituju. Selain itu dalam permainan ini ditambahkan pilihan menu informasi tentang objek pariwisata di Indonesia. Hal ini bertujuan agar permainan lebih menarik, ditunjukkan oleh Gambar 3. Pemain diharuskan menelusuri rute perjalanan serta dapat melihat peta atau lokasi dimana pemain tersebut berada menggunakan pilihan menu tampilan 2 dimensi. Selain itu pemain juga diberikan kesempatan melakukan latihan soal pengetahuan
27
Kalbiscientia Volume 1, Nomor 1, Agustus 2014
umum tentang objek pariwisata di Indonesia dengan melihat informasi terlebih dahulu yang bias dilihat selama permainan berlangsung. Setelah pemain menemukan jalan keluar, maka permainan Labirin ini akan berakhir, ditunjukkan oleh Gambar 4. 5. Pengkodean Pada tahap pengkodean menggunakan bahasa pemrograman Java. Salah satu text editor yang digunakan adalah Notepad ++.
menjelaskan tentang struktur navigasi dari aplikasi game Labirin 3D ini. Launch Application
Splash Screen
Menu Utama Mulai Permainan Petunjuk Permainan Tambahan Permainan
Menu Informasi
Menu Permainan Mulai Permainan Switch View Petunjuk Permainan Tambahan Permainan
Penjelasan
Menu Tampilan
Gambar 3 Skenario 2 dimensi
6. Implementasi Hasil Pada tahap ini merupakan tahapan akhir untuk menghasilkan output yang diinginkan dari hasil pengkodean sebelumnya.
Form Labirin
Penjelasan
Menu Info
Bali Jawa Tengah Bandung Jakarta Jawa Timur Malang Lombok Sulawesi Sumatera Kalimantan
Menu Tambahan Soal Petunjuk
Penjelasan
Tampilan 2D Tampilan 3D Penjelasan
Form Labirin
Gambar 5 Struktur navigasi
B. Flowchart Untuk mempermudah dalam pembuatan aplikasi , penulis merancang diagram alur (flow chart), sehingga pembuatan program aplikasi dapat dilakukan secara terurut. Gambar 6 akan menjelaskan tentang flow chart dari aplikasi game Labirin 3D ini. START
Splash Screen
Gambar 4 Skenario labirin
7. Uji coba Tahap uji coba merupakan kegiatan untuk mengimplementasikan output dari input ke dalam handphone.
A. Struktur Navigasi Struktur navigasi merupakan tahapan perencanaan yang memuat tentang alur yang digunakan dalam aplikasi, berfungsi untuk mempermudah dalam pembuatan aplikasi [2]. Susunan dari sebuah aplikasi yang telah dibuat dapat dilihat melalui struktur navigasi. Struktur navigasi yang digunakan dalam pembuatan aplikasi game Labirin 3D adalah navigasi campuran. Gambar 4 akan
28
Menu Utama
Pil=1
Mulai Permainan
Pil=4
Pil=5
Pil=2
Melihat Petunjuk
Menu Informasi
Tampilan 2D
Tampilan 3D
END
Gambar 6 Flow chart
Pil=3
Latihan Soal
Aplikasi Permainan Labirin 3D Mengenal Objek Wisata ....
Alur pada gambar 5 adalah langkah-langkah yang dilakukan oleh end-User atau pengguna. Penjelasan alur aplikasi ini adalah sebagai berikut : 1. Pada saat aplikasi ini dijalankan maka tampilan awal adalah tampilan splash screen yaitu menampilkan Gambar atau background permainan Labirin. 2. Setelah muncul splash screen maka selanjutnya menuju form menu utama dengan menampilkan pilihan menu yang disediakan oleh aplikasi ini. 3. Jika User memilih pilihan pertama maka User akan memulai permainan Labirin setelah itu akan keluar. Namun jika tidak memilih maka akan masuk pilihan kedua. Jika User memilih pilihan kedua maka akan menampilkan informasi tentang petunjuk permainan setelah itu akan keluar. Namun jika tidak memilih maka akan masuk pilihan ketiga. Jika User memilih pilihan ketiga maka akan menuju menu soal pertanyaan yang berisi keterangan Gambar dan form jawaban yang harus diisi oleh User. 4. Pada saat User memulai permainan, jika User memilih pilihan ketiga maka akan menampilkan pilihan menu informasi objek wisata. Namun jika tidak memilih maka akan masuk pilihan kelima yaitu menu switch view dimana User dapat melihat lokasi posisi pada tampilan 2 dimensi, jika tidak maka User akan melanjutkan permainan dalam tampilan 3 dimensi setelah itu akan Splash keluar.
C. Rancangan Tampilan
Screen
Rancangan tampilan merupakan bagian kedua dari tahap pembuatan aplikasi ini. Perancangan ini sangat penting dikarenakan dengan membuat sebuah perancangan tampilan, pembuat aplikasi tidak akan mengalami kesulitan untuk membuat desain interface dari suatu aplikasi yang dibuatnya. Pada tahap ini perancangan interface diimplementasikan pada Title proses pengkodean. Tampilan yang dirancang ada 7 buah. Beberapa rancangan tampilan tersebut dapat digunakan sesuai kebutuhan dari aplikasi yang dibuat.
Tittle
List ite
Splash
List ite
Screen
List ite
Gambar 7 Rancangan tampilan Splash Screen
2. Rancangan Tampilan Menu Utama
Ticker
Titleutama berupa list sehingga Tampilan menu perancangan tampilannya terdapat tiga buah list item yang mewakili menu yang dapat dipilih pengguna. Masing-masing list item memiliki Text icon sendiri yang terletak di depan list item. Selain itu, dalam halaman ini terdapat sebuah title yang menginformasikan judul halaman, dan satu command button untuk keluar dari aplikasi. Rancangan tampilan halaman Menu Utama dapat dilihat pada Gambar 8. Command
Tittle List item 1 List item 2 List item 3 Command Gambar 8 Rancangan tampilan Menu Utama
Ticker 3. Rancangan Tampilan Petunjuk Permainan
Tampilan petunjuk permainan merupakan tampilan yang berisi informasi tentang langkahlangkah atau petunjuk cara bermain dan aturan Text dalam permainan ini. Selain itu, dalam halaman 1. Rancangan Tampilan Splash Screen ini terdapat sebuah ticker atau tulisan berjalan Tampilan Splash Screen merupakan tampilan yang berada di bagian atas form, sebuah title yang yang pertama kali ditampilkan sejak program menginformasikan judul halaman, sebuah text dan dijalankan. Pada tampilan ini, pemain akan melihat image yang menginformasikan petunjuk permainan Command judul dari program permainan ini dengan latar dan satu command button untuk keluar dari aplikasi. belakang Gambar labirin. Rancangan ampilan Splash Rancangan tampilan halaman Menu Utama dapat Screen dapat dilihat pada Gambar 7 . dilihat pada Gambar 9.
29
Screen
List item 3
Kalbiscientia Volume 1, Nomor 1, Agustus 2014
Ticker
Title
Command
label untuk informasi waktu dan fps, 2 buah command button untuk keluar dari aplikasi dan melihat menu, serta 4 buah list item. Rancangan tampilan halaman Mulai Permainan dapat dilihat pada Gambar 11.
Tittle
Text
Comma
Command Tittle List item 1
Splash 9 Rancangan tampilan Petunjuk Gambar List item 2 Permainan Screen
List item 3
4. Rancangan Tampilan Tambahan Permainan Command
Tampilan tambahan permainan merupakan tampilan yang berisi Ticker informasi tambahan tentang Title ini berupa soal pertanyaan mengenai permainan pengetahuan objek wisata di Indonesia dalam permainan ini. Selain itu, dalam halaman ini terdapat Text sebuah ticker atau tulisan berjalan yang berada di bagian atas form, sebuah title yang menginformasikan judul halaman, sebuah text yang menginformasikan Command pertanyaan permainan, sebuah text field dan satu command button untuk keluar dari aplikasi, dapat dilihat pada Gambar 10.
Gambar 11 Rancangan tampilan Mulai Permainan
6. Rancangan Tampilan Menu Objek Wisata Tampilan Menu Objek Wisata berupa list sehingga perancangan tampilannya terdapat lima list item yang mewakili menu yang dapat dipilih pengguna. Selain itu, dalam halaman ini terdapat title yang menginformasikan judul halaman, dan dua command button untuk memilih list item menu dan untuk keluar dari aplikasi. Rancangan tampilan halaman Menu Objek Wisata dapat dilihat pada Gambar 12. Ticker Tittle List item 1 ... ... List item 10 Command1
Gambar 10 Rancangan tampilan Tambahan Permainan
Command2
Gambar 12 Rancangan tampilan Menu Objek Wisata
5. Rancangan Tampilan Mulai Permainan
7. Rancangan Tampilan Menu Informasi Objek Wisata
Tampilan mulai permainan merupakan tampilan yang berisi wall atau Gambar permainan Labirin. Pada halaman ini, User menelusuri rute perjalanan hingga mencapai tempat tujuan yang telah ditentukan. Selain itu, dalam halaman ini terdapat sebuah 2 buah
Tampilan Menu Informasi Objek Wisata merupakan tampilan yang berisi informasi penjelasan tentang pengetahuan tempat-tempat pariwisata popular yang ada di Indonesi. Selain itu, dalam halaman ini terdapat sebuah ticker atau tulisan
30
Tittle Aplikasi Permainan Labirin 3D Mengenal Objek Wisata ....
berjalan yang berada di bagian atas form, sebuah title yang menginformasikan judul halaman, sebuah image dan text field yang menginformasikan objek wisata, dan dua buah command button untuk memilih menu atau lanjut pemainan. Rancangan tampilan halaman Menu Informasi Objek Wisata dapat dilihat pada Gambar 13.
List item 1 ... 2. Output Tampilan pada saat User Melihat Informasi ... tentang Objek Wisata List item 10 di Indonesia Command1
Command2
Ticker Tittle Gambar 13 item Rancangan tampilan Menu List 1 ...Informasi Objek Wisata
... List item 10 D. Output Program
Tahap ini merupakan tampilan output program Command1 Command2 yang akan dihasilkan pada saat program akan dijalankan. 1. Output Tampilan pada saat User Mulai Permainan, Petunjuk Permainan dan Tambahan Permainan.
Gambar 15 Output informasi objek wisata di indonesia pada emulator
3. Output Tampilan pada saat User memilih Tampilan 2D dan 3D permainan Labirin.
Gambar 16 Output pada saat user memilih tampilan 2D dan 3D
III. PEMBAHASAN A. Game Engine
Gambar 14 Output mulai permainan, petunjuk permainan dan tambahan permainan pada emulator
Game engine (bahasa Indonesia: mesin permainan) adalah sebuah system software yang dirancang untuk pembuatan dan pengembangan suatu video game [3]. Ada banyak sekali game engine yang dirancang untuk bekerja pada beberapa konsol video game dan sistem operasi desktop seperti Microsoft Windows, Linux dan Mac OS X. Fungsi utama yang secara khusus disediakan oleh game engine meliputi mesin render (renderer) untuk grafik 2D atau 3D, mesin fisika, deteksi tabrakan (dan tanggapan tabrakan), suara, script, animasi, kecerdasan buatan, jaringan, streaming, manajemen momori, threading, dukungan lokalisasi dan layar grafik.
31
Kalbiscientia Volume 1, Nomor 1, Agustus 2014
B. Tipe-tipe Game engine Game engine biasanya datang dengan berbagai macam jenis dan ditujukan untuk berbagai kemampuan pemrograman. Ada 3 tipe game engine yang ada saat ini, sebagai berikut: 1. Roll-your-own game engine Banyak perusahaan game kecil seperti publisher indie biasanya menggunakan engine-nya sendiri. Mereka menggunakan API seperti XNA, DirectX atau OpenGL untuk membuat game engine mereka sendiri. Di sisi lain, mereka kadang menggunakan library komersil atau yang open source. Terkadang mereka juga membuat semuanya mulai dari nol. Biasanya game engine tipe ini lebih disukai karena selain kemungkinan besar diberikan secara gratis, juga memperbolehkan mereka (developer) lebih fleksibel dalam mengintegrasikan komponen yang diinginkan untuk dibentuk sebagai game engine mereka sendiri. Kelemahannya banyak engine yang dibuat dengan cara semacam ini malah menyerang balik developernya. Tower Games Studio membutuhkan satu tahun penuh untuk menyempurnakan game engine-nya, hanya untuk ditulis ulang semuanya dalam beberapa hari sebelum penggunaannya karena adanya bug kecil yang sangat mengganggu. 2. Mostly-ready game engines Engine ini biasanya sudah menyediakan semuanya begitu diberikan pada developer atau programer. Semuanya termasuk contoh GUI, physiscs, libraries model, texture dan lain-lain. Banyak dari mereka yang sudah benar-benar matang, sehingga dapat langsung digunakan untuk scripting sejak hari pertama. Game engine semacam ini memiliki beberapa batasan, terutama jika dibandingkan dengan game engine sebelumnya yang benar-benar terbuka lebar. Hal ini ditujukan agar tidak terjadi banyak error yang mungkin terjadi setelah sebuah game yang menggunakan engine ini dirilis dan masih memungkinkan game engine-nya tersebut untuk mengoptimalkan kinerja game-nya. Contoh tipe game engine seperti ini adalah Unreal Engine, Source Engine, id Tech Engine dan sebagainya yang sudah sangat optimal dibandingkan jika harus membuat dari awal. Dengan hal ini dapat menyingkat menghemat waktu dan biaya dari para developer game. 3. Point-And-Click Engines Engine ini merupakan engine yang sangat dibatasi, tapi dibuat dengan sangat user friendly. Dengan mulai membuat game sendiri menggunakan engine seperti GameMaker, Torque Game Builder dan
32
Unity3D. Kekurangannya terletak pada terbatasnya jenis interaksi yang bisa dilakukan dan biasanya hal ini mencakup semuanya, mulai dari gratis hingga tata suara. Tapi bukan berarti game engine jenis ini tidak berguna, bagi developer cerdas dan memiliki kreativitas tinggi, game engine seperti ini bisa dirubah menjadi sebuah game menyenangkan, seperti Flow. Game engine ini memang ditujukan bagi developer yang ingin menyingkat waktu pemrogramman dan merilis game-game mereka secepatnya.
C. Teknologi Game engine Game engine modern adalah beberapa aplikasi yang paling kompleks yang ditulis, sering menampilkan puluhan sistem tersetel berinteraksi untuk memastikan pengalaman pengguna yang dikontrol dengan tepat. Evolusi yang terus mesin permainan telah menciptakan pemisahan yang kuat antara rendering, scripting, karya seni, dan desain tingkat. Sekarang umum, misalnya, untuk permainan khas tim pengembangan untuk memiliki beberapa kali lebih banyak seniman sebagai programmer sebenarnya. Beberapa mesin permainan hanya menyediakan real-time 3D rendering kemampuan bukan berbagai fungsi dibutuhkan oleh game. Mesin ini mengandalkan pengembang game untuk melaksanakan fungsi ini sisa atau merakit dari komponen middleware permainan lainnya. Jenis mesin umumnya disebut sebagai sebuah “mesin gratis,” “mesin rendering,” atau mesin “3D” bukannya lebih mencakup istilah “mesin permainan.” Namun, terminologi ini tidak konsisten digunakan sebagai banyak fitur lengkap mesin game 3D disebut hanya sebagai “mesin 3D.” Beberapa contoh mesin gratis adalah: RealmForge, Truevision3D, Ogre, Crystal Ruang, Genesis3D, Irrlicht dan JMonkey Engine. Permainan modern atau mesin gratis umumnya menyediakan sebuah adegan grafik, yang merupakan representasi berorientasi obyek dari Dunia game 3D yang sering menyederhanakan desain game dan dapat digunakan untuk rendering efisien lebih besar virtual dunia. Middleware untuk massively-multiplayer online game ini jauh lebih kompleks daripada singleplayer video game. Namun, peningkatan popularitas MMOGs adalah pengembangan memacu middleware seperti paket. Beberapa solusi terkemuka, berdasarkan penjualan, antara lain: l Unreal Engine 3 (klien-only) l CryEngine2 (klien-only) l Gamebryo (klien-only)
Aplikasi Permainan Labirin 3D Mengenal Objek Wisata .... l l
l l l l l l
Trinigy Visi Engine (hanya klien) Q (mesin game) (klien-only, tapi dengan solusi server sebagai ‘Mesias’) Multiverse Network Bigworld Teknologi HeroEngine Monumental Permainan Project Darkstar (Open Source) DX Studio (klien-only)
D. Algoritma Dalam Permasalahan Labirin Labirin merupakan suatu ruang dengan jalan keluar yang sulit dan berliku. Permasalahan labirin merupakan salah satu permasalahan yang telah lama digunakan untuk menguji masalah optimasi algoritma. Banyak algoritma yang digunakan untuk menyelesaikan permasalahan ini, mulai dari algoritma yang mudah hingga algoritma yang rumit.
E. Algoritma Dalam Penyelesaian Labirin Labirin atau Maze merupakan suatu jalur yang sengaja dibuat rumit sehingga seseorang yang masuk ke dalamnya tidak dapat keluar dengan mudah. Dalam menyelesaikan permasalahan ini, terdapat banyak sekali cara yang dapat digunakan. Beberapa cara seperti berjalan acak, sentuh tembok, lewati pintu lain, pencarian melebar, pencarian mendalam dan cheese algorithm terbukti dapat digunakan untuk menyelesaikan permasalahan labirin ini. Berikut akan diperkenalkan beberapa algoritma yang dapat digunakan untuk menyelesaikan permasalahan labirin, mulai dari yang sederhana hingga algoritma yang cukup rumit. 1. Berjalan Acak Berjalan acak merupakan cara penyelesaian permasalahan labirin yang paling sederhana. Bahkan, cara ini mungkin ti-dak disebut sebagai algoritma penyelesaian. Dengan berjalan acak, jalan keluar dicari dengan menyusuri petak yang ada pada labirin secara acak dari petak awal (pintu masuk) hing-ga didapatkan pintu keluarnya. Berjalan acak dapat diumpamakan seperti seseorang yang menerka-nerka jalan keluar dari labirin. Dengan menelusuri setiap petak secara acak, maka akan selalu ada kemungkinan untuk dapat menemukan pintu keluar dari labirin tersebut. 2. Menyentuh Tembok Algoritma penyelesaian dengan menyentuh tembok dilakukan dengan menyentuhkan selalu
salah satu tangan kita pada tembok labirin. Tangan yang kita sentuhkan pada labirin haruslah tangan yang sama. Bila kita memilih tangan kanan, maka kita harus selalu menggunakan tangan kanan untuk menyentuh tembok labirin. Agoritma ini cukup efektif untuk digunakan mencari jalan keluar dari satu labirin. Namun, algoritma ini memiliki kelemahan. Jika labirin yang dilalui memiliki banyak jalan (multiple path labirin), maka perlu dilakukan perbaikan algoritma. Jika kita kembali pada petak yang telah dilalui tersebut, maka kita harus mengganti tangan yang digunakan untuk menyentuh tembok labirin. 3. Lewat Pintu Lain Lewati pintu lain atau Least Recently Used Walk merupakan algoritma yang simple untuk menyelesaikan permasalahan labirin. Konsep utamanya adalah dengan menandai petak yang pernah dilalui. Namun, pada algoritma ini, bukan petak yang ditandai melainkan pintu masuk ke petak tersebut. Konsep utamanya adalah melewati pintu dengan nilai terrendah (paling sedikit dilewati sebelumnya). Sehingga kita memilih pintu yang belum pernah dilewati sebelumnya dan memiliki kemungkinan lebih besar untuk dapat mencapai pintu keluar atau petak akhir yang kita cari lewat pintu tersebut [2]. 4. Algoritma Pencarian Melebar Pada algoritma pencarian melebar (Breadth First Search), pencarian dilakukan dengan mengunjungi petak mulai dari petak awal atau pintu masuk (sebagai root) lalu dilanjutkan dengan mengunjungi (membangkitkan) semua petak lain yang bertetangga dengan petak awal tersebut. Kemudian, dilanjutkan dengan mengunjungi petakpetak lain yang belum dikunjungi dan bertetangga dengan petak yang baru saja dikunjungi tersebut. Saat mengunjungi suatu petak baru, disana juga dilakukan pengecekan apakah petak tersebut merupakan petak akhir yang dituju. Bila petak yang dicek adalah petak akhir, maka pencarian akan dihentikan. Setelah itu, akan digenerate jalur solusi berdasarkan petak-petak yang telah dibangkitkan. Pada algoritma ini, dikenal istilah laras atau tingkatan. Sehingga, setiap petak yang dibangkitkan secara bersamaan akan berada pada laras yang sama. Jika dimodelkan dalam bentuk pohon, maka semua petak pada laras t akan dikunjungi terlebih dahulu sebelum petakpetak pada laras t + 1 dikunjungi.
33
Kalbiscientia Volume 1, Nomor 1, Agustus 2014
5. Algoritma Pencarian Mendalam Seperti halnya pada algoritma pencarian melebar (BFS), traversal titik pada algoritma pencarian mendalam (Depth First Search) dimulai dari petak awal lalu dilanjutkan dengan mengunjungi (membangkitkan) petak yang bertetangga dengan petak awal tersebut. Berbeda dengan BFS, pada DFS ini tidak semua petak yang bertetangga dibangkitkan secara bersamaan. Hanya salah satu dari sejumlah keadaan (state) yang telah ditentukan saja yang akan dibangkitkan. Pembangkitan simpul tersebut dapat dilakukan berdasakan suatu prioritas maupun secara acak. Bila solusi belum ditemukan, pencarian kemudian dilanjutkan dengan membangkitkan satu petak lain. Pada pembangkitan petak ini, bila menemukan jalan buntu, tidak ada arah lain selain arah datang, maka akan dilakukan backtrack. Backtrack dilakukan hingga titik percabangan yang terakhir dilewati, kemudian dilanjutkann dengan berjalan melalui percabangan yang belum pernah dilewatinya. Hal ini dilakukan secara rekursif dan baru berhenti jika solusi ditemukan atau semua jalan telah dilewati . 6. Algoritma Catur Pada algoritma-algoritma yang dibahas sebelumnya, kita cenderung berfokus pada bagaimana seseorang dalam labirin dapat menemukan jalan keluar ataupun petak yang dicari dalam labirin tersebut. Berbeda dengan algoritmaalgoritma tersebut, cheese algorithm menawarkan fokus yang berbeda. Pada algoritma ini, jalan keluar atau petak yang dicari, juga dipergunakan untuk menemukan solusi dengan lebih cepat. Secara umum, cara kerja algoritma ini mirip dengan algoritma pencarian melebar (BFS) setelah didapatkan himpunan solusi menuju petak akhir. Pada algoritma BFS, jalur solusi kemudian digenerate dari himpunan solusi tadi (akhir-awal), sehingga didapatkan jalur solusi yang sebenarnya (awal-akhir). Pada cheese algoritma, kita tidak mencari himpunan solusi terlebih dahulu, disini kita berperan sebagai tikus yang mencari keju dalam labirin. Petak akhir atau yang kita anngap sebagai keju inilah yang memberitahukan keberadaan berdasarkan intensitas bau yang menyebar dalam labirin sesuai dengan jaraknya terhadap tempat keju (petak akhir) berada.
F. Algoritma Backtracking pada Labirin Pada pembuatan permainan Labirin ini menggunakan metode backtrack. Algoritma backtrack
34
pertama kali diperkenalkan oleh D.H. Lehmer pada tahun 1950. Dalam perkembangannya beberapa ahli seperti RJ Walker, Golomb, dan Baumert menyajikan uraian umum tentang backtrack dan penerapannya dalam berbagai persoalan dan aplikasi. Algoritma backtrack (runut balik) merupakan salah satu metode pemecahan masalah yang termasuk dalam strategi yang berbasis pencarian pada ruang status. Algoritma backtrack bekerja secara rekursif dan melakukan pencarian solusi persoalan secara sistematis pada semua kemungkinan solusi yang ada. Oleh karena algoritma ini berbasis pada algoritma Depth-First Search (DFS), maka pencarian solusi dilakukan dengan menelusuri suatu struktur berbentuk pohon berakar secara preorder. Proses ini dicirikan dengan ekspansi simpul terdalam lebih dahulu sampai tidak ditemukan lagi suksesor dari suatu simpul. Penggunaan algoritma backtrack ini terlihat pada proses penelusuran tiap jalur untuk mencapai tujuan yang diinginkan. Sejak komputer memulai permainan, computer akan menentukan jalur menelusuri sembarang jalur. Ketika computer menemukan jalan buntu, maka ia akan melakukan proses backtrack dengan cara kembali pada jalur sebelumnya sampai menemukan jalur baru yang belum pernah dilewati. Kemampuan algoritma dalam menyelesaikan masalah game Maze (Labirin) ini menunjukkan bahwa algoritma backtrack (runut balik) cukup efektif untuk mendapatkan solusi persoalan tersebut. Sistem kerja algoritma backtrack yang sistematis dan ciri khasnya yang hanya memeriksa kemungkinan solusi yang memang dapat dipertimbangkan untuk menjadi solusi akhir, diperkirakan untuk menjadi solusi yang efektif dan efisien untuk persoalan ini.
G. Graphical User Interface pada J2ME GUI (Graphical User Interface) merupakan sebutan untuk antarmuka aplikasi. Untuk selanjutnya disini, GUI hanya akan disebut dengan ‘user interface’ atau UI. Kebutuhan user interface untuk aplikasi yang berada dalam peralatanperalatan kecil seperti telepon selular, PDA, maupun pager tentu akan berbeda dengan kebutuhan pada saat kita membuat aplikasi desktop (aplikasi untuk PC). Sebagai contoh, pada aplikasi alat kita tidak melihat adanya mouse yang digunakan sebagai media untuk melakukan input, namun posisinya telah digantikan oleh keypad (tombol-tombol yang terdapat pada HP, PDA ataupun pager). Kelas-kelas dasar untuk kebutuhan tersebut disimpan di dalam kon_gurasi CLDC, yang harus
Aplikasi Permainan Labirin 3D Mengenal Objek Wisata ....
dilengkapi di bagian pro_l. Jadi CLDC sendiri sebenarnya tidak mendefinisikan kelas-kelas yang dibutuhkan untuk fungsional GUI. Adapun kelaskelas resmi yang diperlukan untuk pembuatan GUI dalam platform J2ME tersebut dikembangkan oleh sebuah komunitas yang dinamakan JCP (Java Community Process) dan telah dimasukkan ke dalam bagian pro_l, seperti MIDP. Jadi kelas yang terdapat pada sebuah profil bukan didasarkan pada AWT (Abstract Window Toolkit). Semua kelas GUI yang terdapat dalam MIDP tersimpan dalam suatu paket dinamakan dengan lcdui (javax.microedition.lcdui).
H. J2ME Wireless Toolkit J2ME Wireless Toolkit (J2ME WTK) adalah tool yang menyediakan lingkungan emulator, dokumentasi beserta contoh-contoh aplikasi Java untuk perangkat kecil (small device). J2ME WTK merupakan tool khusus untuk pemrograman J2ME yang dikeluarkan oleh sun Microsystem, dimana dia membutuhkan tool pendukung berupa Java 2 Standar Edition (J2SE) SDK1.4.2 atau yang lebih tinggi dan sebuah text editor yang dapat dipilih sendiri. Disini penulis menggunakan EditPlus 2 sebagai Text Editor nya. J2ME WTK berbasiskan pada kerja ponsel yang mendukung MIDP atau yang biasa disebut emulator. Oleh karena itu, belum tentu MIDlet yang berjalan di emulator juga berjalan pada ponsel yang sebenarnya, Karena itu bergantung juga pada kemampuan dan kapasitas ponsel yang digunakan.
I. Cara Menjalankan Aplikasi J2ME Pada J2ME Wireless Toolkit terdapat beberapa skin emulator. Skin dapat dipilih dengan memilih device pada KToolbar, pilih skin sesuai kebutuhan, jika dibutuhkan skin yang mendukung warna, maka gunakan skin yang memang mendukung warna beserta ukuran layar yang sekiranya mendekati perangkat tujuan aplikasi dibuat. Jika semua source code, resource, beserta library telah diletakkan pada tempatnya dan telah selesai dikerjakan tindakan selanjutnya adalah bagaimana menjalankannya pada emulator. Untuk menjalankan pada emulator, yang harus dilakukan adalah mengkompilasi source code, klik tombol Build pada KToolbar, jika source code lolos kompilasi maka akan muncul hasilnya pada layar KToolbar berupa tulisan Build complete, jika source code gagal dikompilasi maka yang keluar pada layar KToolbar adalah pesanpesan kesalahan, jika al ini terjadi, perbaiki kesalahan pada source code dan lakukan kompilasi kembali hingga source code lulus kompilasi.
Setelah melakukan kompilasi, klik tombol Run pada KToolbar maka akan muncul skin emulator yang pada menunya terdapat tulisan launch, klik tombol pada emulator yang mengacu pada menu tersebut, maka aplikasi akan dijalankan pada emulator yang sudah disiapkan. Untuk membuat file JAR pilih menu Project>Package->Create Package, maka file JAR akan terbentuk pada direktori bin. Untuk memindahkan MIDlet ke ponsel yang sesungguhnya dapat digunakan koneksi bluetooth, GPRS, ataupun inframerah. Dalam prakteknya, ada beberapa ponsel yang hanya membutuhkan file JAR saja, namun ada pula yang membutuhkan file JAD dan JAR dalam proses instalasi aplikasi pada ponsel. Untuk menjalankan aplikasi J2ME pada komputer dengan tanpa KToolbar, cukup jalankan file JAD, namun file JAD ini hanya dapat dieksekusi jika file JAR juga telah terbentuk. Aplikasi J2ME dalam prakteknya, jika sebuah aplikasi berjalan di simulator dengan benar, maka belum tentu dapat dijalankan pada ponsel dengan benar karena bagaimanapun simulator bukanlah perangkat yang sebenarnya. Untuk memastikan aplikasi berjalan pada ponsel, sebaiknya diujicobakan pada ponsel. Aplikasi J2ME juga sebagian besar untuk alasan keamanan tidak dapat mengakses file sistem ponsel, aplikasi biasanya hanya dapat mengakses file yang ada pada paket JAR-nya, serta tidak dapat melakukan penelitian pada file tersebut. Pada direktori bin akan berisi MIDlet terkompil (berkas JAR) dan pendeskripsi MIDlet (berkas JAD). Pada direktori lib berisi lokasi untuk tambahan berkas JAR yang kita include-kan ke dalam proyek kita. Pada direktori res berisi berkas yang kita ingin tampilkan seperti teks dan Gambar, sedangkan direktori src adalah direktori dimana kita akan menyimpan semua berkas kode MIDlet (*.java) yang kita buat. Setelah kita menulis sebuah program lalu menyimpannya pada direktori src.
Gambar 17 Direktori project setelah create package
35
Kalbiscientia Volume 1, Nomor 1, Agustus 2014
Setelah program selesai dan dapat berjalan pada emulator, maka langkah selanjutnya adalah proses pemaketan program, proses pemaketan program dilakukan dengan mengklik menu project > package > create package.
J. Emulator dalam J2ME Wireless Toolkit J2ME Wireless Toolkit menyediakan empat buah emulator. Emulator itu sendiri digunakan untuk menyimulasikan device di dalam komputer sehingga aplikasi yang dibuat dapat dijalankan dan diuji coba tanpa harus di-install ke dalam device bersangkutan terlebih dahulu. Berikut ini daftar emulator yang disediakan oleh J2ME Wireless Toolkit. Tabel 1 Daftar Emulator dalam J2ME Wireless Toolkit
percobaan menggunakan emulator yang disediakan oleh Java(TM) Wireless Toolkit (J2ME WTK), Version 2.5.2 serta dilakukan percobaan juga terhadap telepon genggam (handphone) dengan berbagai merek. Untuk melakukan Uji coba melalui emulator, langkahlangkah yang dilakukan adalah sebagai berikut. l Pertama, membuka jendela Ktoolbar dengan cara memilih All Program à J2ME Wireless Toolkit à Ktoolbar l Kedua, membuka project yang telah dibuat yaitu Labirin 3D dengan cara memilih File à Open Project atau dengan memilih icon Open Project pada toolbar. l Ketiga, setelah project dibuka maka langkah yang dilakukan selanjutnya adalah Build Program yaitu untuk mengkompil program sekaligus mengecek kesalahan dalam penelitian program dan menampilkannya pada layer Console. l Keempat, merupakan langkah terakhir yaitu menjalankan program yang telah dikompil dan akan tampil dan akan tampil pada emulator yang tersedia, selanjutnya kita dapat memilih tampilan emulator di device selector.
L. Uji Coba Program Pada Handphone Menu Default Device Selection, menu ini digunakan untuk memilih emulator yang akan dipakai untuk menjalankan program sebelum dipakai pada perangkat aslinya. Pada penelitian ini, menggunakan Default Color Phone untuk menguji coba program yang dibuat apakah program tersebut bisa berjalan pada emulator yang telah disiapkan.
Gambar 18 Menu Default Device Selection
K. Uji Coba Program Pada tahap ini merupakan tahapan setelah proses implementasi yaitu menguraikan tentang uji coba yang dilakukan terhadap program. Dalam program permainan Labirin 3D ini dilakukan
36
Untuk melakukan Uji coba melalui telepon genggam atau handphone, langkah-langkah yang dilakukan adalah membuat package dengan format .jar yang dapat langsung kita install pada perangkat mobile, tetapi dengan ketentuan bahwa perangkat mobile tersebut harus berbasis java. Dengan cara membuka folder bin pada apps. Didalam folder bin tersebut terdapat Labirin3D.jar. File inilah yang nantinya akan digunakan untuk mengirim aplikasi permainan ini ke dalam handphone melalui Bluetooth, infra red ataupun kabel data. Pada tahap ini dilakukan uji coba program ke dalam handphone. Handphone yang digunakan dalam uji coba ini terdiri dari berbagai merek dan tipe antara lain Sonny Ericsson, Nokia, dan Samsung. Aplikasi permainan Labirin 3D ini dikirim ke dalam handphone dengan transfer JAR melalui kabel data, bluetooth maupun infra red. Selanjutnya aplikasi tersebut diinstal kemudian dapat dimainkan.
M. Perbandingan Parameter Terhadap Aplikasi Yang Telah di Implementasikan di Handphone Pada tahap ini merupakan tahapan untuk melakukan perbandingan parameter-parameter yaitu menguraikan tentang uji coba yang dilakukan terhadap
Aplikasi Permainan Labirin 3D Mengenal Objek Wisata ....
program ke dalam handphone. Dalam program permainan Labirin 3D ini dilakukan percobaan menggunakan telepon genggam (handphone) dengan berbagai merek. Adapun parmeter yang digunakan dapat dilihat pada Tabel 2. Tabel 2 Perbandingan Parameter Tipe Handphone Tipe Handphone
Parameter Yang Diamati Lama Install
Lama Loading
Letak Command
Posisi Tampilan
Kualitas Gambar
memiliki kekurangan dan kelebihan tergantung dari tipe dan spesifkasi handphone tersebut. Misalnya, setelah diuji coba terhadap program menunjukkan lama loading yang berbeda antara handphone jenis yang satu dengan yang lainnya karena jenis prosesor yang berbeda dan jumlah memori yang berbeda. Kemudian menghasilkan posisi atau letak command button yang tidak sesuai dengan tampilan di handphone. Kemudian posisi tampilan pada saat memulai permainan tidak sesuai dengan ukuran layar atau pixel handphone. Yang terakhir adalah kualitas Gambar atau image yang menampilkan resolusi berbeda pada masing-masing handphone. Oleh karena itu, dengan adanya tabel pengamatan diatas, dapat diketahui bagaimana aplikasi permainan Labirin 3D ini berfungsi dan berjalan sesuai dengan program yang telah dibuat.
SE C51
11 sec
4.5 sec
Sesuai
Sesuai
Baik
Nokia E71
14 sec
9 sec
Tidak
Kurang
Cukup
Nokia 5800
12 sec
10 sec
Tidak
Kurang
Baik
SE W395
10 sec
4 sec
Sesuai
Sesuai
Baik
Nokia E63
14.2 sec
10 sec
Tidak
Kurang
Cukup
Samsung I8000
10 sec
6 sec
Sesuai
Kurang
cukup
Nokia N97
15 sec
7 sec
Tidak
Kurang
Cukup
SE K750i
12 sec
7.5 sec
Sesuai
Kurang
Cukup
SE W300i
9 sec
Out off memory
Tidak
Tidak
Tidak
Nokia 6233
12 sec
Out off memory
Tidak
Tidak
Tidak
IV. SIMPULAN
Total rata-rata
119.2/10
58/10
4/10
2/10
4/10
=11.92
=5.8
=0.4
=0.2
=0.4
Berdasarkan uji coba yang telah dilakukan, aplikasi game atau permainan Labirin dengan J2ME tidak semua dapat dijalankan pada handphone melainkan sesuai dengan parameter dan spesifikasi yang ada. Aplikasi permainan ini dibuat sebagai ajang untuk mengenalkan objek wisata di Indonesia sambil melakukan travelling atau perjalanan pada permainan Labirin. Kelebihan aplikasi ini adalah dapat dijalankan pada perangkat seluler (handphone) yang mempunyai teknologi Java di dalamnya.
Keterangan : Baik: jika parameter yang diamati (kualitas Gambar) menunjukkan hasil yang layak dengan program. l Cukup: jika parameter yang diamati (kualitas Gambar) menunjukkan hasil yang belum layak dengan program. l Tidak: jika parameter yang diamati (letak command, posisi tampilan, dan kualitas Gambar) menunjukkan hasil yang tidak layak dengan program. l Sesuai: jika parameter yang diamati (letak command dan posisi tampilan) menunjukkan hasil yang tepat dengan program. l Out off memory: menunjukkan bahwa memori handphone tersebut tidak mencukupi terhadap aplikasi program. Dari tabel pengamatan diatas, sepuluh jumlah handphone yang telah diujicoba menghasilkan lamanya penginstalan sebesar 11.92, lamanya loading atau upload sebesar 5.8, letak command yang sesuai sebesar 0.4, posisi tampilan yang sesuai sebesar 0.2, serta kualitas Gambar yang baik sebesar 0.4 Kesimpulan yang diperoleh dari hasil rata-rata tersebut adalah bahwa aplikasi permainan Labirin 3D ini compatible dijalankan di semua jenis handphone. Dari sepuluh daftar handphone diatas, dapat terlihat bahwa masing-masing vendor handphone l
Penelitian Lanjutan Pembuatan level pada permainan ini dengan tingkat kesulitan yang lain, lalu tampilan menu informasi berupa gabungan teks, Gambar dan suara yang bisa dimatikan.
V. DAFTAR RUJUKAN [1] M. Nazir. Metode Penelitian. Jakarta: Erlangga, 1999, 5. [2] I. Binanto. Multimedia Digital Dasar Teori dan Pengembangannya. Yogjakarta: C.V Andi Offset. 2010, 10. [3] M. F. Shiratuddin. Utilizing a 3D Game Engine To Develop a Vitual Review System. Jurnal of Information Technology in Construction. 2011, 7. [4] A. Kadir. Dasar Pemrograman JAVA 2. Yogyakarta: C.V Andi Offset, 2005, 75.
37
Kalbiscientia Volume 1, Nomor 1, Agustus 2014
[5] M. Salahuddin, Pemrograman J2ME Belajar Cepat Pemrograman Perangkat Teleko-munikasi Mobile. Bandung: Informatika, 2006, 20. [6] R. Edwards & P. Coulton, “Providing the skills required for in-novative mobile game development using industry/academic partnerships”, Lancaster University, UK. 1-7. [7] G. King & T. Krzywinska, Computer Games/ Cinema/Interfaces, Proceedings of Computer Games and Digital Cultures Conference,ed.. Tampere: Tampere University Press, 2002. [8] J. Hahn & K. Fahrenholz, “The First Prototype of Mobile Game”, Proceeding of Mobile Entertainmaen User-cenred Perspective 127-128, March, 2004.
38
[9] E. F. Bird et al. “Experience of Using Rad Tools For 3D Games Design”, Proceedings of Cgames International Conference on Computer Games : AI, Animation, Mobile, Interactive Multimedia,Educational,and Serious Games, 5558, USA, 2009. [10] M. Bakopoulos, “A 3D J2ME game utilizing autonomous moving agents”, ACM International Conference Proceeding of the 3rd interna-tional conference on Digital Interactive Media in Entertainment and Arts, 513-514, Athens, Greece, 2008.