Engage Mechanics Explanation


For those interested in how the core "Engage" mechanic works, I did a truncated snapshot below of the core loop. This requires a tiny bit of background knowledge of Visustella Battle Core's capabilities. Battle Core lets your skills call common events that will move your battlers around, show animations, add states, change HP, and pretty much anything that a common event can normally do like playing sound effects or shaking the screen.

The common event below is a simplified version of the "Engage" skill. After the battlers dash forward into their combat positions, the Loop below initiates. Using conditional statements native to MZ, I set each directional button to call another common event that executes a move.


So for example, pressing Up calls the Up common event. This makes Michelle do the Flash Kick, deal damage to the enemy, and a plugin command built into Visustella's FTB plugin removes 3 AP. Important to note is the 1 frame wait, which keeps the loop from running too often and slowing the entire game down.

The shifting from Chonker to Michelle makes it a little more complicated. The script call: BattleManager._subject=$gameActors.actor($gameParty._actors[x]) where x is the actor index allows one to change who the active battler is, mid attack. Pressing shift would check which battler was active, then switch to the inactive one. Take a peak below.


Later, a conditional statement checks who the active battler is to determine what the directional key does. When Michelle is active, Left button performs a straight punch. When Chonker is active the bite occurs. 

Of course there was a lot more packed in, like randomized sound effects, 2 step shield creations, a lot of show/move picture events for the UI, the dynamic motions of cool action sequences, etc., but that is the basis for the game's mechanics.

Files

Infinity Beatdown DGJ 2021.zip 204 MB
Apr 02, 2021

Get Infinity Beatdown

Leave a comment

Log in with itch.io to leave a comment.