Bikin Puzzle-8: pusing


BAGI yang merasa gemes karena mengalami kesulitan ketika bermain games, bersyukurlah. Kenapa? Karena eh karena membuat game dipastikan bakal lebih sulit. Boro-boro buat game sekaliber Pro Evolution Soccer atau Mario Bros, buat game puzzle saja ternyata rumit. Beginilah nasib projremer abal-abal dan nekat.

Yup, mendesain sebuah game ternyata sulit juga ya. Selain harus bener-bener jago koding, algoritmanya juga musti bener. Belum lagi jika mau agar si game itu pintar, jadi harus ditambah kecerdasan buatan a.k.a AI.

Nah sebulan kemarin, tepatnya dari pertengahan Maret sampai sekarang, saya diharuskan buat program game. Karena merasa masih projremer pemula, maka diputuskanlah untuk membuat game puzzle 8. Apakah mudah? sebenarnya tidak juga. Apalagi kalau mau pakai GUI, lebih sulit lagi -_-.

karena harus ditambah kecerdasan agar si program nggak bodoh, maka saya putuskan pakai Algoritma A*. Menurut berbagai sumber yang harus dipercaya, algoritma itu akan mencari path terpendek sedemikian sehingga si puzzle dapat kembali ke posisi semula dengan lebih cepat. Katanya lagi, algoritma ini tidak terlalu sulit.

Apa itu berarti A* mudah? Bagi yangs udah pengalaman mungkin iya mudah, tapi bagi saya, susah banget. Perlu setidaknya 3 minggu hanya untuk memahami beberapa baris algoritma itu. Dari Wikipedia, ilustrasinya seperti ini:
A*

OK, ternyata program saya sudah bisa menemukan langkah ke posisi yang diinginkan. Masalahnya lagi adalah, ternyata si program belum tahu langkah ke mana saja sehingga bisa sampai ke tujuan. Halah.. Intinya, saya belum bisa implementasikan algoritma ini di dalam bahasa C++.😦

function reconstruct_path(came_from, current_node)
     if came_from[current_node] is set
         p = reconstruct_path(came_from, came_from[current_node])
         return (p + current_node)
     else
         return current_node

Bagi yang mau bantu, silakan coba kompilasi yah dari sini.😀

Terpaksa ditulis di sini karena pas coba posting di sini ga bisa😦

3 thoughts on “Bikin Puzzle-8: pusing

  1. Ping-balik: Buat Puzzle itu Pusing | cacatan kecil

Tinggalkan Balasan

Please log in using one of these methods to post your comment:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s