Minggu, November 11, 2012

MEMBUAT GAME ULAR TANGGA MENGGUNAKAN VISUAL PROLOG

Visual prolog merupakan bahasa pemrograman prolog yang berorientasi obyek. Sebelumnya, Turbo Prolog dipasarkan oleh Borland, namun saat ini produk tersebut dikembangkan serta dipasarkan oleh perusahaan asal Denmark, Prolog Development Center, yang sejatinya merupakan perusahaan yang mengembangkan Turbo Prolog. Visual Prolog dapat digunakan untuk membuat aplikasi berbasis grafis untuk sistem operasi Microsoft Windows, aplikasi konsol, berkas pustaka .dll, dan program berbasis CGI. Program yang dibuat dengan Visual Prolog juga dapat memanfaatkan komponen COM milik Windows, dan akses database melalui ODBC. Visual Prolog merupakan bahasa pemrograman yang dikompilasi, dan bukan diinterpretasikan oleh sebuah interpreter. 

Gambar diatas merupakan game visual prolog, murni buatan sendiri, dan perlu diingat pembuatannya menggunakan visual prolog, bukan strowbery prolog. Dibawah ini akan saya bahas mengenai skema permainannya, dan coding yang menyusun game ini. 

Skema Game 
1. Pada awal permainan, semua button dan textfield di nonaktifkan, karena terlebih dahulu player harus memasukkan banyaknya player yang akan bermain, 1 sampai 4. Dalam button MAINKAN di kondisikan, jika diinputkan lebih dari 4 maka akan tercetak "Banyaknya pemain maksimal 4", maka kita akan menginputkan kembali nilai antara 1-4. 

2. Jika berhasil diinputkan, maka textfield nama pengguna dan button akan aktif, terlebih dahulu kita masukkan nama player dari player 1 sampai 4, kemudian pilih button submit dan akan tercetak nama-nama player pada kolom scores, dan fungsi dadu dan giliran juga di aktifkan dan langsung bisa memainkan game. 

3. Scores merupakan textfield penampung untuk mencetak nama dari stiap player dan scores yang sudah didapat selama permainan, scores akan bertambah setiap player menjalankan langkahnya. 

4. Dadu merupakan fungsi timer yang akan dijalankan ketika button acak di klik, pergerakan dadu dimulai 1 sampai 6, diputar secara berulang menggunakan fungsi timer. Dan ketika button stop di klik, dadu akan berhenti dan didapat nilai langkah yang harus kita jalankan. Pilih jalan untuk menggerakan pion. 

5. Button jalan memiliki fungsi untuk menjalankan pion/player, langkah yang dilakukan berdasarkan titik koordinat x dan y. Pergerakannya dilakukan melalui kondisi, dimana nilai dadu akan ditampung untuk selanjutnya dikalikan dengan pergeseran titik koodinat, pada game ini, untuk y dilakukan pergeseran -45, dan x dilakukan pergeseran -50. 

6. Bagian Giliran, bagian ini merupakan penunjuk player mana yang harus bergerak pada saat itu, jika yang aktif satu, maka player satu memulai langkahnya, setelah player 1 melangkah, maka yang aktif adalah radiobutton player2, begitu seterusnya. Disampingnya terdapat button skip, yang apabila diklik maka satu player akan dilewati. *fungsi ini dimaksudkan jika player berhenti bermain ditengah jalan. 

7. Bagian ini merupakan kumpulan radiobutton, yang difungsikan sebagai pion player, yang akan bergerak sesuai dengan banyaknya dadu yang di jalankan oleh setiap player, keempat player tersebut memiliki koodinat masing-masing sehingga tidak akan bertumpuk tindih dengan pion yang lainnya (berjalan sesuai dengan jalur masing-masing). 

8. Bagian ini merpakan bagian layar tempat dimana kita bisa melihat pion-pion player bergerak sesuai nilai dadu, didalamnya terdapat gambar ular dan tangga yang telah difungsikan untuk naik atau turun sesuai dengan perintah yang sudah di setting oleh programmer. Ketika mencapai suatu langkah untuk naik atau turun sesuai koordinat, dilakukan secara otomatis dan diberikan pemberitahuan ketika kita masuk ke kotak ular ataupun tangga, dan naik atau turun ke kotak tertentu. 

9. Terdapat dua kotak khusu yaitu kotak 15 dan 31, dimana player yang sampai pada titik itu, akan mendapatkan JACKPOT, yang mana fungsinya player tersebut bebas melakukan gerakan naik atau turun sesuai kemauannya, player tersebut bisa manaikkan atau menurunkan setiap player sesaui dengan kemauannya. Untuk menentukan player mana yang akan dinaikkan dan diturunkan diinputkan kedalam kolom jackpot, dan kekolom mana player akan berpindah diinputkan pada bagian tersebut, dan seketika player yang dituju akan berpindah. 

10. Pada bagian ini merupakan kolom 50, jika player sudah sampai pada kolom tersebut, maka player tersebut dinyatakan menang, dan dinonaktifkan, dan player lainnya akan lanjut bermain, hingga hanya 1 pemain yang kalah, yaitu yang terakhir sampai ketujuan. Untuk mengembalikan game ke awal permainan, bisa menekan button reset, maka semua nilai, pemain, dan pion akan kembali ke settingan awal. 

Sudah bisa dipahami..???? sebelum kita lanjut ke pembahasan koding, harus mengerti dulu bagaimana perkiraan kondisi yang dibuat untuk membuat game ini, karena jika tidak mengerti kondisinya maka kita tidak akan bisa membuat game seperti ini. Untuk lebih mudah dipahami bisa mencoba gamenya, saya lampirkan dalam bentuk exe, bisa didownload pada link dibawah.. Jika sudah mencoba dan mengerti, kita mulai belajar codingnya yuk..., tapi sebelum itu... Terus terang game diatas merupakan tugas project untuk praktikum mengenai kecerdasan buatan, saya diberi waktu 2 minggu untuk pengerjaan game tersebut, 2 minggu tersebut bukan dihitung setelah kita praktek, paham dan bisa menggunakan visual prolog, tapi benar-benar dari 0. Dan bisa dibilang, pada saat diberikan tugas project sama sekali belum menyentuh kodingnya sama sekali. Tadinya saya pikir cukup mudah mengerjakannya, tapi memang cukup mudah, asalkan kita cepat paham logika dari pogram yang kita buat, dan saya bisa mengerjakan game ini dalam waktu 5 HARI, terhitung 1 hari full nyari cara pendeklarasian fungsinya dan 4 hari (5 jam sehari), mulai nyusun statemen dan menentukan kondisinya sampai jadi game berikut.. yang sulit dari bahasa pemrograman ini adalah program ini sangat jarang digunakan, dan lebih populer untuk kecerdasan buatan, karena bahasanya merupakan penggabungan antara procedural dan oop, sehingga tampak ringkas, namun tertata. 

SANGAT JARANG DIGUNAKAN, terus terang saya bertanya pada mbah google, mengenai bagaimana cara membuat radiobutton, timer, memasukkan gambar, perulangan, kondisi dan lain-lain mengenai visual prolog, tapi nggak pernah nemu yang situs indonesia. Semua yang membahas visual prolog, di bahas di websitenya sendiri yaitu http://discuss.visual-prolog.com/ Disini cukup banyak tanya jawab menganai visual prolog, tapi masih kurang lengkap dan banyak yang sulit untuk dimengerti, dan hampir tidak ada situs indonesia yang membahas mengenai statement dan pendeklarasian program ini. 

Oleh karena itu saya mencoba menulis, sedikit yang saya tau mengenai visual prolog, semoga bisa membantu teman-teman yang membutuhkan, terutama mahasiswa gundar. Karena sepertinya mereka yang punya kewajiban ngerjain project ini. Mengenai penjelasannya kita akan lanjut ke halaman selanjutnya.. supaya nggak kepanjangan disini.. berikut saya buat sub-subnya agar lebih mudah untuk dipahami 

DOWNLOAD PROGRAM VISUAL PROLOG VERSI 7.2 + SERIAL NUMBER

LOGIKA PROGRAM ULAR TANGGA VISUAL PROLOG 



Karena satu dan lain hal, Untuk source code aplikasi ini tidak bisa diberikan.. jadi silakan dirangkai sendiri dari tutorial diatas, karena secara coding sudah sama seperti diatas, tinggal gimana logikanya aja..

dan buat anak gundar yg lg ngerjain project, jgn coba-coba niru ya.. karena aslabnya udah apal sama aplikasi ini..


** ini tambahan, posting ini saya buat thn 2012, 1 minggu sebelum sidang berlangsung, dan karena ratingnya di google paling atas, dan cuma ini satu2nya posting visual prolog, waktu sidang ada sedikit percakapan unik antara saya dan aslab..

saya : ngeluarin laptop, buka aplikasi, kasih liat aplikasinya..
aslab : (cengar-cengir merhatiin) "ini mah aplikasi yang ada di website, kamu niru..?"

saya : (nyengir, angkat alis sebelah mata, sambil mulut nganga dikit), dalam hati.. serius..? maksud lo..

Temen sekelompok : itu blog dia ka.. aplikasi ini dia yang posting..
aslab : owh... (entah ditaro dimana tu muka)

saya : nyengir ke temen sekelompok.. "yaaaaaeeeellllaaaahhhh... "


7 komentar:

Anonim mengatakan...

makasii sekali , membantu banget sukses selalu ya gan .. :D

Anonim mengatakan...

Makasih ya gan udah diberi petunjuk

lain kali ajarin buat monopoly ya ! :D

#Nazarie

Anonim mengatakan...

mas, bisa minta source nya nggak ?
mau saya kembangin buat tugas sekolah juga nih :D
email aja ke : nyxzryu@gmail.com

Unknown mengatakan...

mas, boleh minta juga source codenya ga?
untuk referensi saya buat projek praktikum.. makasih
email ya mas fantasytechnology@gmail.com

Anonim mengatakan...

mas kenapa visual prolog yang udah diinstall..
untuk file .pro nya ...listing programnya nggak bisa dibaca..
semuanya ke blok warna hitam semua..

salam

Anton Widodo mengatakan...

tutorial install prolognya dong??

Jehan mengatakan...

halo mas saya mahasiswa gundar boleh minta contoh kodingnya mas? soalnya saya ada tugas tentang visual prolog untuk membuat game. makasih

:)) :)] ;)) ;;) :D ;) :p :(( :) :( :X =(( :-o :-/ :-* :| 8-} ~x( :-t b-( :-L x( =))

Posting Komentar

untuk menggunakan emotion di bawah, silakan masukkan kode di samping emoltion.

Template by : kendhin x-template.blogspot.com