Adding Difficulty By Creating New Parameters For Enemy AI

Adding challenge to a game can be difficult. If you make something too hard too early, the game can feel overwhelming or punishing. Not enough challenge and it can become boring, tedious, or repetitive.

Do you wanna know the secret to navigating this maze?

Well, there isn’t one. The best advice I can give is to test early and test often. Get feedback from your friends, family, or coworkers. Play it through yourself, and then play through it again.

On the technical side of things, as we love to discuss here, you can look at difficulty as scalable and fluid. Adding more of one enemy type or adding upgraded enemies that have stronger equipment/stats is one way to up the challenge of a game. Another way is to slow the player’s movement, or do what Dark Souls did and emphasize commitment in the combat controls. Once you swing that greatsword in Dark Souls, you aren’t getting another chance to swing, run, or dodge until that first swing is done which leaves you vulnerable if you aren’t careful. Another option is to make life regeneration harder to come by.

For the latest addition to my 2.5D Space Shooter game, I will be adding in the function for certain enemies to be able to detect beneficial player powerups and destroy them if they find themselves nearby.

I did this very similarly to how I made the enemy that periodically flys to the bottom and senses for the player, I just added a check to these specified enemies to see if their extended collider detects an object with the “Powerup” tag, and if so use a random range to decide to shoot or not with 50/50 odds.

But the only way to know how much difficulty this adds, and if it adds fun or frustration is to test Test TEST!!!

Hi, my name is Adam Reed and I am a software engineer specializing in Unity and C# development. Feel free to scroll through and check out some of my work!