I’m going to soon start developing some enemies for the map. I’m thinking that my first goal would be to create a being that moves towards the player when he becomes visible, and as soon as a collision occurs, the player is disconnected. Gotta make it somewhat risky, you know?
I came up with a reasonable way of implementing behaviour in an easy to understand way. The AI beings will have different “modes”, that represent their immediate actions. Example: still, wandering, berserk, run away. Berserk would mean finding and following the target using the fastest route possible (using A* algorithm, probably). Run away would mean the opposite.
On top of these modes, different behaviours could aggregate a few modes, and activate the modes under certain circumstances. For example, one behaviour, “wait and attack”, would give the being a “still” mode until a player becomes visible, which would then give a “berserk” mode.