Grid Movement

Create a schematic to follow a path on a battle grid.

In this tutorial we’ll create a simple schematic to animate the grid move action. We’ll follow the selected path cell by cell, performing possible grid cell events on the cells we move over/to.

Movement is handled using the Change Position node – the setup described here will use the Auto move component selection. This’ll try to select the appropriate component for movement, but this might not result in the desired outcome for all setups. If movement doesn’t work in your setup, try one of the different move components based on your setup (e.g. Character Controller or Combatant Movement Component).

Grid Move Schematic #

This schematic will move the user of a battle action (e.g. the grid move action) to the action’s target. You can also use it in other battle actions – schematics can also set a grid path for any action. The user of the action is the Machine Object of the schematic.

The grid move action provides the path from the user’s current position to the target position, we’ll simply go through this path cell by cell, moving from cell to cell.

Navigate to Schematics and start working on a new schematic.

You can download the finished schematic here:

Download Schematic

 

Check Grid Path Length #

Add Node > Battle > Grid Path > Check Grid Path Length

We’ll first check if there even is a grid path, i.e. if it’s length is greater than 0.

  • Check Type
    Select Is Greater.
  • Check Value
    Select Value > Value.
    Set the value to 0.

Store Grid Path #

Add Node > Battle > Grid Path > Store Grid Path

This node is used to store a cell from the path into selected data – you can either store the whole path, the next or last cell.

We’ll store the next cell on the path and also remove the cell from the path, so that we can later continue with the next cell after this one.

  • Data Key
    Set to cell.
  • Data Origin
    Select Local.
  • Change Type
    Select Set.
  • Cell Selection
    Select Next.
  • Remove Cell
    Enable this setting.

Change Position #

Add Node > Movement > Movement > Change Position

We’ll now move the user (Machine Object) to the stored cell.

  • Object (Moving Object)
    Select Machine Object.
  • Move Component
    Select Auto.
    Please note that you might need to use a different selection based on your setup.
  • To Object
    Enable this setting.
  • Object
    Select Selected Data.
  • Data Key
    Set to cell.
  • Data Origin
    Select Local.

We’ll move to the cell instead of setting directly to the position.

  • Move
    Enable this setting.
  • Wait
    Enable this setting.
    We wait for the movement to finish before continuing.
  • Move By Speed
    Disable this setting.
    We’ll interpolate to the new position.
  • Time
    Select Value > Value.
    Set the value to 0.25.

You can also enable Move By Speed and move at a fixed speed instead.

Set Grid Cell Combatant #

Add Node > Battle > Grid > Set Grid Cell Combatant

We’ll register the combatant on the cell we just moved to – this’ll update the combatant’s cell highlight.

  • Object (Combatant Settings)
    Select Machine Object.
  • Set As
    Select Move.
    This’ll register the combatant as moving on the cell.
    In case another combatant is already on the cell, it’ll not replace it.
  • Object (Grid Cell Settings)
    Select Selected Data.
  • Data Key
    Set to cell.
  • Data Origin
    Select Local.

Check Grid Path Length #

Copy the first Check Grid Path Lengt node.

We’re done with our move to the next cell, so we’ll check if we finished the path.

Grid Cell Event #

Add Node > Battle > Grid Cell Event > Grid Cell Event

We don’t use grid cell events in our tutorial, but it’s always good to have them included in your grid move in case you later add them.

Grid cell events allow to perform certain things when a combatant moves over or moves to a cell, or starts/ends their turn on a cell. E.g. you can change status effects, use schematics or an ability on the combatant.

This node is connected to the Success slot of the previous Check Grid Path Length node, i.e. we still have some of the path left to go.

The Next slot of this node is connected back to the Store Grid Path node.

  • Start Type
    Select Move Over.
    We’re continuing on the path, i.e. we move over this cell.
  • Wait
    Enable this setting.
  • Object (Cell Object)
    Select Selected Data.
  • Data Key
    Set to cell.
  • Data Origin
    Select Local.
  • Object (Combatant)
    Select Machine Object.

Grid Cell Event #

Copy the previous Grid Cell Event.

This node is connected to the Failed slot of the previous Check Grid Path Length node, i.e. we’re done with our move.

  • Start Type
    Select Move To.
    We’re done with the path, i.e. we move to this cell.

Wait (Optional) #

Add Node > Base > Wait

We’ll wait for a short time, just to slow things down a bit.

  • Time
    Select Value > Value.
    Set the value to 0.5.

And that’s it for the schematic. Click on Save Schematic to save it, e.g. as GridMove.

Using the Schematic #

The schematic is used to animate the grid move action – the default animation for all combatants is set up in Battles > Battle Grid Settings in the Move Command settings.

Navigate to Battles > Battle Grid Settings.

Move Command > Default Battle Animation #

This is where we set up our grid move schematic – combatants can optionally override the default animation.

Click on Add Battle Animation.

  • Schematic Asset
    Select the GridMove schematic.

 

Check out the 2D Grid Battle RPG tutorial series for a complete setup using battle grids.