Cara membuat game pong dengan game salad
1. Siapkan asset-asset gambar yang nantinya akan digunakan untuk
actor
Ball digunakan sebagai bola dalam permainan pong, enemy sebagai
musuh, goal sebagai wall atau dinding atas bawah, kanan dan kiri,
player sebagai pemain yang nantinya digerakkan dengan mouse atau
touch.2. Ganti Backgorund sehingga tampak seperti ini
3. Pada gambar di atas, klik add images and audio pada tab
media4. Pilih semua asset yang telah disiapkan
5. Pilih open sehingga akan tampil seperti ini
6. Drag drop ball, enemy, goal dan player ke scene, sehingga
akan otomatis membuat actor.7. Rename nama-nama actor sehingga
menjadi Ball, enemy, Player, Wall, dan wallk(wall kedua untuk kanan
dan kiri), dan juga tambahkan actor scoreComp, ScorePlayer, Timer,
dan Time Out dengan cara klik tombol +.
8. Atur actor sehingga tampak seperti ini
9. Buatlah attribute game seperti dibawah ini
10. Buat Rule pada actor player/pemain seperti ini
Agar platform player mengikuti Mouse saat diklik pada posisi
actor tersebut maka di buat sebuah rule yang berisi event dimana
saat kursor mouse berada dalam area dan di tekan maka actor akan
mengikuti pergerakan mouse. Sebagai catatan fungsi mouse bisa juga
digantikan dengan touch bahkan ketika game di deploy di tablet maka
secara otomatis akan mengikuti touch screen.Dan rule kedua yaitu
jika terjadi tabarakan antara actor player dan pemain, maka
attribute global game yaitu kecBola diset menjadi 450, Untuk sudut
pergerakan bola masih linier dengan arah relative terhadap Scene
dan menggunakan attribute tambahan yang diberi nama Arah.attribute
arah yang merupakan arah bola diset menjadi arah-posisi y dari
actor player, sehingga nantinya bola akan bergerak dengan angle
yang berubah sesuai posisi y actor player11. Buatlah Rule pada
actor enemy/musuh atau computer seperti ini
Pada rule tersebut mengatur pantulan yang diakibatkan oleh
platform yaitu menggunakan prinsip pencerminan terhadap sumbu Y.
Untuk platform computer sedikit ditambahkan Artificial Intelligent
dimana posisi Y mengikuti bola sehingga pasti akan dapat
memantulkan bola kembali.12. Buatlah rule prototype seperti dibawah
ini, sehingga semua turunan dari prototype tersebut memiliki rule
yang sama
Di atas menjelaskan bahwa jika terjadi collision antara wall
kanan/kiri dengan bola/ball maka bola akan bergerak sesuai dengan
sudut pantul, yang juga sama dengan rule enemy13. Tambahkan rule
prototype pada wall atas dan bawah seperti di bawah inipada rule
diatas lebih simple, karena attribut arah hanya disetting untuk
kebalikannya dengan cara diberi minus (-).14. Tambahkan rule pada
actor bola seperti ini
Rule diatas berguna untuk ,e,buat bola bergerak sesuai dengan
attribute arah yang relative pada scene, dan berkecepatan sesuai
dengan attribute kecBolaPada constrain attribute bolaY to self
potition digunakan agar attribute dari bolaY selalu memiliki nilai
dari posisi y bola, dan constrain attribute bolaX to self potition
digunakan agar nantinya pergerakan posisi x bola selalu termonitor
yang digunakan sebagai acuan kondisi goal player/computer.
Tambahkan juga rule dibawah ini :
Pada rule di atas adalah mengecek kondisi apakah posisi x bola
lebih kecil dari 0 (yang berarti bola berada keluar ke kiri scene)
dan nilai dari attribute ScorePoint adalah false, jika benar maka
attribute kecBola yang merupakan kecepatan dari bola diset 0,
attribute ScoreComp yang merupakan score musuh ditambah dengan 1,
attribute ScorePoint dijadikan true agar tidak terjadi penambahan
nilai terus menerus, kemudian menggunakan timer, yaitu setelah 2
detik maka posisi dari bola dikembalikan ke tengah lapangan dengan
nilai x=240 dan y=160, attribute kecepatan yaitu kecBola diset
menjadi 400, dan attribute ScorePoint dijadikan default lagi yaitu
false.Tambahkan juga rule seperti dibawah ini
Pada rule di atas adalah mengecek kondisi apakah posisi x bola
lebih kecil dari lebar scene (yang berarti bola berada keluar ke
kanan scene) dan nilai dari attribute ScorePoint adalah false, jika
benar maka attribute kecBola yang merupakan kecepatan dari bola
diset 0, attribute ScoreComp yang merupakan score musuh ditambah
dengan 1, attribute ScorePoint dijadikan true agar tidak terjadi
penambahan nilai terus menerus, kemudian menggunakan timer, yaitu
setelah 2 detik maka posisi dari bola dikembalikan ke tengah
lapangan dengan nilai x=240 dan y=160, attribute kecepatan yaitu
kecBola diset menjadi 400, dan attribute ScorePoint dijadikan
default lagi yaitu false.15. Pada actor Timer berikan rule seperti
Ini
Pada rule diatas digunakan untuk menampilkan nilai dari
attribute timer, dengan font arial, size 30 , center dan berwarna
biru, kondisi attribute timer akan dicek, apakah attribute tidak
sama dengan 0, jika ya, maka tiap detik nilai dari attribute timer
yang bervalue 50 akan dikurangi terus dengan 1 tiap detiknya sampai
0.16. Pada actor Time Out tambahkan rule seperti di bawah ini :
Rule diatas masih berhubungan dengan rule sebelumnya, yaitu jika
nilai attribute timer yang terus menerus dikurangi 1 sama dengan 0,
maka akan menampilka teks dengan font arial size 30 posisi center
dan berwarna biru, dengan tulisan Times Out, Game Over!!!, lalu
kecepatan bola(attribute KecBola) diset menjadi 0.17. ScreenShoot
GamePlay
Komputer mendapatkan Score 1 dan player Score 0.
Score dari Komputer bertambah
18. ScreenShoot Time Out(Game Berakhir karena waktu habis).
KesimpulanPada pembuatan game pong ini kita dapat memahami
penggunaan banyak behavior, mulai dari change attribute, movement,
constrain attribute, Pause game dan lain-lain. Dengan adanya
attribute kita bias lebih mudah mengubah nilai dari suatu
properties actor maupun scene, dengan attribute juga bias digunakan
untuk menampung nilai score maupun untuk mengecek kondisi dimana
pemain bisa mencetak gol. Pada praktikum kali ini lebih ditekankan
pada mekanikanya, bagaimana bola itu memantul sewaktu collide
dengan actor lain, bagaimana arah dari pantulan tersebut, juga
bagaimana cara menggerakkan actor sesuai posisi Y dari pointer
mouse.