GuildKnights is a turn-based game where each distinct "group" in the current dungeon is allowed to execute all of the actions for its members before the turn shifts over to the next available group. Under normal circumstances, group turns flow in the following order:
- Player Party
- Dungeon Enemy Groups
- Player Ally Groups
AI Units on the dungeon map all belong to special AIGroups. Each AIGroup has a behavior tree that governs turn order and, potentially, specific unit actions for the group's members. While Enemy AIGroups with active units remain, the Dungeon Manager will randomly select one of the groups to be the acting group during the Dungeon Enemy Groups phase.
An AIGroup behavior serves as the core for cooperative interactions between enemies within the same group. In its simplest form, it will randomly select one of a group's units and allow it to act on its own. At the highest level, it can facilitate coordinated attacks where units with debilitating techniques can weaken opponents before the high-damage units attack.
Initially, we'll be focusing on getting the basic AIGroup structure and random action order set up. After that, we'll be working on a simple AI behavior that will allow an enemy to path-find its way to a nearby player character. Once that's finished, we'll be back to go into more detail on individual enemy AI as we dive into work on Idling, Tracking, and Fighting behavior trees.
Here's wishing everyone a prosperous and productive new year!