In the Battle System, an entity is an object that occupies a Grid cell.

Health

Every entity has a health value (HP), and an accompanying maximum health. If an entity’s health drops below 0, it is destroyed and removed from the grid.

This behaviour is overridden by player Characters, and changed if the enemy is indestructible.

Shield

Entities may also have 0-infinity shield, which is a separate value on top of their health.

  • If an entity takes damage, its shield is depleted before its health.
  • This behaviour can be overridden by certain attacks/effects (for example, an item that can deal a percentage of chip damage through shield.)

Getting hit

Every entity has the capacity to take damage. This just means reducing their current HP by a certain amount.

Getting pushed

Entities can be “pushed” in a certain direction by certain interactions. The logic is as follows:

  • A target cell is selected based on the direction of the push.
    • The direction may be cardinal OR diagonal!
  • If there is no entity in the target cell, the unit is moved into that cell, triggering the on cell exit and on cell enter procs for the respective cells.
  • If there IS an entity in the target cell, both entities take damage and no movement occurs. Visually, they collide into each other and bounce back into the cell they were already in. The damage is determined by the effect that triggered the push (can be 0).
  • If the target cell does not exist (i.e. it’s the edge of the grid), the unit takes damage in the same way as above (with a base “max HP” value to scale against).

Other properties

PropertyMeaning
groundedThis entity is grounded. True by default. If this property is false, the entity is airborne (like a flying drone or something), and so it should ignore particular cell states that would hurt them if they were touching the ground.
indestructibleThis entity cannot take damage. If the entity is indestructible, the health/max health should simply be set to infinity, and damage effects should not apply to it. However, the on hit proc source should still trigger.
obstructiveThis entity is an obstruction (like a crate or a wall). If it occupies a cell, the cell is immovable and obstructed.