Labirindroid Mobile Game Development for Android with Java Muhammad Nizar
Undergraduate Program, Faculty of Industrial Engineering, 2010 Gunadarma University http://www.gunadarma.ac.id
Keywords : Android, Game, Java, Smartphone, Handphone.
ABSTRACT
The most popular applications in mobile devices is the games industry, there's rarely found a mobile phone with no game features. Than just additional menu, the game has now become mandatory
features that
must exist in every mobile
phone. Smartphone is
one of
the
developments of mobile computing. We have a new operating system operating system for smart phones are android. Android operating system is a good choice for smartphones vendors because it has a less expensive license fees and its open source. This work will disscuss about the making Labirindroid mobile games for mobile phones that use Android operating system. Labirindroid is a puzzle game with seven different labyrinth types. Users can freely choose the labyrinth to be played. There's information on steps that have been done so
that users know how
display applications are
many stepsdid expected this
he
do to solve the maze. With an
interesting
game to be an exciting entertainment to relieve the
boredom in my spare time. Implementation of this game is made by using the Android SDK, Android is Java.
Development
Tools, and Eclipse IDE. While the programming language used
Abstrak Aplikasi yang paling populer dalam industri mobile devices ialah game, Nyaris tak ada mobile phone yang tak punya fitur game. Dari sekadar menu tambahan, game sekarang sudah menjadi fitur wajib yang harus ada dalam setiap mobile phone. Smartphone merupakan salah satu dari perkembangan komputasi mobile. Saat ini terdapat sistem operasi baru untuk smartphone yaitu android. Sistem operasi Android menjadi pilihan yang baik bagi vendor smartphone karena memiliki biaya lisensi lebih murah dan sifatnya yang open source. Penulisan ini akan membahas tentang pembuatan mobile game Labirindroid untuk mobile phone yang menggunakan sistem operasi android. Labirindroid merupakan sebuah game puzzle yang terdiri 7 labirin dengan jenis yang berbeda-beda. User dapat dengan bebas memilih labirin yang ingin dimainkan. Terdapat informasi langkah yang telah dilakukan agar user mengetahui berapa banyak langkah yang dia lakukan untuk menyelesaikan labirin tersebut. Dengan tampilan yang menarik diharapkan aplikasi game ini dapat menjadi sebuah hiburan yang menarik untuk menghilangkan kebosanan di waktu senggang. Implementasi game ini dibuat dengan menggunakan Android SDK, Android Development Tools, dan IDE Eclipse. Sedangkan bahasa pemrograman yang digunakan adalah Java. Kata Kunci: Android, Game, Java, Smartphone, Handphone.
devices ditargetkan untuk menjadi generasi
1. PENDAHULUAN Perkembangan teknologi informasi
PC berikutnya.
mempengaruhi industri mobile devices
Smartphone merupakan salah satu
secara global terutama mobile phone.
dari perkembangan komputasi mobile.
Mobile phone saat ini memang bukan
Tampilan fisik yang stylish serta fitur yang
barang yang aneh untuk masyarakat
menarik seperti teknologi GPS (Global
umum. Mobile phone yang pada awalnya
Position System), Accelerometer , koneksi
hanya diperuntukan untuk melakukan
internet, WIFI, dan juga layar sentuh atau
komunikasi
touchscreen
percakapan
atau
dengan
membuat
smartphone
mengirim pesan pendek dengan SMS.
semakin diminati oleh para konsumen.
Seiring perkembangan teknologi, kini
Saat
mobile phone telah berkembang menjadi
smartphones, yaitu: BlackBerry, iPhone,
sebuah perangkat hiburan dikarenakan
Symbian, Windows Mobile, dan kini telah
banyak fitur menarik tambahan yang
hadir Android. Berbeda dengan sistem
dibenamkan seperti aplikasi multimedia,
operasi ponsel lainnya yang tidak gratis,
game hingga dapat melakukan koneksi
Android merupakan sebuah sistem operasi
internet. Terlebih lagi kedepannya mobile
mobile baru yang bersifat open source dan
ini
ada
5
kelompok
besar
juga gratis yang diciptakan oleh Google. Saat
ini
disediakan
Android
Sedangkan video game merupakan
SDK
game berbasis visual elektronik, jadi disaat
(software Development Kits) sebagai alat
kita berinteraksi dengan suatu tampilan
bantu dan API diperlukan untuk mulai
visual elektronik dengan menggunakan
mengembangkan aplikasi pada platform
alat untuk memasukkan perintah dan
Android
bahasa
didalamnya ada kegiatan dalam aturan
pemrograman Java. Sehingga pihak ketiga
tertentu dan hasilnya dapat membuat
yaitu pengembang atau developer dapat
pemainnya terhibur, saat itulah yang
membuat aplikasi yang dapat dijalankan
dinamakan bermain video game
menggunakan
pada perangkat mobile berbasis android. Aplikasi yang paling populer dalam industri mobile devices ialah game, Nyaris tak ada handphone yang tak punya fitur game. Dari sekadar menu tambahan, game sekarang sudah menjadi fitur wajib yang harus
ada
dalam
setiap
handphone.
Industri mobile game berkembang begitu Gambar 1. Mobile Game pada suatu
cepat. Bentuk permainan yang dibenamkan
handphone
di handphone, makin variatif dan atraktif.
(Sumber : http://mobilegame.com/screenshoot/n97fifa.pn g)
2. LANDASAN TEORI 2.1 Video Game Game
atau
2.2 Android permainan
adalah
Android adalah
sistem operasi
sesuatu yang dapat dimainkan dengan
mobile menggunakan versi modifikasi dari
aturan tertentu sehingga ada yang menang
kernel
dan ada yang kalah, biasanya dalam
dikembangkan oleh Android Inc, sebuah
konteks tidak serius atau dengan tujuan
perusahaan yang kemudian dibeli oleh
menghibur.
Google.
Linux
[1].
Pada
awalnya
Android berbasis
merupakan
kode
didistribusikan
computer secara
software yang
bisa
terbuka
(open
source). Di dalamnya terdapat sistem operasi, middleware, dan key application [3].
Aplikasi
pada
dikembangkan
platform
dalam
Market
5. SQLite. Basis data relasional yang ringan namun sangat powerful. 6. Media
Support.
Mendukung
berbagai format audio, video, dan
bahasa
gambar (MPEG4, H.264, MP3,
bisa membuat aplikasi baru di dalamnya, Android
akselerasi hardware.
ini
pemrograman java sehingga programmer
terdapat
OpenGL ES 1.0 yang mendukung
yang
menyediakan ribuan aplikasi baik yang
AAC, AMR, JPG, PNG, GIF) 7. GSM Telephony. Mendukung fungsi komunikasi GSM. 8. Bluetooth, EDGE, 3G dan WiFi.
gratis maupun berbayar, serta memiliki
Mendukung
aplikasi native Google yang terintegrasi,
jaringan (tergantung hardware).
seperti push email GMail, Google Maps, dan Google Calendar.
fitur diantaranya adalah [5] : sebuah
Application
dapat menggunakan beberapa fungsi yang telah disediakan. virtual
machine.
Tiap
aplikasi dalam Android memiliki instance virtual machine yang dapat bekerja
secara
pada
kompas
dan
Mendukung
berbagai fitur yang disediakan oleh hardware.
Framework sehingga programmer
2. Dalvik
GPS,
accelerometer.
Android sendiri memiliki banyak
1. Merupakan
9. Kamera,
komunikasi
efisien
dalam
lingkungan memori yang terbatas. 3. Integrated browser. Web browser
10. Software Development Kit yang lengkap
yaitu
termasuk
device
emulator, tools untuk debugging, profiling memori dan performa, plugin untuk Eclipse IDE. Smartphone yang menggunakan platform android diantaranya, Google Nexus One, HT Mobile, Samsung, LG, Motorolla, Sony Ericsson. dan juga vendor ponsel lokal seperti Nexian dan IMO.
berbasis WebKit engine terdapat pada browser default Android atau pun dapat diintegrasikan dengan aplikasi lain. 4. Optimized graphics. Library grafis 2D yang kaya dan 3D berbasis
3. ANALISA DAN PERANCANGAN 3.1 Gambaran Umum Aplikasi Game
Labirindroid
merupakan
sebuah game bergenre puzzle. Dalam game
tersebut user diharuskan menjalankan
tersebut tidak akan berhenti hingga bola
sebuah bola yang terdapat pada papan
tersebut mengenai salah satu dinding/garis
permainan dan harus mengenai sebuah
yang ada pada papan permainan.
kotak yang ada pada papan permainan
3.2 Perancangan Antarmuka Tampilan
untuk menyeleseaikan dan memenangkan Interface utama labirindroid merupakan
permainan ini.
tampilan utama aplikasi labirindroid ketika Dalam
game
Labirindroid
ini
terdapat 7 labirin dengan tingkat kesulitan dengan jenis papan
permainan
yang
dijalankan. Tampilan ini terdapat papan permainan dan menu yang dapat dipilih oleh user.
berbeda. Jika labirin pertama user dapat mengenai kotak tersebut maka akan muncul
kotak
dialog
bahwa
1
labirin
tersebut berhasil diselesaikan dan akan ada pilihan menu untuk melanjutkan ke labirin berikutnya. Dalam game ini user dapat melihat berapa langkah yang telah dia lakukan
dalam
memainkan
game
Labirindroid pada setiap labirin. Jumlah
3
2
langkah yang paling sedikit ialah yang paling baik. Setiap labirin memiliki papan/map
4
a
b
c
d
e
f
yang tersusun oleh 5x5,6x6,7x7,8x8 dan 9x9 kotak persegi dan memiliki map permainan yang berbeda dalam setiap
Gambar 2. Rancangan tampilan antarmuka
labirinnya. Didalam papan permainan
permainan
terdapat sebuah bola yang akan dijalankan oleh user,kotak yang berupa goal dari
Keterangan gambar : 1. Papan Permainan
permainan tersebut dan dinding/garis yang
Merupakan papan permainan game
berfungsi untuk menghalangi jalannya
labirindroid, terdapat bola yang
bola. User dapat menggerakkan bola ke
dijalankan oleh user, kotak sebagai
kanan,kiri,atas dan bawah sesuai yang
goal permainan dan garis sebagai
dikehendaki.
dinding pembatas.
Apabila
user
sudah
menggerakkan bola tersebut maka bola
2. Teks Merupakan teks untuk nama labirin
4. IMPLEMENTASI DAN UJI COBA
yang sedang dimainkan. 4.1 Spesifikasi Perangkat Keras dan
3. Teks Merupakan
teks
Lunak
untuk
pemberitahuan langkah yang telah
Dalam menerapkan rancangan yang telah
dilakukan user dalam permainan.
dibuat, ada beberapa hal yang harus
4. Menu Pop-Up : Merupakan menu
dibutuhkan. Perangkat keras dan perangkat
yang akan keluar jika user memilih
lunak merupakan dua hal yang selalu
tombol menu pada handphone.
dibutuhkan dalam mengimplementasikan
Menu ini berupa teks dan gambar.
rancangan yang telah ada.
Terdapat 6 menu yang ada, yaitu : 4.1.1 Spesifikasi Perangkat Keras
a. Sebelumnya
Dalam menerapkan dari rancangan
Berupa menu untuk kembali yang
pada labirin sebelumnya.
telah
dibutuhkan
b. Restart
dijelaskan beberapa
sebelumnya
perangkat
keras
Berupa menu untuk memulai
untuk menyajikan aplikasi ini. Adapun
permainan kembali dari posisi
perangkat yang dibutuhkan ialah : 1. Satu unit PC dengan spesifkasi
awal.
antara lain:
c. Selanjutnya Berupa
menu
memainkankan
untuk
Prosesor : Pentium IV
labirin
Memori : 1 Gb
Ruang Penyimpan : 80 Gb
selanjutnya.
Untuk spesifikasi perangkat keras
d. Bantuan Menu bantuan untuk membantu
tidak harus sama dengan yang ditulis, yang
user memahami permainan.
penting perangkat keras yang digunakan dapat menjalankan perangkat lunak yang
e. Pilih Labirin Menu untuk memilih labirin yang
diinginkan
digunakan.
untuk 4.1.2. Spesifikasi Perangkat Lunak
dimainkan.
Dalam
f. Tentang
menerapkan
rancangan
Berupa menu untuk melihat
yang telah dibuat, dibutuhkan beberapa
informasi
software untuk membuat program game
labirindroid.
tentang
game
Labirindroid yaitu:
1. Bahasa Pemrograman Java
langkah dalam menyelesaikan suatu labirin
Dalam hal ini digunakan Java
dan labirin mana yang belum diselesaikan.
Development Kid (JDK) 1.6 dan
Database yang digunakan ialah database
Java Runtime Environment (JRE).
SQLite
2. Sistem Operasi Windows XP (32bit)
yang terdapat
pada
platform
amdroid. ........
3. Integrated
Development
Environment (IDE) Eclipse 3.4.2 4. Android Software Development Kit (Android SDK)
public class LabirindroidDBAdapter { private static final String DATABASE_NAME = "labirindroid_db.db";
5. Android Development Tools (ADT)
private static final String DATABASE_TABLE = "mazes";
4.2 Pembuatan Aplikasi Labirindroid Pembuatan game Labirindroid yang dimualai dari tahap penginstallan J2SE SDK, penginstallan IDE Eclipse, Android SDK dan Android Development Tools (ADT). 4.3
DATABASE_VERSION = 5; public static final String KEY_ID = "_id"; public static final int ID_COLUMN = 0; public static final String
Pengkodean Program (Coding) Tahap ini merupakan pengkodean
program
private static final int
dengan
menggunakan
editor
KEY_NAME = "name"; public static final int NAME_COLUMN = 1; public static final String
eclipse, semua kode diletakkan kedalam
KEY_SOLUTION_STEPS =
folder src.
"solution_steps"; public static final int SOLUTION_STEPS_COLUMN = 2; public static final String[]
4.3.1 Pembuatan kelas LabirindroidDB Kelas menyimpan diselesaikan
ini labirin dan
total
dibuat yang
COLUMNS = { KEY_ID,
untuk
KEY_NAME,
berhasil
langkah
yang
KEY_SOLUTION_STEPS, };
dilakukan oleh user, sehingga ketika user
private SQLiteDatabase mDB;
ingin memainkan permainan ini kembali,
private
user dapat mengetahui labirin mana yang sudah berhasil diselesaikan dan total
LabirindroidDBOpenHelper mDBHelper; .........
if (y <= 0) return false;
Langkah pertama ialah pendeklarasian variabel yang akan digunakan, seperti nama database, versi database, dan variabel lain yang digunakan untuk table database seperti id ,nama , dan total langkah untuk membuat suatu kolom database.
4.3.2 Pembuatan Kelas Bola Untuk membuat arah gerak bola dan aturan untuk bola dibuat sebuah kelas yang bernama kelas bola dengan nama file ball.java. Dalam kelas ini menangani semua hal yang berkaitan dengan bola seperti arah gerak,kecepatan dan apabila
if ((mMap.getWalls(x, y) & Wall.TOP) > 0 || (mMap.getWalls(x, y - 1) & Wall.BOTTOM) > 0 ) return false; break; case DOWN: if (y >= mMap.getSizeY() - 1) return false; if ((mMap.getWalls(x, y) & Wall.BOTTOM) > 0 || (mMap.getWalls(x, y + 1) & Wall.TOP) > 0 ) return false; break; } return true; }
4.4 Ujicoba Game Labirindroid
bola tersebut berhasil mengenai goal. Pengujian private boolean isValidMove(int x, int y, Direction dir) { switch (dir) { case LEFT: if (x <= 0) return false; if ((mMap.getWalls(x, y) & Wall.LEFT) > 0 || (mMap.getWalls(x - 1, y) & Wall.RIGHT) > 0 ) return false; break; case RIGHT: if (x >= mMap.getSizeX() - 1) return false; if ((mMap.getWalls(x, y) & Wall.RIGHT) > 0 || (mMap.getWalls(x + 1, y) & Wall.LEFT) > 0 ) return false; break; case UP:
dilakukan
dengan
menggunakan emulator yang ada dalam Android
SDK.
Emulator
ini
dapat
berfungsi sebagai sebuah ponsel virtual android yang dijalankan pada PC, dan memiliki fungsi serta spesifikasi (fitur, dimensi
layar)
yang
sama
kebanyakan ponsel android lainnya.
seperti
Penulis menyadari bahwa game yang dibuat masih jauh dari sempurna, oleh karena itu dalam pembuatannya masih banyak kemungkinan pengembangan yang dapat dilakukan. Seperti mengembangkan game menjadi game 3 Dimensi serta memperindah permainan
tampilan agar
antar
pengguna
muka aplikasi
permainan ini tidak merasa bosan dan jenuh. Dalam content permainan dapat dikembangkan untuk menambah musuh yang
berguna
membuat
permainan
semakin menarik dan memiliki tantangan bagi user yang memainkan, menambah Gambar 3. Tampilan program ketika dijalankan
labirin baru serta menambahkan elemen sound ke dalam game.
5. PENUTUP 5.1 Kesimpulan Game Labirindroid yang dibuat telah mampu untuk diaplikasikan kedalam
DAFTAR PUSTAKA [1] Ed Burnette, 2009, Hello Android 2nd Edition, Pragmatic Bookshelf. [2] Mark L. Murphy, 2009, Beginning
mobile devices yang berbasis android dan game
Labirindroid
memenuhi
fungsinya
ini
juga
mampu
sebagai
sebuah
Android, Apress Inc. [3] Mulyadi, ST, 2010, Membuat Aplikasi Untuk
permainan yang utuh dan layak untuk dimainkan.
Berbagai
fasilitas
seperti
[4]
lain yang ada saat ini.
Retto Android
yang dapat dimainkan menjadikan game
memiliki daya saing dengan permainan
Yogyakarta,
Multimedia Center Publishing.
menu, grafis, dan terdapat beberapa labirin
Labirindroid ini semakin menarik serta
Android,
Meier,
2009,
Application
Professional Development,
Wiley Publising Inc. [5]
Sayed
Y.
Hashimi
and
Satya
Komatineni, 2009, Pro Android, Apress Inc. [6] URL:http://www.pasarkreasi.com/talk
5.2 Saran
/detail/game/3/buat-video-games-yukbag1-jenis-game
[7] URL :http://wahyuadam.web.ugm.ac.id/?p=17 [8] URL
[15] URL: http://id.wikipedia.org/wiki/IPhone [16] URL: http://en.wikipedia.org/wiki/Java_(pro gramming_language)
:http://justhayu.blogspot.com/2010/02
[17] URL:
/mengenal-sistem-operasi-pada-
http://en.wikipedia.org/wiki/Flowchart
komputer_15.html [9] URL : http://stewardelias.blogspot.com/2010 /04/pengenalan-sistem-operasiandroid.html [10] URL:http://febriani.staff.gunadarma.a c.id/Downloads/files/5616/Flowchart. pdf [11] URL: http://wartawarga.gunadarma.ac.id/20 10/02/apa-itu-smartphone/ [12] URL: http://developer.android.com/guide/in dex.html [13] URL: http://id.wikipedia.org/wiki/Symbian_ OS [14] URL: http://telcomcell.blogspot.com/2009/0 7/perkembangan-os-padahandset.html