SpyParty A Game About AI… …plus some ranting. Chris Hecker spyparty.com
What is SpyParty? Less of this... ...more of this.
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
Mechanics complete focus on player skill 고수 map navigation aiming & shooting micro combat strategy behavior perception subtle performance playing it cool social pattern matching
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.
Pathing Spy controls feed into pathfinder Click-to-move vs. analog control?
Inverse Kinematics Spy will not align properly, so NPCs must not either Auto-docking?
Inverse Kinematics Almost nobody works on this stuff.
Situations simultaneous layered affordances
Situations Spy situations and affordances ‘inherit’ from NPC’s
Situations Spy tracks same state as NPC in a situation
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
Two Open [Solvable] Problems The Outro Problem The AIAnim Problem Disclaimer: I may be the only one who thinks these are unsolved.
The Outro Problem Who is responsible for the outro?
The Outro Problem Intros are (relatively) trivial. intro body
The Outro Problem Outros are a disaster. stimuli body WTF? WTF?
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.
The AIAnim 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
The AIAnim Problem I do not think the solution looks like this:
I think both the Outro Problem and the AIAnim 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.
Click-to-move vs. analog control? Auto-docking?
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…
Games are the aesthetics of interactive systems. Frank Lantz
Game Design AI 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.
Doing AI without making games is like writing graphics code but never rendering an image.
Work on highly leveraged & relevant problems, right at the edge of your ability to solve them, and then really “test the solutions”.
AI is the future of games. Step up to the plate.
Thank you! firstname.lastname@example.org spyparty.com