This article looks into the publicly available SDK for Half-Life 1, analyzing the various aspects of the AI such as the task scheduling system, its state-machine like implementation, and the sensory system. Even ten years later, looking into the codebase of this critically acclaimed game is a great way to learn about designing simple but effective AI systems.
Sensory System
The AI from Half-Life's SDK in Retrospective
February 11th, 2008 | Source Code | Alex J. Champandard
Building Event-Driven Conditions for an Asynchronous Sensory System
February 6th, 2008 | Tutorials | Alex J. Champandard
This article continues a series of tutorials building simple dog behaviors for a simulation game. Last time, you learned how to use polling to build tasks that monitor conditions in the world, for example to keep the growling behavior running while another dog is nearby.
In practice, there’s also another way to implement these kinds […]
My Plans for the Next 11 Months: Killzone 2, AiGameDev.com and Game::AI++
January 27th, 2008 | Announcements | Alex J. Champandard
Over the past month, I’ve received quite a few questions about the stuff I’m working on — and some of you even seem genuinely interested! So I figured I’d take the opportunity to write a post about my master plan for 2008. It’s taken me until now to write this since there was […]
Monitoring Assumptions for Behaviors Using Polling Conditions
January 23rd, 2008 | Tutorials | Alex J. Champandard
In last week’s tutorial, you learned how instantaneous conditions can check information from the world to affect how decisions are made in a behavior tree. However, using this approach, once a decision is made the behavior will run until it terminates on its own — which reduces the responsiveness of the AI.
This article shows […]
Using Conditions as the Building Blocks of a Sensory System
December 26th, 2007 | Tutorials | Alex J. Champandard
Wednesdays on AiGameDev.com is dedicated to tutorials. This article continues the long-running series which focuses on building simple dog behaviors for a simulation game.
At this stage, the decision making process is in place, but it’s based on random decisions instead of taking into account any information from the world. This, in effect, is […]
Sneaking Behind Thief's AI: 14 Tricks to Steal for Your Game
September 17th, 2007 | Reviews | Alex J. Champandard
Thief pioneered the first-person sneaker genre, and is a cornerstone of single player action games in general. The game is an interesting blend of suspense and strategy, which requires some interesting artificial intelligence technology. In particular, this article looks into the sensory system and the design of the behaviors to support that kind of gameplay.

