Cover Me! Promoting MMO Player Interaction Through Advanced AI - PowerPoint PPT Presentation

1 / 79
About This Presentation
Title:

Cover Me! Promoting MMO Player Interaction Through Advanced AI

Description:

Cover Me! Promoting MMO Player Interaction Through Advanced AI Dave Mark President & Lead Designer Intrinsic Algorithm LLC Dave Mark President & Lead Designer of ... – PowerPoint PPT presentation

Number of Views:161
Avg rating:3.0/5.0
Slides: 80
Provided by: DaveM170
Category:

less

Transcript and Presenter's Notes

Title: Cover Me! Promoting MMO Player Interaction Through Advanced AI


1
Cover Me!Promoting MMO Player InteractionThrough
Advanced AI
  • Dave MarkPresident Lead DesignerIntrinsic
    Algorithm LLC

2
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

3
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

4
What makes a game a game?
A game isa series of interesting choices. -
Sid Meier
5
In the beginning
  • Early games were entirely played against the
    computer.
  • AI sucked
  • Choices were rudimentary
  • Problem-solving was simplistic.

6
1-Player Games w/Multi-player Component
  • People played against each other more than
    computer
  • Game wont sell without multi-player
  • 1-player campaign often neglected
  • I love Halo 3 but Ive never played the
    campaign.

7
Multiplayer Co-Op
  • People prefer playing with other people
  • Interactivity
  • Teamwork (AI allies still not up to par)
  • Solving problems together

8
The Draw of PvP
  • People prefer playing against other people
  • Difficulty of opponents
  • Adaptability of opponents
  • Dynamicity (e.g. the unexpected)
  • Solving problems together

Replayability!
9
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?

10
AI is Your World!
  • Boring AI Boring World
  • Deep AI Immersive World
  • Repetitive AI Monotonous World
  • Dynamic AI Dynamic World

11
PvP vs. PvE
  • PvP
  • Difficult
  • Adaptable
  • Dynamic
  • Necessitates ongoing problem-solving
  • PvE
  • Simple
  • Rigid
  • Predictable
  • Solve Once and repeat
  • PvE
  • Difficult
  • Adaptable
  • Dynamic
  • Necessitates ongoing problem-solving

So how do we do it?
12
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 players
    individual experience?
  • What effect does that have on the players working
    together?

13
AI Techniques
  • By Genre
  • Shooter
  • RPG
  • Strategy
  • By Concept
  • Behavioral
  • Tactical
  • Strategic
  • Simulation
  • Economic

14
AI Techniques
  • By Genre
  • Shooter
  • RPG
  • Strategy
  • By Concept
  • Behavioral
  • Tactical
  • Strategic
  • Simulation
  • Economic

Multiple vs. Multiple
15
Behavioral AI
  • How does the NPC make decisions?
  • Idle behaviors
  • When to attack
  • Who to attack
  • How to attack

16
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 enemys autonomy

17
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 enemys autonomy

18
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 enemys dynamicity

19
Effect on the Players
  • On the Individual Player
  • Calculatable
  • Predictable
  • Boring
  • On the Group
  • No need for interaction
  • Read the script
  • Play your part

20
What is your reaction?
  • Want to pet
  • Want to meet
  • Just curious
  • Annoyed
  • Want to kick
  • Want to run screaming

21
Now what is your reaction?
  • Want to pet
  • Want to meet
  • Just curious
  • Annoyed
  • Want to kick
  • Want to run screaming

22
Varieties of Reactions
23
Same Model for All Agents
Extreme Reactions
24
Varieties of Reactions
  • Differences Exist
  • Dont need to know why
  • Need to simulate that difference do exist
  • Not completely random selection
  • Must be reasonable
  • Can be simulated with weighted randoms

25
Know when to walk away
  • Design Decision Enemies dont always fight to
    the death
  • Enemies can sometimes retreat
  • Flat chance
  • Is random therefore looks random
  • Not realistic
  • Situational random
  • Based on circumstances
  • Circumstances are flexible and dynamic

26
Know when to walk away
27
Know when to walk away
How many on my side are still fighting?
8
1.6
5
How many of my enemies are still fighting?
28
Know when to walk away
  • PercentChance (4 Ratio)3 / (43)

29
Know when to walk away
  • PercentChance (4 Ratio)4 / (44)

PercentChance (4 1.6)4 / (44)
PercentChance 13
30
Know when to walk away
31
Know when to walk away
How many on my side are still fighting?
7
1.4
5
How many of my enemies are still fighting?
32
Know when to walk away
  • PercentChance (4 Ratio)4 / (44)

PercentChance (4 1.4)4 / (44)
PercentChance 18
33
Know when to walk away
  • PercentChance (4 Ratio)4 / (44)

34
Know when to walk away
35
Know when to walk away
  • PercentChance
  • ( ( MaxRatio Ratio )k MaxPct ) / (MaxRatio
    k )

MaxPct k
In Field 1.00 4
Near Base 0.75 6
In Base 0.50 8
36
Know when to walk away
( ( 4 Ratio )4 1.00 ) / ( 44 )
( ( 4 Ratio )6 0.75 ) / ( 46 )
( ( 4 Ratio )8 0.50 ) / ( 48 )
37
Know when to walk away
  • Factors to Consider
  • Number of allies
  • Number of enemies
  • Proximity to Base
  • Strength of allies
  • Strength of enemies
  • My own health
  • Proximity of my leader

38
Know when to walk away
Numberof Allies
Numberof Enemies
Strengthof Allies
Strengthof Enemies
Allied Strength
Enemy Strength
Proximityto Leader
My Health
Proximityto Base
Threat Ratio
My Morale
Urgency
Compartmentalized Confidence
Retreat
39
How does this look to the players?
  • Enemies arent completely fearless
  • They are slightly unpredictable
  • They are still reasonable
  • Curiosity Where is he going?
  • If we show force, they might break and run.
  • If we back them up, they are more aggressive.
  • We have to react to their reactions.

40
More than Fight or Flight
  • Fight normally
  • Flee
  • Charge

41
More than Fight or Flight
42
More than Fight or Flight
  • Fight
  • Melee weapon
  • Ranged weapon
  • Special rare weapon
  • Advance
  • Press forward
  • Berserker charge
  • Retreat
  • Fighting withdrawal
  • Find Cover
  • Organized pull back
  • Flee in abject terror
  • Surrender

43
More than Fight or Flight
44
More than Fight or Flight
45
More than Fight or Flight
Normal
Defensive
21
42
46
How does this look to the players?
  • Not predictable
  • Reasonable
  • Causes us to have to react to his reaction

47
Target Selection
  • Who should I attack?
  • Closest enemy
  • Biggest threat (highest DPS)
  • Weakest link (least health)
  • Most valuable (healer helping the other enemies)

48
Shoot that _at_!!
49
Shoot that _at_!!
50
Shoot that _at_!!
51
Shoot that _at_!!
52
Tactics
  • Multiple NPCs working in a coordinated plan
  • Formations
  • Protecting high-value units (fighters protecting
    a mage)
  • Adequate defense coverage of a point
  • Coordinated movement
  • Flanking
  • Covering fire
  • Leapfrogging advance

53
Tactical Manager
TacticalManager
Agent
Agent
Agent
Agent
54
Tactical Manager
  • Has Rudimentary Goals
  • Protect X
  • Attack Y
  • Situation Analysis
  • Reactive
  • Responds to players actions
  • Responds to situation changes
  • Proactive
  • Looks for opportunities
  • Running a play

55
Protecting High-Value Units/Points
TacticalManager
56
Protecting High-Value Units/Points
TacticalManager
57
Protecting High-Value Units/Points
TacticalManager
58
Protecting High-Value Units/Points
59
Protecting High-Value Units/Points
Flanking!!!
60
How does this look to the players?
  • Enemies react to our positioning
  • Theyre moving to block us.
  • Enemies react to each others actions
  • Theyre pulling back and closing ranks!
  • Enemies dynamically allocate their own resources
    as a cohesive unit
  • OK he saw me coming around the side.

61
Strategy
  • The entire body of a certain type of enemy
    working together to accomplish an over-arching
    goal
  • Super-set of tactics
  • Strategy to tactics tactical to individual

62
Strategy
TacticalManager
Order
Order
Order
Order
Agent
Agent
Agent
Agent
63
3-tier Hierarchy
StrategicManager
Goal
Goal
Goal
Goal
64
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

65
Strategic Disposition
B
A
66
Strategic Disposition
B
A
67
Strategic Disposition
B
A
68
Strategic Disposition
B
A
69
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.

70
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

71
Strategic Disposition
The orcs have gathered west of town, near the
river.
Fort
A
72
Strategic Disposition
The orcs have regrouped west of the fort, east
of the river.
Fort
A
73
Strategic Disposition
Fort
A
The orcs have moved north of town, near the fort.
74
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!

75
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 Teds cows
  • Quest giver tells you to help Farmer Ted

Influence Map
Influence Map
Influence Map
Event Log
76
Other Uses
  • Living Areas
  • Moving toward player areas
  • Moving away from player areas
  • Moving towards food prey
  • Moving away from predators

Influence Map
Influence Map
Influence Map
Influence Map
77
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

78
How does this change thingsfor 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

79
  • Dave MarkPresident Lead DesignerIntrinsic
    Algorithm LLC

Dave_at_IntrinsicAlgorithm.com
www.IntrinsicAlgorithm.com
Write a Comment
User Comments (0)
About PowerShow.com