And what about the ai?
Nothing fancy, at the moment, but we're also mid-development.
Aztez has some assumptions: You're the only "player" avatar in the game, and everyone else is an enemy. You're the only object everyone cares about (so a lot of this AI is actually you emitting raycasts and things). With that in mind:
- Enemies maintain a list of their close neighbors
- Right now, characters have "confidence", "bravery", and "presence"
- Confidence goes down heavily when they get hurt, some when their nearby allies get hurt, and back up when the opposite is happening (they're hurting you)
- Bravery is just a number that affects how quickly they return to baseline confidence, presence how much they affect their friends
- You shoot out a big capsulecast in each direction. Enemies are aware of which # they are in order from you (in the orange sphere):
- They have a target position from you, modulated by their confidence and the order they're in. If you're fighting a bunch of guys of the same type, they'll stack. If you scare off the closest guy (or kill him), they'll fill in. If someone from the rear does a jumping forward attack, the others will make room, etc.
- Target position in that screenshot is the gray box in front of them
- Enemies do dice rolls every so often for a variety of attacks. Some attacks are frequently attempted by have strict requirements (you in an airborne state, you in a particular relative position i.e. for defensive slashes if you get too close, etc).
- When an attack is attempted, it can have a desired target position relative to you. Some ranged enemies move into position first, for instance.