mgdw4 game template: vertical shooter
TRANSCRIPT
Mobile Games Developer War 4: Online Camp
MGDW4 Game Template: Vertical Shooter
Penjelasan singkat game template
Mobile Games Developer War 4: Online Camp
GameplayVertical shooter merupakan game menembak dengan tampilan 2D dan view pointnya dari atas.Kita akan mengendalikan sebuah pesawat, lalu akan ada musuh (pesawat lain) yang datang dari arah yang berlawanan.Musuh tersebut ada 3 tipe, dan setiap tipe akan berbeda pergerakan dan gambarnya.Waktu kedatangan musuh tersebut pun akan berbeda – beda, akan ada pola untuk setiap kedatangan musuh.Template game ini didesain untuk emulator/device dengan layar landscape, tetapi tidak menutup kemungkinan game ini dikembangkan pada jenis layar yang berbeda.
Mobile Games Developer War 4: Online Camp
GameLogicKetika pertama kali dijalankan, game akan meload level data yang berisi kapan enemy akan muncul dan tipe dari enemy yang muncul.
Lalu akan ada counter untuk menghitung jarak, gunanya untuk mendefinisikan finish line dan kemunculan enemy.
Pada jarak tertentu, maka akan muncul enemy dengan tipe yang telah ditentukan, dan kita pun dapat menembakkan enemy dengan peluru kita.
NOTE:- Template Game ini lebih menekankan pada logic menembak, level data, dan mendefinisikan behavoiur dari masing – masing enemy- Belum ada finish line- Belum ada skor- Belum ada health pesawat kita
Mobile Games Developer War 4: Online Camp
Contoh Pengembangan Vertical Shooter
Banyak hal yang bisa dikembangkan dari game Vertical shooter ini, mulai dari membuat seperti game Raiden yang memiliki visual yang polish dan gameplay yang menarik
Mobile Games Developer War 4: Online Camp
Contoh Pengembangan Verctical Shooter
Atau mengubah tema permainan menjadi game semacam Shock Troopers. Dengan mengubah arah gerak dan arah tembak dari hero, maka dapat dikembangkan menjadi game seperti dibawah
Mobile Games Developer War 4: Online Camp
Overview Class
• ShooterMidlet.java, sebagai MIDlet utama• ShooterCanvas.java, sebagai canvas utama• Source.java, sebagai class helper untuk mempermudah
dalam inisialisasi image• Data.java, sebagai class untuk menyimpan level data• Stage.java, sebagai class yang berisi logic pada game
vertical shooter• Musuh.java, sebagai class yang menyimpan data musuh• Peluru.java, sebagai class yang menyimpan data peluru• Player.java, sebagai class yang menyimpan data player
Mobile Games Developer War 4: Online Camp
ShooterCanvas.javaShooterCanvas(), konstruktor untuk inisialisasi variable yang dibutuhkan
start(), untuk menjalankan Thread, dipanggil dari ShooterMidlet.java
run(), Game loop dari game ini draw(), untuk menggambar background, pesawat, peluru, dan musuhinput(), berisi fungsi untuk
menghandle inputan dari player
Mobile Games Developer War 4: Online Camp
Data.javaData.java hanya berisi satu array 2D yang berfungsi untuk menyimpan levelLevel tersebut hanya mendefinisikan kapan musuh akan dipanggil dan tipe musuh yang akan keluar
Source.java
Fungsi dari class ini pun simple, hanya sebagai helper untuk inisialisasi image
Mobile Games Developer War 4: Online Camp
Musuh.java
Musuh(), merupakan konstruktor dari class Musuh.java, dengan parameter masukan image.
update(), method ini untuk update pergerakan dari pesawat musuh berdasarkan tipenya, disini terlihat kalau tipe musuh 0 akan bergerak lurus kebawah.Tipe musuh 1, akan bergerak ke kiri dan ke kanan jika sudah mentok dilayarTipe musuh 2, akan belok setelah bergerak sejauh 90 pixel
set(), berfungsi untuk setting posisi x musuh dan arah terbang berdasarkan tipenya
Mobile Games Developer War 4: Online Camp
Player.java
Player(), merupakan konstruktor dari class Player.java
update(), method untuk memanggil nextFrame() yang artinya player akan beranimasi
set(), berfungsi untuk setting posisi awal dari pesawat kita
Mobile Games Developer War 4: Online Camp
Peluru.java
Peluru(), merupakan konstruktor dari class Peluru.java, dan setting posisi peluru berdasarkan parameter masukannya
update(), method untuk mengubah posisi dari peluru, disini terlihat move(0,-6) yang artinya posisi Y peluru akan berubah -6 setiap framenya
Mobile Games Developer War 4: Online Camp
Stage.javaStage(), konstruktor untuk inisialisasi source dan random
set(), method tersebut berfungsi untuk inisialisasi posisi player, peluru, dan musuh. Serta inisialisasi jarak dan counter musuh
update(), method tersebut berfungsi untuk menggambar setiap isi Vector ke canvas, baik itu Vector musuh ataupun peluru. Dan menghapus Vector pada index tertentu ketika posisi Y – nya sudah diluar canvas
tembak(), berfungsi untuk memasukkan peluru ke dalam Vector
addMusuh(), method tersebut untuk menambahkan musuh ke dalam Vector.