Thoughts on AI
I’ve written a very rudimentary AI (artificial intelligence) for Boom Dice and it definitely makes the single player game more fun. It’s functional, although not particularly hard to beat. One of my readers, Andy Daniels of Enginuity Games, kindly sent me a much more well thought out Excel spreadsheet to analyze the optimal number time to reroll or not. But I wonder: is the best AI necessarily the best for a game?
I’ve also been thinking about this since the wife and I have started playing the original StarCraft again (we play co-op against a couple computer AI opponents). She usually plays Terran and if you’re familiar with the game, you know that the starting game for Terrans involves building bunkers and if the enemy rushes you, you just send out a bunch of SCVs to repair it. Fortunately, the computer AI focuses on the bunker although a smarter one would go for the SCVs first, rendering your bunkers much less useful. But then where would the fun in that be?
Anyways, the point of the StarCraft anecdote is that it got me thinking about what the goals should be for designing an AI for a game. Here’s what I came up with:
- The AI should be challenging so that you have to think to beat it.
- The AI should be consistently beatable if you are good.
- Beating the AI should involve playing the game in a fun way.
July 15th, 2009 at 1:07 pm
I’ll also add that the AI should be able to surprise moderate to experienced players every so often. Playing a game and being able to guess AI responses and actions is boring.
July 15th, 2009 at 7:45 pm
Yeah, it’s cool when the AI surprises you in a nice way.