At the 2005 Game Developers Conference, Bungie AI programmer Damian Isla gave a talk, later published as the article “Handling Complexity in the Halo 2 AI,” describing how the studio structured the enemy intelligence in its 2004 blockbuster Halo 2. The talk is widely credited with bringing behavior trees into the mainstream of game development.
Isla framed the problem as one of complexity management. He described the Halo 2 decision system as “a hierarchical finite state machine (HFSM) or a behavior tree, or even more specifically, a behavior DAG (directed acyclic graph),” containing “on the order of 50 different behaviors.” His guiding principle was that “hard problems can be rendered trivial through judicious use of the right representation.” A flat finite state machine, the prior standard, tended to drown in transitions as behaviors multiplied; a tree kept the complexity local and let designers add or rearrange behaviors without rewiring everything.
He also addressed runtime cost directly, describing how allocating temporary behavior state per actor instead of per behavior cut memory from 192K to roughly 25K for 100 actors - showing that the architecture scaled to a shipping console game with many simultaneous characters. After this talk, behavior trees spread quickly through the industry and later into robotics, and they remain a default way to author agent behavior two decades on.