Work on pathfinding is finally complete and we're now ready to move on to creating our first full enemy Behavior Tree.
In GuildKnights, we want each enemy type to have distinct behavior patterns that will challenge the player in different ways with each new encounter. Our next project goal is creating behavior for our first enemy, the Gel. Its AI is based around overwhelming a single player unit with numbers.
Here’s a rundown if our desired behavior for Gels:
- A group of Gels will idle in the room where they’re spawned until discovered.
- When an enemy player character enters a Gel's line-of-sight, all of the other units in the Gel's AI group also become aware of it.
- Gels will attempt to move within melee range of their current target to attack.
- A group of Gels will pursue a single target until it's dead, then randomly select a new target from any in range.
- A Gel whose HP falls below half will run from any nearby enemies on its next turn.
- On the turn immediately following its retreat, a surviving Gel will split into two Gels with full HP, but each with half the maximum HP of the original.
The goal is for the Gel to be a fun nuisance enemy that has to be dealt with quickly before numbers get out of control. There should be room for GuildKnights with different attack types to have varying degrees of success when dealing with them. Strong single target attacks can quickly eliminate gels before they split, while AoE attacks will be more effective in cleaning up the lower HP Gels that have already multiplied.
Development on this should be interesting because it will get us started on creating our base set of enemy behaviors and prototype GuildKnight Techniques. When the smoke clears, we should have our first set of core player / enemy interactions and our first big steps towards real gameplay!
Time to go to work!