Pencarian Rute Oleh Non Player Character Menggunakan Algoritma A* Berbasis 2D

dokumen-dokumen yang mirip
Algoritma A* untuk AI Path Finding bagi NPC

Penerapan Algoritma A* Sebagai Algoritma Pencari Jalan Dalam Game

PENGEMBANGAN APLIKASI GAME ARCADE 3D MARI SELAMATKAN HUTAN INDONESIA

BAB I PENDAHULUAN. 1.1 Latar Belakang

Strategi Menyerang Jarak Dekat Menggunakan Klasifikasi Bayesian Pada NPC (Non Player Character)

Penerapan Algoritma A-star (A*) Untuk Menyelesaikan Masalah Maze

Koordinasi Non Playing Character (NPC) Follower Menggunakan Algoritma Potential Fields

BAB III ALGORITMA GREEDY DAN ALGORITMA A* membangkitkan simpul dari sebuah simpul sebelumnya (yang sejauh ini terbaik di

Jurusan Teknik Elektro ITS Surabaya, Jurusan Teknik Elektro ITS Surabaya, Jurusan Teknik elektro ITS Surabaya

SIMULASI ALGORITMA A* UNTUK MENYELESAIKAN PATHFINDING

A-1 BAB I PENDAHULUAN

APLIKASI PENCARI RUTE OPTIMUM PADA PETA GUNA MENINGKATKAN EFISIENSI WAKTU TEMPUH PENGGUNA JALAN DENGAN METODE A* DAN BEST FIRST SEARCH 1

ARTIFICIAL INTELEGENCE ALGORITMA A* (A STAR) SEBAGAI PATHFINDING ENEMY ATTACK PADA GAME TRASH COLLECTION

OPTIMISASI TOTAL TEMPUH NPC PADA RTS GAME MENGGUNAKAN HARMONY SEARCH ALGORITHM. Herti Miawarni 1* Jl. A. Yani 114, Surabaya 60231, Telp.

Penerapan Algoritma A* Untuk Pencarian Rute Terdekat Pada Permainan Berbasis Ubin (Tile Based Game)

UKDW BAB 1 PENDAHULUAN

ANALISA PERBANDINGAN ALGORITMA A* DAN DYNAMIC PATHFINDING ALGORITHM DENGAN DYNAMIC PATHFINDING ALGORITHM UNTUK NPC PADA CAR RACING GAME

Penerapan Algoritma A* (A Star) Sebagai Solusi Pencarian Rute Terpendek Pada Maze

BAB 2 LANDASAN TEORI

BAB 1 PENDAHULUAN 1.1 Latar Belakang Masalah

Penerapan Algoritma A Star Pada Permainan Snake

BAB I PENDAHULUAN 1.1 Latar Belakang Masalah 1.2 Perumusan Masalah

BAB I PENDAHULUAN. yang juga diterapkan dalam beberapa kategori game seperti real time strategy

PROTOTIPE GAME MAZE CHASER DENGAN ALGORITMA A*

BAB II TINJAUAN PUSTAKA

BAB I PENDAHULUAN 1.1 LATAR BELAKANG

PERILAKU OTONOM DAN ADAPTIF NON PLAYER CHARACTER MUSUH PADA GAME 3 DIMENSI MENGGUNAKAN FUZZY STATE MACHINE DAN RULE BASED SYSTEM

BAB I PENDAHULUAN 1.1 Latar Belakang Masalah

SIMULASI MULTI-AGENT DENGAN HEXAGONAL GRID MENGGUNAKAN METODE KNOWLEDGE-BASED SYSTEM

Pertemuan-07 INFORMATIKA FASILKOM UNIVERSITAS IGM

OPTIMASI PENCAPAIAN TARGET PADA SIMULASI PERENCANAAN JALUR ROBOT BERGERAK DI LINGKUNGAN DINAMIS

ANALISIS PENGARUH PENGGUNAAN NILAI HEURISTIK TERHADAP PERFORMANSI ALGORITMA A* PADA GAME PATHFINDING

PENERAPAN METODE A* PADA GAME MOBILE LEARNING PEMILIHAN SAMPAH ORGANIK DAN ANORGANIK BERBASIS ANDROID Achmad Irpan Fuad 1 Moh.

Bab I PENDAHULUAN 1.1. Latar Belakang Masalah

Kompleksitas Algoritma A* Pada Implementasi PassiveAI Untuk Game Mobile AI

Penerapan Teori Graf untuk Pathfinding pada Permainan Elektronik

Manuver Kelompok NPC Berbasis Boids

PENERAPAN ALGORITMA A* PADA PERMASALAHAN OPTIMALISASI PENCARIAN SOLUSI DYNAMIC WATER JUG

UKDW BAB I PENDAHULUAN. 1.1 Latar Belakang Masalah

VARIASI PENGGUNAAN FUNGSI HEURISTIK DALAM PENGAPLIKASIAN ALGORITMA A*

BAB II TINJAUAN PUSTAKA

Metode Path Finding pada Game 3D Menggunakan Algoritma A* dengan Navigation Mesh

Algoritma A* Memanfaatkan Navigation Meshes dalam 3 Dimensional Pathfinding

Jurnal Ilmiah Komputer dan Informatika (KOMPUTA) MEMBANGUN GAME EDUKASI SEJARAH WALISONGO

ANALISIS PERBANDINGAN ALGORITMA PATHFINDING GREEDY BEST-FIRST SEARCH DENGAN A*(STAR) DALAM MENENTUKAN LINTASAN PADA PETA

Simulasi Pencarian Shortest Distance Path

APLIKASI GAME TIC TAC TOE 6X6 BERBASIS ANDROID MENGGUNAKAN ALGORITMA MINIMAX DAN HEURISTIC EVALUATION

BAB 3 PENANGANAN JARINGAN KOMUNIKASI MULTIHOP TERKONFIGURASI SENDIRI UNTUK PAIRFORM-COMMUNICATION

Penerapan dan Perbandingan Algoritma Path-finding dalam Kecerdasan Buatan Hantu pada Permainan Pac-Man

Ronan Deovolenta Malelak

ISSN: PROBLEM SOLVING PERMAINAN PUZZLE 8 MENGGUNAKAN ALGORITMA A* Beny Hakim Halimsah, Eggy Margiso

Jurusan Matematika Fakultas Matematika dan Ilmu Pengetahuan Alam Institut Teknologi Sepuluh Nopember Surabaya 2011

KOORDINASI NONPLAYER CHARACTER FOLLOWER MENGGUNAKAN ALGORITMA POTENTIAL FIELDS BERBASIS MULTIBEHAVIOUR

Penerapan Algoritma Greedy Best First Search untuk Menyelesaikan Permainan Chroma Test : Brain Challenge

PENCARIAN JALUR TERPENDEK PADA SNAKE GAME MENGGUNAKAN ALGORITMA A*

Pengembangan Heuristik Diferensial Terkompresi untuk Algoritma Block A*

Penggunaan Algoritma Pathfinding pada Game

PENGEMBANGAN HEURISTIK DIFERENSIAL TERKOMPRESI UNTUK ALGORITMA BLOCK A*

STUDI PENERAPAN ALGORITMA DIJKSTRA DAN ALGORITMA A* DALAM MENENTUKAN RUTE TERPENDEK PADA ROBOT PEMADAM API

Membangun Sistem Penjadwalan Ruang Laboratorium dengan Algoritma Modified BiDirectional A*

IMPLEMENTASI DAN PERANCANGAN GAME 3D RUNNING BUNG KARNO

BAB I PENDAHULUAN. ini. Salah satu penerapannya yaitu terdapat pada permasalahan dalam melakukan pencarian dari

I. PENDAHULUAN II. LANDASAN TEORI

BAB I PENDAHULUAN UKDW. dalam kehidupan kita sehari-hari, terutama bagi para pengguna sarana

PENGGUNAAN ALGORITMA BRANCH AND BOUND UNTUK MENYELESAIKAN PERSOALAN PENCARIAN JALAN (PATH-FINDING)

Penerapan Algoritma Hybrid Pathfinding A* dan Boids untuk Game Pesawat Tempur

MANAJEMEN BASIS DATA SARANA KAMPUS UNIVERSITAS BENGKULU MENGGUNAKAN ALGORITMA A* BERBASIS SPASIAL

PENERAPAN MODIFIKASI ALGORITMA A* PATHFINDING DALAM GAME BALAP 3D BERBASIS MOBILE KOMPETENSI REKAYASA PERANGKAT LUNAK SKRIPSI

UKDW BAB I PENDAHULUAN Latar Belakang

Aplikasi Graf Pada Algoritma Pathfinding Dalam Video Game

BAB 2 TINJAUAN PUSTAKA

BAB 1 PENDAHULUAN 1.1 Latar Belakang

BAB I PENDAHULUAN 1.1. Latar Belakang

PENERAPAN ALGORITMA A* (STAR) UNTUK MENCARI RUTE TERCEPAT DENGAN HAMBATAN

BAB I PENDAHULUAN. Di tengah masyarakat dengan aktivitas yang tinggi, mobilitas menjadi hal yang penting.

Pencarian Lintasan Terpendek Pada Aplikasi Navigasi Menggunakan Algoritma A*

Team project 2017 Dony Pratidana S. Hum Bima Agus Setyawan S. IIP

BAB I PENDAHULUAN. 1.1 Latar Belakang Masalah

Perancangan Aplikasi Wisata Kabupaten Lebak Menggunakan Algoritma A* (A-Star) Berbasis Android

UKDW BAB I PENDAHULUAN. 1.1 Latar Belakang Masalah

SUSUN KATA PADA GAME EDUKASI Menyusun Kata Dalam Bahasa Inggris Dengan Melawan Zombie DENGAN IMPLEMENTASI ALGORITMA BACKTRACKING TUGAS AKHIR

PENERAPAN ALGORITMA DIJKSTRA DAN FUZZY LOGIC SUGENO PADA GAME ZOMBIE SHOOTER

PENGGUNAAN FUNGSI HEURISTIK SEDERHANA PADA PERMAINAN TIC-TAC-TOE

Penerapan Teori Graf dalam Game Bertipe Real Time Strategy (RTS)

IMPLEMENTASI SISTEM PARKIR CERDAS DI UNIVERSITAS TELKOM. SUBSISTEM : APLIKASI MOBILE

Penggunaan Metode Depth First Search (DFS) dan Breadth First Search (BFS) pada Strategi Game Kamen Rider Decade Versi 0.3

Penerapan Graf dalam Game dengan Kecerdasan Buatan

PENERAPAN ALGORITMA A* PATHFINDING DALAM MENGATUR PRILAKU PERGERAKAN KERBAU DALAM GAME 3D MAKEPUNG KOMPETENSI REKAYASA PERANGKAT LUNAK SKRIPSI

BAB I PENDAHULUAN. termasuk diantaranya adalah multiplayer game. multiplayer game. dibandingkan dengan singleplayer game sehingga multiplayer game

Pergerakan Pasukan Untuk Mengejar Musuh Bergerak Menggunakan D* Lite Berbasis Algoritma Pathfinding

Penggunaan Algoritma A* untuk Menghitung Kecepatan Menghancurkan Tank Maus dalam Permainan World of Tanks

Yudi Yansyah, Prihastuti Harsani, M.Si, Erniyati M.Kom Program Studi Ilmu Komputer FMIPA Universitas Pakuan ABSTRACT

Pergantian Senjata NPC pada Game FPS Menggunakan Fuzzy Sugeno

Penerapan Dynamic Programming pada sistem GPS (Global Positioning System)

Algoritma Pathfinding untuk Game

BAB 2 LANDASAN TEORI

SIMULASI AUTONOMOUS VEHICLE DI UNIVERSITAS KRISTEN SATYA WACANA SALATIGA

IMPLEMENTASI DAN ANALISIS ALGORITMA A*(STAR) UNTUK MENENTUKAN JALUR DENGAN MULTIPLE GOAL PADA PERGERAKAN NPC(NON-PLAYABLE CHARACTER)

BAB 3 ANALISIS DAN PERANCANGAN SISTEM

AI sebagai Masalah Pelacakan. Lesson 2

Transkripsi:

147 Pencarian Rute Oleh Non Player Character Menggunakan Algoritma A* Berbasis 2D Latius Hermawan *, Maria Bellaniar I **) Informatika, Universitas Katolik Musi Charitas Palembang E-Mail: * tiuz.hermawan@sttmusi.ac.id, **choibella89@gmail.com Abstrak Terdapat permasalahan yang selalu ada pada pathfinding. Belum ada satu solusi yang tepat untuk setiap jenis masalah pathfinding. Pathfinding yang optimal merupakan skenario yang rumit, dimana terdapat perbedaan yang signifikan antara istilah path dan shortest path. Non Player Character memainkan peranan penting dalam banyak permainan, misalkan menjadi musuh ataupun teman dan yang berhubungan dengan permainan. Setiap NPC harus dapat mencari jalurnya masing-masing untuk mencapai sebuah target yang telah ditentukan sebelumnya dengan berbagai obstacle yang telah ada dan dapat diubah sesuai kebutuhan. Sehingga permainan dapat dibuat lebih menarik. Salah satu algoritma yang digunakan pada pathfinding adalah A* digunakan dalam melakukan pencarian jalur yang optimal yang menghubungkan dua titik pada peta (grafik) dari permainan yang ada. A* lebih cocok untuk sebuah lingkungan di mana ada beberapa rute di sekitar lingkungan yang ada. Algoritma A* dapat membantu NPC untuk menemukan rute dalam mencari keberadaan target dengan berbagai halangan yang disediakan. Kata kunci: Algoritma A*, Pathfinding, Obstacle Advoidance, Kecerdasan Buatan, AI. 1. PENDAHULUAN Banyak jenis masalah pathfinding ada. Sayangnya, tidak ada satu solusi yang tepat untuk setiap jenis masalah pathfinding. Solusinya tergantung pada spesifik dari persyaratan merintis jalan untuk setiap permainan yang diberikan [1]. Pathfinding bertujuan untuk menemukan jalan terpendek antara dua poin. Proses dimulai dari mulai node awal dan mencapai node tujuan untuk menemukan jalan antara poin [2]. Pathfinding yang optimal merupakan skenario yang rumit, dimana terdapat perbedaan yang signifikan antara istilah path dan shortest path. Sehingga pathfinding yang ada bertujuan untuk menemukan jalan antara dua node dalam grafik dan menemukan jalur terpendek yang optimal [3]. Non Player Character memainkan peranan penting dalam banyak permainan, seperti menyajikan story-line, menjadi musuh ataupun teman dan memberikan informasi kepada pengguna yang berhubungan dengan permainan [4]. Banyak permainan memerlukan desain Artificial Intelligence yang baik untuk mengontrol karakter. Sebagai contoh, Non Player Character harus bisa berperilaku alami dan dapat bergerak untuk mengepung dan menyerang musuh. merupakan kunci dari permainan yang telah didiskusikan pada literature [5][6][7]. Salah satu algoritma yang digunakan pada pathfinding adalah A* [8][9], digunakan dalam melakukan pencarian jalur yang optimal yang menghubungkan dua titik pada peta (grafik) dari permainan yang ada. A* lebih cocok untuk sebuah lingkungan di mana ada beberapa rute di sekitar lingkungan yang ada. Dengan kata lain, lingkungan yang dibuat dalam permainan dapat memakan waktu dan memiliki kompleksitas yang lebih dalam hal pelaksanaannya dalam permainan. Pada kasus multi NPC, setiap NPC harus dapat mencari jalurnya masing-masing untuk mencapai sebuah target yang telah ditentukan sebelumnya dengan berbagai obstacle yang telah ada dan dapat diubah sesuai kebutuhan. Sehingga permainan dapat dibuat lebih menarik, disinilah kesulitan yang harus diselesaikan dengan menggunakan metode yang berbasis pathfinding.

148 Seminar Nasional Teknologi Informasi dan Komunikasi Terapan (SEMANTIK) 2015 Untuk mengatasi permasalahan, pada penelitian yang dilakukan oleh penulis, dibahas penerapan pathfinding menggunakan algoritma A* sebagai solusi untuk mempercepat proses pencarian rute. 2. TINJAUAN PUSTAKA Pada penelitian sebalumnya[10], pathfinding yang menggunakan navigasi untuk menemukan jalan terpendek antara lokasi. Pendekatan yang dilakukan untuk adaptasi game dalam hal pergerakan NPC menggunakan Nav-Mess Cellpath. Teknik ini memungkinkan NPC untuk beradaptasi pada rute yang mereka lewati berdasarkan pengalaman sebelumnya sehingga pathfinding yang dihasilkan menjadi lebih baik. Pathfinding menggunakan metode yang berbasis pada waypoint, menghasilkan cara yang mudah untuk diterapkan dan hanya perlu untuk mendeteksi tabrakan dengan warna [1]. Jika tabrakan terjadi, kita hanya cukup mengubah radian pengaturan default untuk pergerakan. Oleh karena itu, algoritma yang digunakan dapat menyimpan dan menghemat waktu dan sumber daya dalam mencari solusi pada lingkungan yang dinamis. A-Star algoritma adalah algoritma yang dapat digunakan tidak hanya dalam hal pencarian jalur terpendek di peta permainan, tetapi umumnya dapat mendapatkan hasil yamg baik dalam game dengan kompleksitas ruang yang rumit [1]. Dalam tulisan ini, itu diterapkan di mencari jalan terpendek untuk mencapai target dengan bola virtual. 3. LANDASAN TEORI Algoritma A* (A star) adalah algoritma pathfinding pengembangan dari Algoritma BFS (Best First Search). Seperti halnya pada BFS, untuk menemukan solusi, A* juga dituntun oleh fungsiheuristik[1,2,3]. Notasi yang dipakai oleh Algoritma A* adalah sebagai berikut: f(n) = g(n) + h(n) (1) Pada notasi standar yang dipakai untuk algoritma A* tersebut, digunakan g(n) untuk mewakili cost rute dari node awal ke node n, lalu h(n) mewakili perkiraan cost dari node awal ke nodegoal, yang dihitung dengan fungsi heuristic [12]. Autonomous character mewakili tokoh dalam cerita atau permainan dan memiliki kemampuan untuk improvisasi tindakan mereka. Ini adalah kebalikan dari seorang tokoh dalam sebuah film animasi, yang tindakannya ditulis di muka, dan dalam sebuah permainan, tindakan yang diarahkan oleh pemain. Karakter otonom dalam permainan biasanya disebut NON PLAYER CHARACTER (Non-Player Character) [15]. 4. METODE A-STAR Terdapat beberapa hal yang perlu didefinisikan terlebih dahulu dalam kasus game pathfinding dengan penerapan algoritma A* (A Star). Beberapa terminologi dasar yang terdapat pada algoritma ini adalah starting point, simpul (nodes), A, open list, closed list, harga (cost), halangan. Starting point adalah posisi awal sebuah benda. A* adalah simpul yang sedang dijalankan algortima pencarian jalan terpendek. Sedangkan simpul adalah petakpetak kecil sebagai representasi dari area pathfinding. Open list adalah tempat menyimpan data simpul yang mungkin diakses dari starting point maupun simpul yang sedang dijalankan. Closed list adalah tempat menyimpan data simpul sebelum A* yang juga merupakan bagian dari jalur terpendek yang telah berhasil didapatkan. Harga (F) adalah nilai yang diperoleh dari penjumlahan nilai G. Simpul tujuan yaitu simpul yang dituju. Rintangan adalah sebuah atribut yang menyatakan bahwa sebuah simpul tidak dapat dilalui oleh A*. Gambar 1. Proses Algoritma A-Star [13] Fungsi f sebagai estimasi fungsi evaluasi terhadap node n, dapat dituliskan : f(n) = g(n) + h(n) (2) f(n) adalah fungsi evaluasi ( jumlah g(n) dengan h(n) ), g(n) adalah biaya (cost) yang

149 dikeluarkan dari keadaan awal sampai keadaan n, h(n) adalah estimasi biaya untuk sampai pada suatu tujuan mulai dari n. [14] Pergerakan diagonal pada map diperbolehkan, maka digunakan fungsi heuristic Non-Manhattan Distance. Tahapan yang dilakukan yaitu, Asumsikan setiap langkah dari hijau adalah legal baik vertikal, horizontal, maupun diagonal dengan catatan tidak membentur tembok. G adalah biaya dalam setiap langkah. Dalam kasus ini kita akan berikan nilai 10 untuk setiap langkah vertikal maupun horizontal, dan 14 untuk diagonal. Nilai 14 kita dapatkan dari perhitungan phytagoras. Gambar 4. Perhitungan bobot akhir A* Gambar 5. Rute yang akan dilalui Gambar 2. Cost pada A* Selanjutnya hitung biaya estimasi pergerakan yang disimbolkan dengan H. Nilai H adalah jarak / estimasi biaya dari pergerakan dari suatu titik ke tujuan dengan mengabaikan penghalang yang ada. Gambar 6. Rute yang telah didapat Gambar 3. Jarak pada A* Setelah nilai G dan H didapatkan, maka beri skor dari masing-masing titik yang akan dilalui. Skor kita lambangkan misalnya dengan F dimana nilai F = G + H. Setelah pergerakan pertama selesai selanjutnya lakukan perulangan dari dari langkah 1 sampai 4. 5. HASIL ANALISIS Dari perhitungan metode yang telah dilakukan dengan A-Star, terlihat bahwa NPC dapat menemukan rute dan jalur yang akan dilewati dengan obstacle (penghalang) yang dapat didesain secara acak. Langkah pertama yang dilakukan NPC dalam menemukan target (bola warna merah) adalah dengan melihat layout tempat dimana obstacle dan target berada. Selanjutnya NPC melihat rute mana yang dapat dilalui dengan menghitung bobot terendah dari masingmasing rute. Setelah mendapatkan bobot terendah, NPC dapat melewati rute tersebut dan menemukan keberadaan target yang dimaksud.

150 Seminar Nasional Teknologi Informasi dan Komunikasi Terapan (SEMANTIK) 2015 Pada penelitian ini, target dapat dipindahkan ke berbagai tempat sesuai keinginan user. Setiap target berpindah tempat, NPC dapat menentukan beberapa rute yang harus dilewati. Selain target yang dapat berpindah tempat, NPC yang digunakan pun dapat lebih dari satu dan keduanya dapat menemukan rute tersebut secara bersamaan walaupun dari posisi yang berbeda. Posisi target dan NPC dipaparkan pada Gambar 7, sedangkan untuk rute yang dapat dilewati oleh NPC untuk sampai ke target dipaparkan pada Gambar 8. Gambar 7. Posisi Target dan NPC Gambar 8. Rute yang dihasilkan 6. KESIMPULAN Dari analisis metode yang dilakukan, algoritma A* dapat membantu NPC untuk menemukan rute dalam mencari keberadaan target dengan berbagai halangan yang disediakan. Selain itu, NPC dapat dibuat lebih dari satu serta dapat juga menemukan keberadaan target yang berpindah-pindah posisi. 7. DAFTAR PUSTAKA [1] Jung Y. An Effective Method of Pathfinding in a Car Racing Game. IEEE Computer and Automation Engineering (ICCAE) The 2nd International Conference : 544-547.2010. [2] Geethu E, Mathew. Direction Based Heuristic For Pathfinding In Video Games, IEEE Sponsored Second International Conference On Electronics And Communication Systems.2015. [3] Björnsson, Y. TBA*: Time-Bounded A*. IEEE Twenty-first International Joint Conference on Artificial Intelligence (IJCAI-09); 431-436.2009. [4] Jafar A. Portable Non-Player Character Tutors with Quest Activities, IEEE Virtual Reality : 253-354, 2010. [5] S. Priesterjahn, O. Kramer, A. Evolution of human competitive agents in modern computer games. IEEE Congress on Evolutionary Computation (CEC2006): 777 784. 2006. [6] J. Hagelbäck and S. J. Johansson, The rise of potential fields in realtime strategy bots. Fourth Artificial Intelligence and Interactive Digital Entertainment Conference (AIIDE) : 42 47. 2008. [7] P. Avery, S. Louis. Evolving Coordinated Spatial Tactics For Autonomous Entities Using Influence Maps. IEEE Symposium on Computational Intelligence and Games (CIG2009) : 341 348. 2009. [8] R. Dechter and J. Pearl, Generalized Best-First Search Strategies And The Optimality Of A*. Journal of the ACM, vol. 32 : 505-536. 1985. [9] D. M. Bourg, and G. Seemann, AI for Game Developers 1st ed., O'Reilly Media : 51-75. 2004. [10] Hartley, T. In-Game Adaptation Of A Navigation Mesh Cell Path. IEEE 17 th International Conference on Computer Games: AI, Animation, Mobile, Interactive Multimedia, Educational and Serious Games.2012. [11] Jie Hu. A Pathfinding Algorithm in Real-time Strategy Game based on Unity3D. IEEE ICALIP : 1159-1162. 2012.

151 [12] Riftadi, M. Variasi Penggunaan Fungsi Heuristik dalam Pengaplikasian Algoritma A*, Makalah IF2251, Teknik Informatika ITB, Bandung. 2007. [13] Nelly I. Membangun Game Edukasi Sejarah Walisongo. Jurnal Ilmiah Komputer dan Informatika (KOMPUTA). 2012. [14] Zou, Huilai., Qu, Zening., Qu, Youtian. Optimized Application and Practice of A* Algorithm in Game Map Path- Finding. [15] Yunifa, Mochamad Hariadi dan Supeno Mardi. Strategi Menyerang pada Game FPS Menggunakan Hierarchy Finite Machine dan Logika Fuzzy, Institut Teknologi Sepuluh November, 2012.