What common mistakes do new AI engineers make when they first move into game development? How long does it take for them to realize that designers will find edge cases in the code no matter what? And why do all public discussions about game AI end up with programmers complaining about designers? We have the answers, and they are below...
A few weeks ago, the Boston Postmortem held a panel about artificial intelligence in games. It featured Damian Isla, John Abercrombie, Jeff Orkin, and finally Christian Baekkelund as moderator. As you'd expect from the star cast, the discussion was highly stimulating and provided a fresh take on the most commonly addressed topics in our field.
Below in this post you'll find the full transcript of that part of the panel discussion, as well as a festive Thank You from our sponsors!
The Isla Principle of AI Presentations
In the segment of the panel transcribed further below, Damian Isla outlines his theory about all AI talks given publicly. He postulates that each talk has a minimum estimated time until the discussion drifts towards speaking about designers — not in the most positive way.
I'm calling this The Isla Principle of AI Presentations or the "Isla Principle" for short!
Of course, making great artificial intelligence in games requires both a balance of design and code, and this part of the daily workflow is arguably the most important thing you can do. But, well, it's always a source of passionate disagreements, bugs and funny stories too — which explains this principle.
Big Mistakes of New AI Engineers
Christian Baekkelund: What do guys think are some of the biggest mistakes that a new AI engineer makes?
Damian Isla: I feel like AI programmers in general are torn between two opposing goals, one of which is AI as a game mechanic: the AI as a means to support very basic gameplay (what are you doing from second to second), and on the other hand AI as life simulation, AI for compelling characters and window dressing essentially to sell the world and sell entities in the world.
In general, I think a lot of new AI programmers don't necessarily don't think of AI as a mechanic. And I think the mistake both for the programmer and organizationally, is that the AI programmer is not brought into the design fold quite enough, and is not made to understand the high-level design goals quite enough. What is the player meant to experience, now let's craft the AI to support that. That is really the most important job for the AI programmer, much more than life-like flocking or something like that.
John Abercrombie: The key is to make an experience for the player, and as an AI programmer that's what you're doing, and even as an organization as a whole. The systems and features you build have to support that, otherwise... Just building new systems to try out new things is a good thing, but in the end you're developing a product for some player to come and have fun with. You have to keep your mind on that, it's your end goal and all your work has to support that end goal.
Another mistake that AI engineers make is that they don't try to keep things simple. Certainly, getting really complicated... as a coder sometimes you want to go out and build this awesome complicated system, but really if you try to keep things simple. The way things are direct, it's a more beautiful thing for building AI than anything else. You're going to hit all these edge cases that your really complex construction isn't going to handle well, and trust me, once designers get involved, you're going to get those edge cases a lot. By keeping things simple it keeps you agile, as design chances, as content changes, you're able to stay very agile in the face of a design [scope] that can change from RPG-style first-person shooter to a more Action first-person shooter. That's a huge change right there, and that happened on Bioshock. If you're not able to keep things simple you can't stay agile and you can't adjust to those changes.
Jeff Orkin: The only thing I would add is understanding who the design team is, what their strengths are. The mistake I've made myself and I believe I've seen other development teams make is trying to force the designers to be programmers by providing them some kind of scripting access to your AI, thinking you can offload all of the development behavior to the design team. With some studios that does work well, but my own personal opinion is that it's better to have autonomous behaviors where designers create worlds that can showcase the behaviors, and the AI developers can take care of the details.
John Abercrombie: I like to say, give the designers a lot of rope, but not enough to hang themselves. Build the tools that they need, and build an autonomous AI, and the tools that you need to control that autonomy, rather than total simulation or total scripting.
Damian Isla: Every single AI talk that you'll ever see done publicly, there's an estimated time to start complaining about designers. It's going to be a common theme here...
John Abercrombie: It's like "time to crate" or something like that.
Christian: I've just realized my role as moderator is now going to be the defense of designers too.
Best Wishes from Our Sponsors!
SpirOps is a middleware development team focused on AI. Their ultimate goal is to allow video games and simulations development teams to enter what we call “the Living Game era”. To design more realistic behaviors with a never reached complexity, the SpirOps developed an artificial intelligence design paradigm called “Drive Oriented” which allows designing AI with graphical tools and keeping a linear complexity during the brain creation process.
PathEngine provides a sophisticated toolkit for agent movement, built around an advanced points-of-visibility pathfinding core. This gives you powerful paired path planning and collision against a sophisticated, continuous space, pathfinding movement model, with robust integrated dynamic obstacle functionality and exact representation of agent shape, for seamless movement over overlapping ground geometry.
Havok is the premier provider of interactive software and services for digital media creators in the games and movie industries. With world leading expertise in physics, animation and tools, Havok’s business is to turn customers’ creative aspirations into technical realities. Havok’s modular suite of tools gives power to the creator, making sure that clients can reach new standards of realism and interactivity, while mitigating the overall cost and risks associated with creating today’s leading video games and movies.
We bring bytes alive! This is the vision and motivation that drives Artificial Technology GmbH. Graphically, many computer games already emulate the real world quite faithfully. The behavior of the characters, on the other hand, is often less authentic. EKI One Middleware (emotional & artificial intelligence) is a new solution by Artificial Technology GmbH which allows game developers to bestow on their characters with emotional behavior.