Game development is often an ad-hoc affair, focused more on performance and meeting
deadlines than on writing maintainable and well-structured code. AI in particular
is often highly customized to a specific game context, impairing reusability and
verification. During my Ph.D. research, I explored how a model-driven approach to
game AI can improve the development process. In this talk, I will present some of
my major results, including the layered statechart-based AI formalism, which
represents AI logic and behaviour in a fundamentally modular fashion. This approach
leads naturally to effective reuse of AI behaviours, generative approaches to create
varied NPC populations, tool support for managing development of game AI, and
verification of AI behaviours through model-checking.