Aplikasi casual game defense of the law bergenre tower defense

(1)

Bahwa yang bertanda tangan dibawah ini, penulis bersedia :

Bahwa hasil penelitian dapat dionlinekan sesuai dengan peraturan yang berlaku, untuk kepentingan riset dan pendidikan .

Bandung, 28 Juli 2013

Penulis, Mengetahui

Pembimbing

Fajar Andiansyah Imelda, ST., MT.


(2)

NIM : 10508176

Judul Tugas Akhir / Skripsi : APLIKASI CASUAL GAME DEFENSE OF THE LAW

BERGENRE TOWER DEFENSE.

Menyatakan bahwa segala yang tertuang dalam Skripsi ini, adalah betul-betul ide dan hasil pemikiran asli dari saya. Bukan hasil Plagiat atau hasil meniru Ide, Hasil Pemikiran atau Buah Karya orang lain.

Jika dikemudian hari terbukti bahwa pernyataan saya ini tidak benar, maka saya bersedia menerima segala sanksi hukum yang diberikan baik dari pihak akademik maupun pihak lain yang berwenang tanpa melibatkan siapapun.

Demikian pernyataan ini saya buat dalam keadaan sadar tanpa paksaan dari pihak manapun.

Bandung, 1 Juli 2013 Yang Menyatakan,

Fajar Andriansyah 10508176


(3)

APLIKASI CASUAL GAME DEFENSE OF THE LAW BERGENRE TOWER DEFENSE

FAJAR ANDRIANSYAH NIM.1.05.08.176

Telah disetujui dan disahkan di Bandung sebagai Skripsi pada tanggal :

---

Menyetujui, Pembimbing

Imelda ,ST.,MT, NIP.4127.70.26.012

Dekan Fakultas Ketua Program Studi

Teknik dan Ilmu Komputer Sistem Informasi

Prof.Dr.H. Denny Kurniadie, Ir., M.Sc Syahrul Mauluddin, S.Kom., M.Kom


(4)

Nama : Fajar Andriansyah

Tempat/Tanggal Lahir : Kuningan, 19 Desember 1988 Jenis Kelamin : Laki-Laki

Agama : Islam

Kebangsaan : Indonesia

Alamat : Jl. Siliwangi gg bpk ehom no 45/455A Email : fajarandriansyah1988@gmail.com

DATA PENDIDIKAN

Tahun 1995-2001 : Sekolah Dasar Negeri 2 kuningan

Tahun 2001-2004 : Sekolah Menengah Pertama Negri 2 kuningan

Tahun 2004-2007 : Sekolah Menengah Atas Negeri 1 kadugede kuningan

Tahun 2008-2013 : Universitas Komputer Indonesia Fakultas Teknik Dan Ilmu Komputer Jurusan Sistem Informasi


(5)

SKRIPSI

Diajukan sebagai salah satu syarat kelulusan pada Program Studi Sistem Informasi Jenjang S1 (Strata 1) Fakultas Teknik dan Ilmu Komputer

FAJAR ANDRIANSYAH 1.05.08.176

PROGRAM STUDI SISTEM INFORMASI FAKULTAS TEKNIK DAN ILMU KOMPUTER

UNIVERSITAS KOMPUTER INDONESIA 2013


(6)

vi

PERNYATAAN KEASLIAN

ABSTRAK ... i

ABSTRACT ... ii

KATA PENGANTAR ... iii

DAFTAR ISI ... vi

DAFTAR GAMBAR ... xi

DAFTAR TABEL ... xiv

DAFTAR SIMBOL ... xvi

BAB I PENDAHULUAN 1.1 Latar Belakang ... 1

1.2 Identifikasi Masalah ... 3

1.3 Rumusan Masalah ... 3

1.4 Maksud dan Tujuan Penelitian ... 4

1.4.1 Tujuan Penelitian ... 4

1.5 Batasan Masalah ... 4

1.6 Kegunaan Penelitian ... 5

1.6.1 Kegunaan Praktis ... 5

1.6.2 Kegunaan Akademis... 5

1.7 Jadwal Penelitian ... 6

BAB II LANDASAN TEORI 2.1 Pengertian Aplikasi ... 7


(7)

vii

2.3 Pengertian game ... 9

2.3.1 Pengertian Casual Game ... 10

2.3.2 Pengertian Hardcore game ... 11

2.3.3 Game Genre ... 11

2.3.4 Gameplay Tower Defense ... 14

2.3.5 Karakteristik Tower Defense ... 15

2.4 Dimensi Video Game ... 15

2.4.1 2D (Two Dimension) ... 15

2.4.2 3D (Two Dimension) ... 16

2.5 Elemen Game ... 17

2.6 Kecerdasan Buatan (Artificial Intelligence) ... 17

2.6.1 Definisi AI ... 17

2.6.2 Teknik Pemecahan Masalah AI ... 18

2.6.3 Waypoint ... 19

2.6.4 Metode Collision Detection ... 20

2.7 Game Engine ... 20

2.7.1 Struktur Game Engine ... 21

2.7.2 Unity Game Engine ... 22

BAB III OBJEK DAN METODE PENELITIAN 3.1 Objek penelitian ... 24


(8)

viii

3.3.2 Object ... 25

3.3.3 Event dan Actions ... 25

3.3.4 Backgrounds ... 26

3.3.5 Sounds ... 26

3.3.6 Turn Based ... 26

3.3.7 Sudut Pandang User ... 26

3.4 Animasi Game ... 27

3.4.1 Animasi Dengan Teknik Image ... 27

3.4.2 Animasi Dengan Teknik Xoring ... 28

3.4.3 Animasi Dengan Teknik Make ... 28

3.4.4 Animasi Dengan Tipe Object Frame ... 28

3.4.5 Metode Animasi frame ... 29

3.4.6 Metode Animasi BitBlt ... 29

3.4.7 Metode Animasi Real-Time ... 29

3.5 Metode Penelitian ... 30

3.5.1 Metode Pendekatan ... 30

3.5.2 Metode Pengembangan Sistem ... 30

3.5.3 Alat Bantu Analisis Dan Perancangan ... 32

3.6 Pengujian Software ... 35

3.6.1 Black box Testing ... 35


(9)

ix

4.1.1.1 Konsep Game ... 39

4.1.2 StoryLine Pada Game Defense of the Law ... 40

4.1.2.1 Alur Permainan Pada Game Defense of the Law .... 40

4.1.2.2 Misi Game Defense of the Law ... 42

4.1.3 StoryBoard ... 42

4.1.4 Entitas Game ... 44

4.1.5 Analisis Metode dan Algoritma Defense of the Law ... 51

4.1.5.1 Penerapan Metode Collision Detection ... 51

4.1.5.2 Analisis Sell Tower dan Upgrade Tower ... 52

4.1.5.3 Penerapan Waypoint Search ... 53

4.1.6. Perancangan Aplikasi ... 54

4.1.6.1 Diagram Use Case... 54

4.1.6.2 Definisi Use Case ... 55

4.1.6.3 Skenario Use case Diagram ... 56

4.1.6.4 Activity Diagram ... 61

4.1.6.5 Sequence Diagram ... 67

4.1.6.6 Class Diagram ... 72

4.2.2 Perancangan Sistem ... 73

4.2.1 Perancangan Arsitektur Menu ... 73

4.2.2 Perancangan Antar Muka Defense of the Law ... 74


(10)

x

5.1.2 Implementasi Perangkat Lunak (Pengembang) ... 79

5.1.3 Implementasi Perangkat Keras (Pengguna) ... 79

5.1.4 Implementasi Perangkat Lunak (Pengguna) ... 80

5.1.5 Implementasi Antar Muka... 80

5.1.6 Implementasi Instalasi program ... 90

5.1.7 Petunjuk Permainan ... 95

5.2 Pengujian ... 97

5.2.1 Rencana Pengujian ... 97

5.2.2 Kasus dan hasil pengujian ... 98

5.2.3 Kesimpulan Dan Hasil pengujian ... 109

BAB VI KESIMPULAN DAN SARAN 6.1 Kesimpulan ... 110

6.2 Saran ... 110

DAFTAR PUSTAKA LAMPIRAN


(11)

Games In Java, New Riders Publishing, United States of America.

[2]. Mat Buckland (2004), Programming Game AI by Example, Wordware, European.

[3]. Jones Time, M (2003), AI Application Programming, Charles River Media, Massachussets.

[4]. Suyanto (2007), Artificial Intelligence, Informatika, Bandung.

[5]. Tricks of the 3D Game Programming Gurus-Advanced 3D Graphics and Rasterization, Andre LaMothe (2003), Sams publishing.

[6]. Pressman, Roger S. (2002), Rekayasa Perangkat Lunak Pendekatan Praktisi (buku satu), Andi Offset, Yogyakarta.

[7]. http://en.wikipedia.org/wiki/Video_game_genres // 12-2-2013 [8]. http://cgcookie.com/unity/ 6-2-2013

[9]. http://id.wikipedia.org/wiki/Aplikasi / 10-2-2013 [10]. http://unity3d.com/unity/1-3-2013.

[11]. http://unity3d.com//support/documentation/Manual/Scripting.htm/1-2-2013 [12]. http://en.wikipedia.org/wiki/Tower_defense/20-1-2013


(12)

1

1.1 Latar Belakang

Videogame merupakan salah satu media hiburan yang banyak dipilih oleh orang melepas kepenatan ataupun mengisi waktu luang. Jumlah pemain Videogame di dunia maupun di Indonesia sendiri mengalami peningkatan dari tahun ketahun. Hal ini dibuktikan dengan meningkatnya penjualan mesin Videogame dan semakin maraknya bermunculan berbagai jenis videogame. Adapun Manfaat yang di berikan dalam membangun sebuah game adalah untuk memberikan hiburan kepada user secara interaktif dan melatih user berpikir strategi dalam membuat keputusan menyelesaikan masalah khususnya dalam sebuah game yang bergenre Real Time Strategy (RTS).

Pada beberapa tahun terakhir ini, kemunculan berbagai casual game telah menghiasi jalannya perkembangan game, karena banyaknya kalangan yang dapat memainkan game tersebut menurut Jonathan S Harbour, casual game merupakan berbagai aplikasi permainan yang tidak terlalu rumit sehingga memungkinkan casual game untuk dapat dimainkan oleh semua orang, mulai anak-anak, remaja, hingga dewasa. Tidak seperti Hardcore game dengan dibutuhkannya skill yang dapat menyita waktu untuk harus mempelajari game tersebut, dalam hal ini kalangan penggemar game tertentu saja bisa menguasai game keseluruhan.


(13)

Secara garis besar, salah satu yang termasuk ke dalam casual game adalah tower defense game. Tower defense game merupakan sub-genre dari permainan komputer Real Time Strategy. Tujuan utama dari tower defense ini adalah untuk mempertahankan goal point atau suatu titik tertentu. Pemain diberikan salah satu fitur khusus seperti membangun menara mereka dan memodifikasi menara mereka untuk mempertahankan serangan musuh. Plants Versus Zombie merupakan salah satu nama casual game yang meraih kesuksesan, Plants Versus Zombie membuktikan bahwa casual game di platform PC (Personal Computer) juga diminati oleh para kalangan gamer. Game Plants vs Zombie bercerita tentang mempertahankan gerombolan zombie yang akan memakan otak penduduk, user bermain dengan menanam berbagai jenis tanaman dengan kemampuan yang berbeda untuk mempertahankan zombie yang akan memakan otak penduduk sebagai goal titik point tersebut . Para zombie bergerombolan berdatangan dengan jenis atribut dan kemampuan yang berbeda. Adapun contoh lain casual game yang berjudul Giant Tower defense yang yang di desain oleh orang Indonesia Arif Purwanto dengan developer Belugerin yang di buat dalam jenis Flash ini bercerita tentang mempertahankan istana yang akan di serang oleh monster – monster raksasa.

Berdasarkan hal tersebut penulis berkeinginan untuk membangun suatu “Aplikasi Casual Game Defense of the law bergenre Tower


(14)

Indonesia seperti lembaga-lembaga ketahanan dan aparat penegak hukum di Indonesia mewakili tower yang akan menjadi pertahanan dari segala gangguan yang bisa merusak negara ini. Karena jarangnya game Tower defense yang ber-temakan tentang penegak hukum di Indonesia penulis mengharapkan aplikasi yang dibuat dapat ikut meramaikan dunia industi game yang telah ada dan dapat menghibur para pemain casual game, dan medorong minat mahasiswa untuk mengembangkan game Indonesia.

1.2 Identifikasi Masalah

Berdasarkan latar belakang masalah yang telah dibahas sebelumnya, penulis mencoba untuk mengidentifikasikan masalah yang ada maka akan ditampilkan dalam aplikasi ini adalah :

1. Meskipun meningkatnya pengguna dan penggemar game tapi aplikasi game tower defense yang banyak ditemukan tidak ada yang ber-temakan Penegakan hukum di Indonesia.

2. Tidak Semua Kalangan,baik anak-anak, dewasa, maupun orang tua bisa memainkan game yang berjenis Hardcore Game.

1.3 Rumusan Masalah

Dari identifikasi masalah yang telah disebutkan diatas, maka perumusan masalahnya adalah sebagai berikut :

1. Bagaimana membuat game Tower Defense sehingga ada unsur – unsur yang bertema tentang penegakan hukum di Indonesia, dan bisa memenuhi klasifikasi pengguna game yang dapat menghibur penggemar game.


(15)

2. Bagaimana kalangan anak-anak atau dewasa supaya bisa memainkan game Tower Defense yang dibangun oleh penulis.

1.4 Maksud Penelitian dan Tujuan Penelitian

Maksud dari penelitian ini adalah untuk membangun aplikasi

Casual Game ber-sub-genre Tower Defense.

1.4.1 Tujuan Penelitian

Adapun tujuan membuat skripsi ini adalah sebagai berikut:

a. Menjadikan aplikasi Game Defense of The Law lebih menarik untuk dimainkan dengan membuat game 3 dimensi ber-subgenre Tower Defense menggunakan game engine unity 3D dan dibuatkannya pendekatan artificial intelegence pada musuh.

b. Untuk memudahkan para pemain semua kalangan baik anak-anak atau dewasa, dimainkan dengan tidak terlalu rumit dan tidak banyak persyaratan.

1.5 Batasan Masalah

Penelitian ini memiliki batasan/ruang lingkup penelitian yang mencangkup:

1. Peneliti hanya melakukan penelitian pada game berjenis casual game khusus nya pada sub-genre Tower Defense

2. Aplikasi game berteknologi 3 Dimensi.

3. Perangkat lunak yang digunakan untuk membangun aplikasi ini menggunakan game engine Unity 3D.


(16)

5. Script yang di gunakan dalam pembuatan game menggunakan bahasa pemrograman javascript dan C# yang berbasis desktop.

6. Game yang di bangun memiliki 2 level.

7. Pemodelan dan perancangan sistem dalam pembuatan skripsi ini menggunakan pemodelan berbasis objek dengan tools UML. (use case diagram, activity diagram, sequence diagram, dan class diagram). 8. Game dimainkan dengan mode offline (single mode).

9. Game ini hanya mempunyai 1 mode permainan dan tingkat kesulitan yaitu campaign, dan normal.

1.6 Kegunaan Penelitian

Kegunaan penelitian pembuatan aplikasi ini menjelaskan mengenai manfaat atau kontribusi yang diperoleh dari hasil penelitian dan siapa pihak yang akan mendapatkan manfaat dan penelitian tersebut. Dalam penelitian ini, kegunaan penelitiannya dapat berupa kegunaan praktis dan kegunaan akademis.

1.6.1 Kegunaan Praktis

Kegunaan secara prkatis nya adalah :

Memberikan hiburan kepada pemain, dengan aplikasi game ini ,maka akan menambah beragam jenis casual game khususnya pada sub-genre Tower Defense.

1.6.2 Kegunaan Akademis

Secara akademis game ini dapat meningkatkan kemampuan seseorang dalam pengambil keputusan dalam melakukan multi tugas, dalam game ini pemain dibawa untuk berpikir dan banyak unsur strategy.


(17)

1.7 Jadwal Penelitian

Tabel 1.1. Jadwal Penelitian

No Aktivitas

Maret 2013 April 2013 Mei 2013 Juni 2013

1. Pengumpulan Data

Observasi

Wawancara

2. Pengembangan Sistem

Identifikasi Kebutuhan

User

Membangun Prototype

Evaluasi Prototype

3. Perancangan Sistem

Design

Coding

4. Pengujian Sistem Blackbox Testing

5. Evaluasi Sistem


(18)

7

BAB II

LANDASAN TEORI

2.1 Pengertian Aplikasi

Aplikasi adalah suatu subkelas perangkat lunak komputer yang memanfaatkan kemampuan komputer langsung untuk melakukan suatu tugas yang diinginkan pengguna. Biasanya dibandingkan dengan perangkat lunak sistem yang mengintegrasikan berbagai kemampuan komputer, tapi tidak secara langsung menerapkan kemampuan tersebut untuk mengerjakan suatu tugas yang menguntungkan pengguna. Contoh utama perangkat lunak aplikasi adalah pengolah kata, lembar kerja, dan pemutar media.

2.2 Pengertian Multimedia

Multimedia tersusun dari 2 unsur kata yaitu Multi dan Medium . Multi berarti banyak atau bermacam – macam sedangkan medium sesuatu yang dipakai untuk menyampaikan atau membawa sesuatu (alat untuk mendistribusikan dan mempresentasikan informasi) . Jadi Multimedia adalah penggunaan beberapa media yang berbeda untuk menggabungkan dan menyampaikan informasi dalam bentuk text, audio, grafik, animasi, dan video. Adapun definisi multimedia menurut para ahli :

1) Kombinasi dari komputer dan video.


(19)

3) Kombinasi dari paling sedikit dua media input atau output. Media ini dapat berupa audio (suara, musik), animasi, video, teks, grafik dan gambar.

4) Alat yang dapat menciptakan presentasi yang dinamis dan interaktif yang mengkombinasikan teks, grafik, animasi, audio dan video.

5) Multimedia dalam konteks komputer adalah: pemanfaatan komputer untuk membuat dan menggabungkan teks, grafik, audio, video, dengan menggunakan tool yang memungkinkan pemakai berinteraksi, berkreasi, dan berkomunikasi.

Multimedia memiliki beberapa kemampuan seperti :

1. Mengubah tempat kerja

2. Mengubah cara belanja

3. Mengubah cara bisnis

4. Mengubah cara memperoleh informasi

5. Mengubah cara belajar

6. Internet Multimedia juga mulai bersaing dengan televisi dan radio

2.2.1 Storyboard

Pentingnya sebuah storyboard dalam sebuah proyek berbasis multimedia.

“Para ahli didalam bidangnya, biasanya menuangkan pengetahuan mereka,


(20)

dimaksudkan untuk persentasi. Storyboard seperti itu seringkali menjadi suatu dasar bagi rencana pembuat dan director dalam pengimplemtasian dari cerita dengan masing –masing media. “

Pembuatan stotyboard dalam salah satu langkah – langkah Interface design workflow, sebagai representasi penggambaran bagaimana sebuah interface merespon pada interaksi pengguna dan sebagai penggambaran bagaimana sebuah interface merespon pada interaksi pengguna dan sebagai penggambaran dan identifikasi dari tiap tiap konten objek yang ada walaupun mereka beum dibuat ataupun dikembangkan. Storyboard juga berfungsi sebagai penunjuk fungsionalitas dari sebuah aplikasi.

Secara umum, storyboard adalah sekumpulan gambar yang terorganisisr secara berurutan dan dibuat untuk tujuan mem-previsualisasikan sebuah gambar gerak, animasi, ataupun urutan media interaktif, termasuk sebuah interaktif dari sebuah web.

2.3 Pengertian Game

Menurut Avedon dan Smith games adalah sebuah latihan system control sukarela, dimana ada sebuah kontes antara kekuatan, dibatasi oleh aturan – aturan dalam rangka memproduksi hasil yang tidak seimbang.

Yang pertama, sebuah latihan system control sukareala: itu adalah games sengaja dimasuki oleh para pemain.


(21)

Yang kedua, sebuah kontes antara kekuatan:bagian ini kelihatan menjadi bagian dari kebanyakan games. Dua atau lebih orang berusaha dengan keras untuk mendominasi sebuah game. Tapi tidak semua game mengalami ini, contohnya single-player game tidak perlu bersaing dengan kekuatan pemain lain, dan dari kalimat di atas, dapat disimpulkan dua hal, bahwa games mempunyai goals,dan games empunyai konflik.

Yang ketiga,dibatasi oleh aturan-aturan: sebuah poin yang sangat penting. Games mempunyai aturan-aturan, mainan tidak mempunyai aturan-aturan. Aturan sebenarnya adalah salah satu aspek yang mendefinisikan games.

Yang keempat, hasil yang tidak seimbang: tidak seimbang atau disequilibrial bukan berarti tidak sama, melainkan mengimpikasikan bahwa dalam satu waktu ada keadaan yang tidak seimbang, games dimulai dalam keadaan yang sama, lalu ada yang menang da nada yang kalah. Jadi jika kamu bermain games, kamu pasti menang atau sebaliknya kamu kalah.

Jadi poin penting dari sebuah games adalah games dimasuki secara sengaja oleh pemain, games mempunyai goals, games mempunyai konflik, games mempunyai aturan-aturan, dan games bisa berarti menang atau kalah.

2.3.1 Pengertian Casual game

Casual games adalah sebuah games yang dimaksudkan untuk dinikmati oleh setiap orang, baik pria dan wanita, maupun tua dan muda. Dengan ini casual games dapat diartikan sebuah game yang jauh dengan permainan hentakan,


(22)

kekerasan, dan kompleksitas permainan dengan bertujuan untuk menarik pemain seluas mungkin dari berbagai kalangan.

Perbedaan antara casual gamer dengan hardcore gamer menurut Schell adalah casual gamer hanya bermain game sebagai hiburan sesekali, namun hardcore gamer bermain game sebagai hobi utama mereka.

2.3.2 Hardcore Game

Hardcore gamer memperluas game ke dalam gaya hidup mereka dan dapat mewakili stereotip "Pecandu game". Mereka lebih sering memilih untuk menghabiskan waktu yang signifikan pada permainan, dan lebih cenderung untuk mencoba "menguasai" permainan tersebut dengan menyelesaikan sebanyak mungkin Objective. Dalam Hardcore sering mengadakan kontes – kontes turnamen. Sehingga penggemar hardcore game cenderung menghasbiskan waktu nya untuk menguasai game tersebut. Konten yang terdapat di dalam harcore game juga tidak semudah casual game, hardcore game lebih rumit untuk dimainkan

2.3.3 Game Genre

Menurut Rogers sebuah game genre digunakan untuk mendeskripsikan gaya dari suatu permainan. Game genre dibagi menjadi beberapa genre dan subgenre yakni:

a. Action

Action merupakan game yang dimainkan memerlukan kelihayan tangan dan mata untuk memainkannya.


(23)

b. Shooter

Shooter merupakan game yang berfokus pada penembakan peluru pada musuh. Genre ini termasuk dalam beberapa subgenre yang dibagi berdasarkan dari kamera penglihat.

1) First Person Shooter (FPS)

Merupakan game yang sudut pandangnya sama seperti yang terlihat dari sudut pandang pemain. Tampilan kamera lebih terbatas tapi lebih personal dari third person shooter.

2) Shoot em`up

Merupakan permainan dengan gaya arcade yang dimana pemain menembak musuh dalam jumlah yang besar dan menghindari bahaya. 3) Third Person Shooter (TPS)

Merupakan permainan menembak yang dimana kameranya diletakan dibelakang karakter.

c. Adventure

Adventure merupakan permainan yang berfokus pada penyelesaian teka-teki, mengumpulkan barang dan mengatur persedian. Adventure game pada awalnya hanya berbasis teks.

d. Contruction/Management

Contruction/Management merupakan permainan yang dimana pemain membangun dan memperluas lokasi dengn sumber yang terbatas. Contohnya SimCity dan ZooTycoon.


(24)

e. Life Simulation

Life Simulation merupakan permainan yang seperti Management tetapi lebih ke arah membangun dan memelihara hubungan denga kehidupan buatan. Contohnya The Sim dan Princess Maker

f. Music/Rhytm

Music/Rhytm merupakan permainan yang mencocokan irama atau mencetak nilai yang tertinggi. Contohnya Simon dan Rock Band.

g. Party

Party merupakan game yang didesain untuk permainan banyak orang dan didasarkan dengan persaingan. Sering kali game ini disajikan format game kecil. Contohnya Mario Party dan Buzz.

h. Puzzle

Puzzle merupakan permainan teka-teki yang didasarkan logika dan penyelesaian pola. Contohnya The Incredible machine atatu Tetris.

i. Sport

Sport merupakan permainan yang didasari dari kompetisi atletik, apakah itu tradisional atau extreme.

j. Strategy

Strategy merupakan game yang menekankan pemikiran dan perencanaan sebagai keunggulan game strategy.


(25)

1) Real Time Strategy (RTS)

sama seperti turn based games, tapi game ini serba cepat dan berfokus

pada “ empat X`s” yakni ekspansi, eksporasi, ekploitasi dan

pemusnahan. 2) Tower Defense

Merupakan subgenre yang baru di PC dan handheld systems yang dimana pemain membuat tembakan peluru otomatis dari tower ke musuh yang muncul, dan mempertahankan suatu titik tertentu . Contohnya Defense Grid, The Awakening dan Lock`s Quest.

2.3.4 Gameplay Tower Defense

Tower Defense merupakan sebuah sub-genre dari permainan komputer real-time strategy[17]. Dalam permainan tower defense setiap pemain menggunakan media mouse untuk melakukan interaksi terhadap permainan tersebut.

Gameplay dari permainan dengan jenis tower defense adalah mencegah setiap musuh yang muncul untuk menuju goal point, dimana apabila musuh mencapai goal point tersebut maka darah atau nyawa dari pemain akan berkurang dan apabila habis maka pemain dinyatakan kalah. Setiap pemain dapat menempatkan tower untuk melakukan pertahanan dan secara otomatis akan menembak musuh yang berada di dalam jangkauannya, dalam beberapa permainan dengan jenis tower defense terdapat berbagai macam tower dengan harga yang beragam.


(26)

Adapun uang yang digunakan untuk membeli tower didapatkan dari hasil membunuh setiap musuh yang ada. Permaianan dinyatakan sukses apabila pemain dapat mempertahankan darah atau nyawa nya sampai waktu yang ditentukan habis atau berdasarkan jumlah musuh yang dibunuh.

2.3.5 Karakteristik Tower Defense

Karakteristik yang terdapat di dalam aplikasi permainan yang berjenis tower defense adalah sebagai berikut :

A. Terdiri dari dua point, yaitu point awal tempat keluarnya musuh dan point akhir yang merupakan tujuan akhir musuh

B. Adanya shop yang digunakan untuk membeli tower, sehingga tower yang bisa digunakan bervariasi

C. Metode interaksi antara pemain dan aplikasi permainan dengan menggunakan mouse

D. Terdapat nyawa dan jumlah koin pemain

E. Terdapat jalur yang telah ditentukan sehingga musuh berjalan melewati jalur tersebut

2.4 Dimensi Video Game

Game pasti memiliki dimensi dalam tampilannya adapun jenis dimensi sebagai berikut :


(27)

Game dua dimensi dapat diketahui berdasarkan ruangnya yang hanya memiliki dua sisi ( X dan Y). Sedangkan untuk gambarnya sendiri dapat menggunakan Vector maupun Bitmap. Untuk membuat animasi bergerak (berjalan,melompat,berlari,dll) kita harus membuat gambar satu persatu yang disebut dengan(frame). Kerealisasian gerakan ditentukan dari gambar yang dibuat, jumlah gambar(frame) yang digunakan, serta hitungan gambar per detik (frame per second ( semakin tinggi hitungan gambar per detik maka semakin mulus gerakan yang akan dihasilkan)). Bagi pemula sebaiknya mencoba untuk membuat game bertipe 2D terlebih dahulu.

2.4.2 3D (Three Dimension)

3D ini merupakan model/ object 3 dimensi yang nantinya akan anda jadikan sebagai karakter utama, bangunan, object-object seperti senjata,musuh, permukaan tanah ,pohon, bukit,dll. Object 3d seperti ini bisa anda buat dengan

menggunakan program seperti “AutoDesk 3DS.Max” ,”Maya”,”Hash”, “

Blender” .

2d graphic:gambar 2d juga berperan dalam membuat game bertipe 3D fungsi gambar 2d antara lain:

a) sebagai texture untuk object

b) sebagai latar belakang ( langit , pemandangan,dll)

c) sebagai meteran untuk nyawa , gambar untuk speedometer (untuk game racing), dll.


(28)

Sedangkan untuk membuat animasi dalam 3D dapat digunakan bones(tulang) yang layaknya manusia dapat digerakkan. Selain itu animasi tetap juga dapat menggunakan bitmap (gambar 2d) untuk animasi pada texture air, api,dll.

2.5 Elemen Game

Setiap permainan digital memiliki elemen-elemen dasar, berupa: 1. Grafis

yakni tampilan game tersebut di layar atau display alat elektronik, bisa berupa kumpulan pixel (satuan unit gambar terkecil) atau salah satu bagian gambar tersebut menunjukkan gerakan yang adalah hasil manipulasi si pemain.

2. Interface

alat pengentara dimana pemain memanipulasikan game yang mengantarai dan memproses manipulasi pemain menjadi input dalam game, dapat berupa keyboard, mouse, joystick ataupun tampilan-tampilan tertentu dalam game 3. Aktivitas pemain

yakni jantung hati dari pengalaman bermain game, tanpa aktivitas pemain maka tidak akan ada suatu permainan; aktivitas bisa bersifat diegetic (bagaimana karakter si pemain berubah aktivitas pemain) dan bersifat extradiegetic (apa yang terjadi secara fisik pada diri pemain tersebut).

4. Sebuah algoritme

yakni jantung hati dari program game yang merupakan serangkaian program berisi otak dan seperangkat aturan yang mendasari dinamika game tersebut.


(29)

2.6.1 Definis AI

Sebagian kalangan menerjemahkan Artificial Intelligence sebagai kecerdasan buatan, kecerdasan artifisial, intelijensia artifisial, atau intelejensia buatan. Pada bukunya Suyanto sengaja tidak menerjemahkan istilah Artificial Intelligence ke bahasa Indonesia karena istilah tersebut sudah sangat akrab bagi orang Indonesia. Begitu juga dengan singkatan istilah tersebut, yaitu AI, sudah sangat melekat di berbagai media ilmiah maupun non ilmiah. Definisi AI yang paling tepat untuk saat ini adalah acting rationally dengan pendekatan rational agent. Hal ini berdasarkan pemikiran bahwa komputer bisa melakukan penalaran secara logis dan juga bisa melakukan aksi secara rasional berdasarkan hasil penalaran tersebut.

2.6.2 Teknik Pemecahan Masalah AI

Terdapat empat teknik dasar pemecahan masalah yang terdapat pada bidang academic/traditional artificial intelligence ,diantaranya adalah sebagai berikut :

A. Searching

Pada teknik searching atau pencarian ini terdiri dari beberapa langkah untuk merealisasikannya. Langkah pertama adalah mendefinisikan ruang masalah untuk suatu masalah yang dihadapi. Langkah kedua adalah mendefinisikan aturan produksi yang digunakan untuk mengubah suatu keadaan ke keadaan lainnya. Langkah terakhir adalah memilih metode pencarian yang tepat sehingga dapat menemukan solusi terbaik.


(30)

Teknik reasoning atau penalaran merupakan teknik penyelesaian masalah dengan cara merepresentasikan masalah ke dalam basis pengetahuan (knowledge base) menggunakan logic atau bahasa formal (bahasa yang dipahami komputer). Teknik ini melakukan proses penalaran berdasarkan basis pengetahuannya untuk menemukan solusi.

C. Planning

Planning adalah suatu metode penyelesaian masalah dengan cara memecah masalah ke dalam sub-sub masalah yang lebih kecil, menyelesaikan sub-sub masalah satu demi satu kemudian menggabungkan solusi-solusi dari sub-sub masalah tersebut menjadi sebuah solusi lengkap dengan tetap mengingat dan menangani interaksi yang terdapat pada sub-sub masalah tersebut.

D. Learning

Pada ketiga teknik sebelumnya, seseorang harus mengetahui aturan yang berlaku untuk sistem yang akan dibangunnya. Tetapi, pada masalah tertentu terkadang suatu aturan tidak bisa didefinisikan secara benar ataupun lengkap. Hal tersebut mungkin dikarenakan data-data yang didapat tidak lengkap. Melalui teknik yang disebut learning ini, secara otomatis aturan yang diharapkan bisa berlaku umum untuk data-data yang belum pernah diketahui dapat ditemukan.

2.6.3 Waypoint

Waypoint search merupakan pencarian yang efisien dan menghemat komsumsi pada CPU-time. Hampir semua game sekarang ini menggunakan metode waypoint sebagai search.


(31)

Pola gerakan yang paling dasar untuk karakter dalam permainan hanyalah sebuah garis lurus baik dalam bidang horisontal atau vertikal. Biasanya, karakter akan bergerak ke kiri dan kanan antara dua titik dan batas mungkin tepi layar atau sesuatu yang berhubungan dengan latar belakang peta.

2.6.4 Metode Collision Detection

Hampir setiap permainan video yang ada sudah menerapkan collision detection (deteksi tabrakan), baik itu dalam hal tabrakan antara sprite dengan sprite maupun antara sprite dengan peluru dan lain-lain. Dalam aplikasi permainan ada beberapa reaksi yang ditunjukkan dari collision detection, yaitu reaksi dari spirte yang berupa berkurangnya nyawa, berkurangnya darah, meledak, dan lain-lain.

Proses collision dapat dibagi menjadi dua kategori dasar, yaitu collision detection dan collision response, dengan jarak respon yang telah diaplikasikan secara spesifik.

Selain itu pada sumber lain disebutkan bahwa collision detection terbagi menjadi dua jenis, yaitu collision detection object to object dan collision detection object to world. Pada object to object yang terjadi adalah adanya tubrukan antara satu objek dengan objek lainnya yang berada di dalam satu frame, baik itu objek tersebut bertubrukan secara langsung ataupun bertubrukan antara kotak maupun lingkaran yang mengandung objek tersebut, sedangkan pada object to world yang terjadi adalah adanya tubrukan antara objek dengan frame itu sendiri, contohnya adalah tubrukan antara sprite dengan dinding pada aplikasi permainan itu sendiri


(32)

sehingga apabila terjadi, maka sprite tersebut tidak dapat melewati dinding tersebut.

2.7 Game Engine

Menurut Andre LaMothe Game engine adalah sistem yang memproses segala sesuatu yang berhubungan dengan game, dan mengendalikan modul – modul yang mengirimkan perintah ke dalam sub-sistem, sehingga game engine harus dirancang agar dapat terhubung ke tiap masing-masing sub-sistem dalam game.

2.7.1 Struktur Game Engine

Menurut andre LaMothe tujuan utama dari game engine sendiri adalah untuk me-render 3D game itu sendiri. Artinya, game engine digunakan game engine itu sendiri harus terhubung dengan system physics dan artificial intelligence. Maka dari itu, sebuah game harus memiliki :

a. 3D engine

b. Game Engine.

c. Sistem input dan networking d. Sistem animasi

e. Collision detection dan sistem navigasi f. Physics engine

g. Sistem kecerdasan buatan h. 3D Model dan database


(33)

Gambar 2.1 Struktur Umum 3D Game Engine (Sumber : Andre La Mothe, 2003,p495)

2.7.2 Unity Game Engine

Unity game engine merupakan sebuah game engine dan editor, yang memungkinkan pengembang membuat object, meng-import external asset dan menggabungkan semuanya dengan menggunakan kode secara efisien dan cepat. Prinsip dari Unity sendiri adalah agar pengembang dapat melakukan aktivitasnya dengan menggabungkan script dan membuat beberapa variable. Unity juga mendukung kemampuan networking dan dapat digunakan pada banyak platform.

Scripting di dalam Unity dapat menggunakan tiga bahasa pemrograman, yaitu JavaScript, C#, dan Boo. Pengembang game dapat menggunakan ketiga bahasa pemrograman tersebut dalam satu proyek miliknya. Beberapa konsep penting di dalam scripting yang harus pengembang mengerti adalah:


(34)

Merupakan container dari kode yang dieksekusi berkali-kali setiap detik (per – frame).

b. Transform

Merupakan refence untuk komponen transform game object, yang mendefinisikan posisi, rotasi, dan skala dari setiap game object. Setiap object memiliki transform.

c. Rotate()

Merupakan sebuah fungsi yang ada pada komponen transform.

d. Angka-angka yang berada di dalam koma merepresentasikan derajat dari rotasi untuk setiap axis di dalam 3D space : X,Y,Z.

e.Time.deltaTime

Merupakan anggota dari kelas Time yang berjalan pada setiap detik, sehingga sebuah game object dapat berputar dengan kecepatan yang sama seberapa pun frame per detik yang dapat dihasilkan setiap detik. Misalnya : 5 * Time.deltaTime artinya 5 derajat perdetik.


(35)

24

3.1 Objek Penelitian

Objek penelitian adalah hal awal yang harus ditentukan dalam kegiatan penelitian sehingga penelitian dapat dilakukan secara efektif dan efisien sesuai dengan tujuan penelitian. Pemilihan dan penentuan objek penelitian yang tepat diharapkan dapat menunjang kegiatan selama penelitian, sehingga hal-hal yang diperlukan dalam penelitian akan mudah dicapai. Yang menjadi objek dalam penelitian ini adalah proses pembuatan aplikasi Game. Penyusun melakukan penelitian dari berbagai sumber.

3.2 Sejarah Game

Game berbasis multimedia awal mulanya berasal dari game komputer .Permainan komputer merupakan salah satu jenis media baru yang mulai ada sejak pertengahan kedua abad ke-20. Dibandingkan jenis-jenis media sebelumnya, permainan komputer menawarkan sebuah segi yang tidak diperoleh media lain, yakni interaksi antara pemakai dengan program permainan komputer yang menghasilkan keragaman stimulus berdasarkan input yang diberikan pemainnya. Bagaimana seorang pemain bermain, bertindak dan membuat pilihan-pilihan mempengaruhi keseluruhan pengalaman bermainnya tersebut. Permainan-permainan tersebut juga mempunyai kemampuan untuk mempresentasikan pemainnya dunia-dunia mikro dalam arti memberikan konteks-konteks untuk berpikir menghadapi permasalahan, mengambil tindakan sendiri sebagai bagian


(36)

solusinya dan membangun arti intuitif dari peran mereka dalam dunia permainan tersebut (Holland, Jenkins dan Squire, 2003).

3.3 Unsur – Unsur Game

3.3.1 Sprites

Sprites adalah kumpulan gambar-gambar yang digunakan untuk icon, karakter ataupun gambar bergerak dalam game. Sprites dapat dibuat dari gambar-gambar yang sudah dibuat dalam sebuah art packages, download dari internet maupun dibuat secara manual dengan menggunakan software seperti Adobe Photoshop.

3.3.2 Objects

Sprites tidak dapat melakukan sesuatu dengan sendirinya. Sprites hanya menyimpan gambar-gambar dari elemen-elemen yang berbeda dalam sebuah fame. Objects adalah bagian dari game yang mengontrol bagaimana elemen-elemen tersebut bergerak dan berinteraksi satu sama lain. Contohnya adalah karakter dalam game.

3.3.3 Events dan Actions

Events adalah hal-hal penting yang terjadi didalam sebuah game, seperti ketika objects saling bertumbukan maupun ketika user menekan tombol pada keyboard. Actions adalah hal-hal yang terjadi sebagai respon dari sebuah event, seperti perubahan arah pergerakan objects, perubahan score, atau memainkan sebuah lagu.


(37)

3.3.4 Backgrounds

Backgrounds adalah gambar –gambar yang digunakan sebagai gambar latar belakang game dan merupakan jenis lain dari resource, seperti sprites dan objects. Pada umumnya ukuran backgrounds sama dengan resolusi game.

3.3.5 Sounds

Sounds juga termasuk resource game, jenis sounds dalam game ada dua, yaitu musics dan sound effect. Sounds dangat mempengaruhi atmosfer dalam game. Masters berupa lagu yang terus mengalun selama game dimainkan, namun lagu yang dimainkan pada umumnya bergantung pada tempat atau kondisi game. Sounds effect adalah suara yang hanya terdengar ketika terjadi suatu hal tertentu, misal penekanan tombol, karakter terkena pukulan dan sebagainya. Kegunaan dari sound effects adalah untuk membantu user mengetahui action yang dilakukan maupun hal yang sedang terjadi.

3.3.6 Turn Based

Turn Based adalah sebuah sistem dalam game untuk menentukan giliran dimana hanya satu user yang dapat bergerak dalam suatu waktu tertentu. Contoh game antara lain Tic Tac Toe, Scrabble, Catur, Permainan Kartu dan lain-lain.

3.3.7 Sudut Pandang User


(38)

1) First Person View adalah sudut pandang orang pertama, dimana user dijadikan seperti karakter yang dimainkan, sehingga user melihat dari sudut pandang karakter yang dimainkan. Contoh game : Counter Strike, HALO

2) Third Person View adalah sudut pandang orang ketiga, dimana user dapat melihat keseluruhan tubuh karakter dalam game. Contoh game : Ragnarok Online, FATE

3.4 Animasi Game

Animasi dapat dibuat dengan tiga teknik berbeda, yaitu Image, Xoring serta make. Dan dalam pergerakannya dapat bertipe object sprite atau object frame. Juga bisa dibedakan atas metode animasi yang digunakan antara animasi frame, bibliting dan realtime. Walaupun terbagi atas berbagai definisi berbeda, tapi dalam prakteknya teori-teori tersebut dapat digabungkan atau saling berhubungan sehingga tidak murni dipakai sendiri. Macam-macam animasi yang digunakan dalam membuat sebuah game akan diterangkan sebagai berikut :

3.4.1 Animasi Dengan Teknik Image

Animasi dengan teknik ini adalah menyimpan image sebagai sebuah sprite dalam memori yang kemudian akan ditampilkan di backgroundnya. Dalam teknik ini animasi yang disimpan harus berlatar belakang sesuai backgroundnya. Animasi dengan teknik ini biasanya sulit dalam pembuatan gambarnya, sebab harus banyak dan melakukan penyamaan dan posisi. Akan tetapi teknik ini mudah dalam hal memainkan animasinya.


(39)

3.4.2 Animasi Dengan Teknik Xoring

Teknik ini adalah teknik animasi yang mudah dan sederhana, sebab selain gambarnya satu sprite, cara menampilkannya juga jauh lebih mudah dibanding dengan teknik sebelumnya. Pembuatan gambarnya sangat mudah, sebab yang dibuat adalah spritenya saja dan tidak perlu menyamakan dengan backgroundnya. Kelemahan dari teknik ini adalah memiliki efek buruk yaitu tembus pandang dan mengganti warna sprite, maka hal ini tidak baik digunakan dalam animasi yang backgroundnya bergambar.

3.4.3 Animasi Dengan Teknik Make

Animasi dengan teknik ini biasanya digunakan untuk animasi umum, tapi biasanya digunakan untuk proses pembuatan animasi. Animasi dengan teknik ini memiliki sprite yang terus menerus digenerate oleh program, kemudian ditampilkan dengan perhitungan tertentu.

Animasi ini biasanya dilakukan oleh 3D modelling dan shading software seperti AutoCad, 3D Studio, Presidio 3D Workshop dan lain-lain. Operasi diatas haruslah digenerate secara langsung dengan perhitungan sehingga saat pembuatan hampir bersamaan dengan saat menampilkannya

3.4.4 Animasi Dengan Tipe Object Frame

Animasi ini menitik beratkan animasi yang dimainkan hanya pada sprite objectnya saja, akan tetapi seluruh backgroundnya juga seolah-olah ikut


(40)

digerakkan.

3.4.5 Metode Animasi frame

Metode ini adalah metode animasi yang mendukung tipe object frame. Karena metode animasi dengan metode full-screen, maka frame yang tampil haruslah disiapkan terlebih dahulu dalam bebera page sebelumnya. Karena hal tersebut maka pengambilan gambarnya haruslah sangat cepat, sehingga tidak menjadikan animasi lamban dan tersendat. Animasi frame ini haruslah menampilkan gambar fullscreen yang bergerak, agar efek tersendat dari pergantian frame tidak menyolok.

3.4.6 Metode Animasi BitBlt

Metode animasi ini biasanya disebut sprite animation, array animation, blocked animation, partial screen animation, snapshot animation atau arcade animation. Prinsip dari metode ini adalah menyimpan image dan memainkan animasinya dalam bentuk satu atau bebera sprite kecil. BitBlt ini digunakan untuk membuat program permainan dan program berbasis grafis terutama dalam membuat animasi sederhana.

3.4.7 Metode Animasi Real-Time

Dalam metode ini biasanya semua animasi yang sedang tampil atau yang akan dibuat dilakukan bersama sehingga tidak perlu disiapkan terlebih dahulu. Karena animasi ini lambat dan tersendat maka animasi dengan metode ini akan bagus jika pergerakan yang akan dilakukan adalah tidak diketahui sebelumnya dan tiba-tiba muncul.Metode ini tidak disarankan untuk animasi biasa-biasa saja,


(41)

akan tetapi sebaiknya digunakan untuk keperluan khusus seperti rotating dan tweening

3.5 Metode Penelitian

3.5.1 Metode Pendekatan

Metode pendekatan sistem yang di gunakan adalah pendekatan dengan Object Oriented yang menggunakan AOO (Analisis Object Oriented) dan DOO (Design Object Oriented) yang di visualisasikan dengan UML dan di antara nya adalah sebagai berikut : Use Case, Sequence Diagram, Class Diagram, Collaboration Diagram, Component Diagram dan Deployment Diagram.

3.5.2 Metode Pengembangan Sistem

Metode pengembangan sistem yang akan digunakan adalah model prototype, karena model tersebut lebih memperhatikan kebutuhan sistem pemakai, prototype memberikan ide bagi pembuat maupun potensial tentang cara sistem berfungsi dalam bentuk lengkapnya, proses menghasilkan sebuah prototype disebut prototyping.

1. Pengumpulan Kebutuhan

Pelanggan dan pengembang bersama-sama mendefinisikan format seluruh perangkat lunak, mengidentifikasikan semua kebutuhan, dan garis besar sistem yang akan dibuat.


(42)

Membangun prototyping dengan membuat perancangan sementara yang berfokus pada penyajian kepada pelanggan (misalnya dengan membuat input dan format output).

3. Evaluasi Prototyping

Evaluasi ini dilakukan oleh pelanggan apakah prototyping yang sudah dibangun sudah sesuai dengan keinginan pelanggan. Jika sudah sesuai maka langkah 4 akan diambil. Jika tidak prototyping direvisi dengan mengulangu langkah 1, 2 , dan 3.

4. Mengkodekan Sistem

Dalam tahap ini prototyping yang sudah di sepakati diterjemahkan ke dalam bahasa pemrograman yang sesuai.

5. Menguji Sistem

Setelah sistem sudah menjadi suatu perangkat lunak yang siap pakai, harus dites dahulu sebelum digunakan. Pengujian ini dilakukan dengan White Box dan Black Box.

6. Evaluasi Sistem

Pelanggan mengevaluasi apakah sistem yang sudah jadi sudah sesuai dengan yang diharapkan. Jika ya, langkah 7 dilakukan jika tidak, ulangi langkah 4dan5.

7. Menggunakan Sistem

Perangkat lunak yang telah diuji dan diterima pelanggan siap untuk digunakan.


(43)

Gambar 3.1. Metode Pendekatan Prototype Paradigma (Sumber: Pressman, Roger S., 2002, Rekayasa Perangkat Lunak: Pendekatan Praktisi Jilid Dua, Penerbit: Andi Offset, Yogyakarta).

3.5.3 Alat Bantu Analisis Dan Perancangan

Dalam pembuatan aplikasi, peneliti menggunakan alat bantu analisis dan perancangan yaitu sebagai berikut :

1. Usecase Diagram.

Use case diagram menggambarkan fungsionalitas yang diharapkan dari

sebuah sistem. yang ditekankan adalah “apa” yang diperbuat sistem, dan bukan “bagaimana”. Sebuah usecase merepresentasikan sebuah interaksi antara aktor dengan sistem. Use case merupakan sebuah pekerjaan tertentu, misalnya login ke sistem, meng-create sebuah daftar belanja, dan sebagainya. Seorang/sebuah aktor adalah sebuah entitas manusia atau mesin yang berinteraksi dengan sistem untuk melakukan pekerjaan-pekerjaan tertentu. Use case diagram dapat sangat membantu bila kita sedang menyusun requirement sebuah sistem, mengkomunikasikan rancangan dengan klien, dan merancang test case untuk

Mendengarkan Pelanggan Membangun, memperbaiki Prototipe Pelanggan menguji coba Prototipe


(44)

semua feature yang ada pada sistem. Sebuah usecase dapat meng-include fungsionalitas use case lain sebagai bagian dari proses dalam dirinya. Secara umum diasumsikan bahwa use case yang diinclude akan dipanggil setiap kali use case yang meng-include dieksekusi secara normal. Sebuah use case dapat di-include oleh lebih dari satu use case lain, sehingga duplikasi fungsionalitas dapat dihindari dengan cara menarik keluar fungsionalitas yang common. Sebuah use case juga dapat meng-extend use case lain dengan behaviour-nya sendiri. Sementara hubungan generalisasi antar use case menunjukkan bahwa use case yang satu merupakan spesialisasi dari yang lain.

2. Class Diagram

Class adalah sebuah spesifikasi yang jika diinstansiasi akan menghasilkan sebuah objek dan merupakan inti dari pengembangan dan desain berorientasi objek. Class menggambarkan keadaan (atribut/properti) suatu sistem, sekaligus menawarkan layanan untuk memanipulasi keadaan tersebut (metoda/fungsi). Class diagram menggambarkan struktur dan deskripsi class, package dan objek beserta hubungan satu sama lain seperti containment, pewarisan, asosiasi, dan lain-lain.

Class memiliki tiga area pokok : a. Nama (dan stereotype)

b.Atribut c. Metoda

Atribut dan metoda dapat memiliki salah satu sifat berikut : a. Private, tidak dapat dipanggil dari luar class yang bersangkutan


(45)

b. Protected, hanya dapat dipanggil oleh class yang bersangkutan dananak-anak yang mewarisinya

c. Public, dapat dipanggil oleh siapa saja

Class dapat merupakan implementasi dari sebuah interface, yaitu class abstrak yang hanya memiliki metoda. Interface tidak dapat langsung diinstansiasikan, tetapi harus diimplementasikan dahulu menjadi sebuah class. Dengan demikian interface mendukung resolusi metoda pada saat run-time. Sesuai dengan perkembangan class model, class dapat dikelompokkan menjadi package. Kita juga dapat membuat diagram yang terdiri atas package.

Hubungan Antar Class

a. Asosiasi, yaitu hubungan statis antar class. Umumnya menggambarkan class yang memiliki atribut berupa class lain, atau class yang harus mengetahui eksistensi class lain. Panah navigability menunjukkan arah query antar class. b. Agregasi, yaitu hubungan yang menyatakan bagian (“terdiri atas..”).

c. Pewarisan, yaitu hubungan hirarkis antar class. Class dapat diturunkan dari class lain dan mewarisi semua atribut dan metoda class asalnya dan menambahkan fungsionalitas baru, sehingga ia disebut anak dari class yang diwarisinya. Kebalikan dari pewarisan adalah generalisasi.

d. Hubungan dinamis, yaitu rangkaian pesan (message) yang di-passing dari satu class kepada class lain. Hubungan dinamis dapat digambarkan dengan menggunakan sequence diagram yang akan dijelaskan kemudian.


(46)

Sequence diagram menggambarkan interaksi antar objek di dalam dan di sekitar sistem (termasuk pengguna, display, dan sebagainya) berupa message yang digambarkan terhadap waktu. Sequence diagram terdiri antara dimensi vertikal (waktu) dan dimensi horizontal (objek-objek yang terkait). Sequence diagram biasa digunakan untuk menggambarkan skenario atau rangkaian langkah-langkah yang dilakukan sebagai respons dari sebuah event untuk menghasilkan output tertentu. Diawali dari apa yang men-trigger aktivitas tersebut, proses dan perubahan apa saja yang terjadi secara internal dan output apa yang dihasilkan. Masing-masing objek, termasuk aktor, memiliki lifeline vertikal. Message digambarkan sebagai garis berpanah dari satu objek ke objek lainnya. Pada fase desain berikutnya, message akan dipetakan menjadi operasi/metoda dari class. Activation bar menunjukkan lamanya eksekusi sebuah proses, biasanya diawali dengan diterimanya sebuah message.Untuk objek-objek yang memiliki sifat khusus, standar UML mendefinisikan icon khusus untuk objek boundary, controller dan persistent entity.

4. Activity Diagram

Diagram ini adalah jenis spesial dari statechart diagram yang menunjukkan alur dari aktifitas ke aktifitas lain dalam suatu sistem. Activity diagram mengalamatkan secara dinamis suatu sistem. Diagram ini sangat penting dalam membuat model fungsi dari suatu sistem dan menekankan pada alur control diantara objek - objek yang bersangkutan.

3.6 Pengujian Software


(47)

Pengujian adalah proses pemeriksaan atau evaluasi sistem atau komponen sistem secara manual atau otomatis untuk memverifikasi apakah sistem memenuhi kebutuhan-kebutuhan yang dispesifikasikan atau mengidentifikasi perbedaan-perbedaan antara hasil yang diharapkan dengan yang terjadi. Pengujian ditujukan untuk menghasilkan perangkat lunak (software) yang bebas kesalahan, paling tidak secara teknik.

Pengujian black box adalah pengujian aspek fundamental sistem tanpa memperhatikan struktur logika internal perangkat lunak. Metode ini digunakan untuk mengetahui apakah perangkat lunak berfungsi dengan benar. Pada pengujian black-box, kasus-kasus pengujian berdasarkan pada spesifikasi sistem. Rencana pengujian dapat dimulai sedini mungkin di proses pengembangan perangkat lunak.

Pada pengujian black box, mencoba beragam masukan dan memeriksa keluaran yang dihasilkan. Teknik pengujian black box juga dapat digunakan untuk pengujian berbasis skenario, dimana isi dalam sistem mungkin tidak tersedia untuk diinspeksi tapi masukan dan keluaran yang didefinisikan dengan use case dan informasi analisis yang lain. Adapun faktor-faktor pengujian black-box adalah :

1. File integrity

Menekankan pada data yang dimasukkan melalui aplikasi akan tidak biasa diubah. Prosedur yang akan memastikan bahwa file yang digunakan benar dan data dalam file tersebut akan disimpan sekuensial dan benar.


(48)

2. Service levels

Menekankan bahwa hasil yang diinginkan didapat dalam waktu yang diinginkan oleh user. Untuk mencapai keinginan tersebut, harus dilakukan penyesuaian antara keinginan user dengan sumber daya yang ada.

3. Ease of use

Menekankan perluasan usaha yang diminta untuk belajar, mengoprasikan dan menyiapakan inputan, dan menginterpretasikan output dari sistem. Faktor ini tersangkut dengan usability system terhadap interaksi antara manusia dan system.

4. Authorization

Menjamin data diproses sesuai dengan ketentuan manajemen. Authorization menyangkut proses transaksi secara umum dan khusus. Fokus Pengujian Black box testing yaitu sebagai berikut :

1. Menguji fungsi-fungsi khusus dari aplikasi.

2. Test input dan output untuk fungsi yang ada tanpa memperhatikan prosesnya.

Beberapa jenis kesalahan yang dapat di identifikasi :

1. Fungsi tidak benar atau hilang,

2. Kesalahan antar muka,


(49)

4. Kesalahan inisialisasi dan akhir program, dan

5. Kesalahan performasi.

Gambar 3.2. Pengujian Black Box Testing (Sumber: http://blog.testing-whiz.com/12-2-2013).


(50)

39

4.1. Analisis Pembangunan Aplikasi Game Defense of the Law

4.1.1. Pengenalan

Game Defense of the Law adalah game Real Time Strategy (RTS) yang berbasis tower defense, game ini bercerita tentang bagaimana mempertahankan suatu kota dari gangguan penjahat, dengan lembaga-lembaga ketahanan dan aparat penegak hukum di Indonesia mewakili tower yang akan menjadi pertahanannya. Defense of the Law merupakan game single mode yang di bangun dengan tekhnologi 3 Dimensi.

4.1.1.1. Konsep Game

Tugas utama pemain dalam Game ini adalah mempertahankan hukum yang berlaku jangan sampai penjahat bisa melarikan diri dari kota, game ini menekankan pemain berpikir secara strategi untuk mengambil keputusan dalam perencanaan pembangunan tower, setelah di tempatkan yang di tentukan tower akan menembak otomatis pada musuh yang melewati. pemain membangun tower harus dengan gold yang mencukupi, setiap menghancurkan musuh gold akan bertambah, pemain bisa membangun tower lebih banyak dan meng-upgrade tower tersebut menjadi lebih kuat. Goal dari Game ini adalah mempertahankan sebuah kota dari musuh yang mencoba kabur dari tower yaitu hukum di Indonesia dan meninggalkan kota. Pemain harus bisa bertahan selama wave yang di sesuaikan dengan level tersebut, jika berhasil bertahan , pemain akan di bawa ke level


(51)

selanjutnya yang tingkat kesulitan nya lebih susah , dan wave yang semakin banyak.

4.1.2 StoryLine Pada Game Defense of the Law

Cerita berawal dari Negara kita yang mempunyai beberapa aparat dan penegak hukum yang berkewajiban untuk memberantas segala kejahatan. Ketika suatu kota di ancam oleh gangguan yang meresahakan warga dengan bermunculnya gerombolan gangster , maling , preman , dan teroris aparat penegak hukum seperti polisi , TNI , dan lain-lain harus aktif dalam memberantas segala gangguan tersebut . Di samping itu ada yang lebih berbahaya lagi yaitu koruptor yang bisa merusak Negara ini dengan mencuri uang rakyat dan uang-uang tersebut dapat mempermainkan aparat penegak hukum sehingga koruptor bisa bebas apa yang dia perbuat.

Dengan kondisi tersebut terpilihlah walikota baru di suatu kota besar yang akan bekerja keras mencoba untuk menegaskan dan memerintahkan aparat penegak hukum untuk lebih aktif memberantas kejahatan yang meresahkan masyarakat. Dalam penyelidikan jabatan – jabatan tinggi di suatu kota tersebut walikota menugaskan kpk untuk mewaspadai tidak ada nya koruptor. Dalam upaya ini tujuan walikota menjadikan kota tersebut bersih dari segala gangguan , tidak ada nya pelanggar hukum bisa kabur dengan mudah. Di balik itu walikota harus mempunyai cara dan strategi yang mantap untuk menyelesaikan masalah.

4.1.2.1 Alur Permainan Pada Game Defense of the Law

Alur permainan merupakan ketentuan-ketentuan yang terdapat pada sebuah aplikasi permainan agar setiap pemain dapat mengetahui bagaimana cara


(52)

untuk memainkan permainan ini dan untuk menyelesaikan misi pada aplikasi permaianan tersebut.

Di bawah ini adalah alur permainan dari aplikasi Game Defense of the Law 1. Musuh bergerak dari point A(respawn musuh) menuju point B(tempat

melarikan diri ) sesuai dengan jalur yang telah disediakan. 2. Musuh bergerak dengan rute yang telah di tentukan

3. Pada level ke-2 musuh mempunyai 2 jalur untuk bergerak dari point A1 ke poin B1 dari point A2 ke point B2.

4. JIka gold mencukupi membeli Tower yang di pilih untuk dibangun , bisa dibangun sesuai tempat yang telah di tentukan.

5. Tower akan menembak otomatis musuh yang berjalan mendekati nya atau daerah jangkauannya.

6. Jika Tower berhasil menghancurkan musuh , Gold dan score akan bertambah.

7. Jika gold mencukupi pemain bisa meng-upgrade tower menjadi lebih kuat dan cepat menembaknya.

8. Jika salah penempatan atau membutuhkan gold tower bisa di jual. 9. Jika musuh berhasil kabur darah pemain akan berkurang

10.Jika darah pemain bernilai 0 maka game akan berakhir.

11.Jika berhasil mempertahankan tidak ada nya musuh yang kabur sesuai wave yang telah di tentukan , pemain akan di bawa ke level selanjutnya.


(53)

4.1.2.2 Misi Game Defense of the Law

Misi yang harus diselesaikan pada aplikasi Game Defense of the Law ini yaitu dengan melakukan pertahanan selama wave yang ditentukan sesuai level, pertahanan yang dilakukan agar musuh tidak bisa kabur ke titik point B.

4.1.3 StoryBoard

StoryBoard merupakan sketsa berurutan sesuai naskah yang ada, dengan membuat ini kita dapat menyampaikan ide cerita yang kita bangun dengan mudah . StoryBoard Level 1 dari Game Defense of the Law,bisa di lihat di gambar 4.1.


(54)

Pada level 1 ini, musuh akan keluar secara berurutan dari point A(Respawn musuh) menuju point B(melarikan diri dari kota) sesuai dengan jalur yang telah disediakan,. Setiap pemain pada level ini dapat menggunakan semua jenis Tower untuk melakukan pertahanan dengan cara membeli Tower yang akan digunakan pada shop yang telah tersedia sesuai dengan jumlah gold yang dimiliki. tower yang dibangun hanya bisa ditempatkan pada jalur yang di lewati musuh Storyboard level 2 dari aplikasi game Defense of the Law, terdapat pada gambar 4.2

Gambar 4.2 StoryBoard Level 2

Pada level 2 ini, seperti pada Level 1 musuh akan berurutan keluar dari tempat respawn nya masing-masing. Dalam Level ini musuh mempunyai 2 jalur


(55)

yang telah di sediakan, Jalur point A1 menuju menuju poin B1 jalur point A2 menuju Point B2. Setiap pemain pada level ini dapat menggunakan semua jenis Tower untuk melakukan pertahanan dengan cara membeli Tower yang akan digunakan pada shop yang telah tersedia sesuai dengan jumlah gold yang dimiliki. tower yang dibangun hanya bisa ditempatkan pada jalur yang di lewati musuh

4.1.4. Entitas Game

Entitas yang terdapat di dalam game terbagi menjadi dua, yaitu karakter Tower dan NPC yang berupa musuh.

A. keterangan Tower

Keterangan Tower dapat di lihat di table 4.1.

Tabel 4.1. Keterangan Tower

1 Hansip

1. Hansip aparat yang perintahkan untuk menjaga wilayah setempat.

2. jangkauan dan serangan yang sangat kecil, tetapi murah untuk di beli.


(56)

1. Satpol PP aparat yang perintahkan untuk mentertibkan kerusuhan,

2. jangkauan dan serangan yang sangat kecil, Tetapi kemampuannya di atas hansip

3 Polisi

1. Polisi, aparat yang perintahkan untuk menangkap penjahat,jika dibutuhkan penjahat di lumpuhkan.

2. jangkauan dan serangan yang normal, kemampuan di atas satpol pp dan hansip.


(57)

1. TNI adalah lembaga ketahan Indonesia yang perintahkan untuk menjaga pertahanan negara,

2. jangkauan dan serangan yang sangat luas, serangan yang kuat dan cepat.

5 KPK

1. KPK adalah lembaga pemberantas korupsi,

2. jangkauan dan serangan yang sangat kuat, efektif melawan koruptor . tidak berpengauh pada musuh yang lain

B. Keterangan Musuh

Keterangan Tower dapat di lihat di table 4.2.

Tabel 4.2. Keterangan Musuh


(58)

1. Jenis kejahatan yang sering kita temui di kota mana pun, mengambil hak bukan milik nya menjadi profesi untuk mencari uang .

2. Kecepatan bergerak yang normal, musuh pertama yang akan keluar dalam game.

2 Gangster

1. Orang bergerombolan yang meresahkan masyarakat.

2. kecepatan bergerak lebih cepat dari maling, tetapi mempunyai atribut darah yang lemah


(59)

1. Perilaku nya sangat meresahkan masyarakat, ingin menjadi jagoan di daerah tertentu.

2. Memiliki darah yang kuat , tetapi kecepatan bergerak nya lambat.

5 Koruptor

1. Manipulasi , menipu dan mencuri uang rakyat . uang yang begitu banyak bisa memperdaya aparat hukum yang lemah .

2. Dalam game ini koruptor tidak mampu di serang oleh tower lain

6 Teroris

1. Ideologis yang menyimpang , dan kejahatan nya bisa membunuh orang banyak .


(60)

sangat kuat.

C. Atribut Tower

Tabel 4.3. Atribut Tower

1 Hansip

Upgrade Level 1 Level 2 Level 3

Damage 5 7 10

Attack Speed 2 1.5 1

Range 4 5 5

Cost 12 15 17

2 SatPol PP

Upgrade Level 1 Level 2 Level 3

Damage 7.5 10 12.5

Attack Speed 2 1.5 1

Range 3 5 5


(61)

3 Polisi

Upgrade Level 1 Level 2 Level 3

Damage 9 13 15

Attack Speed 2 1.5 1

Range 7 7 8

Cost 40 43 65

4 TNI

Upgrade Level 1 Level 2 Level 3

Damage 5 7.5 9

Attack Speed 0.1 0.1 0.1

Range 7 8.5 9.3

Cost 150 170 170

5 KPK

Upgrade Level 1 Level 2 Level 3

Damage 8 10 12


(62)

Range 8 10 11.5

Cost 100 120 120

D. Atribut Musuh

Tabel 4.4. Atribut Musuh

Karakter Maling Gangster Preman Koruptor Teroris

Gold 15 15 30 57 50

Speed 3 4 1.6 3 2

Health 50 40 200 110 350

Score 15 20 58 100 135

4.1.5 Analisis Metode dan Algoritma Defense of the Law

Pada aplikasi permainan Defense of the Law ini, diterapkan metode dan algoritma yang berguna untuk membuat aplikasi permainan ini menjadi lebih menarik dan menantang.

4.1.5.1 Penerapan Metode Collision Detection Defense of the Law.

Agar aplikasi permainan Defense of the law ini menjadi lebih menarik, maka diterapkan metode collision detection yang sudah tersedia pada game engine


(63)

Unity berupa metode dimana yang bersinggungan merupakan objek secara langsung, baik itu sprite dengan sprite maupun sprite dengan objek lain.

Pada aplikasi permainan Defense of the Law, metode yang akan diterapkan pada peluru yang ditembakan oleh Tower untuk membunuh setiap musuh yang ada adalah metode collision antara objek dengan objek yang terjadi apabila objek tersebut saling bersentuhan pada titik yang sama.

Diagram Activity metode collision peluru dengan musuh ditunjukkan pada gambar 4.3.

Gambar 4.3 Diagram Activity Pelurudengan musuh

Di asumsikan untuk semua jenis musuh dan serangan tower, darah berkurang pada musuh di tulis dengan rumus :


(64)

4.1.5.2 Analisis Sell Tower dan Upgrade Tower

Player diberikan fitur jual tower, jika player mengalami salah penempatan tower ataupun membutuhkan gold yang lebih banyak.

Di asumsikan untuk semua tower ditulis dengan rumus sebagai berikut : Gold = Gold + Cost(Tower)*50%.

Player juga di berikan fitur upgrade jika gold mencukupi untuk melakukan upgrade maka kemampuan tower akan bertambah sesuai atribut yang penulis tulis di table 4.3.

4.1.5.3 Penerapan Waypoint Search pada Defense of the Law.

Untuk Musuh supaya bisa berjalan mengikuti Jalur yang di sediakan dari awal respawn (Point A) menuju tempat melarikan diri (point B), penulis menggunakan metode waypoint Search. Waypoint search merupakan pencarian yang efisien dan menghemat konsumsi pada CPU-time. Hampir semua game sekarang ini menggunakan metode waypoint sebagai search. Pada metode ini penulis membuat node dari game object sebagai Path dimana path tersebut sebagai jalur waypoint dari poin A ke Point B. Dengan metode yang terdapat di dalam Game Engine tidak perlu lagi menghitung jarak terpendek untuk menuju node yang dituju.


(65)

Gambar 4.4 Jalur Waypoint

Penjabaran Algoritma nya sebagai berikut :

Table 4.5 Algoritma Waypoint 1

2

3

4

5

6

7

8

SVector3D SteeringBehaviors::FollowPath(){

if(Vec3DistanceSq(m_pPath->CurrentWaypoint(), m_pMusuh->Pos()) <

m_WaypointSeekDistSq){

m_pPath->SetNextWaypoint();

}

if (!m_pPath->Finished()){

return Seek(m_pPath->CurrentWaypoint());


(66)

9

10

11

else{

return Arrive(m_pPath->CurrentWaypoint(), normal);}

}

Meskipun AI ini tebilang tidak terlalu rumit , tapi sangat efisien untuk digunakan pada kebutuhan path follower khususnya pada genre Tower defense.

4.1.6 Perancangan Aplikasi 4.1.6.1 Diagram Use Case

Use case adalah abstraksi dari interaksi antara sistem dan dan aktor. Use case mendeskripsikan bagaimana sistem akan terlihat di mata user. Secara umum, interaksi antara pengguna dengan aplikasi permainan Defense of the Law digambarkan pada diagram use case dibawah ini :

Gambar 4.5 Diagram Use Case Defense of the Law


(67)

Definisi use case berfungsi intuk menjelaskan fungsi use case yang terdapat pada use case diagram. Definisi use case diterangkan pada table berikut :

Table 4.6 Definisi Use case

NO Use Case Deskripsi

1 Campaign Proses memasuki menu Level

2 Level 1 Proses memainkan Level 1

3 Level 2 Proses memainkan level 2

4 LeaderBoard Proses memasuki HighScore

5

Setting Proses memasuki Setting/pengaturan game

6

Petunjuk Permainan Proses menampilkan petunjuk permainan

7 Kredit Proses menampilkan kredit

4.1.6.3 Skenario Use Case

Skenario pada diagram use case berisi mengenai alur kejadian ‘flow of event’ use case utama. Didalamnya menjelaskan urutan interaksi antara aktor dengan use case tersebut dari awal sampai akhir. Adapun skenario use case yang terdapat pada aplikasi game Defense of the Law adalah sebagai berikut :

1. Skenario Use Case Campaign

Skenario use case ini menjelaskan interaksi antara aktor, yaitu pemain, dengan use case Pilih Level yang dijelaskan pada tabel 4.7.


(68)

Identifikasi

Nama : Campaign

Tujuan : Memasuki campaign

Deskripsi : Proses memasuki menu level

Aksi Aktor Reaksi Sistem

a. Klik Campaign

b. Tampilkan menu pilih level c. Pemain memilih level yang di

inginkan( jika level 1 telah berhasil di selesaikan level 2 baru akan kebuka

d. Muncul deskripsi level e. Pemain mengklik mulai

f. Tampilkan Level yang di pilih

2. Skenario Use Case level 1

Skenario use case ini menjelaskan interaksi antara aktor, yaitu pemain, dengan use case level 1 yang dijelaskan pada tabel 4.8.

Table 4.8 Skenario Use Case Level 1

Identifikasi

Nama : level 1

Tujuan : Permainan Level 1


(69)

Aksi Aktor Reaksi Sistem

a. Pemain memasuki level 1

b. Tampilkan layar permainan level 1 c. Inisialisasi Player

d. Inisialiasasi Musuh e. Membangun tower

f. Menampilkan tower g. Memilih tower yang sudah

dibangun

h. Menampilkan menu dan deskripsi tower

i. Memilih upgrade tower

j. Meng-upgrade tower menjadi semakin kuat serangan nya

k. Memilih sell tower

l. Menjual tower dan tower hilang m. Menyelesaikan misi

n. Update Status permainan

3. Skenario Use Case level 2

Skenario use case ini menjelaskan interaksi antara aktor, yaitu pemain, dengan use case level 2 yang dijelaskan pada tabel 4.9.

Table 4.9 Skenario Use Case Level 2


(70)

Nama : level 2

Tujuan : Permainan Level 2

Deskripsi : Proses permainan Level 2

Aksi Aktor Reaksi Sistem

a. Pemain memasuki level 2

b. Tampilkan layar permainan level 2 c. Inisialisasi player

d. Inisialisasi Musuh e. Membangun tower

f. Menampilkan tower g. Memilih tower yang sudah

dibangun

h. Menampilkan menu dan deskripsi tower

i. Memilih upgrade tower

j. Meng-upgrade tower menjadi semakin kuat serangan nya

o. Memilih sell tower

p. Menjual tower dan tower hilang q. Menyelesaikan misi

r. Update Status permainan

4. Skenario Use Case LeaderBoard

Skenario use case ini menjelaskan interaksi antara aktor, yaitu pemain, dengan use case leaderboard yang dijelaskan pada tabel 4.10.


(71)

Table 4.10 Skenario Use Case Leaderboard

Identifikasi

Nama : Leaderboard

Tujuan : Memasuki leaderboard

Deskripsi : Proses memasuki leaderboard

Aksi Aktor Reaksi Sistem

Skenario Normal a. Klik LeaderBoard

b. Tampilkan Score Pemain c. Tampilkan Nama Pemain

5. Skenario Use Case Setting

Skenario use case ini menjelaskan interaksi antara aktor, yaitu pemain, dengan use case Setting yang dijelaskan pada tabel 4.11

.

Table 4.11 Skenario Use Case Setting

Identifikasi

Nama : Setting

Tujuan : Memasuki pengaturan permainan Deskripsi : Proses memasuki Setting

Aksi Aktor Reaksi Sistem


(72)

b. Klik Setting

d. Tampilkan Hapus Saving e. Tampilkan Hapus Score d. Klik Ok

e. Kembali ke Main Menu

6. Skenario Use Case Petunjuk

Skenario use case ini menjelaskan interaksi antara aktor, yaitu pemain, dengan use case petunjuk yang dijelaskan pada tabel 4.12.

Table 4.12 Skenario Use Case Petunjuk

Identifikasi

Nama : Petunjuk

Tujuan : Memasuki tampilan petunjuk permainan Deskripsi : Proses memasuki petunjuk permainan

Aksi Aktor Reaksi Sistem

a. Klik Petunjuk Permainan

b. Tampilkan layar Petunjuk permainan

c. Klik Back

d. Kembali ke Main Menu

7. Skenario Use Case Kredit

Skenario use case ini menjelaskan interaksi antara aktor, yaitu pemain, dengan use case credit yang dijelaskan pada tabel 4.13.


(73)

Table 4.13 Skenario Use Case Kredit

Identifikasi

Nama : Kredit

Tujuan : Memasuki tampilan info game Defense of the law Deskripsi : Proses memasuki tampilan kredit

Aksi Aktor Reaksi Sistem

a. Klik Kredit

b. Tampilkan layar kredit game Defense of the Law

c. Klik kembali

d. Kembali ke menu utama

4.1.6.4 Activity Diagram

Activity diagram menggambarkan aliran aktivitas dalam sistem yang sedang dirancang, bagaimana masing-masing alir berawal, decision yang mungkin terjadi, dan bagaimana mereka berakhir. Berikut gambaran Activity Diagram Game Defense of the Law.


(74)

Gambar 4.6 Activity Diagram Campaign


(75)

Gambar 4.7 Activity Diagram Level 1


(76)

Gambar 4.8 Activity Diagram Level 2


(77)

Gambar 4.9 Activity Diagram leaderboard

5. Activity Diagram Setting

Gambar 4.10 Activity Diagram Setting


(78)

Gambar 4.11 Activity Diagram Petunjuk Permainan

7. Activity Diagram Kredit

Gambar 4.12 Activity Diagram Kredit


(79)

Berikut merupakan diagram sequence yang terdapat pada aplikasi permainan Defense of the Law berdasarkan use case yang ada.

1. Diagram Sequence Campaign

Gambar 4.13 Sequence Diagram Campaign


(80)

Gambar 4.14 Sequence Diagram Level 1


(81)

Gambar 4.15 Sequence Diagram Level 2


(82)

Gambar 4.16 Sequence LeaderBoard

5. Diagram Sequence Setting

Gambar 4.17 Sequence Diagram Setting


(83)

Gambar 4.18 Sequence Diagram Petunjuk permainan

7. Diagram Sequence Kredit

Gambar 4.19 Sequence Diagram Kredit


(84)

Gambar 4.20 Class Diagram


(85)

4.2.1 Perancangan Arsitektur Menu

Untuk mempermudah pembuatan sistem diperlukan perancangan struktur menu program yang akan dibangun. Perancangan struktur menu program ini membantu dalam merancang bagian-bagian dari sistem yang sebenarnya dan untuk mengetahui bagian mana yang terlebih dahulu nantinya yang akan diakses setelah program tersebut selesai. Gambar 3.38 di bawah ini menunjukkan perancangan arsitektur menu dari sistem yang akan dibangun

Gambar 4.21 Arsitektur Menu Game Defense of the Law

1. Campaign : Merupakan sub menu untuk

memasuki pilih level

2. Pilih Level : Merupakan Sub menu untuk memilih Level yang akan di main kan.

3. Level 1 : Merupakan sub menu untuk


(86)

4. Level 2 : Merupakan sub menu untuk menampilkan layar pada permainan level 2.

5. Pengaturan : Merupakan sub menu untuk

mempilkan pengaturan suara dan tingkatan kesulitan pada permainan Defense of the Law.

6. Petunjuk permainan : Merupakan Sub Menu untuk menampilkan petujuntuk permainan Defense of the Law.

7. Kredit : Merupakan sub menu untuk menampilkan informasi pada game Defense of the Law.

8. Keluar game : merupakan sub menu untuk keluar dari aplikasi.

4.2.2 Perancangan Antarmuka Defense of the Law

Perancangan antarmuka menu pada aplikasi permainan Defense of the Law dapat dilihat pada gambar 4.


(87)

Gambar 4.22 Antar muka Main Menu

2. Antar Muka Setting


(88)

3. Antar Muka Petunjuk Permainan

Gambar 4.24 Antar muka menu Petunjuk Permainan

4. Antar Muka kredit

Gambar 4.25 Antar muka menu kredit


(89)

Gambar 4.26 Antar muka Menu pilih Level

6. Antar Muka Permainan Defense of the Law


(90)

7. Antar Muka paused


(91)

78

5.1 Implementasi

Tahap implementasi merupakan langkah terakhir setelah hasil analisis dan rancangan yang dibuat sedemikian rupa dan kemudian akan diuji melalui implementasi. Dari implementasi ini juga bisa dilihat hasilnya apakah cukup memuaskan atau tidak. Hasil analisis dan rancangan yang baik akan sangat membantu dalam tahap implementasi, sehingga setelah tahap implementasi akan dihasilkan suatu aplikasi yang sesuai dengan spesifikasi yang diinginkan.

5.1.1 Implementasi Perangkat Keras (Pengembang)

Perangkat keras yang di implementasi pada pembangunan aplikasi Defense of the Law ini adalah sebagai berikut :

Tabel 5.1 Spesifikasi Perangkat Keras (Pengembang)

Nama Perangkat Spesifikasi

Prosesor Intel Core i5 – 3317U

Hardisk 500 GB

RAM 8 GB

Display LCD Monitor resolusi 1360 x 768


(92)

Mouse Standar

5.1.2 Implementasi Perangkat Lunak (Pengembang)

Perangkat lunak yang di implementasi pada pembangunan aplikasi Defense of the Law ini adalah sebagai berikut :

1. Sistem Operasi Menggunakan window 8 Enterprise 2. Menggunakan Game engine Unity 3D 4.0

3. Menggunakan IDE Microsoft visual studio 2011 Express Edition

4. Modelling dan animasi karakter 3D menggunakan AutoDesk 3DS Max 2013.

5.1.3 Implementasi Perangkat Keras (Pengguna)

Berdasarkan hasil penelitian, spesifikasi minimal bagi pengguna yang dapat menggunakan aplikasi ini adalah sebagai berikut :

Tabel 5.2 Spesifikasi Perangkat Keras (Pengguna)

Nama Perangkat Spesifikasi

Prosesor Dual Core

Hardisk 40 GB

RAM 1 GB


(1)

Tabel 5.20 Pengujian Pemilihan Level 2 Kasus dan Hasil Uji

Data Masukan Yang Diharapkan Hasil yang dicapai Hasil Pengujian Memilih Level 2 Sistem dapat

menampilkan permainan level 2

Sistem menampilkan permainan level 2

[√ ] Diterima [ ] Ditolak

17. Pengujian Memilih leaderboard

Leaderboard merupakan proses untuk menampilkan score dan nama pemain yang telah meng input nama mereka masing-masing.

Tabel 5.21 Pengujian Leaderboard Kasus dan Hasil Uji

Data Masukan Yang Diharapkan Hasil yang dicapai Hasil Pengujian Pilih

Leaderboard

Sistem dapat menampilkan nama dan score

Sistem

menampilkan nama dan score

[√ ] Diterima [ ] Ditolak

18. Pengujian Bangun Tower


(2)

107

Tabel 5.22 Pengujian Bangun Tower Kasus dan Hasil Uji

Data Masukan Yang Diharapkan Hasil yang dicapai Hasil Pengujian Memilih tower

dan

menempatkan tower

Sistem dapat menampilkan tower yang dipilih

Sistem menampilkan tower yang dipilih

[√ ] Diterima [ ] Ditolak

19. Pengujian upgrade Tower

Upgrade Tower merupakan proses untuk menaikan kemampuan tower. Tabel 5.23 Pengujian Upgrade Tower

Kasus dan Hasil Uji

Data Masukan Yang Diharapkan Hasil yang dicapai Hasil Pengujian Memilih tower

dan

menempatkan tower

Sistem dapat menampilkan tower yang dipilih

Sistem menampilkan tower yang dipilih

[√ ] Diterima [ ] Ditolak

20. Pengujian Sell Tower


(3)

Tabel 5.24 Pengujian Sell Tower Kasus dan Hasil Uji

Data Masukan Yang Diharapkan Hasil yang dicapai Hasil Pengujian Menekan

tombol sell

Sistem dapat menghapus tower dan menambah gold pemain

Sistem menghapus tower dan

menambah gold pemain

[√ ] Diterima [ ] Ditolak

21. Pengujian Tampil Informasi Tower

Tampil Informasi tower dapat menampilkan ketika tower sudah dibangun Tabel 5.25 Pengujian Tampil Informasi tower

Kasus dan Hasil Uji

Data Masukan Yang Diharapkan Hasil yang dicapai Hasil Pengujian Memilih tower

yang sudah dibangun

Sistem dapat menampilkan informasi tower

Sistem menampilkan informasi tower

[√ ] Diterima [ ] Ditolak

22. Pengujian Tampil Lingkaran Range Tower

Lingkaran range tower dapat ditampilkan ketika mengklik tower yang sudah dibangun


(4)

109

Tabel 5.26 Pengujian Tampil Lingkaran Range Tower Kasus dan Hasil Uji

Data Masukan Yang Diharapkan Hasil yang dicapai Hasil Pengujian Memilih tower

yang sudah dibangun

Sistem dapat menampilkan lingkaran range

Sistem menampilkan range tower

[√ ] Diterima [ ] Ditolak

23. Pengujian Tampil Musuh

Musuh muncul saat tombol spawn di klik

Tabel 5.27 Pengujian Tampil Musuh Kasus dan Hasil Uji

Data Masukan Yang Diharapkan Hasil yang dicapai Hasil Pengujian Mengklik

tombol spawn

Sistem dapat menampilkan musuh

Sistem menampilkan musuh

[√ ] Diterima [ ] Ditolak

5.2.3 Kesimpulan Dan Hasil pengujian

Berdasarkan hasil pengujian diatas maka penulis menarik kesimpulan bahwa aplikasi game Defense of The Law ini secara fungsional mengeluarkan hasil sesuai dengan yang diharapkan.


(5)

110 6.1 Kesimpulan

Berdasarkan hasil implementasi dan pengujian game Defense of the Law maka dapat ditarik kesimpulan sebagai berikut.

1. Dengan adanya aplikasi game ini, game tower defense menjadi semakin variatif dan unik dalam hal cerita nya yang bertemakan tentang pertahanan hukum di Indonesia dan dalam hal artificial intelegence pada musuh diterapkan nya metode waypoint search untuk pathfinding yang diterapkan.

2. Dengan dibangunnya casual game pemain menjadi bertambah untuk semua kalangan dari mulai dari anak-anak, remaja, sampai dewasa. 6.2 Saran

Saran untuk pengembangan aplikasi game Defense of the Law ini agar menjadi lebih baik kedepannya adalah sebagai berikut.

1. Membuat Level selanjut nya dengan Mencerdaskan NPC nya untuk mencari jalur sendiri yang terdekat menuju Goal Point.

2. Jalur yang diberikan agar ditambah untuk menambah tantangan dan juga kecerdasan NPC untuk bisa mendeteksi damage yang ada pada tower, sehingga pemilihan jalur teraman menjadi lebih sulit.

3. Desain antarmuka dapat diperhalus dan diperbagus.

4. Membuat Desain Animasi karakter lebih diperbanyak supaya gerakan nya lebih variatif dan menarik


(6)

111

5. Background musik yang digunakan dapat dibuat sendiri dengan aplikasi pembuat musik.