PENERAPAN ALGORITMA A* PATHFINDING DALAM … awal.pdf · mobile atau dekstop dengan bahasa...

14
PENERAPAN ALGORITMA A* PATHFINDING DALAM MENGATUR PRILAKU PERGERAKAN KERBAU DALAM GAME 3D MAKEPUNG KOMPETENSI REKAYASA PERANGKAT LUNAK SKRIPSI I PUTU AGUS EDY SAPUTRA NIM. 1108605050 PROGRAM STUDI TEKNIK INFORMATIKA JURUSAN ILMU KOMPUTER FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS UDAYANA BUKIT JIMBARAN 2015

Transcript of PENERAPAN ALGORITMA A* PATHFINDING DALAM … awal.pdf · mobile atau dekstop dengan bahasa...

PENERAPAN ALGORITMA A* PATHFINDING DALAM

MENGATUR PRILAKU PERGERAKAN KERBAU DALAM GAME 3D

MAKEPUNG

KOMPETENSI REKAYASA PERANGKAT LUNAK

SKRIPSI

I PUTU AGUS EDY SAPUTRA

NIM. 1108605050

PROGRAM STUDI TEKNIK INFORMATIKA

JURUSAN ILMU KOMPUTER

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM

UNIVERSITAS UDAYANA

BUKIT JIMBARAN

2015

ii

iii

Judul : Penerapan Algoritma A*Pathfinding Dalam Mengatur

Prilaku Pergerakan Kerbau Dalam Game 3D Makepung.

Nama : I Putu Agus Edy Saputra

Pembimbing : 1. Ida Bagus Made Mahendra, S.Kom., M.Kom.

2. Made Widiartha, S.Si., M.Kom.

ABSTRAK

Untuk media promosi budaya, peranan game sangatlah penting,

dikarenakan banyak produsen game dari Asia bahkan Eropa yang terkenal secara

tidak langsung mempromosikan budaya mereka dalam game yang mereka buat,

maka dari itu tidak heran bahwa anak Indonesia khususnya Bali banyak mengenal

budaya luar ketimbang budaya lokal, karena pengaruh game yang di mainkan

anak-anak tersebut bernuansa budaya dari produsen game yang membuatnya.

Penelitian ini merancang game yang memberikan informasi bagaimana dan apa

sebenarnya permainan tradisional bali "Makepung". Game ini dirancang berbasis

mobile atau dekstop dengan bahasa pemrograman C# yang menggunakan unity3D

untuk menggabungkan bahasa pemrograman dan model 3D supaya menjadi

sebuah game.

Game "Makepung" ini diimplementasikan menggunakan pencarian

heuristik A*(star). Metode pencarian A*(star) akan meminimumkan total biaya

lintasan dan pada kondisi yang tepat akan memberikan solusi yang terbaik.

Metode ini menggunakan fungsi heuristik yang memprediksi keuntungan setiap

node yang dibuat. Hal ini akan memungkinkan algoritma A*(star) untuk

melakukan proses pencarian lintasan yang lebih dapat diharapkan berdasarkan

node-node yang dipilih.

Dari hasil penelitian yang telah dilakukan bahwa penerapan algoritma

pencarian A*(star) dalam game "Makepung" ini mampu memecahkan

permasalahan bagaimana lawan menghindar melewati rintangan. Disamping itu,

penerapan algoritma A*(star) dapat pula membuat game "Makepung" menjadi

interaktif dikarenakan lawan yang sudah di implementasikan algoritma A*(star)

mampu menghindari halangan layaknya user yang memainkan game "Makepung"

ini.

Kata Kunci : 3D Game, Algoritma A* (star), Game Makepung, Game

Tradisional, Pencarian Heuristik.

iv

Title : The Application of Algorithm A * Path-finding In Adjusting

the Buffalo Movement Behavior In the 3D Game of

Makepung.

Name : I Putu Agus Edy Saputra

Supervisors : 1. Ida Bagus Made Mahendra, S.Kom., M.Kom.

2. Made Widiartha, S.Si., M.Kom.

ABSTRACT

For media promotion of culture, the role of game is very important,

because many famous game manufacturers from Asia and even Europe indirectly

promote their culture in a game that they made, therefore it is no wonder that the

children of Indonesia, especially in Bali are more familiar with foreign cultures

rather than their own local culture, because of the influence of the games that they

play contain cultural nuances of the game manufacturers. This research is to

design a game that provide information on how and what actually the traditional

Balinese game of the "Makepung"/ the buffalo race. This game was designed

based on mobile or desktop, with the C # programming language that uses the

Unity 3D to combine programming languages and 3D models in order to become

a game.

This game of the "Makepung" is implemented by using a heuristic search

A * (star). A * (star) searching method will minimize the total cost of the paths

and in the right conditions; it will provide the best solution. This method uses a

heuristic function that predicts the advantages of each node made. This will allow

the algorithm A * (star) to perform the more expected path finding process based

on the selected nodes.

From the research that has been done, it was found out that the

implementation of the search algorithm A * (star) in the game of the "Makepung"

was able to solve the problem of how the opponent avoids the barriers. In

addition, the implementation of the algorithm A * (star) can also make the game

"Makepung" to be interactive because the opponent already implemented by the

algorithm A * (star) was able to avoid barriers, like the user who plays the game

of the "Makepung".

Keywords : 3D Game, Algorithm A * (star), Game of the Makepung, Traditional

Game, Heuristic Search.

v

KATA PENGANTAR

Puji dan syukur penulis panjatkan kehadapan Ida Sang Hyang Widhi

Wasa, karena atas karuniaNya lah, penulis dapat menyelesaikan laporan tugas

akhir “Penerapan Algoritma A* Pathfinding Dalam Mengatur Prilaku

Pergerakan Kerbau Dalam Game 3D Makepung” tepat pada waktunya.

Selama proses penyusunan tugas akhir ini, penulis telah banyak

memperoleh bimbingan, pengarahan, petunjuk dan saran yang keseluruhannya

membantu hingga akhir penyusunan laporan ini. Untuk itu penulis mengucapkan

terima kasih yang sebesar-besarnya kepada yang terhormat:

1. Bapak Drs. I Wayan Santiyasa, M.Si., selaku Ketua Jurusan Ilmu

Komputer yang telah memberikan dukungan dalam penyelesaian tugas

akhir ini.

2. Bapak I.B. Made Mahendra, S.Kom., M.Kom. selaku pembimbing I yang

senantiasa membimbing dan mengarahkan penulis dalam guna

menyempurnakan tugas akhir ini.

3. Bapak Made Widiartha, S.Si., M.Kom. selaku pembimbing II yang telah

bersedia mengoreksi, memberi kritik dan saran dalam penyusunan dan

penyempurnaan tugas akhir ini.

4. Keluarga dan rekan-rekan yang telah memberikan kontribusi dalam

penyelesaian tugas akhir ini.

Akhir kata penulis berharap semoga laporan ini bermanfaat bagi semua

pihak, dan penulis menyadari laporan ini masih jauh dari kesempurnaan, penulis

mengharapkan kritik dan saran yang membangun demi kesempurnaan laporan ini.

Bukit Jimbaran, Agustus 2015

Penyusun

I Putu Agus Edy Saputra

vi

DAFTAR ISI

HALAMAN JUDUL ................................................................................................ i

LEMBAR PENGESAHAN TUGAS AKHIR ....... Error! Bookmark not defined.

ABSTRAK ………………………………………………………………………..iv

ABSTRACT ........................................................................................................... iv

KATA PENGANTAR ............................................................................................ v

DAFTAR ISI .......................................................................................................... vi

DAFTAR TABEL ................................................................................................ viii

DAFTAR GAMBAR ............................................................................................. ix

DAFTAR LAMPIRAN ......................................................................................... 10

BAB I PENDAHULUAN ...................................... Error! Bookmark not defined.

1.1 Latar Belakang ............................................. Error! Bookmark not defined.

1.2 Rumusan Masalah ........................................ Error! Bookmark not defined.

1.3 Tujuan Penelitian ......................................... Error! Bookmark not defined.

1.4 Batasan Masalah........................................... Error! Bookmark not defined.

1.5 Manfaat Penelitian ....................................... Error! Bookmark not defined.

BAB II TINJAUAN PUSTAKA ............................ Error! Bookmark not defined.

2.1 Algoritma A* (star) ..................................... Error! Bookmark not defined.

2.2 Unity 3D ....................................................... Error! Bookmark not defined.

BAB III METODOLOGI PENELITIAN............... Error! Bookmark not defined.

3.1 Metode Pengumpulan Data .......................... Error! Bookmark not defined.

3.2 Analisis Sistem ............................................. Error! Bookmark not defined.

3.3 Desain Sistem ............................................... Error! Bookmark not defined.

3.3.1 Use Case Diagram ................................ Error! Bookmark not defined.

3.3.2 Activity Diagram ................................... Error! Bookmark not defined.

3.3.3 Class Diagram ...................................... Error! Bookmark not defined.

3.4 Implementasi dan Dokumentasi Sistem ....... Error! Bookmark not defined.

3.5 Pengujian Sistem .......................................... Error! Bookmark not defined.

3.5.1 Pengujian Alpha ( Alpha Test ) ............. Error! Bookmark not defined.

BAB IV HASIL DAN PEMBAHASAN ............... Error! Bookmark not defined.

4.1 Lingkungan Perancangan dan Implementasi Sistem . Error! Bookmark not

defined.

4.2 Pengembangan Sistem ................................. Error! Bookmark not defined.

vii

4.2.1 Pengembangan Desain GUI dan Model 3D ........ Error! Bookmark not

defined.

4.2.2 Implementasi Program .......................... Error! Bookmark not defined.

4.3 Pengujian Sistem .......................................... Error! Bookmark not defined.

4.3.1 Pengujian Sistem dengan Metode Alpha Test ..... Error! Bookmark not

defined.

4.4 Analisis Hasil Pengujian .............................. Error! Bookmark not defined.

BAB V KESIMPULAN DAN SARAN ................. Error! Bookmark not defined.

5.1 Kesimpulan .................................................. Error! Bookmark not defined.

5.2 Saran ............................................................. Error! Bookmark not defined.

DAFTAR PUSTAKA ............................................ Error! Bookmark not defined.

viii

DAFTAR TABEL

Tabel 2.1 Proses algoritma A* ............................... Error! Bookmark not defined.

Tabel 4.1 Penentuan open list ................................ Error! Bookmark not defined.

Tabel 4.2 Perulangan proses 1 untuk mendapatkan openlist baru ................. Error!

Bookmark not defined.

Tabel 4.3 Perulangan proses 2 untuk mendapatkan openlist baru ................. Error!

Bookmark not defined.

Tabel 4.4 Perulangan proses 3 untuk mendapatkan openlist baru ................. Error!

Bookmark not defined.

Tabel 4.5 Perulangan proses 4 untuk mendapatkan openlist baru ................. Error!

Bookmark not defined.

Tabel 4.6 Perulangan proses 5 untuk mendapatkan openlist baru ................. Error!

Bookmark not defined.

Tabel 4.7 Perulangan proses 6 untuk mendapatkan openlist baru ................. Error!

Bookmark not defined.

Tabel 4.8 Perulangan proses 7 untuk mendapatkan openlist baru ................. Error!

Bookmark not defined.

Tabel 4.9 Perulangan proses 8 untuk mendapatkan openlist baru ................. Error!

Bookmark not defined.

Tabel 4.10 Perulangan proses 9 untuk mendapatkan openlist baru ............... Error!

Bookmark not defined.

Tabel 4.11 Proses terakhir menemukan end point . Error! Bookmark not defined.

Tabel 4.12 Potongan code untuk mengecek halangan ......... Error! Bookmark not

defined.

Tabel 4.13 Potongan code modifikasi A* .............. Error! Bookmark not defined.

Tabel 4.14 Potongan code untuk trigger lintasan dan lintasan finish ............ Error!

Bookmark not defined.

Tabel 4.15 Potongan code untuk lintasan supaya looping ... Error! Bookmark not

defined.

Tabel 4.16 Potongan code untuk main menu ......... Error! Bookmark not defined.

ix

Tabel 4.17 Potongan code untuk pembuatan object ............ Error! Bookmark not

defined.

Tabel 4.18 Potongan code untuk merubah tombol tiles menjadi transparant Error!

Bookmark not defined.

Tabel 4.19 Potongan code untuk menambah kecepatan player .. Error! Bookmark

not defined.

Tabel 4.20 Potongan code untuk reset kecepatan player ..... Error! Bookmark not

defined.

Tabel 4.21 Potongan code untuk membuat game berakhir .. Error! Bookmark not

defined.

Tabel 4.22 Hasil Pengujian Proses Algoritma A* . Error! Bookmark not defined.

Tabel 4.23 Hasil Uji Jarak ...................................... Error! Bookmark not defined.

x

DAFTAR GAMBAR

Gambar 2.1 Modifikasi A*(star) ............................ Error! Bookmark not defined.

Gambar 2.2 Path Modifikasi A*(star) .................... Error! Bookmark not defined.

Gambar 3.1 Use Case Diagram .............................. Error! Bookmark not defined.

Gambar 3.2 Activity Diagram Play Game ............. Error! Bookmark not defined.

Gambar 3.3 Activity Diagram NPC (Non-Playable Character) .. Error! Bookmark

not defined.

Gambar 3.4 Activity Diagram Menentukan Jalur .. Error! Bookmark not defined.

Gambar 3.5 Activity Diagram Membuat Lintasan Baru ...... Error! Bookmark not

defined.

Gambar 3.6 Activity Diagram Menentukan Lintasan Baru . Error! Bookmark not

defined.

Gambar 3.7 Class Diagram .................................... Error! Bookmark not defined.

Gambar 4.1 Antarmuka Main Menu ...................... Error! Bookmark not defined.

Gambar 4.2 Antarmuka Option Menu ................... Error! Bookmark not defined.

Gambar 4.3 Antarmuka Game Play ....................... Error! Bookmark not defined.

Gambar 4.4 Antarmuka Finish Game .................... Error! Bookmark not defined.

Gambar 4.5 Path hasil algoritma A*(star) pada Unity 3D .. Error! Bookmark not

defined.

Gambar 4.6 Lintasan awal game makepung .......... Error! Bookmark not defined.

Gambar 4.7 Lintasan awal game makepung dengan trigger Error! Bookmark not

defined.

Gambar 4.8 Lintasan baru dengna halangan .......... Error! Bookmark not defined.

Gambar 4.9 lintasan 1 dengan object halangan berada di kanan Error! Bookmark

not defined.

Gambar 4.10 lintasan 2 dengan tidak ada object halangan .. Error! Bookmark not

defined.

Gambar 4.11 lintasan 3 dengan object halangan di kiri ....... Error! Bookmark not

defined.

Gambar 4.12 lintasan finish ................................... Error! Bookmark not defined.

xi

Gambar 4.13 sound di unity 3D ............................. Error! Bookmark not defined.

Gambar 4.14 Main menu........................................ Error! Bookmark not defined.

Gambar 4.15 Game Play ........................................ Error! Bookmark not defined.

Gambar 4.16 Trigger finish .................................... Error! Bookmark not defined.

12

DAFTAR LAMPIRAN

13