Cover Me!
Promoting MMO Player Interaction
Through Advanced AI
Dave Mark
President & Lead Designer
Intrinsic Algorithm LLC
“Reducing the world to mathematical equations!”
Dave Mark
• President & Lead Designer of
Intrinsic Algorithm LLC
• Game Studio
• AI Consulting Company
• Author of
Behavioral Mathematics for Game AI
• Co-founder of
AI Game Programmers Guild
• Organizer and co-host of the
AI Summit at GDC 2009
“Reducing the world to mathematical equations!”
Premises/Disclaimers
• WoW is a good game.
• Not everyone wants to be like WoW.
• Bad AI has its place in games.
• Not everyone wants to have bad AI.
• You are here because you are working on
an MMO.
• You are here because you want to know:
– How good AI can make your game better
– How to use AI in an MMO environment
“Reducing the world to mathematical equations!”
What makes a game a game?
“A game is
a series of
interesting
choices.”
- Sid Meier
“Reducing the world to mathematical equations!”
In the beginning…
• Early games were entirely
played against the computer.
• AI sucked
• Choices were rudimentary
• Problem-solving was simplistic.
“Reducing the world to mathematical equations!”
1-Player Games w/Multi-player Component
• People played against each other
more than computer
• Game won’t sell without multi-
player
• 1-player campaign often
neglected
• “I love Halo 3… but I’ve never
played the campaign.”
“Reducing the world to mathematical equations!”
Multiplayer Co-Op
• People prefer playing with other people
– Interactivity
– Teamwork (AI allies still not up to par)
– Solving problems together
“Reducing the world to mathematical equations!”
The Draw of PvP
• People prefer playing against other people
– Difficulty of opponents
– Adaptability of opponents
– Dynamicity (e.g. the unexpected)
– Solving problems together
“Reducing the world to mathematical equations!”
The Necessity of PvE
• Beyond Game Mechanics
– Environments
– Weapons
– Characters
• World Immersion
– Who is going to role-play
the dragon?
– The harmless little bunny?
– The slime creature?
“Reducing the world to mathematical equations!”
AI is Your World!
Boring AI = Boring World
Deep AI = Immersive World
Repetitive AI = Monotonous World
Dynamic AI = Dynamic World
“Reducing the world to mathematical equations!”
PvP vs. PvE
PvP PvE
• Difficult • Difficult
Simple
• Adaptable • Rigid
Adaptable
• Dynamic • Dynamic
Predictable
• Necessitates ongoing • Necessitates and repeat
“Solve Once” ongoing
problem-solving problem-solving
So how do we do it?
“Reducing the world to mathematical equations!”
Making PvE feel like PvP
• Single-player games have been improving their AI
to generate a PvP-like feel
• What techniques can we import from single-player
games into MMOs?
– What effect does that have on the player’s individual
experience?
– What effect does that have on the players working
together?
“Reducing the world to mathematical equations!”
AI Techniques
By Genre By Concept
• Shooter • Behavioral
• RPG • Tactical
• Strategy • Strategic
• Simulation
• Economic
“Reducing the world to mathematical equations!”
AI Techniques
By Genre By Concept
• Shooter • Behavioral
• RPG • Tactical
• Strategy • Strategic
• Simulation
• Economic
“Reducing the world to mathematical equations!”
Behavioral AI
• How does the NPC make
decisions?
– Idle behaviors
– When to attack
– Who to attack
– How to attack
“Reducing the world to mathematical equations!”
When to Attack
• Generating “Aggro”
– Distance
– Environment Threshold Triggers
– Line of Sight
• Well documented by the public
– Attack happens when the player(s) want it to
– Removes sense of enemy’s autonomy
“Reducing the world to mathematical equations!”
Who to Attack
• Nearest opponent
• Strongest opponent
• Well documented by the public
– Attack is against whom the player(s) expect
– Attack is against whom the player(s) want
– Removes sense of enemy’s autonomy
“Reducing the world to mathematical equations!”
How to Attack
• Primary attack most of the time
• After delay of x, use secondary attack
• In given situation, use special attack
• Well documented by the public
– Attack happens how the player(s) expect it to
– Removes sense of enemy’s dynamicity
“Reducing the world to mathematical equations!”
“Reducing the world to mathematical equations!”
“Reducing the world to mathematical equations!”
“Reducing the world to mathematical equations!”
“Reducing the world to mathematical equations!”
“Reducing the world to mathematical equations!”
“Reducing the world to mathematical equations!”
“Reducing the world to mathematical equations!”
“Reducing the world to mathematical equations!”
“Reducing the world to mathematical equations!”
“Reducing the world to mathematical equations!”
“Reducing the world to mathematical equations!”
“Reducing the world to mathematical equations!”
“Reducing the world to mathematical equations!”
“Reducing the world to mathematical equations!”
“Reducing the world to mathematical equations!”
“Reducing the world to mathematical equations!”
“Reducing the world to mathematical equations!”
“Reducing the world to mathematical equations!”
“Reducing the world to mathematical equations!”
“Reducing the world to mathematical equations!”
“Reducing the world to mathematical equations!”
“Reducing the world to mathematical equations!”
“Reducing the world to mathematical equations!”
“Reducing the world to mathematical equations!”
“Reducing the world to mathematical equations!”
“Reducing the world to mathematical equations!”
“Reducing the world to mathematical equations!”
“Reducing the world to mathematical equations!”
“Reducing the world to mathematical equations!”
“Reducing the world to mathematical equations!”
“Reducing the world to mathematical equations!”
“Reducing the world to mathematical equations!”
“Reducing the world to mathematical equations!”
“Reducing the world to mathematical equations!”
“Reducing the world to mathematical equations!”
“Reducing the world to mathematical equations!”
“Reducing the world to mathematical equations!”
“Reducing the world to mathematical equations!”
“Reducing the world to mathematical equations!”
“Reducing the world to mathematical equations!”
“Reducing the world to mathematical equations!”
“Reducing the world to mathematical equations!”
“Reducing the world to mathematical equations!”
“Reducing the world to mathematical equations!”
3-tier Hierarchy
Strategic
Goal Manager Goal
Tactical Tactical
Manager Manager
Agent Agent Agent Agent Goal Goal Agent Agent Agent Agent
Tactical Tactical
Manager Manager
Agent Agent Agent Agent Agent Agent Agent Agent
“Reducing the world to mathematical equations!”
Using Influence Maps
• Store relevant data in underlying grid structure
• Periodically update the data map
• Propagate information about individual objects to
surrounding squares
• Aggregate the data to yield a broad representation
• Different influence maps can be used in conjunction
with one another
“Reducing the world to mathematical equations!”
Strategic Disposition
B
A
“Reducing the world to mathematical equations!”
Strategic Disposition
B
A
“Reducing the world to mathematical equations!”
Strategic Disposition
B
A
“Reducing the world to mathematical equations!”
Strategic Disposition
B
A
“Reducing the world to mathematical equations!”
How does this look to the players?
• Requires communication among players:
– “There are continual raids on the northern road.”
– “We should take the southern road instead.”
– “We should send patrols out along the northern road to
keep it open.”
• Continually dynamic:
– “The orcs have figured out that we are using the
southern road instead.”
“Reducing the world to mathematical equations!”
Quest Givers
• Information can be kept on:
– Movements of NPCs and monsters
– Significant events in the world
• Quest Givers can use dynamic information from the
world to notify players of…
– Threats to avoid
– Challenges to overcome
“Reducing the world to mathematical equations!”
Strategic Disposition
The orcs have
Fort
gathered…
west of town,
near the river.
A
“Reducing the world to mathematical equations!”
Strategic Disposition
The orcs have
Fort
regrouped…
west of the fort,
east of the river.
A
“Reducing the world to mathematical equations!”
Strategic Disposition
Fort
A
The orcs have
moved…
north of town,
near the fort.
“Reducing the world to mathematical equations!”
How does this look to the players?
• “There are groups of them moving methodically
through the outlying villages.”
• “They have our city surrounded.”
• “Their other groups are coming to the aid of the
army we just routed.”
• “There is a group trying to cut off our retreat back to
the fort!”
“Reducing the world to mathematical equations!”
Other Uses
• Big Bad Dragon in the mountains
– Too many players hunting the
dragon
– Moves away from the players to
some hills
– Now feasting on Farmer Ted’s cows
– Quest giver tells you to help Farmer
Ted
“Reducing the world to mathematical equations!”
Other Uses
• Living Areas
– Moving toward player areas
– Moving away from player areas
– Moving towards food prey
– Moving away from predators
“Reducing the world to mathematical equations!”
Sooo… what have we learned?
• People like playing against challenging opponents
• Playing against challenging, dynamic, adaptive
opponents forces the players to communicate and
work together
• AI can be designed to be challenging in similar
ways to human opponents
• By using advanced AI techniques in MMOs, we can
create more engaging environments for our players
to thrive in
“Reducing the world to mathematical equations!”
How does this change things
for our players?
• Identify differences in enemy behavior
• Communicate what they see to each other
• Communicate their personal needs (“Cover me!”)
• Formulate cooperative plans
• Execute plans together
• Adapt those plans to account for changing
circumstances
“Reducing the world to mathematical equations!”
Dave Mark
President & Lead Designer
Intrinsic Algorithm LLC
Dave@IntrinsicAlgorithm.com
www.IntrinsicAlgorithm.com
“Reducing the world to mathematical equations!”