Rabu, 30 Mei 2018

FINITE STATE MACHINE (FSM) PADA DRAGON NEST MOBILE


Finite State Machine (FSM) dan Pseudocode



Alhamdulillah segala Puji kehadirat Allah SWT, kali ini saya membuat sebuah artikel yang saya buat dari tugas kuliah saya, lebih tepatnya mata kuliah Game Education. Dalam artikel ini saya membuat Finite State Machine (FSM) dan Pseudocode dari game Dragon Nest Mobile. Langsung saja gan, monggo diserap ilmunya :D



1. Finite State Machine (FSM)

FSM sederhana game Dragon Nest Mobile
2. Pseudocode

using UnityEngine;
using System.Collections;

public class GameFSM : MonoBehaviour {
public enum {Start Game, BeritaUpdate, Login, BuatKarakterBaru, LanjutKarakterLama, MasukSaintHeaven, MemilihJenisStage, DongeonStage, NestStage, Attact, Menang, Reward, Gagal, GameOver, KembalikeSainHeaven}

public TurnStates state;
public bool gameInProgress = true;

void Start () {
state = GameFSM.Mulai.Init;
StartCoroutine ("TurnFSM");
}
private IEnumerator TurnFSM (){
while(gameInProgress){w
switch(state){
  case TurnStates.:
    if(Melihat()) {* state = BeritaUpdate;}
    break;
  case TurnStates.StartGame:
     if( Memasukkan ID()) {* state = Login;}
    break;
  case TurnStates.Login:
    if( ID Baru()) {* state = BuatKarakterBaru;}
    break;
  case TurnStates.Login:
    if( ID Lama()) {* state = LanjutKarakterLama;}
    break;
  case TurnStates.Login:
     if( Masuk ke game()) {* state = Masuk Saint Heaven;}
   break;
  case TurnStates.Login:
    if( (Masuk teleportasi)) {* state = MemilihJenisStage;}
    break;
  case TurnStates.Ready:
    if( (BP Rendah)) {* state = DongeonStage;}
    break;
  case TurnStates.Ready:
    if( (BP Cukup)) {* state = NestStage;}
    break;
  case TurnStates.Attack:
    if((Lolos)) {* state = Menang;}
    if((Mati)) {* state = GameOver;}
    break;
  case TurnState.Reward :
    if ((Lolos)) {* state = Reward;}
    break;
  case TurnState.KembalikeSaintHeaven :
    if ((StageDone)) {* state = KembalikeSaintHeaven;}
   break;
 }
 yield return null;
    } 
}

3. Penjelasan
               Dalam permainan ini pemain diharuskan untuk membuka permainan yang berupa Start Game, kemudian dapat melihat informasi terbaru tentang game ini di Berita Update atau langsung Login dengan memasukkan ID telebih dahulu. Saat sudah keadaan Login dapat membuat karakter baru atau dapat juga melanjutkan karakter yang sudah dibuat sebelumnya, selanjutnya akan masuk ke kota utama yang bernama Saint Heaven. Di dalam Saint Heaven dapat langsung menaikkan level atau tingkat dengan memilih jenis stage, terdapat 2 stage yaitu Dongeon Stage untuk BP rendah dan Nest Stage untuk BP cukup. Langsung menuju permainan dengan melakukan attact saat menemui monster di dalam game, apabila gagal akan langsung game over karena system nyawa di game ini menggunakan Healt Point, namun apabila lolos akan menang dan akan mendapatkan reward. Selesai menakhlukkan musuh baik gagal maupun menang dapat langsung kembali ke Saint Heaven.

Sekian dulu gan, semoga artikel saya dapat membantu agan, terlebih kalau mendapat tugas tentang FSM dan Pseudocode nya. Terima kasih atas kunjungannya. :D

Tidak ada komentar:

Posting Komentar