
Game AI Pro
Collected Wisdom of Game AI Professionals
Preview
Book Description
Successful games merge art and technology in truly unique ways. Fused under tight production deadlines and strict performance requirements, shaped by demanding player expectations, games are among the most complex software projects created today. Game AI Pro: Collected Wisdom of Game AI Professionals covers both the art and the technology of game AI. Nothing covered is theory or guesswork. The book brings together the accumulated wisdom, cutting-edge ideas, and clever tricks and techniques of 54 of today’s top game AI professionals. Some chapters present techniques that have been developed and passed down within the community for years while others discuss the most exciting new research and ideas from today’s most innovative games.
The book includes core algorithms that you’ll need to succeed, such as behavior trees, utility theory, spatial representation, path planning, motion control, and tactical reasoning. It also describes tricks and techniques that will truly bring your game to life, including perception systems, social modeling, smart camera systems, player prediction, and even an AI sound designer. Throughout, the book discusses the optimizations and performance enhancements that enable your game to run while maintaining 60 frames per second.
Table of Contents
General Wisdom
What Is Game AI?
Kevin Dill
Informing Game AI through the Study of Neurology
Brett Laming
Advanced Randomness Techniques for Game AI: Gaussian Randomness, Filtered Randomness, and Perlin Noise
Steve Rabin, Jay Goldblatt, and Fernando Silva
Architecture
Behavior Selection Algorithms: An Overview
Michael Dawe, Steve Gargolinski, Luke Dicken, Troy Humphreys, and Dave Mark
Structural Architecture—Common Tricks of the Trade
Kevin Dill
The Behavior Tree Starter Kit
Alex J. Champandard and Philip Dunstan
Real-World Behavior Trees in Script
Michael Dawe
Simulating Behavior Trees: A Behavior Tree/Planner Hybrid Approach
Daniel Hilburn
An Introduction to Utility Theory
David “Rez” Graham
Building Utility Decisions into Your Existing Behavior Tree
Bill Merrill
Reactivity and Deliberation in Decision-Making Systems
Carle Côté
Exploring HTN Planners through Example
Troy Humphreys
Hierarchical Plan-Space Planning for Multiunit Combat Maneuvers
William van der Sterren
Phenomenal AI Level-of-Detail Control with the LOD Trader
Ben Sunshine-Hill
Runtime Compiled C++ for Rapid AI Development
Doug Binks, Matthew Jack, and Will Wilson
Plumbing the Forbidden Depths: Scripting and AI
Mike Lewis
Movement and Pathfinding
Pathfinding Architecture Optimizations
Steve Rabin and Nathan Sturtevant
Choosing a Search Space Representation
Nathan R. Sturtevant
Creating High-Order Navigation Meshes through Iterative Wavefront Edge Expansions
D. Hunter Hale and G. Michael Youngblood
Precomputed Pathfinding for Large and Detailed Worlds on MMO Servers
Fabien Gravot, Takanori Yokoyama, and Youichiro Miyake
Techniques for Formation Movement using Steering Circles
Stephen Bjore
Collision Avoidance for Preplanned Locomotion
Bobby Anguelov
Crowd Pathfinding and Steering Using Flow Field Tiles
Elijah Emerson
Efficient Crowd Simulation for Mobile Games
Graham Pentheny
Animation-Driven Locomotion with Locomotion Planning
Jarosław Ciupiński
Strategy and Tactics
Tactical Position Selection: An Architecture and Query Language
Matthew Jack
Tactical Pathfinding on a NavMesh
Daniel Brewer
Beyond the Kung-Fu Circle: A Flexible System for Managing NPC Attacks
Michael Dawe
Hierarchical AI for Multiplayer Bots in Killzone 3
Remco Straatman, Tim Verweij, Alex Champandard, Robert Morcus, and Hylke Kleve
Using Neural Networks to Control Agent Threat Response
Michael Robbins
Agent Awareness and Knowledge Representation
Crytek’s Target Tracks Perception System
Rich Welsh
How to Catch a Ninja: NPC Awareness in a 2D Stealth Platformer
Brook Miles
Asking the Environment Smart Questions
Mieszko Zielinski
A Simple and Robust Knowledge Representation System
Phil Carlisle
A Simple and Practical Social Dynamics System
Phil Carlisle
Breathing Life into Your Background Characters
David “Rez” Graham
Alibi Generation: Fooling All the Players All the Time
Ben Sunshine-Hill
Racing
An Architecture Overview for AI in Racing Games
Simon Tomlinson and Nic Melder
Representing and Driving a Race Track for AI Controlled Vehicles
Simon Tomlinson and Nic Melder
Racing Vehicle Control Systems using PID Controllers
Nic Melder and Simon Tomlinson
The Heat Vision System for Racing AI: A Novel Way to Determine Optimal Track Positioning
Nic Melder
A Rubber-Banding System for Gameplay and Race Management
Nic Melder
Odds and Ends
An Architecture for Character-Rich Social Simulation
Michael Mateas and Josh McCoy
A Control-Based Architecture for Animal Behavior
Michael Ramsey
Introduction to GPGPU for AI
Conan Bourke and Tomasz Bednarz
Creating Dynamic Soundscapes Using an Artificial Sound Designer
Simon Franco
Tips and Tricks for a Robust Third-Person Camera System
Eric Martel
Implementing N-Grams for Player Prediction, Procedural Generation, and Stylized AI
Joseph Vasquez II
Editor(s)
Biography
Steve Rabin is a principal software engineer at Nintendo of America, where he researches new techniques for Nintendo’s current and future platforms, architects development tools, and supports Nintendo developers. He also teaches game AI at the DigiPen Institute of Technology. He was previously an AI engineer at several start-up companies, including Gas Powered Games, WizBang Software Productions, and Surreal Software. He is the founder of the professional group AI Game Programmers Guild, with over 350 members worldwide. He earned a BS in computer engineering and an MS in computer science, both from the University of Washington.