Luke Dicken, senior data scientist, Zynga
- AI (or machine learning or data science – it’s largely the same thing) needs to be something that devs think about from day one. Don’t tack it on at the end, build with it in mind. Do you need a fancy system for <this> in your prototype? Probably not, but you want to be able to drop it in easy, so think about it early.
Thomas Young, owner, PathEngine
- Don’t try to separate AI implementation from game design. For best results, possibilities and constraints on the implementation side should be considered together with game design possibilities and constraints, in a search for the best global solution. More concretely, it’s a good idea to ensure that AI programmer roles ‘officially’ overlap with design roles.
- It’s much easier to build robustness into your agent movement at a lower level than to implement the logic for this higher up your agent movement stack. Consider using a simplified collision model, since that’s much easier than the higher level AI for more arbitrary collision. Try to deal with stuff like approximation and range errors at an architectural level.
Martin Linklater, lead programmer, Playrise
- Drill into the game design on what behaviours need to be present in the game and what don’t. Get the game design team to think about what behaviour they want the AI to demonstrate to the player – rather than discussing what techniques they think we should use.
- Separate the AI into layers: strategy, tactics and control. Strategy deals with long-term goals and desires. Tactics deals with moment-to-moment decision-making. Control deals with frame-by-frame control over the AI avatar.
James Carroll, Director, Evil Twin Artworks
- Start simple and build up. Keeps things reasonably generic as no matter how much you plan you will always realise there is more to add. Artificial intelligence never seems to work the way you want, it is always surprising. Set up a separate testing ground outside of the core game, a more controlled environment to see where the AI is working – or not working.
Anna Ljungberg, AI programmer, Radiant Worlds
- Have plenty of debugging tools that will not only help when something goes wrong, but will also test and prove the AI’s working as intended. You need to be confident that the brain in your AI system is doing what it’s supposed to, and the easiest way to know that is to debug render exactly what the brain’s doing.
Chris Emmett, senior programmer, Payload Studios
- It’s important to make your AI seem believable – demonstrating abilities or knowledge that the player doesn’t have puts them on an uneven keel and can seem unfair. For example, simply making your AI wander and search towards the player’s direction, rather than heading straight for them, helps with both believability and player immersion.
- It’s important to choose the best tools for your game, as AI can often make or break a game. Using a method that can be represented visually, such as behaviour trees, decision trees or stack-based state machines allows you to easily see the big picture, letting you tweak and change things to give you better AI.
Marek Rosa, CEO, Keen Software House and GoodAI
- In our opinion, the best way to implement AI in games will be together with a teacher or mentor who is a player. This way, the player can show the AI how he wants it to behave in the game environment, what things are good and what kinds of behavior are undesirable.
For more on the current state of video game AI, you can read our recent feature on AI’s next frontier.