In an FPS we will often have a need for a variety of different types of enemies and configurations of encounters. Achieving balance in those encounters isn’t easy and we can use systems to help. One solution being to manage which AIs can attack at any point in time to create the desired level of pressure on the player. That gives us a parameter which we can easily tune to vary the experience for the player and can speed up the process of balancing different encounters.
Find the code here: https://github.com/GameDevEducation/DevToolkit_FPS_IllusionOfPressure