Membuat game Thinking and shoot dgn Netbeans.pdf

20
Membuat Game “THINKING AND SHOOT” Dengan NetBeans IDE 6.8 Tugas Akhir untuk memenuhi sebagian persyaratan mencapai gelar Ahli Madya pada jenjang Diploma III jurusan Teknik Informatika Disusun oleh : Ibrahim Azis 07.01.2246 Dadang Prasetyo 07.01.2249 JURUSAN TEKNIK INFORMATIKA SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER AMIKOM YOGYAKARTA 2010

description

membuat game berpikir dan menembaj dengan pemrograman java netbeans yang lebih bagus.

Transcript of Membuat game Thinking and shoot dgn Netbeans.pdf

Membuat Game “THINKING AND SHOOT”

Dengan NetBeans IDE 6.8

Tugas Akhir

untuk memenuhi sebagian persyaratan mencapai gelar Ahli Madya pada jenjang

Diploma III jurusan Teknik Informatika

Disusun oleh :

Ibrahim Azis 07.01.2246

Dadang Prasetyo 07.01.2249

JURUSAN TEKNIK INFORMATIKA

SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER

AMIKOM

YOGYAKARTA

2010 

Mem

I

D

NAS

mbuat Gam

Deng

Ibrahim Az

Dadang Pr

D

Han

Ta

D3

S

SKAH PU

me “THINK

gan NetBea

Disusun o

zis

asetyo

Dosen Pemb

nif Al FattaNIK.19030

anggal 28 Ju

Ketua Jur

Teknik Inf

Sudarmawa

NIK. 1903

UBLIKAS

KING AND

ans IDE 6.8

oleh :

07.0

07.0

bimbing

a, M.Kom02096

uni 2010

rusan

formatika

an, MT

02035

I

D SHOOT”

8

01.2246

01.2249

Making Games “THINKING AND SHOOT”

With NetBeans IDE 6.8

Membuat Game “THINKING AND SHOOT”

Dengan NetBeans IDE 6.8

Ibrahim Azis

Dadang Prasetyo

Jurusan D3 Teknik Informatika

STMIK AMIKOM YOGYAKARTA

ABSTRACT

Game "Thinking And Shoot" is a kind of two-dimensional games that run on PCs comprised of various dynamic animated images. Game "Thinking And Shoot" tells the story of the attack from alien spacecraft from outer space who wants to destroy the earth.

In order to maintain the population of planet Earth sustain the planet by doing resistance against aircraft aliens from outer space by doing shots.

In this thesis will discuss how to create movement patterns that game and since moving to right to left, shooting, doing arithmetic calculations that are arranged into an interesting game, educate and entertain. This game is built using the Java programming language with Netbeans 8.6 and utilize the tool GTGE 2D Game Library.

Keywords: two-dimensional game, java, library GTGE

1. Pendahuluan

Perkembangan teknologi yang sangat pesat dewasa ini menyebabkan

kebutuhan akan teknologi yang semakin besar pula, tidak hanya dalam pekerjaan,

dalam dunia hiburan pun sekarang ini teknologi juga sangat berperan, mulai dari

film, musik dan bahkan hiburan interaktif atau yang biasa kita sebut video game.

Video game atau yang sekarang ini lebih sering disebut game saja, jenisnya

semakin bervariasi sejalan dengan perkembangan teknologi perangkat keras dan

perangkat lunak. Jika dahulu orang hanya mengenal pong maka sekarang ada

puluhan ribu game dengan jenis yang bermacam-macam di dunia ini.

Perkembangan game saat ini berkembang pesat. Saat ini game tidak hanya

dimainkan di komputer, yang hanya bisa dimainkan dengan teman yang kita kenal

tetapi saat ini sudah banyak game di dunia maya atau yang sering kita sebut

dengan game on-line yang di mainkan oleh banyak orang dalam satu permainan,

walaupun jarak mereka saling berjauhan dan tidak saling mengenal

Berdasarkan hal di atas tersebut, penulis ingin membuat sebuah game yang

unik dan menarik tetapi juga mengandung unsur pendidikan. Game yang penulis

buat menggunakan bahasa pemrograman java dengan library GTGE. Game yang

dibuat merupakan sejenis game education yang dijalankan di desktop. Game ini

merupakan game petualangan pesawat luar angkasa yang menuntut pemainnya

agar dapat berpikir cepat karena harus melakukan perhitungan dahulu sebelum

melakukan aksi penembakan terhadap pesawat musuh. Sesuai dengan topik yang

dipaparkan di atas, maka dalam Tugas Akhir ini penulis mengambil judul

“THINKING AND SHOOT”.

2. Landasan Teori

2.1 Apa itu Teknologi Java?

2.1.1 Sebuah Bahasa Pemrograman

Sebagai sebuah bahasa pemrograman, Java dapat membuat seluruh bentuk

aplikasi, desktop, web dan lainnya, sebagaimana dibuat dengan menggunakan

bahasa pemrograman konvensional yang lain.

Java adalah bahasa pemrograman yang berorientasi objek (OOP) dan dapat

dijalankan pada berbagai platform sistem operasi. Perkembangan Java tidak hanya

terfokus pada satu sistem operasi, tetapi dikembangkan untuk berbagai system

operasi dan bersifat open source.

2.1.2 Sebuah Development Environment

Sebagai sebuah peralatan pembangun, teknologi Java menyediakan banyak

tools : compiler, interpreter, penyusun dokumentasi, paket kelas dan sebagainya.

2.1.3 Sebuah Aplikasi

Aplikasi dengan teknologi Java secara umum adalah aplikasi serba guna

yang dapatdijalankan pada seluruh mesin yang memiliki Java Runtime

Environment (JRE).

2.1.4 Sebuah Deployment Environment

Terdapat dua komponen utama dari Deployment Environment. Yang

pertama adalah JRE, yang terdapat pada paket J2SDK, mengandung kelas–kelas

untuk semua paket teknologi Java yang meliputi kelas dasar dari Java, komponen

GUI dan sebagainya. Komponen yang lain terdapat pada Web Browser. Hampir

seluruh Web Browser komersial menyediakan interpreter dan runtime

environment dari teknologi Java.

2.2 Mengapa Mempelajari JAVA?

Berdasarkan white paper resmi dari SUN, Java memiliki karakteristik

berikut :

1. Sederhana

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.

2. Berorientasi objek (Object Oriented)

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.

3. Dapat didistribusi dengan mudah

Java dibuat untuk membuat aplikasi terdistribusi secara mudah dengan

adanya libraries networking yang terintegrasi pada Java.

4. Interpreter

Program Java dijalankan menggunakan interpreter yaitu Java Virtual

Machine (JVM). Hal ini menyebabkan source code Java yang telah

dikompilasi menjadi Java bytecodes dapat dijalankan pada platform yang

berbeda-beda.

5. Robust

Java mempuyai reliabilitas yang tinggi. Compiler pada Java mempunyai

kemampuan mendeteksi error secara lebih teliti dibandingkan bahasa

pemrograman lain. Java mempunyai runtime-Exception handling untuk

membantu mengatasi error pada pemrograman.

6. Aman

Sebagai bahasa pemrograman untuk aplikasi internet dan terdistribusi,

Java memiliki beberapa mekanisme keamanan untuk menjaga aplikasi

tidak digunakan untuk merusak sistem komputer yang menjalankan

aplikasi tersebut.

7. Architecture Neutral

Program Java merupakan platform independent. Program cukup

mempunyai satu buah versi yang dapat dijalankan pada platform yang

berbeda dengan Java Virtual Machine.

8. Portabel

Source code maupun program Java dapat dengan mudah dibawa ke

platform yang berbeda-beda tanpa harus dikompilasi ulang.

9. Performance

Performance pada Java sering dikatakan kurang tinggi. Namun

performance Java dapat ditingkatkan menggunakan kompilasi Java lain

seperti buatan Inprise, Microsoft ataupun Symantec yang menggunakan

Just In Time Compilers (JIT).

10. Multithreaded

Java mempunyai kemampuan untuk membuat suatu program yang dapat

melakukan beberapa pekerjaan secara sekaligus dan simultan.

11. Dinamis

Java didesain untuk dapat dijalankan pada lingkungan yang dinamis.

Perubahan pada suatu class dengan menambahkan properties ataupun

method dapat dilakukan tanpa menggangu program yang menggunakan

class tersebut.

2.3 Library 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 programmer dapat

membuat game dengan senyaman mungkin. GTGE memberikan akses ke fungsi

hardware tersebut secara langsung dengan cara yang paling mudah.

2.4 Aplikasi NetBeans

NetBeans mengacu pada dua kerangka platform untuk aplikasi desktop

Java, dan lingkungan pengembangan terintegrasi atau lebih dikenal dengan

Integrated Development Environment (IDE) untuk pengembangan dengan Java,

JavaScript, PHP, Python, Ruby, Groovy, C, C + +, Scala, Clojure dan masih

banyak lagi (untuk gambaran lebih lengkap kunjungi situs netbeans).

NetBeans IDE ditulis dalam bahasa Java dan berjalan dimanapun di mana

Java Virtual Machine (JVM) terinstal, seperti Windows, Mac OS, Linux, dan

Solaris. Sebuah Java Development Kit (JDK) diperlukan untuk pengembangan

fungsionalitas Java, tetapi tidak diperlukan untuk pengembangan di bahasa

pemrograman lain.

Platform NetBeans memungkinkan aplikasi untuk dikembangkan dari satu

set komponen perangkat lunak moduler yang disebut modul. Aplikasi yang

berbasis platform NetBeans (termasuk NetBeans IDE) dapat dikembangkan lagi

oleh pihak ketiga.

2.5 Unified Modelling Language (UML)

Unified Modelling Language (UML) adalah sebuah "bahasa" yg telah

menjadi standar dalam industri untuk visualisasi, merancang dan

mendokumentasikan sistem piranti lunak. UML menawarkan sebuah standar

untuk merancang model sebuah sistem.

Dengan menggunakan UML kita dapat membuat model untuk semua jenis

aplikasi piranti lunak, dimana aplikasi tersebut dapat berjalan pada piranti keras,

sistem operasi dan jaringan apapun, serta ditulis dalam bahasa pemrograman

apapun. Tetapi karena UML juga menggunakan class dan operation dalam konsep

dasarnya, maka ia lebih cocok untuk penulisan piranti lunak dalam bahasa-bahasa

berorientasi objek seperti C++, Java, C# atau VB.NET. Walaupun demikian,

UML tetap dapat digunakan untuk modeling aplikasi prosedural dalam VB atau C.

3. Perancangan

3.1 Use Case Diagram

Use Case Diagram Digunakan untuk menampilkan layanan yang bisa

diminta oleh actor dari sistem. Pada perancangan game kali ini terlebih dahulu

dibuat pemodelan program dengan use case diagram yang menggambarkan peran

dari obyek dalam sebuah sistem.

Gambar 3.1.1 Use Case Diagram Utama

Pada use case diagram utama memperlihatkan bahwa obyek pemain dapat

menjalankan game dengan menekan tombol Play, melihat petunjuk cara

memainkan game dengan memilih Bantuan dan mengakhiri game dengan memilih

Keluar.

Gambar 3.1.2 Use Case Diagram Turunan Play

Use case untuk menu play memperlihatkan bahwa pemain pada saat memainkan

game dapat melakukan input angka dan menembak.

3.2 Class Diagram

Class Diagram digunakan untuk menampilkan entiti dunia nyata, elemen

dari analisa dan desain, atau implementasi class dan relasinya. Diagram yang

digunakan untuk menampilkan beberapa kelas serta paket yang ada di dalam

sistem yang sedang dikembangkan. Di dalam class diagram dibawah ini

memberikan gambaran tentang sistem dan relasi relasi yanga ada didalamnya.

Berikut gambaran class diagram dalam membangun game “Thinking And Shoot”.

Gambar 3.2.1 Class Diagram Bagian 1

Gambar 3.2.2 Class Diagram Bagian 2

Gambar 3.2.3 Class Diagram Bagian 3

3.3 Sequence Diagram

Sequence Diagram digunakan untuk fokus pada perubahan pesan antara

grup dari suatu obyek dan urutan pesan tersebut. Pemodelan sequence diagram ini

digunakan untuk mengetahui urutan-urutan pesan yang akan dijelaskan sebagai

berikut :

Gambar 3.3.1 Sequence Diagram Untuk Menu Play

Gambar 3.3.2 Sequence Diagram Untuk Menu Bantuan

Gambar 3.3.3 Sequence Diagram Untuk Menu Exit

4. Pembahasan

Implementasi dan pembahasan merupakan suatu tahapan yang bertujuan

merubah dari rancangan sistem yang telah dibuat, menjadi suatu karya nyata yang

dapat dinikmati, dalam hal ini berupa sebuah game. Dari rancangan sistem yang

dibuat menjelaskan bagaimana interaksi atau hubungan antara class dan object

didalam sebuah game. Inti dari semua yang akan dibahas disini adalah berupa

implementasi dari sistem tersebut, game yang dibuat based on desktop (berjalan

pada computer desktop) berdimensi tampilan 640 x 480 windowed dan juga dapat

berjalan dengan tampilan fullscreen. Hasil dari sistem dan karya game dijelaskan

sebagai berikut:

4.1 Game Setting

Pada saat game pertama kali dijalankan maka tampil sebuah window

dimana didalamnya terdapat game setting atau pilihan opsi Fullscreen dan

Bufferstrategy.

Gambar 4.1.1 Setting Tampilan

Secara default setting tampilan adalah fullscreen dan bufferstrategy dalam

keadaan aktif. User bisa merubah opsi tampilan dari fullscreen menjadi windowed

(640 x 480) dengan menghilangkan tanda centang. Begitu juga pada opsi

bufferstrategy.

4.2 Intro game GTGE

Gambar 4.2.1 Intro Game

Gambar 4.1.2 adalah loading intro game yang muncul setelah tombol OK

pada setting tampilan gambar 4.1.1 diklik. Tampilan ini sebagai tanda karena

game menggunakan framework dari GTGE.

4.3 Main menu

Gambar 4.3.1 Main Menu

Pada main menu terdapat 3 pilihan menu yaitu Play, Bantuan, Keluar. Untuk

memilih menu dengan cara mengklik menu yang di pilih menggunakan kursor.

Dalam tampilan menu utama terlihat bahwa menu yang terseleksi terdapat

tampilan seolah-olah ada perisai pelindung 2 dimensi berwarna merah yang

melindunginya.

Main menu ini adalah class parent dengan nama class ThinkGameSelection.java

yang fungsinya sebagai tempat untuk menu-menu didalam game serta

menginisialisasi gambar, sound yang ada ditampilan menu ini, termasuk highlight

ketika memilih salah satu diantara menu sebagai tanda kalau menu itu dipilih.

4.4 Pengaturan opsi menu

Gambar 4.4.1 Menu Game

ThinkGameSelection.java juga salah satu class yang berfungsi untuk

mengatur, menampilkan serta menyusun menu-menu button dalam bentuk

tampilan pesawat seperti gambar 4.1.4 diatas.

4.5 Menu Bantuan

Gambar 4.5.1 Menu Bantuan

4.6 Level Game

Dalam permainan game Thinking And Shoot terdapat 6 level yang

masing-masing level mempunyai tingkat kesulitan yang berbeda-beda. Untuk

keterangan lebih lanjut akan di jelaskan seperti di bawah ini :

 

Gambar 4.6.1 Level 1

Gambar 4.1.14 adalah tampilan dari game level 1. Pada level ini adalah level

yang paling mudah sebagai pengenalan untuk pertama kali bermain dalam game

ini. Hanya ada operator penambahan dalam level ini.

Level 1 hanya melakukan operator penambahan. Dalam level ini angka-

angka yang muncul akan di acak tetapi nilainya tidak akan lebih dari 10. Jadi akan

muncul 2 angka yang harus ditambahkan dan masing-masing nilainya tidak akan

lebih dari 10.

4.7 Instalasi

Berikut adalah proses instalasi game “Thinking And Shoot”. Dikarenakan

game ini menggunakan fasilitas java serta GTGE, maka game ini dibuat untuk

pembelajaran kedepan yang bersifat open source dan multiplatform (dapat

berjalan diberbagai system operasi) bisa di Windows, Linux ataupun Mac.

Dengan mengeksekusi ekstensi file .jar maka game ini akan langsung berjalan.

Dengan catatan terlebih dahulu terinstal java, rekommendasi harus java 1.4 atau

java yang terbaru.

Gambar 4.7.1 Eksekusi file .jar

5. Kesimpulan

Berdasarkan analisis, perencanaan, dan pembahasan yang telah dilakukan

dalam pembuatan game “Thinking And Shoot” dapat diambil kesimpulan sebagai

berikut :

a. Game Thinking And Shoot dapat dijadikan sebagai media pembelajaran dan

hiburan alternatif bagi anak-anak pada khusunya dan masyarakat pada

umumnya.

b. Game ini mampu berjalan dengan pilihan tampilan mode fullscreen dan mode

windowed yang dapat diatur oleh user.

c. Pemanfaatan framework GTGE sangatlah efektif untuk membangun sebuah

game 2 dimensi berbasis java.

d. Kolaborasi penggunaan Aplikasi Netbeans dan framework GTGE dapat

mempermudah programmer dalam pembuatan sebuah aplikasi game dengan

beberapa fasilitas yang include didalamnya.

DAFTAR PUSTAKA

http://www.goldenstudios.or.id/

http://goldenstudios.or.id/forum/showthread.php?tid=437

http://tutorialspoint.com/

http://www.java2s.com/Tutorial/Java/CatalogJava.htm

http://java.sun.com/docs/books/tutorial/

http://www.freejavaguide.com/

http://planetsourcecode.com/

Tim Dosen, 2009. Panduan Penyusunan Tugas Akhir D3 TI, STMIK AMIKOM

YOGYAKARTA.