| Tutorial Flash - HTML5 - Javascript - DKV

Latest Blog



13.07.2020

Membuat Game Onet

Membuat game mencari gambar yang sama (onet) dengan JS/HTML5

11.06.2020

Membuat Kuis CBT

Membuat kuis CBT, menyimpan nilai ke server dengan PHP dan XML

11.05.2020

Game RPG dengan HTML Canvas (Javascript)

Pengembangan game RPG dengan teknik tiling menggunakan HTML canvas

19.05.2020

Membuat Fitur Swipe Mobile

Membuat fitur swap / drag konten untuk mobile

12.05.2020

Membuat Grafik Fungsi Kuadrat dengan Flash

Membuat kurva fungsi kuadrat dengan kode actionscript 3 Flash

11.05.2020

Membuat Kordinat Kartesius dengan Flash

Membuat sistem kordinat kartesius dengan code AS3 full

16.03.2020

Game Edukasi RPG

Buku pengembangan game RPG bermuatan edukasi

31.07.2019

Perpustakaan Baru UNNES

Mengintip perpustakaan baru UNNES

07.04.2018

Membuat Game Tebak Gambar

Tutorial membuat game tebak gambar dengan Flash

03.07.2017

Memahami konstain

Memahami penggunaan konstrain dalam membuat sistem gerak


ALL BLOG

Latest Games


;
Free Games

Indonesia Soccer League

Play Indonesian Soccer League on Flash 3D Games

Membuat Game RPG dengan HTML 5 Canvas

Pendahuluan

Beberapa waktu yang lalu, saya mencoba menulis buku tentang pengembangan game RPG edukasi dengan Adobe Flash / Animate yang dapat di unduh pada link berikut. Pengembangan game RPG tersebut tergolong mudah, karena sebagian besar kode telah disusun dalam library flashRPG.as. Namun demikian, seiring pengembangan game browser berbasis flash yang mulai menurun popularitasnya dan digantikan dengan HTML 5 Canvas, maka saya mencoba memporting kode flash tersebut menjadi file bertipe javascript. Adapun hasil akhir dari tutorial ini adalah sebagai berikut : (klik gambar untuk memainkan)


tutorial membuat game RPG by wandah_w

Buku Pengembangan game RPG

Tutorial pengembangan game RPG dengan HTML 5 Canvas, pada dasarnya memiliki proses dan teknik yang sama dengan pengembangan game RPG dengan Flash, yang saya jelaskan melalui buku gratis pengembangan game RPG. Buku ini dapat anda unduh gratis. Di dalamnya terdapat beberapa metode yang sama, yaitu :

  1. Pengembangan peta dengan Map Maker
  2. Pengunaan grafik spite yang sama, yaitu grafik untuk tileset, avatas, karakter dan sebagainya
  3. Metode penambahan dialog NPC
  4. Battle system dan sistem kuis untuk menekankan konsep game edukasi
  5. Penggunaan suara
tutorial membuat game RPG by wandah_w

Porting ke Javascript

HTML 5 dengan fitur canvas menjadi alternatif untuk memainkan game di browser, seiring dengan dihentikannya Flash Player untuk web. Untuk memporting game flash ke javascript tidak terlalu rumit, mengingat kode Javascript hampir sama dengan kode action script. Kode flashRPG.as saya porting menjadi kode rpgJs.js yang memiliki fungsi dan fitur yang sama persis. Sedikit yang membedakan antara flashRPG dan rpgJS adalah :

  1. File Gambar dan Suara pada HTML Canvas diletakkan di luar aplikasi. Dimana pada flashRPG seluruh asset di import ke dalam library dan diidentifikasi melalui linkage
  2. rpgJS saat ini hanya saya set menggunakan Keyboard, untuk fungsi mouse tidak saya gunakan. Jadi untuk memilih jawaban saat battle, atau memilih item saat jual beli, digunakan keyboard dengan tombol spasi
  3. rpgJs lebih responsif dengan perubahan ukuran layar dan penskalaan yang lebih cepat dan dinamis.
  4. rpgJs lebih cepat dalam beberapa kasus. FlashRPG akan melambat jika peta yang digunakan terlalu besar. rpgJS hanya menampilkan area yang perlu digambar oleh canvas, sehingga memory grafis yang dibutuhkan lebih kecil
  5. rpgJs dapat dikembangkan hanya dengan Notepad dan internet browser (Chrome atau Mozilla), tidak butuh software komersial apapun dan dapat ditest dengan cepat
  6. rpgJs versi awal ini belum saya berikan fitur publish ke Android atau ke IOS, namun jika anda berminat mengembangkannya, saya bisa memberikan file JS versi fullnya





Penggunaan kode rpgJS, relatif sederhana. Hanya beberapa baris kode pengaturan sebagai berikut :

var canvas = document.getElementById("scene");
	var konten = canvas.getContext("2d");
	hapusLayar("#333");
	
	var fileGambar = {
		charImg: "images/char_sprites.png",
		tileSet: "images/tileset.png",
		bayangan: "images/char_shadow.png",
		npc1: "images/npc_sprites_1.png",
		npc2: "images/npc_sprites_2.png",
		npc3: "images/npc_sprites_3.png",
		npc4: "images/npc_sprites_4.png",
		npc5: "images/npc_sprites_5.png",
		npc6: "images/npc_sprites_6.png",
		npc7: "images/npc_sprites_7.png",
		enemy0: "images/enemy_sprites_1.png",
		enemy1: "images/enemy_sprites_2.png",
		enemy2: "images/enemy_sprites_3.png",
		enemy3: "images/enemy_sprites_4.png",
		enemy4: "images/enemy_sprites_5.png",
		enemy5: "images/enemy_sprites_6.png",
		avatar: "images/face_set.png",
		GUI: "images/UI_set.png",
		itemIcon: "images/item_set.png",
		bgBattle: "images/bg_forest.png",
		cover: "images/cover_bg.jpg"
	};
	var fileSuara = {
		bgm1:"sound/village-snd.mp3",
		bgm2:"sound/forrest-snd.mp3",
		bgm3:"sound/battle-snd.mp3",
		bgm4:"sound/gameover-snd.mp3",
		attack:"sound/sword-snd.mp3",
		gold:"sound/gold-snd.mp3",
		correct:"sound/correct-snd.mp3",
		wrong:"sound/wrong-snd.mp3",
		victory:"sound/victory-snd.mp3"
	}
	
	preload(fileGambar, fileSuara, setup);
	
	function setup(){
		aktifkanKeyboard();		
		textWarning("Tekan  untuk memulai",canvas.width/2, canvas.height-100, "bold 15pt Calibri", "#fff700");
		halamanJudul(dataGambar.cover, startGame);					
	}
	function startGame(){
		karakter = {img:dataGambar.charImg, shad:dataGambar.bayangan}
		setMap(1, 16, 8);
		setNPC(7);
		jalankanGame();
	}

OK silahkan memainkan gamenya disini KLIK UNTUK MEMAINKAN Jika ada pertanyaan, langsung ke email ya!!!.


Share ( Ayo Berbagi )

Leave me a comment

untuk pertanyaan lebih baik di email langsung ke wandah [at] wandah [dot] com agar cepat direspon