It's finally out the Turn Based Battle Engine for GMS2!!

This GMS2 project will show you how a Pokemon-like turn based battle engine can be made.

The engine will contain:

- 151 editable monsters (you can add more if you want)

- Monster's base stats and level conversion formulas

- Original damage calculation with critical hits, modifiers and stab 

- Experience gaining at the end of a battle

-  Monster's status conditions

- Editable moves with accuracy, PPs and power

- Moves with  tags, such as: NO_ADDITIONAL_EFFECT, SPEED_UP_2, POISON_SIDE_EFFECT, etc...

- Moves animation system (you can also add your own animations)

- Solid battle manager FSM (Finite State Machine)


All the monsters and moves data are loaded through Json files so that they can be easily edited by everyone.

Make sure to read the  downloadable README file down below when you purchase the project.

If you want to test the engine, just play it at the top of this page.





If you have any questions or issues, please contact me at AlexFerrer96@gmail.com

StatusReleased
CategoryAssets
Rating
Rated 3.5 out of 5 stars
(2 total ratings)
AuthorAlexDer
Made withGameMaker

Purchase

Buy Now$4.99 USD or more

In order to download this asset pack you must purchase it at or above the minimum price of $4.99 USD. You will get access to the following files:

TurnBased RPG Asset.zip 1.2 MB

Comments

Log in with itch.io to leave a comment.

ERROR in

action number 1

of Draw Event

for object oController:

ds_list_size argument 1 incorrect type (undefined) expecting a Number (YYGI32)

 at gml_Object_oController_Draw_0 (line 35) - if (ds_list_size(typeList) > 1) {


gml_Object_oController_Draw_0 (line 35)

(1 edit)

Hi SGNQuen, did you change something in your code after purchasing the asset?

The error showing up is telling you that the selected Unit's type parameter is not an array (or List). So you probably edited the Json (?).

If so, make sure that in your units at the "type" parameter, you set a list of types even if the Unit has just one type.

Example:

MyMonoTypeUnit {

       "type":  ["grass"]  => Even if the Unit has one type, we use a list with one entry

}

MyMultiTypeUnit {

       "type":  ["grass", "poison"]

}


Let me know if that was the issue :)

(+1)

...and there it is. [Purchases and tests it immediately].

Thank you!