Thursday, January 12, 2017

Translation

Halo Sobat.

Sepertinya peminat postingan mengenai developing games pake GameMaker Studio sedikit yah..
Mungkin karena aplikasi nya berbayar, dan sesuatu yang harus dibayar pada dunia maya untuk kultur kita masih dalam kategori "langka" peminat dan pembeli. :)

Atau bisa juga karena blog ini masih terpendam jauh dalam mesin pencarian jadilah blog ini undiscoverable.

Jadi.... saya putuskan blog ini sementara dormant dulu ^_^.


Atau.. mungkin sobat bisa memotivasi saya pada kolom komentar?

Well then
See ya whenever !

Daripada blog nya on hold,  sepertinya saya mau coba translate manual GM buat never ending project saya kalau ada waktu senggang. Siapa tahu berguna ^_^.


Friday, January 6, 2017

GameMaker Language - Place_Meeting (x, y, obj)

Halo Bloggers.
Mau nyolek sedikit nih tentang fungsi place_meeting pada GameMaker Language atau GML.

Tentu saja, tombol F1 adalah teman terbaik anda hihi.. Dari official documentation nya GMS 2 , deskripsi place_meeting adalah :

With this function you can check a position for a collision with another instance or all instances of an object using the collision mask of the instance that runs the code for the check. When you use this you are effectively asking GameMaker Studio 2 to move the instance to the new position, check for a collision, move back and tell you if a collision was found or not. This will work for precise collisions, but only if both the instance and the object being checked for have precise collision masks selected otherwise only bounding box collisions are applied. This function also accepts the special keywords all and other.

Syntax nya adalah : 

place_meeting(x, y, ob);

Kira-kira artinya adalah sebagai berikut :
Fungsi ini melakukan pengecekan suatu posisi dengan objek lain, ada collision atau tidak. Hmm.. collision itu bahasa perancisnya kira-kira adalah tabrakan dengan suatu objek lain.

Hmm.... belum paham om :(

Biar gambar berbicara :










Kita berasumsi bahwa posisi Player kita pada x-penggaris 0.

place_meeting(x, y, objKotakHitam);

ada tabrakan dengan objKotakHitam pada posisi x dan y ? 
salah karena tidak ada tabrakan
false

place_meeting(x + 5, y, objKotakHitam);

ada tabrakan dengan objKotakHitam pada posisi x + 5 dan y ? 
salah karena tidak ada tabrakan
false

place_meeting(x + 10, y, objKotakHitam);

ada tabrakan dengan objKotakHitam pada posisi x + 10 dan y ? 
Benar karena pada posisi tersebut objPlayer bertumpuk dengan objKotakHitam!
True    ^_^




see ya around !!


Thursday, January 5, 2017

GameMaker Studio 2 Platformer Part 4 - Object Ground

Halo Bloggers!

Jumpa lagi kita pada waktu dan kesempatan yang berbeda di berudulan-FM. 

Kali ini kita akan membuat ground, tempat berpijaknya sang character utama nantinya.
Buat anda yang belum punya assets buat gamenya, bisa pinjam sprites punya saya :)
--->



Nah, Buka GameMaker Studio 2, create sprites yang kita beri nama sprGround kemudian import sprites tersebut. Berbeda dengan sprPlayer, untuk sprGround originnya tidak perlu diubah-ubah lagi yaitu top-left. Bagi sobat yang masih kebingungan untuk membuat sprites assets bisa melihat pada postingan sebelumnya disini .

Setelah selesai membuat sprites, selanjutnya tentu saja membuat object baru yang kita beri nama objGround seperti pada postingan disini , kemudian kita assign gambar sprGround pada object tersebut.


Next, double-click room level01 yang telah kita buat. Disini kita akan merubah settingan grid GMS2 dari default nya 32x32 piksel menjadi 16x16 piksel. Kenapa? Karena gambar ground yang kita import berukuran 16x16 piksel. :)







Selanjutnya kita akan membuat "ground" sebagai tester untuk behaviour character kita nantinya.
Pastikan layer instances adalah layer yang aktif, (Layer aktif adalah layer yang ter-highlight).  Kemudian klik objGround, tekan alt dan klik kiri untuk meletakkan beberapa instances  sekaligus pada room level01.



Jika kita tekan F5 sekarang, maka game akan di eksekusi. Sekarang kita sudah punya player character yang "terbang" diatas ground haha..

but hey! we're making a progress here ^_^
see ya around!

Wednesday, January 4, 2017

Humble GameDev Software Bundle


Halo Bloggers!
Lagi ada Humble Bundle nih... Sisa 6 hari lagi. Lumayan banget lho cuma 1 dollar alias Rp 13.000 saja bisa dapet Clickteam Fusion 2.5 + Pixel Edit + Spriter. Ini murah banget :D. Dapet aplikasi buat bikin game dan software, aplikasi buat bikin pixel-art  dan aplikasi animasi boned-based. Cihuy!


Ya kalo sobat mau nambah aplikasi dan software lain, sobat juga harus nambah nominal pembayarannya.

Saya bukan pengguna Clickteam, jadi saya belum bisa me-review softwarenya. Tapi bagi yang lebih suka bikin game secara event-based tanpa perlu ngetik-ngetik kode alias coding, software ini kapasitas nya keren juga.

Barangkali sobat ingin meninggalkan metode pak-tani-membajak-sawah, ini kesempatan langka hehe..

Ok, sekian dulu cuap-cuap saya.

See ya around !

GameMaker Studio 2 Platformer Part 3 - Room

Halo Bloggers.. Kita lanjut nih ke pembelajaran bersama-sama buat bikin room. (Saya juga abis belajar bikin room dari mbah Google. Daripada lupa trus cari-cari lagi, mendingan saya tuangin di blog aja yah biar sekalian jadi bahan referensi pribadi plus gampang nyarinya kalo suatu saat saya lupa).

Ok deh. Setelah selesai bikon objPlayer, kita bikin tester level01 buat ujicoba. Klik kanan rooms kemudian pilih crea...... wait! Ternyata si GMS2 udah berbaik hati membuat room pertama buat kita xixi .... Kalo gitu kita bukan pilih create, kita pilih rename aja deh. Ganti jadi level01. Sip!


Settingan room standar dari GMS2 adalah 1024x768 piksel, terlalu besar untuk character kita yang cuma 16x24 piksel.

Kita rubah Room Width menjadi 320 dan Room Height menjadi 240.

p.s. Shortcut navigasi tekan space + left click buat panning dan control + middle scrool buat zoom in dan zoom out.


Selanjutnya kita tinggal drag objPlayer dari tab resources kedalam room.

Tapi eh... kok background nya warna hitam ya.. gelap :(


Pada tab Room Editor bagian Layer, pilih Layer Background. Kemudian pada bagian properties nya ganti Colour sesuai dengan selera anda. Ehh.. Layer tuh apalagi yah. Layer tuh urutan penempatan posisi objek-objek pada game yang kita buat. Urutan paling atas tentu saja bakalan ada diatas gambar lainnya. Sedangkan urutan paling bawah (yang biasanya background) akan selalu ada dibelakang objek lainnya.

Nahhh... sampai disini sebenernya game nya udah bisa di run. Coba deh sobat bloggers tekan F5 atau icon run yang ini nih .

Jalan kan game nya? boring ya. Cuma tampilan gambar gak bergerak.. window nya mini-mini imut-imut gimanaa gitu kecil banget.

Yuk ah kita perbesar tampilan nya.
Pada tab room editor properties, navigasi ke Viewports and Camera. Centang Enable Viewports. Pada bagian Viewports 0 centang pilihan Visible. 

Disini kita meminta si GMS2 buat menampilkan room kita sesuai dengan sorotan Camera Viewports 0. Kita mengatur kamera 0 sama dengan besar nya room yaitu 320x240 piksel. Kemudian hasil sorotan kamera 0 ditampilkan pada layar monitor diperbesar menjadi 800x600 piksel.

Nah sekarang window games kita udah ngga imut-imut lagi hehe...
Silahkan sobat bereksperimen dengan angka-angka pada viewports tersebut.

Well then,
see ya around!

Tuesday, January 3, 2017

GameMaker Studio 2 Platformer Part 2 - Objects

Halo Bloggers.
Kali ini kita akan membuat object Player dari game yang akan kita buat. Ok, langsung saja kita buka GameMaker Studio 2. Wuss !

Pembuatan objects sama seperti pembuatan sprites yang telah dijabarkan pada bagian 1 disini.
Klik kanan pada tab resources bagian objects dan kemudian pilih create.

Rename object tersebut menjadi objPlayer, kemudian kita assign sprites sprPlayerIdle pada objects tersebut. 

Nah, selesailah sudah kita membuat blueprint awal untuk tokoh utama kita kali ini.

pada object ini nanti kita akan memberikan behaviour tertentu supaya object ini bisa berinteraksi terhadap world atau level yang akan kita buat.

Untuk penamaan pada setiap item GameMaker Studio, sebenarnya tidak ada ketentuan khusus, yang penting anda konsisten terhadap setiap penamaannya agar tidak bingung ketika game yang kita buat semakin kompleks.

sebagai contoh apabila penamaan sprites anda diawali dengan suffix spr_player, tentu saja penamaan object nya lebih cocok dengan obj_player (supaya konsisten).

Kebetulan saya sudah terbiasa dengan penamaan suffix singkatan kemudian menggunakan huruf kapital tanpa underscore. 

Nah, selesailah sudah pembahasan tahap awal yang paling awal sekali dari item objects.
Saatnya saya merenung sambil googling untuk postingan selanjutnya hihi...

See ya around!

Monday, January 2, 2017

GameMaker Studio 2 Platformer Part 1 - Sprites

Yuk deh bikin platformer. Buka GameMaker Studio 2. Klik New kemudian klik GameMaker Language.

Sebelum kita mulai, kita akan mengganti frame-rate dari default menjadi 60 fps. Biar lebih responsif gitu katanya. Gimana tuh caranya? klik setting kemudian tinggal ganti aja angkanya jadi 60. Done.

Lets begin the journey. Disebelah kanan tampilan nya ada yang nama nya Resources Tree. Tempat untuk kita mengorganisasi resources yang akan digunakan dalam game nantinya.

Gambar Resources Tab pada GameMaker Studio 2.
Kalo sobat bloggers bingung apa aja gunanya tuh Sprites, Tile Sets, Sounds, Paths, Shader dan seterusnya sampai terakhir Configurations, saya apalagi lebih bingung dari anda T__T. hehehe..

Tenang, nanti kita sama-sama cari tahu apa aja kegunaan masing-masing okay. Masih ada mbah Google yang bisa kita tanya. Untuk sementara, kita pelajari aja yang kita akan gunakan. Selanjutnya akan bertambah sedikit demi sedikit. Sip.

Nah sekarang bikin placeholder nya dulu yah.. apa itu placeholder? 
Art sementara yang nanti nya diganti gitu ceritanya. 

Klik kanan Sprites trus pilih Create.
Rename jadi sprPlayerIdle kemudian klik import. Pilih gambar buat tokoh utama sobat kemudian klik OK. Muncul peringatan "Importing files to a sprite is not an undoable action. Do you want to continue?"  

Apasih maksudnya? Kalo kita meng-import files ke sprite, kita ngga bisa un-import,  ngga bisa di undo gitu.

Klik yes. 

Nah kalo sobat belum punya Character utamanya, boleh pake punya saya dulu.. 
ini ukuran nya 16x24 pixel. Kasian yah kecil banget.



 Kalo di zoom in kira-kira bentuk nya seperti ini.
Nah, ganti origin nya ke Middle Center.

Apasih maksudnya? Yap! Seperti namanya, origin, pastinya jadi pusat koordinat sprites tersebut. Jadi posisi (x,y) nya sprite ini letaknya di tengah-tengah gambar sprite nya.

Nah terakhir kita akan mengatur masalah Collision Mask  nya.
Apa itu Collision Mask? Yaitu bentuk atau border yang mengatur masalah interaksi nya dengan Instances lain nanti nya.

Jadi misalnya kita bikin karakter dengan rambut yang melambai-lambai, kalo komputer disuruh ngitung tiap perlembar rambut nya yang kena musuh maka hitpoint karakter itu berkurang, bakalan makan banyak resources sobat. Game kita bisa jadi berat dan lambat pada komputer spek rendah. Nah supaya simpel, kita bikin collision mask kita bentuk nya segi empat.


Pada tab collision mask kita pilih mode manual, kemudian kita atur luasan nya sebanyak 4 piksel dari kanan kiri (4 left, 12 right).

Kemudian 6 piksel dari atas sedangkan bagian bawah kita atur sampai dengan titik piksel penghabisan. (Kita ngga mau dong ntar karakter kita kakinya mendem alias terbenam di lantai).

Kalo sobat pake sprites lain, silahkan atur sesuai dengan kepantasan nya :)

Ok sobat. kita cukupkan dulu postingan masalah sprites kali ini.

 See ya around!

Dasar-dasar GameMaker Studio 2

Halo bloggers..
Sebelum mulai belajar bareng, kita simak dulu deh konsep utama dari GameMaker: Studio dan GameMaker Studio 2. Biar agak paham dikit gitu.

Kalo mau langsung ke sumbernya ya monggo :)

Saya nyomot gambar nya dari mbah google nih.. Game Mario Bross kalo ngga salah ya.

Nah, level nya ini di GameMaker Studio namanya room. Di room ini deh nanti kita mendisain semua level buat game nya pada room editor.

Si room ini pake sistem koordinat cartesius, tapppiiii ....... sumbu y nya kebalik. 
Kalo di matematika, titik 0,0 nya biasanya ada di kiri bawah, kalo di GameMaker ada di kiri atas. Semakin kekanan maka nilai X semakin besar dan semakin kebawah maka nilai Y akan semakin besar.

Oke deh, Lanjut ya. Di room ini ada Mario ada Koin dan ada Goomba. Nah, di GameMaker Studio mereka ini disebut instances. Mereka inilah yang nanti berinteraksi satu sama lain. (betul ngga suhu? kalo salah di koreksi aja ya.. maklum saya juga newbie. #sad).


Tentu saja si instances-instances  tersebut punya blue-print  alias mesin cetakan nya tempat kita mendesain semua detil dan behaviour nya. Si mesin blue-print itu pada GameMaker Studio disebut nya object.

Ibarat nya, object itu adalah cap, dan instances itu hasil cap nya. kalo cap nya berubah, tentu saja hasil cap nya juga berubah gambar nya.
Dari satu cap yang kita desain, kita bisa men-cap banyak kertas dengan gambar yang sama. 

Apa aja sih yang bisa di program pada objek tersebut temans? 
Antara lain sih.. kita bisa pilih-pilih, object nya mau bentuknya kayak apa (pake sprites yang mana), object nya mau gerak apa diem aja, bisa ditembus apa ngga, dan lain-lain.

Eits. Tunggu-tunggu. Sprites? Minuman apa lagi nih.. 
Sprites ya gambar. bisa berupa png, bmp dan lain-lain. Object ngga pake sprites ngga keliatan dong di rooms ntar. Lha wong ngga ada gambarnya hehe. (event draw lain lagi ya gans x_x).

Panjang juga nih postingan jadinya. Cukup dulu sepertinya ya temans? 

Well.. see ya around!