Other Game AI Ideas

You can implement a lot more game AI techniques. Most of it depends on the type of game you are creating. If you're making a 2D platform game, the AI will probably be minimal, with creatures following simple patterns most of the time. Be sure to give the creatures varying level of intelligence, though. For example, some creatures could detect the edge of a platform and avoid them, while others would just fall right off. For a first-person shooter, the bots could spend some time trying to predict the movement of the player and adjust patterns accordingly. A bot could fire its weapon in the direction the player is predicted to be rather than where the player is when the shot was fired. Also, bots could try to "learn" a player's common patterns. Besides hearing and seeing, some bots could have other senses. For example, a bot could "smell" to pick up on the player's trail. Or, some bots could have special heat-sensing or x-ray vision to help them track down the player. You could extend evolution in a game by running the reproduction and mutation simulation over a long period, and then including only the smartest bots in the final game.

Team AI

In a strategy game, it can often be advantageous for AI bots to be arranged in a hier archy of leadership. The team leaders would send commands to troops, trying to create a tactical advantage for the group as a whole rather than each troop trying to make decisions individually. This can make a game more challenging for the user. If the team leader is killed, either the troops become disorganized or one of the troops is promoted to team leader. There could also be team-based patterns, such as flocking to one point or completely surrounding a player on all sides. Flocking can show some cool AI behavior and is also common with AI for groups of fish or birds. Flocking algorithms involve keeping each bot near the group, keeping each bot a certain distance away from each other (having a "personal space"), and steering each bot in the average direction of the group. The group can be defined explicitly or can be just the bot's nearest neighbors. Also, troops could call for backup. Note that if you do something like this, make it visually apparent that a troop is calling for backup, or it could just look like more troops showing up randomly. Or, instead of a hierarchy, nearby troops could simply "communicate" with each other and negotiate the best possible strategy among them.