Download presentation

Presentation is loading. Please wait.

Published byKeaton Onley Modified over 2 years ago

1
“Reducing the world to mathematical equations!” Cover Me! Promoting MMO Player Interaction Through Advanced AI Dave Mark President & Lead Designer Intrinsic Algorithm LLC

2
“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

3
“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

4
“Reducing the world to mathematical equations!” What makes a game a game? “A game is a series of interesting choices.” - Sid Meier

5
“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.

6
“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.”

7
“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

8
“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 Replayability!

9
“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?

10
“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

11
“Reducing the world to mathematical equations!” 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
“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?

13
“Reducing the world to mathematical equations!” AI Techniques By Genre Shooter RPG Strategy By Concept Behavioral Tactical Strategic Simulation Economic

14
“Reducing the world to mathematical equations!” AI Techniques By Genre Shooter RPG Strategy By Concept Behavioral Tactical Strategic Simulation Economic Multiple vs. Multiple

15
“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

16
“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

17
“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

18
“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

19
“Reducing the world to mathematical equations!” 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
“Reducing the world to mathematical equations!” What is your reaction? Want to pet Want to meet Just curious Annoyed Want to kick Want to run screaming

21
“Reducing the world to mathematical equations!” Want to pet Want to meet Just curious Annoyed Want to kick Want to run screaming Now what is your reaction?

22
“Reducing the world to mathematical equations!” Varieties of Reactions

23
“Reducing the world to mathematical equations!” Same Model for All Agents Extreme Reactions

24
“Reducing the world to mathematical equations!” Varieties of Reactions Differences Exist Don’t 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
“Reducing the world to mathematical equations!” Know when to walk away… Design Decision: “Enemies don’t 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
“Reducing the world to mathematical equations!” Know when to walk away…

27
“Reducing the world to mathematical equations!” Know when to walk away… How many on my side are still fighting? 8 How many of my enemies are still fighting? 5 1.6

28
“Reducing the world to mathematical equations!” Know when to walk away… PercentChance = (4 – Ratio) 3 / (4 3 )

29
“Reducing the world to mathematical equations!” Know when to walk away… PercentChance = (4 – Ratio) 4 / (4 4 ) PercentChance = (4 – 1.6) 4 / (4 4 ) PercentChance = 13%

30
“Reducing the world to mathematical equations!” Know when to walk away…

31
“Reducing the world to mathematical equations!” Know when to walk away… How many on my side are still fighting? 7 How many of my enemies are still fighting? 5 1.4

32
“Reducing the world to mathematical equations!” Know when to walk away… PercentChance = (4 – Ratio) 4 / (4 4 ) PercentChance = (4 – 1.4) 4 / (4 4 ) PercentChance = 18%

33
“Reducing the world to mathematical equations!” Know when to walk away… PercentChance = (4 × Ratio) 4 / (4 4 )

34
“Reducing the world to mathematical equations!” Know when to walk away…

35
“Reducing the world to mathematical equations!” Know when to walk away… PercentChance = ( ( MaxRatio – Ratio ) k × MaxPct ) / (MaxRatio k ) MaxPctk In Field1.004 Near Base0.756 In Base0.508

36
“Reducing the world to mathematical equations!” Know when to walk away… ( ( 4 – Ratio ) 4 × 1.00 ) / ( 4 4 ) ( ( 4 – Ratio ) 6 × 0.75 ) / ( 4 6 ) ( ( 4 – Ratio ) 8 × 0.50 ) / ( 4 8 )

37
“Reducing the world to mathematical equations!” 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
“Reducing the world to mathematical equations!” Know when to walk away… Number of Allies Number of Enemies Threat Ratio My Health Proximity to Leader Strength of Allies Strength of Enemies Allied StrengthEnemy Strength My Morale Retreat % Proximity to Base Urgency “Compartmentalized Confidence”

39
“Reducing the world to mathematical equations!” How does this look to the players? Enemies aren’t 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
“Reducing the world to mathematical equations!” More than “Fight or Flight” Fight normally Flee Charge

41
“Reducing the world to mathematical equations!” More than “Fight or Flight”

42
“Reducing the world to mathematical equations!” 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
“Reducing the world to mathematical equations!” More than “Fight or Flight”

44
“Reducing the world to mathematical equations!” More than “Fight or Flight”

45
“Reducing the world to mathematical equations!” More than “Fight or Flight” “Normal”“Defensive” 21% 42%

46
“Reducing the world to mathematical equations!” How does this look to the players? Not predictable Reasonable Causes us to have to react to his reaction

47
“Reducing the world to mathematical equations!” Target Selection Who should I attack? –Closest enemy –Biggest threat (highest DPS) –Weakest link (least health) –Most valuable (healer helping the other enemies)

48
“Reducing the world to mathematical equations!” Shoot that @$&%#!!

49
“Reducing the world to mathematical equations!” Shoot that @$&%#!!

50
“Reducing the world to mathematical equations!” Shoot that @$&%#!!

51
“Reducing the world to mathematical equations!” Shoot that @$&%#!!

52
“Reducing the world to mathematical equations!” 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
“Reducing the world to mathematical equations!” Tactical Manager Agent Tactical Manager

54
“Reducing the world to mathematical equations!” 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
“Reducing the world to mathematical equations!” Protecting High-Value Units/Points Tactical Manager

56
“Reducing the world to mathematical equations!” Protecting High-Value Units/Points Tactical Manager

57
“Reducing the world to mathematical equations!” Protecting High-Value Units/Points Tactical Manager

58
“Reducing the world to mathematical equations!” Protecting High-Value Units/Points

59
“Reducing the world to mathematical equations!” Protecting High-Value Units/Points Flanking!!!

60
“Reducing the world to mathematical equations!” How does this look to the players? Enemies react to our positioning –“They’re moving to block us.” Enemies react to each others’ actions –“They’re pulling back and closing ranks!” Enemies dynamically allocate their own resources as a cohesive unit –“OK… he saw me coming around the side.”

61
“Reducing the world to mathematical equations!” 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
“Reducing the world to mathematical equations!” Strategy Agent Tactical Manager Order

63
“Reducing the world to mathematical equations!” 3-tier Hierarchy Agent Tactical Manager Agent Tactical Manager Agent Tactical Manager Strategic Manager Agent Tactical Manager Goal

64
“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

65
“Reducing the world to mathematical equations!” Strategic Disposition A B

66
“Reducing the world to mathematical equations!” Strategic Disposition A B

67
“Reducing the world to mathematical equations!” Strategic Disposition A B

68
“Reducing the world to mathematical equations!” Strategic Disposition A B

69
“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.”

70
“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

71
“Reducing the world to mathematical equations!” Strategic Disposition A Fort The orcs have gathered… west of town, near the river.

72
“Reducing the world to mathematical equations!” Strategic Disposition A Fort The orcs have regrouped… west of the fort, east of the river.

73
“Reducing the world to mathematical equations!” Strategic Disposition Fort A The orcs have moved… north of town, near the fort.

74
“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!”

75
“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 Influence Map Event Log Influence Map

76
“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 Influence Map

77
“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

78
“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

79
“Reducing the world to mathematical equations!” Dave Mark President & Lead Designer Intrinsic Algorithm LLC Dave@IntrinsicAlgorithm.com www.IntrinsicAlgorithm.com

Similar presentations

© 2017 SlidePlayer.com Inc.

All rights reserved.

Ads by Google