PENERAPAN METODE COLLISION DETECTION DALAM PERMAINAN BERBASIS ANDROID Yulianti Haerun Nisa,Prihastuti Harsani dan Arie Qur’ania Program Studi Ilmu Komputer, Fakultas Matematika dan Ilmu Pengetahuan Alam, Universitas Pakuan Jl. Pakuan PO BOX. 452, Bogor Telp/Fax (0251) 8375547 Email:
[email protected]
Abstrak Perkembangan bidang teknologi dapat dikatakan sangat cepat sehingga merambah hampir semua aspek kehidupan manusia. Peradaban terus berubah - ubah yang cukup segnifikan. Era informasi membutuhkan sumber daya manusia untuk dapat terus memperoleh informasi yang akan digunakan sebagai senjata untuk tetap kompetitif dalam hidup. Pesatnya perkembangan permainan ini dibuktikan dengan meningkatnya jumlah game menjamurnyaindustri dan aplikasi game yang diproduksi untuk berbagai platform. Ketik bermain game bahkan lebih beragam dan memiliki karakteristik unik yang menarik rasa ingin tahu para pemain untuk menyelesaikan permainan. Penembak Galaxy Game adalah shooting game bergenre. Permainan ini terdiri dari 3 level dan pengguna dapat menembak pesawat musuh. Jika level ini dimainkan berhasil atau mencapai pemain targetmaka bisa bermain tingkat berikutnya. Setiap tingkat memiliki musuh yang berbeda dan lebih sulit. Tujuan dari penelitian ini adalah untuk membuat aplikasi Shooters Galaxy permainan. Perangkat lunak yang digunakan adalah Adobe Flash CS3 dan ActionScript sebagai pendukung naskah.
Kata Kunci: Aplikasi game, collision detection. sesungguhnya, air plane shooter merupakan game berjenis stand alone dimana pemain harus menambak pesawat musuh dan mendapatkan skor, permainan ini dirancang dengan menggunakan Adobe Flash CS6 dan dijalankan pada platform android serta dalam game ini diterapkan juga metode collision detection Metode collision detection merupakan salah satu metode yang bisa digunakan untuk memeriksa suatu kondisi objek apakah terjadi tubrukan objek atau tidak, ketika terjadi tubrukan objek maka beberapa proses bisa di eksekusi dan menghasilkan kembali berupa informasi yang diketahui oleh pengguna sistem..
Pendahuluan Dalam suatu game, biasanya dikembangkan untuk kalangan remaja bahkan dewasa sekalipun untuk hiburan. Game biasanya dimainkan lebih dari satu pemain dalam waktu yang bersamaan (Game Online) tetapi juga bisa dimainkan sendiri (Stand Alone Game).Dalam menciptakan atau membangun sebuah cerita gamebiasanya tidak lepas dari karakter-karakter tokoh yang mengisi cerita darigame tersebut. Game memiliki kemampuan untuk mempresentasikan dunia-dunia kecil dimana pembangunan suatu karakter tokoh berdasarkan implementasi dari sebuah keadaan yang 1
Collision Detection Teknik deteksi tabrakan biasanya dipakai pada saat pemrograman animasi gambar. Teknik deteksi tabrakan adalah proses pemeriksaan apakah suatu sprite
yang menyebabkan objek tersebut harus memantul. Teknik pantulan ini memanfaatkan hukum fisika yaitu sudut datang objek sama dengan sudut pantul objek
telah bertabrakan antara objek-objek dengan sesamanya. Pendeteksian dan pemrosesan hasil tabrakan antara objekobjek dalam permainan(game) menggunakan tipe Collision Bounding yang berbeda-beda. Jenis dari Collision Bounding adalah sebagai berikut :
Collision detection merupakan teknik deteksi tabrakan untuk mengetahui objek-objek apa saja yang bersentuhan dalam bidang koordinat tertentu. Objekobjek ini bisa saja memiliki bentuk yang sangat bervariasi. Pada gambar 1 di bawah terlihat bahwa objek-objek pada game memiliki bentuk yang bervariasi, ada yang berbentuk kotak, segi-n, sampai bentuk pesawat pemain yang sangat mendetail. Untuk mempercepat proses pada collision detection, umumnya objek-objek ini direpresentasikan secara logik dengan bentuk primitif seperti segiempat dan lingkaran (jika pada koordinat dua dimensi), atau kubus dan bola (jika pada koordinat tiga dimensi). Bentuk primitif yang merepresentasikan objek ini biasa disebut sebagai Bounding Box atau Bounding Circle.
1. Pixel perfect . Teknik yang diterapkan dengan memeriksa lokasi pixel dalam suatu sprite dengan objek apakah sprite tersebut menimpah objek atau tidak. 2. Circular . Teknik deteksi yang paling mudah diantara semua teknik yang ada yaitu dengan cara merepresentasikan OffsetX dan OffsetY pusat dari lingkaran. 3. Rectangular . Teknik yang paling banyak digunakan yaitu dengan memeriksa suatu objek yang mengalami interaksi pada posisi atas, bawah, kiri dan kanan.
Gambar 1. Representasi menggunakan segiempat dan lingkaran
4. Teknik Bouncing (pantulan) Teknik pantulan jika dalam suatu objek yang bergerak mengenai objek lain dan objek tersebut memantul berbalik arah. Kemungkinan yang lain adalah objek mengenai suatu bidang datar
Metode Penelitian Rancangan permainan air plane shooter dengan Metode collision detection ini menggunakan metode Pendekatan Pengembangan Multimedia, yang terdiri dari 6 fase, yaitu :
2
Perancangan Flowchart Collision Detection Algoritma collision detection merupakan proses pengecekan apakah beberapa buah objek spasial saling bertumpuk atau tidak. Jika ternyata ada paling sedikit dua buah objek yang bertumpuk, maka kedua objek tersebut dikatakan saling bertumpukkan. Pada ruang spasial dua dimensi objek yang bertumpuk berarti objek spasialnya beririsan Penerapan algoritma collision detection pada game airplane shooter berikut gambar flowchart detection collision antara pesawat dengan bom.
Start
.
Design
Concept
Manual Collecting
Distribution
Assembly
Testing Stop
Gambar 2. Pendekatan Pengembangan Multimedia Rancangan Dan Implementasi Perancangan Flowchart Permainan Arsitektur game yang dibangun tentunya tidak bisa lepas dari perancangan system, dalam perancangan system penulis memilih menggunakan flowchart untuk menggambarkan analisa permainan yang dibuat ini, berikut adalah arsitektur game dengan menggunakan flowchart yang penulis rancang.
Gambar 4.Flowchart Collision Detection HitTestObj merupakan method dalam sebuah movie clip untuk menghitung terjadinya tumbukan dengan rumus : Untuk Pemain (pesawat) misal mempunyai nilai (x1, y1, lebar1 dan panjang1 ) Untuk musuh misal mempunyai nilai (x2,y2, lebar2 dan panjang2) Collision detection = ( (x1 < x2 + lebar2) && (x1+lebar1 > x2) && ( y2 < y2 +
Gambar 3.Flowchart Permainan
3
panjang2) && ( y1 + panjang1 > y2))
a.
Scene Intro Scene intro merupakan tampilan pertama ketika aplikasi dijalankan, berikut adalah desain scene intro yang dirancang yang ditunjukan pada gambar 6.
Misal: Nilai pemain (rect1) = { x1:5, y1:5, l1: 50, p1:50) Nilai musuh (rect2) = { x2:20, y2:10, l2: 10, p2:10) Maka : Jika ((x1 < x2 + l2) && (x1+l1 > x2) && ( y1 < y2 + p2) && (p1 + y1 > y2)) Jika ( ( 5 < 20+10) && (5+50 > 20)&& (5 < 10+10) && ( 50+5 > 10)) Jika ( (5 < 30) && (55 > 20) && (5<20) && (55>10)) maka terjadi tumbukan (collision detection)
AIR PLANE BOMB GAMBAR
Flowchart Skor Gambar 6. Scene Intro Scene Menu Permainan Scene menu permainan merupakan scene yang digunakan untuk menampilkan menu yang bisa diakses oleh pengguna ditunjukan pada gambar 7. b.
START
Gambar 5. Flowchart Skor Perancangan Antarmuka Perancangan tampilan menu atau rancangan Scene dalam program ini sangat diperlukan dalam pemrograman visual karena scene Utama ini merupakan bentuk tampilan saat program dijalankan. Pada program pembelajaran terdapat 2 Scene yang dirancang yaitu:
MAIN HELP MENU
EXIT
Gambar 7. Scene Menu Permainan c.
Scene Permainan Scene permaianan merupakan desain untuk menampilkan informasi mengenai arena bermaian, ditunjukan pada gambar 8.
4
.Berikut merupakan tampilan menu permaianan.
Gambar 8. Scene Permainan d.
Desain Scene Skor Scene skor merupakan desain untuk menampilkan informasi total skor dari user, ditunjukan pada gambar 9.
Gambar 10. Tampilan Menu Permainan Tampilan Permainan Tampilan dibawah menampilkan permainan ketika dijalankan, ditunjukan pada gambar 11.
Gambar 9. Desain Scene Skor Hasil Dan Pembahasan Hasil Implementasi merupakan tahapan setelah melakukan analisis dan perancangan permainan. Dimana aplikasi siap dioperasikan pada keadaan sebenarnya apakah aplikasi yang dibuat telah menghasilkan output yang diinginkan. Tampilan Aplikasi Merupakan tampilan awal saat program dijalankan.
Gambar 11. Tampilan Permainan Pada Level 1 Pada level 2 permainan akan dilanjutkan dengan cara yang sama, bedanya pada level 2 skor yang harus di dapat untuk masuk ke level 3 yang merupakan level terakhir adalah sebesar 330, berikut tampilan permainan pada level 2 ditunjukan pada gambar 12.
5
Gambar 12.Tampilan Permainan Level 2 Ketika proses simpan dilakukan maka akan ditambahkan pada list data skor yang ada, ditampilkan pada gambar 13. Dari hasil pengujian struktural yang dilakukan pada setiap form/halaman, telah terbukti bahwa halaman program tersebut sudah dapat dijalankan.Semua tampilan form/halaman juga sudah sesuai dengan perancangan yang dibuat pada tahap perancangan. Tahap Uji Coba Fungsional Setelah melakukan uji coba struktural selanjutnya dilakukan uji coba fungsional, uji coba fungsional dilakukan dengan cara mengklik setiap link dan melihat halaman yang akan terbuka. Hasil uji coba fungsional ini, dapat dilihat pada tabel 2.
Gambar 13. Data Pemain
Uji Coba Struktural Uji structural bertujuan untuk mengetahui apakah permainan yang dibuat sudah sesuai dengan rancangan. Berikut adalah hasil uji structural mulai dari scene intro sampai dengan scene skor yang ditunjukan pada tabel 1 . Tabel 1. Uji Coba Struktural
Tabel 2. Uji Coba Fungsional No Output Status 1 Tombol Play Berfungsi 2 Tombol How To Berfungsi 3 Tombol up Berfungsi 4 Tombol down Berfungsi 5 Tombol shoot Berfungsi 6 Input nama pemain Berfungsi 7 Tombol keluar Berfungsi
6
adobe flash CS6 dalam penelitian ini sudah cukup baik. Setiap aplikasi tentunya memiliki kelebihan dan kekurangan dari proses pembuatannya, berikut adalah kelebihan dari aplikasi yang dibuat adalah game air plane shooter yang dirancang menggunakan Adobe Flash CS6 dapat berjalan dengan baik pada emulator dan smartphone android dengan minimal versi android 4.1 dan juga harus terdapat adobe air,Interface yang sederhana serta kemudahan navigasi dalam memainkan game air plane shooter,memiliiki suara musik yang sesuai dengan permainan yang dirancang,menggunakan tabel untuk menyimpan informasi skor
Uji Coba Validasi Uji coba ini merupakan uji coba untuk mengetahui keakuratan data yang telah dimasukan ke dalam aplikasi permainan dan setelah dilakukan pengujian melalui aplikasi permainan ini dinyatakan valid dan sesuai. Sesuai tabel hasil perbandingan manual dengan menggunakan aplikasi permainan ini, disajikan pada table 3 dan gambar 14 Tabel 3. Uji Coba Validasi No 1 2 3 4 5
Banyak Tembakan 5 4 3 2 1
Point 50 40 30 20 10
Saran Untuk pembuatan aplikasi permainan bisa dilakukan dengan beberapa metode lain selain metode collision detection, dan untuk tampilan bisa lebih interaktif dengan tampilan 3 dimensi.
.
Daftar Pustaka Chandra., 2006 Tujuh Jam Belajar Interaktif Flash Professional 8 untuk Orang Awam. Daryanto., 2007, Sistem Multimedia dan Aplikasinya,
Gambar 14. Validasi Tabel Skor Kesimpulan
Radion, 2013, Ease Game Programming Usung Flash and Action Script 3.0.
Dari penelitian yang dilakukan bahwa permainan airplane shooter yang dirancang bisa menerapkan konsep collision detection dengan cukup baik, pesawat musuh yang ditembak memiliki skor dan pada setiap level pesawat yang ditembak akan lebih banyak, pemanfaatan
Madcoms., 2011, Mahir Dalam 7 Hari Adobe Flash CS 6. Suyanto., 2010, Artificial Intelligence Wibawanto., 2006, Membuat Dengan Macromedia Flash.
7
Game