"…our AI doesn't drink, it doesn't eat, it doesn't sleep. All it really does is stand around and then fight…"

Photo courtesy of Bungie.net

The Decision Making

The AI in Halo each take turns "thinking". These turns occur very quickly, which gives the impression that each AI is constantly thinking. When it is its turn, each AI makes decisions based on the data they have processed. This is the AI behavior system. Chris explains:

The four states of the combat cycle are:

  • Idle
  • Guard/Patrol
  • Attack/Defend
  • Retreat

That's the decision making. Behind it all is a basic combat cycle of seeing enemies, engaging enemies retreating and going back into another combat state. Now those are all combat-specific behaviors because ... our AI doesn't drink, it doesn't eat, it doesn't sleep. All it really does is stand around and then fight when enemies are nearby, but we try to make those behaviors be as life-like as possible."

Chris continues:

"So at every level of the hierarchical tree, those decisions about what the most appropriate thing to do is made based on the knowledge of what is going on in the world and knowledge about the type of character the AI is. For example, at that top-most level, it should say, 'If there are enemies I can see, then I should be engaging them in combat.' But if the AI is a cowardly character, it might say, 'If I am faced with overwhelming force, then I will retreat.' That is the level where our game designers come into play. They have access to all this game information and to all the numerical quantities that control the behavior of the AI. We don't do things by random chance very much. The goal is not to create something that is unpredictable. What you want is an artificial intelligence that is consistent so that the player can give it certain inputs. The player can do things and expect the AI will react in a certain way. For example, if I sneak up behind a Grunt and surprise him, I expect him to run away. It would be bad if they only ran away half of the time, because then the player can build a plan that will only work half of the time. We try to go for predictable actions but unpredictable consequences. The Grunt will always run away, but you don't necessarily know where he'll run away to. That is where the re-playability comes from."