videos for before
DESCRIPTION
videos for before. swarm.flv (art. intelligence swarmites 1:20) endorphin2.5.flv (2:38) antfarmsimulator.flv (3:30) for very early swarmflocking.mp4 (Suzie swarmites 2:36) andiland.mp4 (5:04 min). Warning - This presentation contains graphic depictions of - PowerPoint PPT PresentationTRANSCRIPT
1
videos for before• swarm.flv (art. intelligence swarmites 1:20)• endorphin2.5.flv (2:38)• antfarmsimulator.flv (3:30)• for very early– swarmflocking.mp4 (Suzie swarmites 2:36)– andiland.mp4 (5:04 min)
2
Warning -This presentation contains
graphic depictions of violence and the death of
badly pixelated Nazis
3
Hans Apfël• Born Dec 18, 1923,
Dusseldorf• Wanted to study chemistry
after the war• Engaged to Elsa Bauer
4
Hans Apfël• Killed by a Super Terror
Flamethrower on level 7 of Nazi Killer Rampage IV.
• One of over 143,000,000,000,000 NPC's killed in computer games since 1959
5
Ground Rules• The topic is game AI• It's not 'real' AI• Their morality is a separate discussion• I'll take questions as they come up• Please hold side topics to the end
6
Game AI
7
Sections
•Goals•Architecture• Inputs•Actions•Action Selection
8
Vocabulary• NPC• Game Design• Third Person shooter• RTS
9
Our Example• The Saboteur start up screen
10
Roundup
11
GOAL?
12
PLAYER FUNnot to win!
13
Fun IsMeaningful
ChoicesAppealing Characters
14
And what's our best technique for adjusting
Play Balance?
15
CHEAT
16
Play Balance Knobs• Unit strength• Adjusting NPC tactics better/worse• Complexity, favor things the computer does
better than the human.• Cognitive and cockpit load, UI design,
behavior mod, degrade the human's skills
17
Architecture
18
Mimic Human Actions• Mimic the events the NPC would get• Stupid actions look inhuman• Sadly, stupid choices of action look all too
human• So as long as each low level action is
believable, overall we have a chance
19
Our ArchitectureEvents
(as 'sensory' data)
Action Selection
Atomic Action Atomic Action Atomic Action
20
Our ArchitectureEvents
(as 'sensory' data)
Action Selection
Atomic Action Atomic Action Atomic Action
21
Model Their World View• Give NPC's only the info they should have,
then they won't act on info they shouldn't• Give them a view frustum• Present information as their sensory apparatus
would receive it.• Present information in functional terms (e.g. 'a
cover position', not 'a tree')
.
22
Terrain Marking
23
Our ArchitectureEvents
(as 'sensory' data)
Action Selection
Atomic Action Atomic Action Atomic Action
24
Overview• Most action is – move the character's basepoint– play canned animations
• Some other possibilities– play sounds, particle effects, delete/add item, etc.
• Physics: ragdoll, euphoria, steering, lennard-jones• Middle layer– Pathfinding
25
Basic Animation• Play one or more layered
animations• Move the basepoint• Do a whole motion!
26
Behaviors
27
Steering
AI boid
vehicleTurn
left at corner
wheel left 45
deg, light brake
position, rotation, velocity
28
Lennard- Jones Potential
𝐹=𝑎𝑟2 −
𝑏𝑟 30 2 4 6 8 10 12
-1.2
-1
-0.8
-0.6
-0.4
-0.2
0
0.2
0.4
0.6
F vs R
F vs R
29
A*• Open circles are in
open set• Filled circles are
colored red to green by distance from start
30
Our ArchitectureEvents
(as 'sensory' data)
Action Selection
Atomic Action Atomic Action Atomic Action
31
Action Selection
Behavior trees
Scripting
HFSM
Planners
32
Scripting• Either use an existing 'friendly' language
(Python and Lua are popular) or make one up• Actor languages are often a good choice• burying complexity in message passing
33
HFSM
34
Planning• Operators: preconditions, forbidden, add,
remove• Operators: run_to_door, get_out_of_car,
enter_building, climb_stairs, descend_stairs, run_onto_roof, get_in_car, lay_down, get_up
35
Complications
36
Behavior Trees
37
Node Types
38
Adjusting Long Term Play• Genetic Algorithms• Neural nets• Random strategic alterations
39
GOAL?
40
PLAYER FUN