Nowadays there are some pretty well-developed algorithms that allow code to efficiently predict outcomes, classify things, and so on. These are rarely used in games, except for games that are entirely built around that (such as Black & White or Creatures), where (in my opinion) they don’t work very well anyway.
So I’m pondering where machine learning could be effectively applied to enhance the player experience in regular game designs. Here are some thoughts to get the ball rolling.
1. Helping the Player
a. Choice Helper — In any sort of what-to-build-next context, an AI could learn to predict what building/unit/tech/upgrade he would choose next, and pre-select that in the selection dialog. This way, the player only has to smack OK most of the time, or could even turn on some sort of auto mode that bypasses the dialog entirely.
b. Companion AI — This one’s harder, but if you have a companion NPC, it could be useful for it to predict what the player is going to do at various points, so the NPC can do something helpful (or at least get out of the way). If you always like to sling fireballs when facing frost minions, your companion should get behind you. But if you usually stand back and buff the companion, then it should charge right in.
c. Trainable Pet — this is stepping a little bit into Creatures/Black&White territory, but pets in games goes all the way back to Rogue/Nethack days, and usually they’re pretty stupid. If I have a pet, I want to be able to train it to do stuff (whether it’s useful or just fun).
2. Challenging the Player
a. Predicting Player’s Moves — this one is like the Companion AI, but used for evil; the AI could learn your favorite moves in order to counter them. This might be especially effective in something like a fighting game, and should prevent the player from finding one combination that always works, since if you keep doing it, the AI (just like a human opponent) will come to expect it.
b. Predicting Outcomes — not quite the same thing, but a similar effect: enemies could learn the likely outcome of their own decisions, so over time they make choices that work better against you and your style of play. This helps avoid the common AI failure where an enemy makes the same dumb mistake over and over again.
Does this inspire any thoughts in anybody? If your NPCs or enemies were actually controlled by paid actors in Elbonia (who don’t speak the player’s language but are otherwise ordinarily smart), what would you do with them, and how would this affect your game design?