Slide 1: SpyParty
A Game About AI… …plus some ranting.
spyparty.com
Chris Hecker
Slide 2: What is SpyParty?
Less of this... ...more of this.
Slide 3: demo
Slide 4: SpyParty Aesthetic Goals
perception vs. deception & performance attention as a resource consequential decisions with partial information deduction vs. intuition analysis paralysis vs. extinct by instinct extreme asymmetry
Slide 5: Mechanics
complete focus on player skill
고수
map navigation aiming & shooting micro combat strategy
behavior perception subtle performance playing it cool social pattern matching
Slide 6: These Mechanics Have Ramifications
If we want “performing NPC behavior” to be a player-skill… …NPCs and the Spy should share the same behavior systems. …we are forced into certain types of technical solutions.
Slide 7: Pathing
Spy controls feed into pathfinder Click-to-move vs. analog control?
Slide 8: Inverse Kinematics
Spy will not align properly, so NPCs must not either Auto-docking?
Slide 9: Inverse Kinematics
Almost nobody works on this stuff.
Slide 10: Situations
simultaneous layered affordances
Slide 11: Situations
Spy situations and affordances ‘inherit’ from NPC’s
Slide 12: Situations
Spy tracks same state as NPC in a situation
Slide 13: Situations AI System
• really not that much to learn here (yet?) • sort of like Sims interactions, but simultaneous, layered, resource-based • easy to code, one situation per file • bottom out as C switch() statement and enum states, Spy handled with if()s • talks to lower level animation system
Slide 14: Two Open [Solvable] Problems
The Outro Problem The AI↔Anim Problem
Disclaimer: I may be the only one who thinks these are unsolved.
Slide 15: The Outro Problem
Who is responsible for the outro?
Slide 16: The Outro Problem
Intros are (relatively) trivial. intro body
Slide 17: The Outro Problem
Outros are a disaster.
stimuli WTF?
body WTF?
Slide 18: The Outro Problem
A lot of systems just punt, and hope the animation state machine and/or blender will fix the problem, or just ignore latency and correctness. This will never result in high quality behavior and movement.
Slide 19: The AI↔Anim Problem
How and what do the AI and Animation systems communicate?
similar but not identical states wide bidirectional interface combinatorics are deadly proceduralism can’t compete on quality
Slide 20: The AI↔Anim Problem
I do not think the solution looks like this:
Slide 21: I think both the Outro Problem and the AI↔Anim Problem have a common root cause: Interesting things happen over time.
Computers and programming languages are not good at dealing with things that happen over time.
Slide 22: Click-to-move vs. analog control?
Auto-docking?
Slide 23: These are game design questions.
Slide 24: AI programming is game design.
The lack of recognition of this fact, and the failure to embrace it, explains why most AI research has not had an impact on the game industry.
graphics, networking, algorithms, signal processing…
Slide 27: Games are the aesthetics of interactive systems. Frank Lantz
Slide 28: Aesthetics is the opposite of science.
Slide 29: AI
Game Design
Games
Aesthetics
You are hosed.
By ‘you’, I mean anyone who tries to do work in game AI without doing the game design part.
By ‘doing the game design part’, I mean actually making compelling games.
Slide 30: Doing AI without making games is like writing graphics code but never rendering an image.
Slide 32: Work on highly leveraged & relevant problems, right at the edge of your ability to solve them, and then really “test the solutions”.
Slide 33: AI is the future of games.
Step up to the plate.
Slide 34: Thank you!
checker@d6.com spyparty.com