A comment on a article about Halo Infinite got me thinking; why is enemy AI in video games still often so crappy?
To give a good example, in shooters it is common that an enemy will take cover behind a structure. But, they will then pop out from behind that structure into the exact same position on an exact schedule, say every 10 seconds. So, it is common for the player to simply stand in one place. Wait for the enemy to pop out from behind the thing and take a shot. If you miss, just wait another 10 seconds and try again.
In any real life situation, if you were hiding behind a box and knew that someone was trying to snipe you, maybe because a bullet just hit the box right next to you, you certainly wouldn't come out from behind that cover completely revealing yourself, on a set schedule, just waiting for the person to kill you.
And yeah, sure, enemies will often run from one piece of cover to another. But, then they go right back to the first one, back to the second one, back to the first one, back to the second one.
Anyway, I'd like to hear thoughts on why things are done this way. Is it because gamers want this? I can see where that might be the case. We know for sure that we will eventually get to kill that guy if we just stand here long enough and keep trying to hit him when he pops out from behind the box.
Is better AI is too expensive, in terms of system resources? Is there some other reason I can't think of?
I think that AI in general is a little better than it was a couple of generations ago, and some games do it better than others. But I can't think of a single example of a game that I would say has truly great enemy movement. The advances in AI definitely have not been anywhere near what they've been in other areas of gaming. Physics continue to improve, graphics have improved big time, but the enemies are still dumb as rocks.....








