SlideShare une entreprise Scribd logo
1  sur  39
Killzone’s AI:
Dynamic Procedural Tactics




Arjen Beij & Remco Straatman

 August 31, 2005                          Killzone’s AI:
 Game Developer Conference Europe   Dynamic Procedural Tactics   Guerrilla Games - 1
Contents
 Dynamic procedural tactics

    Position picking
    Position Evaluation functions
    Tactical path-finding
    Suppression Fire

 World Representation

 Conclusions

August 31, 2005                          Killzone’s AI:
Game Developer Conference Europe   Dynamic Procedural Tactics   Guerrilla Games - 2
Dynamic Procedural Tactics
Dynamic procedural tactics =
 Having the rules and concepts to
  dynamically compute
  solutions to tactical problems




August 31, 2005                          Killzone’s AI:
Game Developer Conference Europe   Dynamic Procedural Tactics   Guerrilla Games - 3
AI Tactics
Common approach
 Level designer placed hints
 Triggered scripted behavior




August 31, 2005                          Killzone’s AI:
Game Developer Conference Europe   Dynamic Procedural Tactics   Guerrilla Games - 4
Dynamic Procedural Tactics
Game-play benefits
 Works for any number of players
 Fights anywhere

Production benefits
 Reuse of AI behavior
 Quick level prototyping
 Roll out improvements game wide


August 31, 2005                          Killzone’s AI:
Game Developer Conference Europe   Dynamic Procedural Tactics   Guerrilla Games - 5
Position Picking                                  Outside
                                                                           Wall
                                                       danger zone
                                                                          Hugging
                                                                                    Nearby
 Picking a good position                                       Partial
                                                                                    Cover
                                                                Cover
  is half the battle
  in ‘fire & maneuver’ combat                                   Line of Fire      Proximity

                                                                               Preferred
                                                                                Range
 Account for dozens of
  (dynamic) factors

 How to pick that position?



August 31, 2005                          Killzone’s AI:
Game Developer Conference Europe   Dynamic Procedural Tactics                  Guerrilla Games - 6
Position Evaluation Functions

Determining the most appropriate position
 Given n potential destinations
 To compare positions, need a single value

Use position evaluation function
 Weighted sum
 Combines basic factors


August 31, 2005                          Killzone’s AI:
Game Developer Conference Europe   Dynamic Procedural Tactics   Guerrilla Games - 7
Example: Picking an Attack
       Position 1
Example: Picking an attack position
 Multiple threats
   Attack primary threat
   Cover from other threats preferred
 Partial cover from primary
 Proximity
 Preferred fighting range


                          Combine into a single value per position
August 31, 2005                          Killzone’s AI:
Game Developer Conference Europe   Dynamic Procedural Tactics   Guerrilla Games - 8
Example: Picking an Attack
       Position 2




               Initial situation: three threats, some walls and a waypoint graph

August 31, 2005                             Killzone’s AI:
Game Developer Conference Europe      Dynamic Procedural Tactics                   Guerrilla Games - 9
Example: Picking an Attack
       Position 3




              Selected nearby waypoints, annotated with proximity (weight 20)

August 31, 2005                            Killzone’s AI:
Game Developer Conference Europe     Dynamic Procedural Tactics                 Guerrilla Games - 10
Example: Picking an Attack
       Position 4




         Annotations for LoF to primary threat (40 if partial cover, 20 otherwise)

August 31, 2005                            Killzone’s AI:
Game Developer Conference Europe     Dynamic Procedural Tactics                 Guerrilla Games - 11
Example: Picking an Attack
       Position 5




                   Annotations for cover from secondary threats (weight 20)

August 31, 2005                             Killzone’s AI:
Game Developer Conference Europe      Dynamic Procedural Tactics              Guerrilla Games - 12
Example: Picking an Attack
       Position 6




              Annotations positions inside preferred fighting range (weight 10)

August 31, 2005                            Killzone’s AI:
Game Developer Conference Europe     Dynamic Procedural Tactics                   Guerrilla Games - 13
Example: Picking an Attack
       Position 7




                                    +
          Adding up all the annotations yields the most promising attack position

August 31, 2005                            Killzone’s AI:
Game Developer Conference Europe     Dynamic Procedural Tactics                Guerrilla Games - 14
Example: Picking an Attack
       Position 8
              Single threat                                 Multiple threats




August 31, 2005                          Killzone’s AI:
Game Developer Conference Europe   Dynamic Procedural Tactics           Guerrilla Games - 15
Configurable and Dynamic

                                                                           Personality:
Configurable                        Action:
                                                                          What factors are
                             What kind of position?
                                                                           important?




                                     Position evaluation function


    Dynamic                    Current situation:                             Squad:
                             Where are the threats?                    Additional constraints




 August 31, 2005                                Killzone’s AI:
 Game Developer Conference Europe         Dynamic Procedural Tactics             Guerrilla Games - 16
Tactical Path-finding
Shortest paths often aren’t tactically sound




                                   1                                2                          3
For example:
1. Paths traversing friendly lines-of-fire
2. Paths ignoring cover from hostile fire
3. Paths leaving the AI exposed unnecessarily
August 31, 2005                              Killzone’s AI:
Game Developer Conference Europe       Dynamic Procedural Tactics       Guerrilla Games - 17
Tactical Path-finding
Position evaluations functions in path finding




 In A*, add to the costs of traveling a link:
    Traversing a friendly lines-of-fire
    Being under fire from one or more threats

August 31, 2005                          Killzone’s AI:
Game Developer Conference Europe   Dynamic Procedural Tactics   Guerrilla Games - 18
Example: Tactical Path-finding
       1




             Costs to travel each waypoint link, and the resulting shortest path.

August 31, 2005                             Killzone’s AI:
Game Developer Conference Europe      Dynamic Procedural Tactics                    Guerrilla Games - 19
Example: Tactical Path-finding
       2




      Link costs now reflect being under fire, and the corresponding tactical path.

August 31, 2005                           Killzone’s AI:
Game Developer Conference Europe    Dynamic Procedural Tactics                Guerrilla Games - 20
Example: Tactical Path-finding
       3 B                  B



                                     T                                                 T




                            shortest path       versus         tactical path




                     A                                                     A

August 31, 2005                                Killzone’s AI:
Game Developer Conference Europe         Dynamic Procedural Tactics            Guerrilla Games - 21
Suppression Fire
Suppression fire:
 Fire near hidden threats to pin them down



Not:
 Firing into the wall behind which the threat is
  hiding
 Firing into locations the threat cannot reach


August 31, 2005                          Killzone’s AI:
Game Developer Conference Europe   Dynamic Procedural Tactics   Guerrilla Games - 22
Example: Suppression Fire 1
What we want
 Deny the threat use of good attack positions
 By shooting bursts at these positions

How we implement it using position evaluation
 Evaluate threat’s attack positions
  from his perspective
 Select those attack positions we can fire into


August 31, 2005                          Killzone’s AI:
Game Developer Conference Europe   Dynamic Procedural Tactics   Guerrilla Games - 23
Example: Suppression Fire 2




         A hidden threat (left), attacker (right) and the intended suppression fire.
August 31, 2005                             Killzone’s AI:
Game Developer Conference Europe      Dynamic Procedural Tactics                 Guerrilla Games - 24
Example: Suppression Fire 3




       Selecting the waypoints in close proximity to the presumed threat position
August 31, 2005                           Killzone’s AI:
Game Developer Conference Europe    Dynamic Procedural Tactics               Guerrilla Games - 25
Example: Suppression Fire 4




        Annotations (20, 30) for offering the threat a LoF to the attacker (right).

August 31, 2005                            Killzone’s AI:
Game Developer Conference Europe     Dynamic Procedural Tactics                  Guerrilla Games - 26
Example: Suppression Fire 5




  Annotation of 20 for positions offering the threat nearby cover from the attacker.

August 31, 2005                          Killzone’s AI:
Game Developer Conference Europe   Dynamic Procedural Tactics                 Guerrilla Games - 27
Example: Suppression Fire 6




           Selecting those positions with score     40 yields the suppress targets.

August 31, 2005                            Killzone’s AI:
Game Developer Conference Europe     Dynamic Procedural Tactics                  Guerrilla Games - 28
Example: Suppression Fire 7




                   Merging suppression targets that overlap in yaw and pitch.

August 31, 2005                              Killzone’s AI:
Game Developer Conference Europe       Dynamic Procedural Tactics               Guerrilla Games - 29
Example: Suppression Fire 8




             The attacker’s view of suppression targets near the hidden threat.

August 31, 2005                            Killzone’s AI:
Game Developer Conference Europe     Dynamic Procedural Tactics                   Guerrilla Games - 30
Example: Suppression Fire 9




                      attacker PoV                                target PoV

August 31, 2005                            Killzone’s AI:
Game Developer Conference Europe     Dynamic Procedural Tactics                Guerrilla Games - 31
World Representation
Pre-conditions for dynamic procedural tactics
1. Navigation info, with fine enough resolution
   to represent cover locations
     Waypoints, nav meshes, cells: any will do

2. Fast Line-of-Sight/Line-of-fire checks




August 31, 2005                          Killzone’s AI:
Game Developer Conference Europe   Dynamic Procedural Tactics   Guerrilla Games - 32
Lines-of-Fire Representation 1
Tactical decisions
 Involve hundreds of LoF checks
 Ray casts typically expensive

Use a small pre-computed look-up table
 Multiple stances, minor movement
 Pessimistic about cover
 Polar representation

Killzone’s LoF table for 4000 waypoints: 64KB
August 31, 2005                          Killzone’s AI:
Game Developer Conference Europe   Dynamic Procedural Tactics   Guerrilla Games - 33
Lines-of-Fire Representation 2
                                                                Compression:
                                                                For every waypoint, per radial
                                                                sector, record the largest
                                                                distance from where an attacker
                                                                within that sector can fire at the
                                                                waypoint.

                                                                Inaccurate, but consistent.




August 31, 2005                          Killzone’s AI:
Game Developer Conference Europe   Dynamic Procedural Tactics                     Guerrilla Games - 34
Conclusions
Killzone was released for PS2 late 2004
 Tactical position picking
 Tactical path-finding
 Suppression by infantry and mounted MGs
 Indirect fire for hand grenades and tank shells
 Single and multiplayer AI

 Up to 14 AI characters fighting simultaneously


August 31, 2005                          Killzone’s AI:
Game Developer Conference Europe   Dynamic Procedural Tactics   Guerrilla Games - 35
Conclusions - Killzone’s AI
Pros
 Share/reuse behavior across games
 Quick level prototyping
 Can be combined with scripting
 Fights anywhere, anytime, SP or MP

Cons
 Harder to control in detail
 Harder to test

August 31, 2005                          Killzone’s AI:
Game Developer Conference Europe   Dynamic Procedural Tactics   Guerrilla Games - 36
Conclusions – Game AI
Position evaluation functions are powerful
 Robust decisions with many (dynamic) inputs
 Different behavior through configuration
 Many tactics can be implemented through
  position evaluation

Dynamic procedural tactics
 Responsive AI behavior
 Within reach of many games

August 31, 2005                          Killzone’s AI:
Game Developer Conference Europe   Dynamic Procedural Tactics   Guerrilla Games - 37
Further Info
Off-line
 Our proceedings paper provides more details, notably on the terrain
   representation and grenade handling

 Lars Lidén, Strategic and Tactical Reasoning with Waypoints in AI
  Game Programming Wisdom, Charles River Media, 2002
 Paul Tozour, Using a Spatial Database for Runtime Spatial Analysis
  in AI Game Programming Wisdom 2, Charles River Media, 2003
 William van der Sterren, Tactical Path-Finding with A* in
  Game Programming Gems 3, Charles River Media, 2002

On-line
 William van der Sterren’s collection of links to on-line papers at:
  www.cgf-ai.com/links.html

August 31, 2005                          Killzone’s AI:
Game Developer Conference Europe   Dynamic Procedural Tactics   Guerrilla Games - 38
Questions?




August 31, 2005                          Killzone’s AI:
Game Developer Conference Europe   Dynamic Procedural Tactics   Guerrilla Games - 39

Contenu connexe

Tendances

Player Traversal Mechanics in the Vast World of Horizon Zero Dawn
Player Traversal Mechanics in the Vast World of Horizon Zero DawnPlayer Traversal Mechanics in the Vast World of Horizon Zero Dawn
Player Traversal Mechanics in the Vast World of Horizon Zero DawnGuerrilla
 
Multiplayer Game Sync Techniques through CAP theorem
Multiplayer Game Sync Techniques through CAP theoremMultiplayer Game Sync Techniques through CAP theorem
Multiplayer Game Sync Techniques through CAP theoremSeungmo Koo
 
Practical Occlusion Culling on PS3
Practical Occlusion Culling on PS3Practical Occlusion Culling on PS3
Practical Occlusion Culling on PS3Guerrilla
 
게임제작개론 8
게임제작개론 8게임제작개론 8
게임제작개론 8Seokmin No
 
Crysis Next-Gen Effects (GDC 2008)
Crysis Next-Gen Effects (GDC 2008)Crysis Next-Gen Effects (GDC 2008)
Crysis Next-Gen Effects (GDC 2008)Tiago Sousa
 
Tales from the Optimization Trenches - Unite Copenhagen 2019
Tales from the Optimization Trenches - Unite Copenhagen 2019Tales from the Optimization Trenches - Unite Copenhagen 2019
Tales from the Optimization Trenches - Unite Copenhagen 2019Unity Technologies
 
Using Entity Command Buffers – Unite Copenhagen 2019
Using Entity Command Buffers – Unite Copenhagen 2019Using Entity Command Buffers – Unite Copenhagen 2019
Using Entity Command Buffers – Unite Copenhagen 2019Unity Technologies
 
Bethesda's Iterative Level Design Process for Skyrim and Fallout 3
Bethesda's Iterative Level Design Process for Skyrim and Fallout 3Bethesda's Iterative Level Design Process for Skyrim and Fallout 3
Bethesda's Iterative Level Design Process for Skyrim and Fallout 3Joel Burgess
 
Multiprocessor Game Loops: Lessons from Uncharted 2: Among Thieves
Multiprocessor Game Loops: Lessons from Uncharted 2: Among ThievesMultiprocessor Game Loops: Lessons from Uncharted 2: Among Thieves
Multiprocessor Game Loops: Lessons from Uncharted 2: Among ThievesNaughty Dog
 
OpenGL 4.4 - Scene Rendering Techniques
OpenGL 4.4 - Scene Rendering TechniquesOpenGL 4.4 - Scene Rendering Techniques
OpenGL 4.4 - Scene Rendering TechniquesNarann29
 
Scalability for All: Unreal Engine* 4 with Intel
Scalability for All: Unreal Engine* 4 with Intel Scalability for All: Unreal Engine* 4 with Intel
Scalability for All: Unreal Engine* 4 with Intel Intel® Software
 
Cerny method
Cerny methodCerny method
Cerny methodTim Holt
 
Scaling CPU Experiences: An Introduction to the Entity Component System
Scaling CPU Experiences: An Introduction to the Entity Component SystemScaling CPU Experiences: An Introduction to the Entity Component System
Scaling CPU Experiences: An Introduction to the Entity Component SystemUnity Technologies
 
Dx11 performancereloaded
Dx11 performancereloadedDx11 performancereloaded
Dx11 performancereloadedmistercteam
 
The Technology of Uncharted: Drake’s Fortune
The Technology of Uncharted: Drake’s FortuneThe Technology of Uncharted: Drake’s Fortune
The Technology of Uncharted: Drake’s FortuneNaughty Dog
 
Windows to reality getting the most out of direct3 d 10 graphics in your games
Windows to reality   getting the most out of direct3 d 10 graphics in your gamesWindows to reality   getting the most out of direct3 d 10 graphics in your games
Windows to reality getting the most out of direct3 d 10 graphics in your gameschangehee lee
 
Future Directions for Compute-for-Graphics
Future Directions for Compute-for-GraphicsFuture Directions for Compute-for-Graphics
Future Directions for Compute-for-GraphicsElectronic Arts / DICE
 
Killzone Shadow Fall: Creating Art Tools For A New Generation Of Games
Killzone Shadow Fall: Creating Art Tools For A New Generation Of GamesKillzone Shadow Fall: Creating Art Tools For A New Generation Of Games
Killzone Shadow Fall: Creating Art Tools For A New Generation Of GamesGuerrilla
 
NDC2011 - 절차적 지형과 트렌드의 추적자들
NDC2011 - 절차적 지형과 트렌드의 추적자들NDC2011 - 절차적 지형과 트렌드의 추적자들
NDC2011 - 절차적 지형과 트렌드의 추적자들Jubok Kim
 
기획자의 포트폴리오는 어떻게 써야 할까
기획자의 포트폴리오는 어떻게 써야 할까기획자의 포트폴리오는 어떻게 써야 할까
기획자의 포트폴리오는 어떻게 써야 할까Han Je Sung
 

Tendances (20)

Player Traversal Mechanics in the Vast World of Horizon Zero Dawn
Player Traversal Mechanics in the Vast World of Horizon Zero DawnPlayer Traversal Mechanics in the Vast World of Horizon Zero Dawn
Player Traversal Mechanics in the Vast World of Horizon Zero Dawn
 
Multiplayer Game Sync Techniques through CAP theorem
Multiplayer Game Sync Techniques through CAP theoremMultiplayer Game Sync Techniques through CAP theorem
Multiplayer Game Sync Techniques through CAP theorem
 
Practical Occlusion Culling on PS3
Practical Occlusion Culling on PS3Practical Occlusion Culling on PS3
Practical Occlusion Culling on PS3
 
게임제작개론 8
게임제작개론 8게임제작개론 8
게임제작개론 8
 
Crysis Next-Gen Effects (GDC 2008)
Crysis Next-Gen Effects (GDC 2008)Crysis Next-Gen Effects (GDC 2008)
Crysis Next-Gen Effects (GDC 2008)
 
Tales from the Optimization Trenches - Unite Copenhagen 2019
Tales from the Optimization Trenches - Unite Copenhagen 2019Tales from the Optimization Trenches - Unite Copenhagen 2019
Tales from the Optimization Trenches - Unite Copenhagen 2019
 
Using Entity Command Buffers – Unite Copenhagen 2019
Using Entity Command Buffers – Unite Copenhagen 2019Using Entity Command Buffers – Unite Copenhagen 2019
Using Entity Command Buffers – Unite Copenhagen 2019
 
Bethesda's Iterative Level Design Process for Skyrim and Fallout 3
Bethesda's Iterative Level Design Process for Skyrim and Fallout 3Bethesda's Iterative Level Design Process for Skyrim and Fallout 3
Bethesda's Iterative Level Design Process for Skyrim and Fallout 3
 
Multiprocessor Game Loops: Lessons from Uncharted 2: Among Thieves
Multiprocessor Game Loops: Lessons from Uncharted 2: Among ThievesMultiprocessor Game Loops: Lessons from Uncharted 2: Among Thieves
Multiprocessor Game Loops: Lessons from Uncharted 2: Among Thieves
 
OpenGL 4.4 - Scene Rendering Techniques
OpenGL 4.4 - Scene Rendering TechniquesOpenGL 4.4 - Scene Rendering Techniques
OpenGL 4.4 - Scene Rendering Techniques
 
Scalability for All: Unreal Engine* 4 with Intel
Scalability for All: Unreal Engine* 4 with Intel Scalability for All: Unreal Engine* 4 with Intel
Scalability for All: Unreal Engine* 4 with Intel
 
Cerny method
Cerny methodCerny method
Cerny method
 
Scaling CPU Experiences: An Introduction to the Entity Component System
Scaling CPU Experiences: An Introduction to the Entity Component SystemScaling CPU Experiences: An Introduction to the Entity Component System
Scaling CPU Experiences: An Introduction to the Entity Component System
 
Dx11 performancereloaded
Dx11 performancereloadedDx11 performancereloaded
Dx11 performancereloaded
 
The Technology of Uncharted: Drake’s Fortune
The Technology of Uncharted: Drake’s FortuneThe Technology of Uncharted: Drake’s Fortune
The Technology of Uncharted: Drake’s Fortune
 
Windows to reality getting the most out of direct3 d 10 graphics in your games
Windows to reality   getting the most out of direct3 d 10 graphics in your gamesWindows to reality   getting the most out of direct3 d 10 graphics in your games
Windows to reality getting the most out of direct3 d 10 graphics in your games
 
Future Directions for Compute-for-Graphics
Future Directions for Compute-for-GraphicsFuture Directions for Compute-for-Graphics
Future Directions for Compute-for-Graphics
 
Killzone Shadow Fall: Creating Art Tools For A New Generation Of Games
Killzone Shadow Fall: Creating Art Tools For A New Generation Of GamesKillzone Shadow Fall: Creating Art Tools For A New Generation Of Games
Killzone Shadow Fall: Creating Art Tools For A New Generation Of Games
 
NDC2011 - 절차적 지형과 트렌드의 추적자들
NDC2011 - 절차적 지형과 트렌드의 추적자들NDC2011 - 절차적 지형과 트렌드의 추적자들
NDC2011 - 절차적 지형과 트렌드의 추적자들
 
기획자의 포트폴리오는 어떻게 써야 할까
기획자의 포트폴리오는 어떻게 써야 할까기획자의 포트폴리오는 어떻게 써야 할까
기획자의 포트폴리오는 어떻게 써야 할까
 

Plus de Guerrilla

Horizon Zero Dawn: An Open World QA Case Study
Horizon Zero Dawn: An Open World QA Case StudyHorizon Zero Dawn: An Open World QA Case Study
Horizon Zero Dawn: An Open World QA Case StudyGuerrilla
 
Horizon Zero Dawn: A Game Design Post-Mortem
Horizon Zero Dawn: A Game Design Post-MortemHorizon Zero Dawn: A Game Design Post-Mortem
Horizon Zero Dawn: A Game Design Post-MortemGuerrilla
 
Decima Engine: Visibility in Horizon Zero Dawn
Decima Engine: Visibility in Horizon Zero DawnDecima Engine: Visibility in Horizon Zero Dawn
Decima Engine: Visibility in Horizon Zero DawnGuerrilla
 
The Real-time Volumetric Cloudscapes of Horizon Zero Dawn
The Real-time Volumetric Cloudscapes of Horizon Zero DawnThe Real-time Volumetric Cloudscapes of Horizon Zero Dawn
The Real-time Volumetric Cloudscapes of Horizon Zero DawnGuerrilla
 
The Production and Visual FX of Killzone Shadow Fall
The Production and Visual FX of Killzone Shadow FallThe Production and Visual FX of Killzone Shadow Fall
The Production and Visual FX of Killzone Shadow FallGuerrilla
 
Out of Sight, Out of Mind: Improving Visualization of AI Info
Out of Sight, Out of Mind: Improving Visualization of AI InfoOut of Sight, Out of Mind: Improving Visualization of AI Info
Out of Sight, Out of Mind: Improving Visualization of AI InfoGuerrilla
 
The Next-Gen Dynamic Sound System of Killzone Shadow Fall
The Next-Gen Dynamic Sound System of Killzone Shadow FallThe Next-Gen Dynamic Sound System of Killzone Shadow Fall
The Next-Gen Dynamic Sound System of Killzone Shadow FallGuerrilla
 
Taking Killzone Shadow Fall Image Quality Into The Next Generation
Taking Killzone Shadow Fall Image Quality Into The Next GenerationTaking Killzone Shadow Fall Image Quality Into The Next Generation
Taking Killzone Shadow Fall Image Quality Into The Next GenerationGuerrilla
 
Killzone Shadow Fall Demo Postmortem
Killzone Shadow Fall Demo PostmortemKillzone Shadow Fall Demo Postmortem
Killzone Shadow Fall Demo PostmortemGuerrilla
 
Lighting of Killzone: Shadow Fall
Lighting of Killzone: Shadow FallLighting of Killzone: Shadow Fall
Lighting of Killzone: Shadow FallGuerrilla
 
A Hierarchically-Layered Multiplayer Bot System for a First-Person Shooter
A Hierarchically-Layered Multiplayer Bot System for a First-Person ShooterA Hierarchically-Layered Multiplayer Bot System for a First-Person Shooter
A Hierarchically-Layered Multiplayer Bot System for a First-Person ShooterGuerrilla
 
Release This! Tools for a Smooth Release Cycle
Release This! Tools for a Smooth Release CycleRelease This! Tools for a Smooth Release Cycle
Release This! Tools for a Smooth Release CycleGuerrilla
 
Killzone 2 Multiplayer Bots
Killzone 2 Multiplayer BotsKillzone 2 Multiplayer Bots
Killzone 2 Multiplayer BotsGuerrilla
 
Automatic Annotations in Killzone 3 and Beyond
Automatic Annotations in Killzone 3 and BeyondAutomatic Annotations in Killzone 3 and Beyond
Automatic Annotations in Killzone 3 and BeyondGuerrilla
 
The PlayStation®3’s SPUs in the Real World: A KILLZONE 2 Case Study
The PlayStation®3’s SPUs in the Real World: A KILLZONE 2 Case StudyThe PlayStation®3’s SPUs in the Real World: A KILLZONE 2 Case Study
The PlayStation®3’s SPUs in the Real World: A KILLZONE 2 Case StudyGuerrilla
 
Practical Occlusion Culling in Killzone 3
Practical Occlusion Culling in Killzone 3Practical Occlusion Culling in Killzone 3
Practical Occlusion Culling in Killzone 3Guerrilla
 
The Rendering Technology of Killzone 2
The Rendering Technology of Killzone 2The Rendering Technology of Killzone 2
The Rendering Technology of Killzone 2Guerrilla
 
Deferred Rendering in Killzone 2
Deferred Rendering in Killzone 2Deferred Rendering in Killzone 2
Deferred Rendering in Killzone 2Guerrilla
 

Plus de Guerrilla (18)

Horizon Zero Dawn: An Open World QA Case Study
Horizon Zero Dawn: An Open World QA Case StudyHorizon Zero Dawn: An Open World QA Case Study
Horizon Zero Dawn: An Open World QA Case Study
 
Horizon Zero Dawn: A Game Design Post-Mortem
Horizon Zero Dawn: A Game Design Post-MortemHorizon Zero Dawn: A Game Design Post-Mortem
Horizon Zero Dawn: A Game Design Post-Mortem
 
Decima Engine: Visibility in Horizon Zero Dawn
Decima Engine: Visibility in Horizon Zero DawnDecima Engine: Visibility in Horizon Zero Dawn
Decima Engine: Visibility in Horizon Zero Dawn
 
The Real-time Volumetric Cloudscapes of Horizon Zero Dawn
The Real-time Volumetric Cloudscapes of Horizon Zero DawnThe Real-time Volumetric Cloudscapes of Horizon Zero Dawn
The Real-time Volumetric Cloudscapes of Horizon Zero Dawn
 
The Production and Visual FX of Killzone Shadow Fall
The Production and Visual FX of Killzone Shadow FallThe Production and Visual FX of Killzone Shadow Fall
The Production and Visual FX of Killzone Shadow Fall
 
Out of Sight, Out of Mind: Improving Visualization of AI Info
Out of Sight, Out of Mind: Improving Visualization of AI InfoOut of Sight, Out of Mind: Improving Visualization of AI Info
Out of Sight, Out of Mind: Improving Visualization of AI Info
 
The Next-Gen Dynamic Sound System of Killzone Shadow Fall
The Next-Gen Dynamic Sound System of Killzone Shadow FallThe Next-Gen Dynamic Sound System of Killzone Shadow Fall
The Next-Gen Dynamic Sound System of Killzone Shadow Fall
 
Taking Killzone Shadow Fall Image Quality Into The Next Generation
Taking Killzone Shadow Fall Image Quality Into The Next GenerationTaking Killzone Shadow Fall Image Quality Into The Next Generation
Taking Killzone Shadow Fall Image Quality Into The Next Generation
 
Killzone Shadow Fall Demo Postmortem
Killzone Shadow Fall Demo PostmortemKillzone Shadow Fall Demo Postmortem
Killzone Shadow Fall Demo Postmortem
 
Lighting of Killzone: Shadow Fall
Lighting of Killzone: Shadow FallLighting of Killzone: Shadow Fall
Lighting of Killzone: Shadow Fall
 
A Hierarchically-Layered Multiplayer Bot System for a First-Person Shooter
A Hierarchically-Layered Multiplayer Bot System for a First-Person ShooterA Hierarchically-Layered Multiplayer Bot System for a First-Person Shooter
A Hierarchically-Layered Multiplayer Bot System for a First-Person Shooter
 
Release This! Tools for a Smooth Release Cycle
Release This! Tools for a Smooth Release CycleRelease This! Tools for a Smooth Release Cycle
Release This! Tools for a Smooth Release Cycle
 
Killzone 2 Multiplayer Bots
Killzone 2 Multiplayer BotsKillzone 2 Multiplayer Bots
Killzone 2 Multiplayer Bots
 
Automatic Annotations in Killzone 3 and Beyond
Automatic Annotations in Killzone 3 and BeyondAutomatic Annotations in Killzone 3 and Beyond
Automatic Annotations in Killzone 3 and Beyond
 
The PlayStation®3’s SPUs in the Real World: A KILLZONE 2 Case Study
The PlayStation®3’s SPUs in the Real World: A KILLZONE 2 Case StudyThe PlayStation®3’s SPUs in the Real World: A KILLZONE 2 Case Study
The PlayStation®3’s SPUs in the Real World: A KILLZONE 2 Case Study
 
Practical Occlusion Culling in Killzone 3
Practical Occlusion Culling in Killzone 3Practical Occlusion Culling in Killzone 3
Practical Occlusion Culling in Killzone 3
 
The Rendering Technology of Killzone 2
The Rendering Technology of Killzone 2The Rendering Technology of Killzone 2
The Rendering Technology of Killzone 2
 
Deferred Rendering in Killzone 2
Deferred Rendering in Killzone 2Deferred Rendering in Killzone 2
Deferred Rendering in Killzone 2
 

Dernier

Call Girls Ellis Bridge 7397865700 Independent Call Girls
Call Girls Ellis Bridge 7397865700 Independent Call GirlsCall Girls Ellis Bridge 7397865700 Independent Call Girls
Call Girls Ellis Bridge 7397865700 Independent Call Girlsssuser7cb4ff
 
8377087607 Full Enjoy @24/7 Call Girls in Patel Nagar Delhi NCR
8377087607 Full Enjoy @24/7 Call Girls in Patel Nagar Delhi NCR8377087607 Full Enjoy @24/7 Call Girls in Patel Nagar Delhi NCR
8377087607 Full Enjoy @24/7 Call Girls in Patel Nagar Delhi NCRdollysharma2066
 
Amil Baba in Pakistan Kala jadu Expert Amil baba Black magic Specialist in Is...
Amil Baba in Pakistan Kala jadu Expert Amil baba Black magic Specialist in Is...Amil Baba in Pakistan Kala jadu Expert Amil baba Black magic Specialist in Is...
Amil Baba in Pakistan Kala jadu Expert Amil baba Black magic Specialist in Is...Amil Baba Company
 
Call Girls Somajiguda Sarani 7001305949 all area service COD available Any Time
Call Girls Somajiguda Sarani 7001305949 all area service COD available Any TimeCall Girls Somajiguda Sarani 7001305949 all area service COD available Any Time
Call Girls Somajiguda Sarani 7001305949 all area service COD available Any Timedelhimodelshub1
 
LE IMPOSSIBRU QUIZ (Based on Splapp-me-do)
LE IMPOSSIBRU QUIZ (Based on Splapp-me-do)LE IMPOSSIBRU QUIZ (Based on Splapp-me-do)
LE IMPOSSIBRU QUIZ (Based on Splapp-me-do)bertfelixtorre
 
Hi Class Call Girls In Goa 7028418221 Call Girls In Anjuna Beach Escort Services
Hi Class Call Girls In Goa 7028418221 Call Girls In Anjuna Beach Escort ServicesHi Class Call Girls In Goa 7028418221 Call Girls In Anjuna Beach Escort Services
Hi Class Call Girls In Goa 7028418221 Call Girls In Anjuna Beach Escort ServicesApsara Of India
 
Private Call Girls Bansdroni - 8250192130 | 24x7 Service Available Near Me
Private Call Girls Bansdroni - 8250192130 | 24x7 Service Available Near MePrivate Call Girls Bansdroni - 8250192130 | 24x7 Service Available Near Me
Private Call Girls Bansdroni - 8250192130 | 24x7 Service Available Near MeRiya Pathan
 
Hifi Laxmi Nagar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ D...
Hifi Laxmi Nagar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ D...Hifi Laxmi Nagar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ D...
Hifi Laxmi Nagar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ D...srsj9000
 
Udaipur Call Girls 9602870969 Call Girl in Udaipur Rajasthan
Udaipur Call Girls 9602870969 Call Girl in Udaipur RajasthanUdaipur Call Girls 9602870969 Call Girl in Udaipur Rajasthan
Udaipur Call Girls 9602870969 Call Girl in Udaipur RajasthanApsara Of India
 
Amil baba in Pakistan amil baba Karachi amil baba in pakistan amil baba in la...
Amil baba in Pakistan amil baba Karachi amil baba in pakistan amil baba in la...Amil baba in Pakistan amil baba Karachi amil baba in pakistan amil baba in la...
Amil baba in Pakistan amil baba Karachi amil baba in pakistan amil baba in la...Amil Baba Company
 
The Fine Line Between Honest and Evil Comics by Salty Vixen
The Fine Line Between Honest and Evil Comics by Salty VixenThe Fine Line Between Honest and Evil Comics by Salty Vixen
The Fine Line Between Honest and Evil Comics by Salty VixenSalty Vixen Stories & More
 
Real NO1 Amil baba in Faisalabad Kala jadu in faisalabad Aamil baba Faisalaba...
Real NO1 Amil baba in Faisalabad Kala jadu in faisalabad Aamil baba Faisalaba...Real NO1 Amil baba in Faisalabad Kala jadu in faisalabad Aamil baba Faisalaba...
Real NO1 Amil baba in Faisalabad Kala jadu in faisalabad Aamil baba Faisalaba...Amil Baba Company
 
VIP Call Girls In Goa 7028418221 Call Girls In Baga Beach Escorts Service
VIP Call Girls In Goa 7028418221 Call Girls In Baga Beach Escorts ServiceVIP Call Girls In Goa 7028418221 Call Girls In Baga Beach Escorts Service
VIP Call Girls In Goa 7028418221 Call Girls In Baga Beach Escorts ServiceApsara Of India
 
Call Girls Delhi {Safdarjung} 9711199012 high profile service
Call Girls Delhi {Safdarjung} 9711199012 high profile serviceCall Girls Delhi {Safdarjung} 9711199012 high profile service
Call Girls Delhi {Safdarjung} 9711199012 high profile servicerehmti665
 
Vip Udaipur Call Girls 9602870969 Dabok Airport Udaipur Escorts Service
Vip Udaipur Call Girls 9602870969 Dabok Airport Udaipur Escorts ServiceVip Udaipur Call Girls 9602870969 Dabok Airport Udaipur Escorts Service
Vip Udaipur Call Girls 9602870969 Dabok Airport Udaipur Escorts ServiceApsara Of India
 
QUIZ BOLLYWOOD ( weekly quiz ) - SJU quizzers
QUIZ BOLLYWOOD ( weekly quiz ) - SJU quizzersQUIZ BOLLYWOOD ( weekly quiz ) - SJU quizzers
QUIZ BOLLYWOOD ( weekly quiz ) - SJU quizzersSJU Quizzers
 
Call Girls in Faridabad 9000000000 Faridabad Escorts Service
Call Girls in Faridabad 9000000000 Faridabad Escorts ServiceCall Girls in Faridabad 9000000000 Faridabad Escorts Service
Call Girls in Faridabad 9000000000 Faridabad Escorts ServiceTina Ji
 
NO1 WorldWide Amil baba in pakistan Amil Baba in Karachi Black Magic Islamaba...
NO1 WorldWide Amil baba in pakistan Amil Baba in Karachi Black Magic Islamaba...NO1 WorldWide Amil baba in pakistan Amil Baba in Karachi Black Magic Islamaba...
NO1 WorldWide Amil baba in pakistan Amil Baba in Karachi Black Magic Islamaba...Amil baba
 
1681275559_haunting-adeline and hunting.pdf
1681275559_haunting-adeline and hunting.pdf1681275559_haunting-adeline and hunting.pdf
1681275559_haunting-adeline and hunting.pdfTanjirokamado769606
 

Dernier (20)

Call Girls Ellis Bridge 7397865700 Independent Call Girls
Call Girls Ellis Bridge 7397865700 Independent Call GirlsCall Girls Ellis Bridge 7397865700 Independent Call Girls
Call Girls Ellis Bridge 7397865700 Independent Call Girls
 
8377087607 Full Enjoy @24/7 Call Girls in Patel Nagar Delhi NCR
8377087607 Full Enjoy @24/7 Call Girls in Patel Nagar Delhi NCR8377087607 Full Enjoy @24/7 Call Girls in Patel Nagar Delhi NCR
8377087607 Full Enjoy @24/7 Call Girls in Patel Nagar Delhi NCR
 
Amil Baba in Pakistan Kala jadu Expert Amil baba Black magic Specialist in Is...
Amil Baba in Pakistan Kala jadu Expert Amil baba Black magic Specialist in Is...Amil Baba in Pakistan Kala jadu Expert Amil baba Black magic Specialist in Is...
Amil Baba in Pakistan Kala jadu Expert Amil baba Black magic Specialist in Is...
 
Call Girls Somajiguda Sarani 7001305949 all area service COD available Any Time
Call Girls Somajiguda Sarani 7001305949 all area service COD available Any TimeCall Girls Somajiguda Sarani 7001305949 all area service COD available Any Time
Call Girls Somajiguda Sarani 7001305949 all area service COD available Any Time
 
LE IMPOSSIBRU QUIZ (Based on Splapp-me-do)
LE IMPOSSIBRU QUIZ (Based on Splapp-me-do)LE IMPOSSIBRU QUIZ (Based on Splapp-me-do)
LE IMPOSSIBRU QUIZ (Based on Splapp-me-do)
 
Hi Class Call Girls In Goa 7028418221 Call Girls In Anjuna Beach Escort Services
Hi Class Call Girls In Goa 7028418221 Call Girls In Anjuna Beach Escort ServicesHi Class Call Girls In Goa 7028418221 Call Girls In Anjuna Beach Escort Services
Hi Class Call Girls In Goa 7028418221 Call Girls In Anjuna Beach Escort Services
 
Private Call Girls Bansdroni - 8250192130 | 24x7 Service Available Near Me
Private Call Girls Bansdroni - 8250192130 | 24x7 Service Available Near MePrivate Call Girls Bansdroni - 8250192130 | 24x7 Service Available Near Me
Private Call Girls Bansdroni - 8250192130 | 24x7 Service Available Near Me
 
Hifi Laxmi Nagar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ D...
Hifi Laxmi Nagar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ D...Hifi Laxmi Nagar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ D...
Hifi Laxmi Nagar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ D...
 
Udaipur Call Girls 9602870969 Call Girl in Udaipur Rajasthan
Udaipur Call Girls 9602870969 Call Girl in Udaipur RajasthanUdaipur Call Girls 9602870969 Call Girl in Udaipur Rajasthan
Udaipur Call Girls 9602870969 Call Girl in Udaipur Rajasthan
 
Amil baba in Pakistan amil baba Karachi amil baba in pakistan amil baba in la...
Amil baba in Pakistan amil baba Karachi amil baba in pakistan amil baba in la...Amil baba in Pakistan amil baba Karachi amil baba in pakistan amil baba in la...
Amil baba in Pakistan amil baba Karachi amil baba in pakistan amil baba in la...
 
The Fine Line Between Honest and Evil Comics by Salty Vixen
The Fine Line Between Honest and Evil Comics by Salty VixenThe Fine Line Between Honest and Evil Comics by Salty Vixen
The Fine Line Between Honest and Evil Comics by Salty Vixen
 
Real NO1 Amil baba in Faisalabad Kala jadu in faisalabad Aamil baba Faisalaba...
Real NO1 Amil baba in Faisalabad Kala jadu in faisalabad Aamil baba Faisalaba...Real NO1 Amil baba in Faisalabad Kala jadu in faisalabad Aamil baba Faisalaba...
Real NO1 Amil baba in Faisalabad Kala jadu in faisalabad Aamil baba Faisalaba...
 
VIP Call Girls In Goa 7028418221 Call Girls In Baga Beach Escorts Service
VIP Call Girls In Goa 7028418221 Call Girls In Baga Beach Escorts ServiceVIP Call Girls In Goa 7028418221 Call Girls In Baga Beach Escorts Service
VIP Call Girls In Goa 7028418221 Call Girls In Baga Beach Escorts Service
 
Call Girls Delhi {Safdarjung} 9711199012 high profile service
Call Girls Delhi {Safdarjung} 9711199012 high profile serviceCall Girls Delhi {Safdarjung} 9711199012 high profile service
Call Girls Delhi {Safdarjung} 9711199012 high profile service
 
Vip Udaipur Call Girls 9602870969 Dabok Airport Udaipur Escorts Service
Vip Udaipur Call Girls 9602870969 Dabok Airport Udaipur Escorts ServiceVip Udaipur Call Girls 9602870969 Dabok Airport Udaipur Escorts Service
Vip Udaipur Call Girls 9602870969 Dabok Airport Udaipur Escorts Service
 
QUIZ BOLLYWOOD ( weekly quiz ) - SJU quizzers
QUIZ BOLLYWOOD ( weekly quiz ) - SJU quizzersQUIZ BOLLYWOOD ( weekly quiz ) - SJU quizzers
QUIZ BOLLYWOOD ( weekly quiz ) - SJU quizzers
 
Call Girls in Faridabad 9000000000 Faridabad Escorts Service
Call Girls in Faridabad 9000000000 Faridabad Escorts ServiceCall Girls in Faridabad 9000000000 Faridabad Escorts Service
Call Girls in Faridabad 9000000000 Faridabad Escorts Service
 
NO1 WorldWide Amil baba in pakistan Amil Baba in Karachi Black Magic Islamaba...
NO1 WorldWide Amil baba in pakistan Amil Baba in Karachi Black Magic Islamaba...NO1 WorldWide Amil baba in pakistan Amil Baba in Karachi Black Magic Islamaba...
NO1 WorldWide Amil baba in pakistan Amil Baba in Karachi Black Magic Islamaba...
 
Call Girls Koti 7001305949 all area service COD available Any Time
Call Girls Koti 7001305949 all area service COD available Any TimeCall Girls Koti 7001305949 all area service COD available Any Time
Call Girls Koti 7001305949 all area service COD available Any Time
 
1681275559_haunting-adeline and hunting.pdf
1681275559_haunting-adeline and hunting.pdf1681275559_haunting-adeline and hunting.pdf
1681275559_haunting-adeline and hunting.pdf
 

Killzone's AI: Dynamic Procedural Tactics

  • 1. Killzone’s AI: Dynamic Procedural Tactics Arjen Beij & Remco Straatman August 31, 2005 Killzone’s AI: Game Developer Conference Europe Dynamic Procedural Tactics Guerrilla Games - 1
  • 2. Contents  Dynamic procedural tactics  Position picking  Position Evaluation functions  Tactical path-finding  Suppression Fire  World Representation  Conclusions August 31, 2005 Killzone’s AI: Game Developer Conference Europe Dynamic Procedural Tactics Guerrilla Games - 2
  • 3. Dynamic Procedural Tactics Dynamic procedural tactics =  Having the rules and concepts to dynamically compute solutions to tactical problems August 31, 2005 Killzone’s AI: Game Developer Conference Europe Dynamic Procedural Tactics Guerrilla Games - 3
  • 4. AI Tactics Common approach  Level designer placed hints  Triggered scripted behavior August 31, 2005 Killzone’s AI: Game Developer Conference Europe Dynamic Procedural Tactics Guerrilla Games - 4
  • 5. Dynamic Procedural Tactics Game-play benefits  Works for any number of players  Fights anywhere Production benefits  Reuse of AI behavior  Quick level prototyping  Roll out improvements game wide August 31, 2005 Killzone’s AI: Game Developer Conference Europe Dynamic Procedural Tactics Guerrilla Games - 5
  • 6. Position Picking Outside Wall danger zone Hugging Nearby  Picking a good position Partial Cover Cover is half the battle in ‘fire & maneuver’ combat Line of Fire Proximity Preferred Range  Account for dozens of (dynamic) factors  How to pick that position? August 31, 2005 Killzone’s AI: Game Developer Conference Europe Dynamic Procedural Tactics Guerrilla Games - 6
  • 7. Position Evaluation Functions Determining the most appropriate position  Given n potential destinations  To compare positions, need a single value Use position evaluation function  Weighted sum  Combines basic factors August 31, 2005 Killzone’s AI: Game Developer Conference Europe Dynamic Procedural Tactics Guerrilla Games - 7
  • 8. Example: Picking an Attack Position 1 Example: Picking an attack position  Multiple threats  Attack primary threat  Cover from other threats preferred  Partial cover from primary  Proximity  Preferred fighting range Combine into a single value per position August 31, 2005 Killzone’s AI: Game Developer Conference Europe Dynamic Procedural Tactics Guerrilla Games - 8
  • 9. Example: Picking an Attack Position 2 Initial situation: three threats, some walls and a waypoint graph August 31, 2005 Killzone’s AI: Game Developer Conference Europe Dynamic Procedural Tactics Guerrilla Games - 9
  • 10. Example: Picking an Attack Position 3 Selected nearby waypoints, annotated with proximity (weight 20) August 31, 2005 Killzone’s AI: Game Developer Conference Europe Dynamic Procedural Tactics Guerrilla Games - 10
  • 11. Example: Picking an Attack Position 4 Annotations for LoF to primary threat (40 if partial cover, 20 otherwise) August 31, 2005 Killzone’s AI: Game Developer Conference Europe Dynamic Procedural Tactics Guerrilla Games - 11
  • 12. Example: Picking an Attack Position 5 Annotations for cover from secondary threats (weight 20) August 31, 2005 Killzone’s AI: Game Developer Conference Europe Dynamic Procedural Tactics Guerrilla Games - 12
  • 13. Example: Picking an Attack Position 6 Annotations positions inside preferred fighting range (weight 10) August 31, 2005 Killzone’s AI: Game Developer Conference Europe Dynamic Procedural Tactics Guerrilla Games - 13
  • 14. Example: Picking an Attack Position 7 + Adding up all the annotations yields the most promising attack position August 31, 2005 Killzone’s AI: Game Developer Conference Europe Dynamic Procedural Tactics Guerrilla Games - 14
  • 15. Example: Picking an Attack Position 8 Single threat Multiple threats August 31, 2005 Killzone’s AI: Game Developer Conference Europe Dynamic Procedural Tactics Guerrilla Games - 15
  • 16. Configurable and Dynamic Personality: Configurable Action: What factors are What kind of position? important? Position evaluation function Dynamic Current situation: Squad: Where are the threats? Additional constraints August 31, 2005 Killzone’s AI: Game Developer Conference Europe Dynamic Procedural Tactics Guerrilla Games - 16
  • 17. Tactical Path-finding Shortest paths often aren’t tactically sound 1 2 3 For example: 1. Paths traversing friendly lines-of-fire 2. Paths ignoring cover from hostile fire 3. Paths leaving the AI exposed unnecessarily August 31, 2005 Killzone’s AI: Game Developer Conference Europe Dynamic Procedural Tactics Guerrilla Games - 17
  • 18. Tactical Path-finding Position evaluations functions in path finding  In A*, add to the costs of traveling a link:  Traversing a friendly lines-of-fire  Being under fire from one or more threats August 31, 2005 Killzone’s AI: Game Developer Conference Europe Dynamic Procedural Tactics Guerrilla Games - 18
  • 19. Example: Tactical Path-finding 1 Costs to travel each waypoint link, and the resulting shortest path. August 31, 2005 Killzone’s AI: Game Developer Conference Europe Dynamic Procedural Tactics Guerrilla Games - 19
  • 20. Example: Tactical Path-finding 2 Link costs now reflect being under fire, and the corresponding tactical path. August 31, 2005 Killzone’s AI: Game Developer Conference Europe Dynamic Procedural Tactics Guerrilla Games - 20
  • 21. Example: Tactical Path-finding 3 B B T T shortest path versus tactical path A A August 31, 2005 Killzone’s AI: Game Developer Conference Europe Dynamic Procedural Tactics Guerrilla Games - 21
  • 22. Suppression Fire Suppression fire:  Fire near hidden threats to pin them down Not:  Firing into the wall behind which the threat is hiding  Firing into locations the threat cannot reach August 31, 2005 Killzone’s AI: Game Developer Conference Europe Dynamic Procedural Tactics Guerrilla Games - 22
  • 23. Example: Suppression Fire 1 What we want  Deny the threat use of good attack positions  By shooting bursts at these positions How we implement it using position evaluation  Evaluate threat’s attack positions from his perspective  Select those attack positions we can fire into August 31, 2005 Killzone’s AI: Game Developer Conference Europe Dynamic Procedural Tactics Guerrilla Games - 23
  • 24. Example: Suppression Fire 2 A hidden threat (left), attacker (right) and the intended suppression fire. August 31, 2005 Killzone’s AI: Game Developer Conference Europe Dynamic Procedural Tactics Guerrilla Games - 24
  • 25. Example: Suppression Fire 3 Selecting the waypoints in close proximity to the presumed threat position August 31, 2005 Killzone’s AI: Game Developer Conference Europe Dynamic Procedural Tactics Guerrilla Games - 25
  • 26. Example: Suppression Fire 4 Annotations (20, 30) for offering the threat a LoF to the attacker (right). August 31, 2005 Killzone’s AI: Game Developer Conference Europe Dynamic Procedural Tactics Guerrilla Games - 26
  • 27. Example: Suppression Fire 5 Annotation of 20 for positions offering the threat nearby cover from the attacker. August 31, 2005 Killzone’s AI: Game Developer Conference Europe Dynamic Procedural Tactics Guerrilla Games - 27
  • 28. Example: Suppression Fire 6 Selecting those positions with score 40 yields the suppress targets. August 31, 2005 Killzone’s AI: Game Developer Conference Europe Dynamic Procedural Tactics Guerrilla Games - 28
  • 29. Example: Suppression Fire 7 Merging suppression targets that overlap in yaw and pitch. August 31, 2005 Killzone’s AI: Game Developer Conference Europe Dynamic Procedural Tactics Guerrilla Games - 29
  • 30. Example: Suppression Fire 8 The attacker’s view of suppression targets near the hidden threat. August 31, 2005 Killzone’s AI: Game Developer Conference Europe Dynamic Procedural Tactics Guerrilla Games - 30
  • 31. Example: Suppression Fire 9 attacker PoV target PoV August 31, 2005 Killzone’s AI: Game Developer Conference Europe Dynamic Procedural Tactics Guerrilla Games - 31
  • 32. World Representation Pre-conditions for dynamic procedural tactics 1. Navigation info, with fine enough resolution to represent cover locations  Waypoints, nav meshes, cells: any will do 2. Fast Line-of-Sight/Line-of-fire checks August 31, 2005 Killzone’s AI: Game Developer Conference Europe Dynamic Procedural Tactics Guerrilla Games - 32
  • 33. Lines-of-Fire Representation 1 Tactical decisions  Involve hundreds of LoF checks  Ray casts typically expensive Use a small pre-computed look-up table  Multiple stances, minor movement  Pessimistic about cover  Polar representation Killzone’s LoF table for 4000 waypoints: 64KB August 31, 2005 Killzone’s AI: Game Developer Conference Europe Dynamic Procedural Tactics Guerrilla Games - 33
  • 34. Lines-of-Fire Representation 2 Compression: For every waypoint, per radial sector, record the largest distance from where an attacker within that sector can fire at the waypoint. Inaccurate, but consistent. August 31, 2005 Killzone’s AI: Game Developer Conference Europe Dynamic Procedural Tactics Guerrilla Games - 34
  • 35. Conclusions Killzone was released for PS2 late 2004  Tactical position picking  Tactical path-finding  Suppression by infantry and mounted MGs  Indirect fire for hand grenades and tank shells  Single and multiplayer AI  Up to 14 AI characters fighting simultaneously August 31, 2005 Killzone’s AI: Game Developer Conference Europe Dynamic Procedural Tactics Guerrilla Games - 35
  • 36. Conclusions - Killzone’s AI Pros  Share/reuse behavior across games  Quick level prototyping  Can be combined with scripting  Fights anywhere, anytime, SP or MP Cons  Harder to control in detail  Harder to test August 31, 2005 Killzone’s AI: Game Developer Conference Europe Dynamic Procedural Tactics Guerrilla Games - 36
  • 37. Conclusions – Game AI Position evaluation functions are powerful  Robust decisions with many (dynamic) inputs  Different behavior through configuration  Many tactics can be implemented through position evaluation Dynamic procedural tactics  Responsive AI behavior  Within reach of many games August 31, 2005 Killzone’s AI: Game Developer Conference Europe Dynamic Procedural Tactics Guerrilla Games - 37
  • 38. Further Info Off-line  Our proceedings paper provides more details, notably on the terrain representation and grenade handling  Lars Lidén, Strategic and Tactical Reasoning with Waypoints in AI Game Programming Wisdom, Charles River Media, 2002  Paul Tozour, Using a Spatial Database for Runtime Spatial Analysis in AI Game Programming Wisdom 2, Charles River Media, 2003  William van der Sterren, Tactical Path-Finding with A* in Game Programming Gems 3, Charles River Media, 2002 On-line  William van der Sterren’s collection of links to on-line papers at: www.cgf-ai.com/links.html August 31, 2005 Killzone’s AI: Game Developer Conference Europe Dynamic Procedural Tactics Guerrilla Games - 38
  • 39. Questions? August 31, 2005 Killzone’s AI: Game Developer Conference Europe Dynamic Procedural Tactics Guerrilla Games - 39