This standalone workshop takes place on September 17th, the day before the main conference, and is dedicated entirely to creating AI with Behavior Trees, with a particular focus on character logic. Throughout the day you will learn how to better utilize BTs to improve performance, simplify authoring and debugging and allow more expressive behaviors.
This workshop is the most advanced and comprehensive course on AI, Behavior Logic and BTs ever held. This workshop is only available to a small group of people, in the spirit of a mastermind session. If you're a game developer who wants to get more our of your existing Behavior Trees, or you are just starting out with Behavior Trees, you don't want to miss this workshop.
#1 – Mid Morning
After an overview and introduction of the topic, this first section will cover the different ways to implement the underlying Behavior Tree technology. Over the past couple of years, we have seen radical changes in Behavior Tree implementations, from top-down approaches using polling to event-driven bottom-up approaches and hybrids of both of these designs.
Throughout this session, you will learn about the impact of the choice of Behavior Tree on:
- speed and efficiency,
- memory consumption and caching,
- the ability to express behaviors,
- behavior debugging.
You will also learn how to optimize your behavior trees for speed and memory on modern console and PC hardware. Data-oriented Behavior Trees are an important topic that will be covered during this session.
#2 – Late Morning
Architecture & Integration
The late morning section expands the topic of architecture to encompass the best ways to integrate Behavior Trees into your overall game engine. Learn how to build supporting systems in your codebase (e.g. navigation, locomotion, animation) to simplify the Behavior Tree logic and reach even higher performance. You'll understand what makes an AI architecture easy to work with, in particular for creating new behaviors in an iterative fashion.
At the high-level, you'll learn about the scripting interface to BTs, which can often be a difficult point for any game. You'll also see how behaviors can be created in modular components, particularly what kinds of inheritance and/or composition are the most useful in practice, and how to add code support for that.
Take the opportunity to socialize with other developers in the field of animation during the lunch that's included with your workshop. Two tea and coffee breaks are also included during the day itself.
#3 – Early Afternoon
This section dives into the authoring of behaviors for Behavior Trees. Learn how to create re-usable chunks of behavior as modules, components and sub-trees to allow for complex AI behaviors to be assembled incrementally. You'll also be given a crash course in the most essential BT design patterns that are the most useful in practice, to help prevent things like oscillation and stubborn behaviors that persist even though they are invalid.
In this section, you'll hear about practices from other developers and how they structure their content creation and split their workloads between designers and programmers. What workflows are the most effective to iterate over the behaviors?
#4 – Late Afternoon
Tools and Debugging
The final section focuses on tools. In particular, you'll see the key features that visual tools require for prototyping and designing behaviors using the modular blocks discussed in previous sections. You'll learn how best to structure the content in ways that are easily managed. Iteration speed is very important for tools, so you'll see what's necessary to get a fast and effective pipeline up and running with support for hot-loading.
In this section, you'll also see ideas and techniques for debugging of BTs -- from in-game visualizations that can reveal what's wrong very quickly, to more advanced logging-based techniques. You'll see which are most effective, which developers use, and how best to apply them in your case.
Attendee List (Partial)
- Antii Manisto, Remedy Entertainment
- Charlie Edmunds, Microsoft Game Studios
- Jan Kratochvil, 2K Czech
- Bjoern Knafla, Codeplay
- Youichiro Miyake, Square Enix
- Ryan Villamil, SRI International
- Tim Hanagan, Rocksteady Studios
- Bobby Anguelov, IO Interactive
- Mark Wilkinson, Ubisoft Reflections
- Ivailo Ivanov, Gameloft
- Cloderic Mars, MASA Group
- James Bonner, Opaque Multimedia
- Christian Werle, Realmforge Studios
- Stefan Rank, ARIAI