BAB III PERANCANGAN GAME
III.1 Metodologi Perancangan Ada tujuh unsur yang harus dipenuhi sebuah game, yaitu:[4] 1. Konsep Awal 2. Desain Inti 3. Gameplay 4. Detail 5. Game Balance 6. Tampilan 7. Wrapping Up / Penyatuan
Gambar 3. 1 Tujuh Unsur Pembuatan Game.
Untuk memenuhi ketujuh unsur tersebut, maka perancangan dan implementasi software game pada handset berplatform BREW mengikuti flowchart di bawah ini:
20
Gambar 3. 2 Metodologi Perancangan dan Implementasi.
21
Inti dari aplikasi ini ada pada bagian Detail. Engine game terdiri dari tiga bagian: User Interface Engine, Core Engine dan Networking Engine. Masing-masing engine tersebut terdiri dari fungsi-fungsi berbeda lalu disatukan untuk membentuk engine yang saling bergantung satu sama lain. Pembahasan mendetail tentang ketiga engine tersebut akan diberikan pada sub bab III.6. Bagian terakhir adalah analisis dari performance grafik dan jaringan aplikasi. Analisis performance grafik dilakukan untuk mencari berapa delay rata-rata dari setiap skenario penggunaan resource grafik yang dibuat. Tujuannya adalah untuk mencari skenario terbaik untuk menggunakan interface grafik BREW. Skenario yang digunakan adalah: 1. penggambaran di seluruh bagian layar dengan file jpg; 2. penggambaran tile-per-tile di seluruh bagian layar; 3. penggambaran file jpg ditambah tile-per-tile; 4. penggambaran satu tile tiap kesempatan; 5. penggambaran empat tile sekaligus dalam satu kesempatan. Analisis performance jaringan dilakukan untuk mencari tahu berapa milisekon timercallback minimum yang dapat ditangani game BREW agar tidak mengalami error dalam pengiriman. Metoda dilakukan dengan cara mencoba beberapa nilai timercallback (1000, 800, 600, 500, 400, 300, 200, 100, 80, 60 dan 40 ms). Hasil yang dicari adalah berapa nilai delay (pengiriman sampai penerimaan) untuk setiap timercallback.
22
Algoritma pengambilan delay menggunakan fungsi bawaan dari BREW seperti di bawah ini:
Gambar 3. 3 Get Delay Algorithm.
23
III.2 Analisis Kebutuhan Game yang hendak dibuat harus memenuhi beberapa persyaratan:
menggunakan interface grafik;
berbasis platform Qualcomm BREW pada handset CDMA;
dapat dimainkan pada handset murah;
resource yang dibutuhkan kecil.
III.3 Konsep Awal Konsep awal game yang akan dibuat adalah:
game sederhana yang dapat diimplementasikan pada handset;
tidak membutuhkan resource yang besar;
genre Puzzle-Strategy;
tipe Tile-Games, secara khusus pada game Bomberman dengan beberapa penyesuaian;
dapat dimainkan sendiri maupun berdua melalui jaringan.
Berikut adalah spesifikasi program yang akan dibuat:
Jenis Program
: Tile-Game
Platform
: Qualcomm BREW
Tipe Handset Simulasi
: Standard Clamshell
Ukuran Layar
: 128 x 160 piksel
Jumlah Tile
: 128 horisontal dan 160 vertikal
Ukuran Tile
: 11 x 11 piksel
Layar Gameplay
: 121 x 121 piksel
Piksel Non-Gameplay
: Horisontal 3+4 piksel, vertikal 7+32 piksel
Tombol Gameplay
: ↑←↓→ dan “select”
Development Tool
: Microsoft Visual Studio 6.0
24
III.4 Desain Inti Core dari permainan ini adalah bahwa player harus mengalahkan musuh sebanyak mungkin agar dapat meraih poin yang besar. Untuk dapat mengalahkan musuh, pemain terlebih dahulu harus menghancurkan rintangan yang ada. Untuk permainan multiplayer, Player1 harus bersaing dengan Player2 untuk menghancurkan musuh sebanyak mungkin dalam waktu yang telah disediakan. Ketika waktu habis, pemain dengan nilai tertinggi yang akan keluar menjadi pemenangnya.
Gambar 3. 4 Hubungan Player1, Player2, Enemies dan Obstacles.
Desain Konsep Networking Dua client terhubung secara nirkabel melalui sebuah server. Tugas server adalah sebagai penghubung kedua client tersebut, sehingga setiap client merasa bahwa dia langsung menghadapi client yang lain.
Gambar 3. 5 Konsep Dasar Networking.
25
Networking didasarkan atas konsep rooming. Server dapat menangani beberapa room sekaligus di mana masing-masing room terdiri dari dua user. Jadi secara virtual user hanya terhubung dengan user dalam room yang sama.
Gambar 3. 6 Konsep Rooming.
Desain Level Pemain bergerak dalam matriks kotak (tiles) yang berukuran 11x11. Pergerakan pemain dibatasi oleh Wall (samping kiri-kanan dan atas-bawah level), Blocks (kotak berwarna hitam) dan Fragiles (kotak tambahan yang dapat dihancurkan dengan bomb). Pemetaan level dengan Fragiles adalah sebagai berikut (Fragiles diwarnai dengan kuning):
26
Gambar 3. 7 Desain Level.
Gambar 3. 8 Desain Level dan Fragile Wall.
27
III.5 Gameplay GAMEPLAY = ENVIRONMENT + RULES[4] Environment:
Gambar 3. 9 Desain Level Lengkap.
Putih : FREE
: jalanan, dapat dilewati dengan bebas
Kuning: FRAGILE
: tidak dapat dilewati sebelum dihancurkan
Merah : ENEMY
: musuh yang harus dibom; dapat dilewati dengan bebas
Hitam : BLOCK
: tidak dapat dilewati
Biru
: PLAYER1
: posisi awal Player1
Hijau : PLAYER2
: posisi awal Player2
28
Rules: Rules/Peraturan dalam permainan ini adalah sebagia berikut:
Player1 dan Player2 hanya dapat bergerak satu kotak ke atas, bawah, kiri atau kanan dalam setiap penekanan tombol;
Enemies hanya dapat bergerak satu kotak ke atas, bawah, kiri atau kanan secara random dalam setiap time-range (ditentukan dalam program);
semua sprite tidak dapat bergerak melewati Wall maupun Blocks;
Player1 dan Player2 diberikan jatah 2 buah bomb sebagai senjata;
Player1 mengacu pada sprite pemain sendiri, sedangkan Player2 mengacu pada pemain lawan;
dalam mode networking, pemain yang membuat room menjadi Master, sedangkan yang join menjadi Slave;
maksimal bomb yang ada di level adalah dua. Pemain hanya dapat menggunakan bomb lagi jika salah satu atau kedua bomb yang tertanam telah meledak;
Bomb hanya dapat menghancurkan Fragiles dan Enemies;
ledakan bomb tidak dapat menembus Block;
poin didapatkan jika bomb menghancurkan musuh;
permainan berakhir jika waktu telah habis.
Skenario User:
Skenario 1: user memainkan single player game
Skenario 2: user meminta highscore dari jaringan
Skenario 3: user menjadi master dalam network, menolak pemain lain
Skenario 4: user menjadi master dalam network, menerima pemain lain
Skenario 5: user menjadi slave dalam network, ditolak pemain lain
Skenario 6: user menjadi slave dalam network, diterima pemain lain
29
III.6 Detail Game
Gambar 3. 10 Detail Game.
Game ini secara virtual terdiri dari tiga bagian utama:
User Interface Engine adalah bagian yang dilihat dan dirasakan oleh Player.
Core Engine adalah bagian di mana perhitungan dilakukan.
Networking Engine adalah bagian yang mengatur hubungan dengan jaringan.
Detail 1: User Interface Engine Screen Flow Screen Flow adalah “aliran” perubahan tampilan layar. Tujuan pembuatan screen flow adalah untuk memberi gambaran seperti apa layar yang akan dihadapi user dan alirannya.
30
Gambar 3. 11 Screen Flow.
31