Player Expectations in AAA Character AI
Player expectations is a big topic in games. Should your game features meet them, exceed them, or be strategically downscoped to make way for something else? Game designers consider these questions all the time.
But how do you meet player expectations for AAA character AI systems and behaviors? Here are are the lessons I learned in my 5 years of developing these characters.
Expectations
"Good" game AI design is elusive, but there are common traits players consistently appreciate.
Humanity
Anthropomorphization is the idea and process of making AI characters feel human-like in their fidelity and theatrics. Just as environment artists add realism through imperfection, AI characters can be given flaws to create authenticity and rapport with the player.
Common tricks of the trade include:
- Expressing strong human emotions and traits: grief, depression, anger, rage, vengeance, greed, decadence, exhaustion, fear, misery, salesmanship, toughness, bravery.
- Scripted mistakes: dropping keys when unlocking doors, falling while running, knocking objects over.
- Character fidgets and barks: grunts inspecting weapons, unstable characters mumbling threats.
- Body traits: shivering and exhaling vapor in the cold, sweating in heat, making eye contact with surrounding objects and characters.
- World cohesion:
- contextual dialogue or barks about world state or events,
- interacting with the world in the same way the player does (doors, chests, medkits),
- context-based spawning, such as mud-men rising from a swamp or grunts arriving in an armored personnel carrier.
- Personality quirks: unusual tone of voice, accent, stutter, unusual clothing, rare emotional states such as contained seething anger.
Even a few of these traits per character can make them engaging and memorable. Moreover, exaggerating them often adds drama and comedy.
Responses & Barks
Games like Tom Clancy's The Division feature tens to hundreds of AI character responses to the world and ongoing events. Most are just a bark and an animation, but each adds fidelity:
- Being hit by melee, ranged, or environmental forces (4-8 directions plus limb variants),
- Detecting a new threat (enemy, environment, or weapon like a grenade),
- Rediscovering a threat after some time,
- Friendly character nearby,
- Weapon out of ammo – reloading,
- Enemy too close,
- Enemy attack from behind,
- Enemy downed,
- Enemy hit,
- Friendly hit,
- Surprised to be hit,
- Surprised to see an enemy close,
- Rushing an enemy,
- Taking cover,
- Low health,
- Dying,
- Status effects: blinded, stunned, wet, on fire, electrified, cursed, bleeding, etc.,
- Squad boss issuing commands,
- Interaction with an object,
- State changes: idle to combat, idle to suspicious, suspicious to combat, etc.,
- Seeing but not reaching the player – may bark or throw rocks,
- (specific important game event occured)
Games like Half-Life 2 and Counter-Strike: Source use radio chatter to make barks more effective. Many games ensure barks remain audible even when blocked by geometry or distance, because barks carry much of the illusion of intelligence and theatrics.
Persistence
Persistence is the tendency of AI characters to continue their current action, even when a new one might make more sense. Good AI commits to behaviors like idling, patrolling, investigating noises, holding cover, or moving to a location a few seconds longer than necessary, sometimes taking a second or two to react.
People don’t react instantly to weak stimuli; it takes time for awareness to build into action. Giving AI characters similar delays adds realism. Randomized delays also prevent them from looking synchronized and robotic.
Predictability
Predictability of allies, enemies, or sandbox characters helps players feel in control. Dishonored and Dishonored 2 show patrol paths or vision cones. Naughty Dog developers noted that building AI for Uncharted 4 required ensuring characters were predictable enough during searches. Many more games have given players "meta" powers to see AI states and awareness with UI icons on screen to allow a development of intuition for what the agents sense. All of it facilitates play and is generally quite enjoyable.
Players dislike AI that turns around and instantly spots them in stealth, but they enjoy setting traps opponents will reliably walk into. And of course, AAA grunts often hang out near big red explosive barrels.
The displayed strategy doesn’t need to be good. It only needs to be clear and exploitable, so that the player is in control and emergent play is allowed.
Contrasts
Memorable AI characters often stand out through contrasts:
- big v. small,
- overpowering v. strong v. weak v. snack,
- fast v. slow,
- water-based v. fire-based v. gas-based v. earth-based v. supernatural v. electrified,
- flying v. swimming v. walking v. wall-crawling,
- friendly v. hostile v. neutral,
- ranged v. close-quarters v. immobile,
- advancing v. cowardly,
- embodied v. voice/radio/telepathic,
- animals v. humans v. insects,
- serious v. comedic v. dramatic v. aloof,
- muted v. exaggerated,
- unique v. file-in-rank,
- single v. many.
Adding a few strong contrasts between archetypes makes them easier to remember.
Hustling
Hustling is when AI characters subtly cheat in the player’s favor, often through distraction. Here are some ideas for making sure the player will win impressive fights:
- Dynamic difficulty adjustment (fire rates, bullet damage, reload speeds),
- Debuffing characters the player hasn’t seen for a while – those behind the camera may miss all their shots or act slowly,
- Dynamic resource spawning – the worse the player performs, the more loot defeated opponents drop,
- Tokening – only one AI character attacks at a time. Others will:
- Miss due to distance,
- Take longer to reload or reposition,
- Hide and blind-fire,
- Fight with words more than weapons.
Another trick is to arrange opponents in waves, with plenty of supplies and a relaxed pace overall, where the player doesn't have to focus on more than a few enemies at a time.
Buddy characters can hustle too. They may weaken enemies but leave the final blow to the player.
Fall-Backs
The worst AI behavior is "broken". Always give characters a fall-back so they never truly stop or T-pose. Use state validation through timeouts, thorough testing, and catch-all fall-backs where characters stand still but bark and fight based on game state.
Common edge cases developers overlook:
- Character in combat but unable to reach the target:
- with line of sight,
- without line of sight.
- Character walking off the navigation mesh/graph/3D area due to:
- collision avoidance,
- obstacle avoidance,
- external force,
- teleportation.
- Components staying active after death,
- Incomplete actions – ensure the AI system enforces timeouts or invalidation checks during execution.
Depending on the characters, many more edge cases exist. In complex systems, graceful fall-backs are better than crashes. Unsafe states can still be flagged by assertions.
Conclusion
While building "good" game character AI involves much more than simply meeting player expectations, it is a good starting point. Commonly, players like to see humanity, responses, barks, persistence, predictability, contrasts, hustling, and fall-backs in game AI. With just these aspects considered and implemented, you are well on your way to building AAA-style character AI.
Want to learn more? Check out my other game AI development articles on this blog, where I talk about AAA-style game AI production and design. Or see these excellent community resources:
- "Game AI Pro" by Steve Rabin is a book series about AAA-style game AI development, available in e-book format.
- "Game AI Uncovered" by Paul Roberts and community contributors is a similar series, covering a slightly broader range of topics in game AI.
- GDC Vault offers many free GDC talks by Ubisoft, Microsoft, Valve, and other AAA companies on game AI development.
Special thanks to the following community contributors:
Giacomo Salvadori | Co-editor |