This week’s developer discussion is about reusable AI, including the underlying engine and the logic itself. Does using middleware, or even sharing AI scripts and data across different games mean that they become mass-produced simulations without a soul? Let everyone know what you think by posting a comment below.
The subject of reusable AI engines came up in the panel on next-gen AI at GDC in Lyon. At the time, I felt there was generally a consensus that AI engines are already very prominent and will quickly become unavoidable in the future. Of course, it helped that the two other guys on the panel work for middleware companies, Axel Buendia is CTO at Spirops, and Pierre Pontevia is the CEO of Kynogon.
The argument in favor of reusable AI engines is easy to make:
AI developers are becoming much more comfortable building data-driven systems based on existing algorithms.
It’s now possible to implement tools and frameworks once and reuse them in different places (e.g. animation).
It’s becoming increasingly hard to build good AI systems from scratch as more work is involved.
No doubt there are many more arguments in favor of not reinventing the wheel. But a reaction of one of the attendees of the panel got me thinking. He said something along these lines (I’m paraphrasing heavily):
“I’m not sure I agree with you on the benefits of reusable AI engines. All the games could end up playing in the same way!”
Now there is a big difference between reusing a set of algorithm and tools, and reusing the whole logic. Typically these days, the whole AI logic is only reused for sequels, which are intended to play in a similar way as the original. However, even reusing technology has the danger of removing the creative touch from the AI:
By using a the same standard algorithm, you encourage the same approach to developing AI — which may result in similar behaviors. For example, as Mark Rein said about the Unreal engine , nothing is restricting games based on Unreal to appearance the same. However, there’s a lot of experience in building games that look like that, so it’s easier for developers.
AI developers haven’t fully agreed on a good way to implement behaviors yet. Sure, scripts, state machines and planners are common, but they all have their flaws. So reusing this technology will most likely limit the capabilities of the AI itself. In the past, the games with the best AI have always been custom developed.
What do you think about this? Can you think of any other ways that reusable AI engines may cause games to become less original? Join the discussion.