PEMBUATAN GAME “LITTLE ENGLISH” MENGGUNAKAN
GTGE FRAMEWORK SEBAGAI MEDIA PEMBELAJARAN
BAHASA INGGRIS
Naskah Publikasi
disusun oleh:
Moh. Baharudin M 07.01.2408
Rina Rahayu 07.01.2423
JURUSAN TEKNIK INFORMATIKA
SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER
AMIKOM
YOGYAKARTA
2010
THE MAKING OF"LITTLE ENGLISH " GAME USING GTGE FRAMEWORK
AS ENGLISH EDUCATION MEDIA
PEMBUATAN GAME “LITTLE ENGLISH” MENGGUNAKAN
GTGE FRAMEWORK SEBAGAI MEDIA PEMBELAJARAN
BAHASA INGGRIS
Moh Baharudin M
Rina Rahayu
Jurusan D3 Teknik Informatika
STMIK AMIKOM YOGYAKARTA
ABSTRACT
The method of learning while playing is very suitable to be applied to children.
Especially at the present time where English lessons are started early. This Java-based game is
made using a GTGE Framework. GTGE is Golden T Game Engine, a 2D Game Library / Game
SDK (Software Development Kit) to create a quality game.
This game is the way it works is there is a player, who guessed an object (eg animal
pictures, colors, numbers etc) by mentioning its’ name in English. As in other games, in this
game there are also levels of assessment.
The author uses Netbeans 6.7.1 as a tool for encoding Java programming language, whereas for image processing using Photoshop CS 2. In addition, the Bitmap Combine
necessary to combine the objects and Bitmap Masking to create a background image to be
transparent.
The purpose of making this game is to train English skills so they can increase their
knowledge of English and ease in learning English on a daily basis. This English-learning
game is a means for learning English by fun and in educative way.
Keywords : game, programming, Java, GTGE
1. Pendahuluan
Perkembangan teknologi komputer juga sangat berpengaruh terhadap
perkembangan game. Game berbasis java saat ini sudah familiar dan sangat dikenal
baik anak-anak maupun orang dewasa. Game java yang menggunakan game engine
memberikan kemudahan dalam pembuatannya. Selain gratis dan bisa digunakan
dalam berbagai macam platform, di Indonesia juga terdapat suatu pengembang game
bernama Golden T Game Studio yang mengembangkan Golden T-Game
engine(GTGE) framework.
Bidang yang akan diterapkan pada tugas akhir ini adalah pembuatan game
edukasi bahasa Inggris. Pemilihan game edukasi bahasa Inggris ini dimaksudkan
sebagai sarana pembelajaran bahasa Inggris yang menghibur dan mendidik. Game
edukasi ini akan dibuat denga menggunakan GTGE sebagai framework. Sehingga,
pada tugas akhir ini, akan dirancang dan diimplementasikan sebuah game
pembelajaran bahasa Inggris yang diharapkan dapat digunakan secara maksimal
dalam proses pembelajaran anak.
2. Landasan Teori
2.1 Java
Bahasa pemrograman Java menggunakan sintaks mirip dengan C++ namun
sintaks pada Java telah banyak diperbaiki terutama menghilangkan penggunaan
pointer yang rumit dan multiple inheritance. Java juga menggunakan automatic memory
allocation dan memory garbage collection. Pemrograman Java berorientasi objek
(Object Oriented Programming), Java mengunakan pemrograman berorientasi objek
yang membuat program dapat dibuat secara modular dan dapat dipergunakan kembali.
Pemrograman berorientasi objek memodelkan dunia nyata kedalam objek dan
melakukan interaksi antar objek-objek tersebut.
2.2 Golden T Game Engine (GTGE)
Golden T Game Engine (GTGE) merupakan sebuah 2D Game Library / Game
SDK (Software Development Kit) untuk membuat game yang berkualitas dengan
mudah. GTGE merupakan kumpulan fungsi bahasa pemograman Java (pustaka
Java), yang artinya Anda akan menggunakan bahasa pemograman Java untuk
membuat game dengan GTGE.
GTGE merupakan suatu pustaka lapisan tingkat tinggi (High Level Interface),
artinya programmer tidak perlu mengkhawatirkan perintah tingkat rendah lagi (yang
menyangkut perintah ke hardware komputer). GTGE mencoba menutupi (namun tidak
mengunci) fungsi tingkat rendah tersebut dengan menempatkan programmer pada
lapisan yang paling baik agar dapat membuat game dengan senyaman mungkin.
GTGE memberikan akses ke fungsi hardware tersebut secara langsung dengan cara
yang paling mudah.
a. Kemampuan Engine GTGE
1. Engine Input
2. Engine Grafis
3. Engine Suara
4. Engine Timer
5. Engine File I/O
6. Engine Citra
b. Sprite
Istilah sprite, dalam GTGE, digunakan untuk mendeskripsikan setiap objek dalam
game yang memiliki gambar dan karakteristik, Objek sprite ini, dalam GTGE, diwakili
oleh Sprite class yang berada dalam package com.golden.gamedev.object.
Langkah-langkah inisialisasi sprite :
1. Membuat objek sprite baru
2. Meng-update sprite
3. Me-render sprite
c. Collision (Tubrukan)
GTGE menyediakan 5 jenis pendeteksian tubrukan sebagai berikut.
1. BasicCollisionGroup class. Jenis tubrukan yang paling mendasar, hanya
mendeteksi apakah tubrukan terjadi atau tidak.
2. CollisionGroup class. Mendeteksi apakah tubrukan terjadi atau tidak
beserta dengan beberapa informasi mengenai tubrukan tersebut, seperti
sisi yang bertubrukan dan posisi sebelum tubrukan terjadi.
3. PreciseCollisionGroup class. Posisi sebelum tubrukan terjadi dihitung
secara tepat, sehingga sprite yang bertubrukan dapat kembali tepat
sebelum tubrukan terjadi.
4. AdvanceCollisionGroup class. Jenis tubrukan yang dapat mendeteksi
tubrukan antara satu sprite dengan banyak sprite sekaligus dalam sekali
waktu, misalnya tubrukan antara player dengan blok yang dipijaknya,
player dapat berpijak dalam beberapa blok sekaligus dan player mesti
berhenti tepat diatas blok-blok tersebut.
2.3 Netbeans
NetBeans merupakan sebuah proyek kode terbuka yang sukses dengan
pengguna yang sangat luas, komunitas yang terus tumbuh, dan memiliki hampir 100
mitra dan terus bertambah. Sun Microsystems mendirikan proyek kode terbuka
NetBeans pada bulan Juni 2000 dan terus menjadi sponsor utama.
2.4 Bitmap Combine
Bitmap Combine adalah alat untuk mengkombinasikan beberapa gambar
menjadi satu file. Sebagai contoh, sebelum dikombinasi ada 3 file gambar suatu
animasi robot yang berjalan.
2.5 Bitmap Masking
Bitmap Masking adalah alat untuk menjadikan suatu warna tertentu dalam
sebuah gambar menjadi transparan. Walaupun GTGE mendukung pembuatan
transparansi di dalam runtime, tetapi lebih baik untuk melakukannya di luar aplikasi
untuk mendapatkan performa penuh selama runtime.
2.6 Photoshop
Photoshop adalah software yang digunakan untuk memodifikasi gambar atau
foto secara profesional baik meliputi modifikasi obyek yang sederhana maupun yang
sulit sekalipun.
2.7 UML (Unified Modelling Language)
UML (Unified Modelling Language) adalah sebuah bahasa yang telah menjadi
standar dalam industri untuk visualisasi, merancang dan mendokumentasikan sistem
piranti lunak. UML menawarkan sebuah standar untuk merancang model sebuah
sistem. UML menggunakan class dan operation dalam konsep dasarnya. Maka ia lebih
cocok digunakan untuk pembuatan aplikasi yang menggunakan pemrograman
berorientasi objek. UML mempunyai berbagai jenis diantaranya : Use Case Diagram,
Class Diagram, Activity Diagram dan Sequence Diagram.
3. Analisis dan Rancangan
3.1 Analisis Kebutuhan Fungsional
a. Pemain dapat menuliskan nama setelah mencetak high score
b. Pemain dapat memilih untuk berlatih atau bermain quiz
c. Pemain dapat melihat daftar high score
3.2 Ide dan Gagasan
Ide dari pembuatan game ini bermula dari keinginan untuk memberikan ilmu
yang telah kami dapat kepada instansi tempat magang. Kami ingin membuat suatu
perangkat lunak yang bisa mendidik dengan cara yang menyenangkan untuk anak-
anak peserta didik.
3.3 Story Board (Sinopsis)
Game ini berupa kuis yang isinya adalah menebak nama-nama benda berupa
hewan, angka dan alat alat rumah tangga yang biasa di jumpai dalam bahasa Inggris.
User menebak gambar-gambar dengan mengklik salah satu dari empat pilihan kata
yang tersedia. Jika jawaban user benar maka akan mendapat nilai 1, jika salah maka
tidak mendapat nilai. Di akhir game user bisa memasukkan nama dan akan tersimpan
di storage memory game, dengan syarat user harus mencetak high score.
3.4 Perancangan Animasi dan Suara
Efek animasi dibuat pada button pilihan jawaban, pada saat user menmpelkan
pointer pada button maka akan tibul efek perubahan warna pada button. Setiap
jawaban yang salah akan ada perubahan pada indikator kesempatan. Indikator
kesempatan ini berupa gambar lampu merah.
3.5 Perancangan Timer
Timer dibutuhkan utuk membatasi waktu dari setiap pertanyaan. Timer untuk
setiap nomor soal adalah 20 detik. Apabila user belum selesai menjawab soal dalam
waktu yang telah ditentukan, maka secara otomatis akan masuk ke soal berikutnya
dan user dianggap gagal menjawab soal tersebut.
3.6 Perhitungan Skor
Jawaban benar mendapat skor 1, sedangkan jawaban yang salah tidak
mendapat skor atau 0. Setelah semua pertanyaan selesai dijawab, maka skor yang
diperoleh akan terakumulasi dan muncul dalam tampilan high score untuk selanjutnya
user bisa memasukkan nama yang diinginkan dan menyimpannya.
3.7 Perancangan Level dan Soal
Dalam game ini terdapat tiga level,masing masing level memiliki soal
tersendiri,untuk level 1 soal berjumlah 10,level dua berjumlah 20 dan level tiga
berjumlah 30 soal. Setiap soal di load secara random. Tipe soal setiap level berbeda.
3.8 Perancangan Tutorial Mode
Dalam game ini terdapat mode tutorial, sehingga user dapat belajar terlebih
dahulu sebelum masuk ke mode game. Dalam mode tutorial ini berisi gambar beserta
nama gambar tersebut. Jadi user bisa menghafalkannya.
3.9 Penyimpanan Skor
Pada bagian ini akan dijelaskan mengenai pembuatan desain dan pengolahan
score yang akan digunakan dalam permainan ini, meliputi : nomor urut, total score,
nama pemain dan level permainan . Aplikasi ini menggunakan sebuah file hiScore.dat
sebagai media penyimpanan.
3.10 Perancangan Gambar
Game Little English ini mempunyai beberapa tampilan yaitu:
a. Tampilan Menu
Pada tampilan menu, user dapat memilih untuk memulai permainan baru, melihat high
score yang sudah tersimpan sebelumnya, ataupun keluar dari mode menu (exit game).
b. Tampilan Tutorial Mode
Pada mode tutorial, user bisa mempelajari semua pertanyaan berikut jawaban yang
benar. Jadi user bisa menghafalkannya.
c. Tampilan Pertanyaan / Game
Pada mode permainan, user harus menjawab pertanyaan yang ditampilkan dengan
cara memlih jawaban yang tersedia. Setelah semua pertanyaan selesai dijawab, maka
mode game akan menampilkan high score.
d. Tampilan High Score
Pada tampilan high score ini berisi sepuluh nilai tertinggi yang telah tersimpan
sebelumnya. Dan apabila ada nilai yang lebih tinggi di capai oleh user, maka secara
otomatis akan menempatkan nilai tersebut pada urutannya, dari nilai tertinggi sampai
terendah.
3.11 Perancangan Use Case Diagram
Diagram ini menggambarkan interaksi antara pengguna dengan system,
dalam hal ini adalah player dan game, diagram Use Case game Little English
adalah sebagai berikut :
Gambar 3. 1 Use Case Diagram
3.12 Perancangan Activity Diagram
Diagram Aktivitas memudahkan kita dalam memahami langkah – langkah aliran
kerja, diagram ini memodelkan langkah kerja ( workflow ),dari use case sehingga
dapat diketahui siapa yang bertanggung jawab atas masing – masing aktivitas dan
obyek – obyek yang digunakan dalam aliran kerja.
Gambar 3. 2 Activity Diagram
3.13 Perancangan Sequence Diagram
Diagram ini menggambarkan tentang fungsionalitas dari masing – masing Use
Case dan interaksi yang terjadi antar obyek dalam sistem.
3.14 Perancangan Class Diagram
Diagram Class menggambarkan hubungan / relasi dan interaksi yang yang
terjadi antar class yang ada pada game Little English, diagram ini membantu programmer
untuk mendapatkan struktur system sebelum menuliskan kode program.
4. Implementasi dan Pembahasan
4.1 Pembuatan Item
ITEM
Nama Gambar Fungsi
pointer
Melakukan seleksi (pointing)
Indicator
kesempatan
Sebagai penanda kesempatan yang
tersisa
Button jawab
Sebagai tempat menjawab
pertanyaan,nantinya button ini akan
diberi text jawaban
Gambar
pertanyaan
Merupakan salah satu contoh dari
pertanyaan yang harus di jawab
Button Study
Untuk ke mode study/Tutorial
Button Quiz
Untuk ke mode quiz
Button Score
Untuk melihat high score
Button Exit
Untuk keluar dari game
Button Menu
Untuk kembali ke mode menu
Button Next
Untuk beralih ke gambar berikutnya
pada mode latihan/tutorial
Button
Previous
Untuk beralih ke gambar sebelumnya
pada mode latihan/tutorial
4.2 Pengimplementasian Animasi dan Suara
Pembuatan gambar animasi menggunakan adobe photoshop. Kemudian
digambungkan dengan menggunakan software bitmap combine dari golden studios.
Sedangkan pemanggilan sound hanya dengan memanggil method play sound dan
play music pada package com.golden.gamedev.GameObject pada GTGE.
4.3 Pengimplementasian Timer Game
Timer digunakan untuk membatasi waktu dari user pada saat menjawab
pertanyaan di mode game, serta timer untuk intro update level dan game over.
Pembuatan timer menggunakan class Timer pada package
com.golden.gamedev.object.
4.4 Pengimplementasian Skoring dan High Score
Penghitungan score dihitung ketika terjadi klik pada jawaban dan pada class
colisson akan memanggil method CekJawaban(). Dan method tersebut akan
melakaun pengecekan nilain integer pada atribut di file txt. Integer tesebut adalah
1,2,3,4 dimana 1 adalah jawaban benar untuk A,2 untuk B,3 untuk C dan 4 untuk D.
4.5 Pengimplementasian Pemanggilan Soal dan Pengaturan Level
Soal di ambil dari sebuah file text(.txt) yang berisi array list yang nanti akan di
baca oleh java string tokenizer, pemanggilan dari string tokenizer diambil secara satu
persatu berdasarkan urutan yang di lakukan oleh method setSoal().
Dalam array list tesebut berisi nomor soal,nama file gambar, pilihan jawaban
a,b,c dan d,beserta jawaban benar. Isi dalam array tersebut dipisahkan dengan tanda
koma. Kemudian file txt tersebut diolah pada methode loadSoal(). Soal yang diload
dari file txt diambil secara acak oleh method yang disediakan oleh engine GTGE, yang
dinamakan methode getRandom().
4.6 Pengimplementasian Mode Tutorial
Mode tutorial berisi gambar beserta penjelasan dari nama gambar tersebut.
Pemanggilan gambar dan nama menggunaka metode yang hampir sama dengan
pemanggilan soal pada mode game. Gambar dan nama diambil dari sebuah file txt
dan diolah oleh methode loadSoal().
4.7 Pembuatan Tampilan Background Game
Background ini dibuat menggunakan adobe photoshop, background ini berupa
gambar dengan ukuran 800x600 pixel dan bertipe .PNG.
Gambar 4. 1 Background Game
4.8 Pembuatan Menu
Di bagian menu ini, user dapat memilih tobol tombol dengan melakukan klik pada
tombol tersebut.
Gambar 4. 2 Tampilan Menu
4.9 Pengujian Sistem
Hasil dari pengimplementasian akan dilakukan pengujian, tampilan awal pada
saat game dijalankan adalah sebagai berikut :
4.9.1 Menu
Dalam tampilan awal player akan diberikan beberapa pilihan menu , yaitu :
a. Study, menu ini digunakan untuk masuk ke dalam Tutorial game.
b. Quiz, menu ini digunakan untuk masuk ke game mode.
c. Score, digunakan untuk melihat high score (nilai tertinggi ) yang tersimpan.
d. Exit, menu ini digunakan untuk keluar dari menu/exit game.
4.9.2 Tutorial
Ketika pemain memilih mode tutorial maka akan muncul tampilan seperti
dibawah ini :
Gambar 4. 3 Tampilan Tutorial
Ketika pemain memilih tombol next, maka gambar akan beralih ke gambar berikutnya.
Dan ketika pemain memilih tombol previous maka gambar akan beralih ke gambar
sebelumnya. Dalam mode ini pemain juga bisa langsung ke mode quiz dengan
memilih tombol quiz. Ataupun kembali ke menu utama dengan memilih tombol menu.
4.9.3 Intro Game
Ketika pemain memilih menu Quiz maka akan muncul tampilan seperti di bawah
ini:
Gambar 4. 4 Tampilan Intro
Form intro ini akan muncul beberapa detik, didalamnya terdapat petunjuk untuk
bermain.kemudian akan langsung masuk ke pertanyaan level pertama
4.9.4 Mode Game Level
Gambar 4. 5 Tampilan Mode Game / Kuis
Pada bagian level pertama, pemain diharuskan menjawab setiap pertanyaan
yang keluar dengan melakukan klik pada tombol jawab yang tersedia sebelum waktu
habis,waktu disini dihitung disetiap pertanyaan. Jadi setiap pertanyaan memiliki waktu
tersendiri. Waktu untuk menyelesaikan setiap pertanyaan adalah 20 detik. Jika pemain
menghabiskan waktu tanpa menjawab pertanyaan maka lampu merah akan menyala dan
kesempatan berkurang serta akan beralih kepertanyaan berikutnya secara otomatis.
Contohnya seperti gambar dibawah:
Gambar 4. 6 Gambar Saat Jawaban Salah
Pada mode game ini ada 3 level yang harus diselesaikan. Untuk level satu
terdapat 10 pertanyaan. Dan jika kesepuluh pertanyaan tersebut telah selesai maka
akan masuk ke intro update level, seperti gambar dibawah ini:
Gambar 4. 7 Intro Update Level
Intro ini hanya berlangsung selama 3 detik, hal ini hanya bertujuan untuk
memberi tanda bahwa telah terjadi update level.
Setelah level terupdate maka game akan menampilkan soal untuk level dua.
Pada level dua ini terdapat 20 pertanyaan. Persyaratan untuk dua ini sama dengan
level pertama .Yang membedakan adalah jumlah soalnya. Untuk kesempatan dan
timer untuk menjawab soal dibuat sama disetiap levelnya.
Tampilan dari level kedua adalah sebagai berikut
Gambar 4. 8 Tampilan Level Dua
Ketika pemain telah menyelesaikan semua pertanyaan pada level kedua, maka akan
menuju ke tampilan intro update level dan menuju ke level tiga
Adapun tampilan intro update level tiga adalah sebagai berikut :
Gambar 4. 9 Tampilan Intro Update
Setelah selesai intro update level, maka akan masuk ke level tiga, berikut adalah
tampilannya:
Gambar 4. 10 Tampilan Level Tiga
Setelah level terupdate maka game akan menampilkan soal untuk level tiga. Pada
level tiga ini terdapat 30 pertanyaan yang harus diselesaikan oleh pemain.
4.9.5 High Score
Setelah semua pertanyaan selesai dijawab oleh user, maka game akan menuju ke
tapilan high score. Seperti gambar berikut :
Gambar 4. 11 Tampilan High Score
5. Kesimpulan
Berdasarkan perencanaan, perancangan dan implementasi yang dilakukan dapat
diambil kesimpulan sebagai berikut :
a. Golden T Game Engine dapat digunakan untuk membangun sebuah game
dengan genre quiz sebagai media pembelajaran bagi anak anak untuk
membantu menghafal nama-nama objek dalam bahasa inggris.
b. Dalam pembuatan game little english ini perlu dipersiapkan perencanaan
dalam pembuatan pertanyaan berikut gambar yang digunakan beserta
aturan dari permainannya. Agar mudah dimengerti, karena game ini
ditujukan untuk anak-anak.
c. Pemakaian Golden T Game Engine yang berisi fungsi – fungsi siap pakai
memudahkan programer dalam implementasi, karena programer tidak perlu
membuat method sendiri untuk memutar suara, mengatur sprite, dan fungsi
- fungsi dalam pembuatan game yang lain.
DAFTAR PUSTAKA
Siallagan, Sariadin. 2009. Pemrograman Java: Dasar-Dasar Pengenalan Dan Pemahaman, Yogyakarta : Penerbit Andi.
Kadir, Abdul. 2008. Dasar Pemrograman Java 2. Yogyakarta : Penerbit Andi. Avestro, Joyce. 2007. JENI Pengenalan Pemrograman 1. Jardiknas. Oracle Corporation. 2010. Netbeans IDE Java Kode Terbuka. http://netbeans.org/index_id.html. diakses tanggal 29 April 2010. Dharwiyanti, Sri. 2003. Pengantar Unified Modeling Language (UML). Jakarta : Ilmu Komputer. Soliq. 2006. Pemodelan Sistem Informasi Berorientasi Objek Dengan UML. Surabaya : Graha Ilmu. Paulus, Tuerah. 2004. Powerful Game Engine. http://goldenstudios.or.id/products/GTGE/index.php. diakses tanggal 25 April 2010.