Hi,
I'm currently faced with a challenge that's part design and part programming.
I've built a small prototype of a top-down arcade space shooter arena:
Originally, my AI was simply too powerful.
To make it more palatable (and fun) for the players, I've introduced two new concepts:
1 - Reaction Time
I've created an artificial delay at which the AI reconsiders his decision (adjust helm, change target, etc.)
2 - Accuracy Handicap
I've created a random range of possible inaccurate results. Essentially, when I'm shooting at a specific ship, I modify its x and y coords by a random value (it's a bit more complex than this, but the basics apply)
I still feel like the AI is very hard to try and beat and I certainly don't want to make it look "dumber".
(Please disregard the fact it is currently causing friendly fire).
All in all, I've been thinking about ways to make the AI more believable and less dangerous without sacrificing how "clever" it looks.
One of the alternatives I've been considering is having them try to play the positioning game (as they are currently just jousting for maximal firepower with absolutely no regards to their own survival).
This would entail having the different ships communicate with one another a global "angle of attack" they are trying to achieve against said target, and space out evenly (maximizing the chances of one of them flanking the player). Obviously though, as the shots are fired from the front, this would inherently limit the amount of shots they can take while maneuvering into position.
Any particular advice on what to do?