SlideShare ist ein Scribd-Unternehmen logo
1 von 20
Ludocore: A Logical Game Engine for Modeling Videogames amsmith@soe.ucsc.edu CIG 2010 – Copenhagen, Denmark Adam M. Smith (presenter),Mark J. Nelson, and Michael Mateas
Ludocore is a game enginethat helps you model videogames.
What is a model of a videogame? Motherload (XGen Studios, 2004) DrillBot 6000 (Smith et al., 2009) a complete game a playable game sketchmodeling a complete game
Why build models of videogames? Models are easier to build than complete games. 	AND Playtesting these models leads to understanding of design ideas.
“Game engines” Conventional game engines: Solutions to game programming problems (physics, graphics, sound, network, …) API or scripting language Ludocore (a logical game engine): Solutions to logical game modeling problems (actions, effects, expectations about players, …) Sketching language
Outline Modeling approaches Building up a logical game model Use cases Perspective
Modeling Approaches State-transition formalisms State over time leading to rewards… …but games have rules Game Description Language (Love et al., 2004) Representation using logic programs Game concepts (players, moves, goals) Event calculus for game modeling (Nelson et al., 2008) Independently modifiable rules “Commonsense law of inertia”
Building up a logical game model (Step 0) A complete, logical game model Each box is a pile of logical assertions. Game-specific Common
Building up a logical game model (Step 1) Temporal logic foundations Idea: A small set of axioms defines truth-over-time. Concepts: ,[object Object]
fluents
 events
 initiation/termination
tracesEvent Calculus
Building up a logical game model (Step 2) A theory of playable simulations Idea: Upgrade the foundation for the common problems of game modeling. Game Engine Concepts: ,[object Object]
 game events
 player/nature modelsEvent Calculus
Building up a logical game model (Step 3) A specification of a game Idea: Quickly implement the game’s world in terms of foundational concepts. Game Engine Game Rules State Events Consequences Nature model ------------------------------------------ Supporting concepts World configuration Dynamic Timeless Event Calculus
Building up a logical game model (Step 4) A model of expected play Idea: Plug in your knowledge of players to improve model accuracy. Player Model Game Engine Game Rules State Events Consequences Nature model ------------------------------------------ Supporting concepts World configuration Concepts: ,[object Object]
player_forbidsEvent Calculus
Building up a logical game model (Step 5) A focused view of some play situation Speculative Assumptions Idea: Throw on extra constraints to zoom-in on situations of interest.  Player Model Game Engine Game Rules State Events Consequences Nature model ------------------------------------------ Supporting concepts World configuration Ask questions by… ,[object Object]

Weitere ähnliche Inhalte

Ähnlich wie Ludocore: A Logical Game Engine for Modeling Videogames

GDF: A Gamification Design Framework powered by Model-Driven Engineering
GDF: A Gamification Design Framework powered by Model-Driven EngineeringGDF: A Gamification Design Framework powered by Model-Driven Engineering
GDF: A Gamification Design Framework powered by Model-Driven Engineeringantbucc
 
Introduction to Game Development
Introduction to Game DevelopmentIntroduction to Game Development
Introduction to Game DevelopmentShaan Alam
 
My Presentation.ppt
My Presentation.pptMy Presentation.ppt
My Presentation.pptFake474384
 
Introduction to Game Engine: Concepts & Components
Introduction to Game Engine: Concepts & ComponentsIntroduction to Game Engine: Concepts & Components
Introduction to Game Engine: Concepts & ComponentsPouya Pournasir
 
Matching Game Mechanics and Human Computation Tasks in Games with a Purpose
Matching Game Mechanics and Human Computation Tasks in Games with a PurposeMatching Game Mechanics and Human Computation Tasks in Games with a Purpose
Matching Game Mechanics and Human Computation Tasks in Games with a PurposeCUbRIK Project
 
Matching Game Mechanics and Human Computation Tasks in Games with a Purpose
Matching Game Mechanics and Human Computation Tasks in Games with a PurposeMatching Game Mechanics and Human Computation Tasks in Games with a Purpose
Matching Game Mechanics and Human Computation Tasks in Games with a PurposeLuca Galli
 
Connecting the Box - On Tabletop Games and Technology
Connecting the Box - On Tabletop Games and Technology Connecting the Box - On Tabletop Games and Technology
Connecting the Box - On Tabletop Games and Technology Samuel Miller
 
Game Analytics & Machine Learning
Game Analytics & Machine LearningGame Analytics & Machine Learning
Game Analytics & Machine LearningBen Weber
 
Wakka Monkey - Game Development
Wakka Monkey - Game DevelopmentWakka Monkey - Game Development
Wakka Monkey - Game DevelopmentWakka Monkey
 
Level-Up Poster V3
Level-Up Poster V3Level-Up Poster V3
Level-Up Poster V3Cory Buckley
 
Introduction to game_design
Introduction to game_designIntroduction to game_design
Introduction to game_designSayed Ahmed
 
Designing a pragmatic back-end service for mobile games
Designing a pragmatic back-end service for mobile gamesDesigning a pragmatic back-end service for mobile games
Designing a pragmatic back-end service for mobile gamesiFunFactory Inc.
 
Game Architecture and Programming
Game Architecture and ProgrammingGame Architecture and Programming
Game Architecture and ProgrammingSumit Jain
 
Components of Computing Game
Components of Computing GameComponents of Computing Game
Components of Computing GameMuhammad Sajid
 
A realtime classic chess game [proposal]
A realtime classic chess game [proposal]A realtime classic chess game [proposal]
A realtime classic chess game [proposal]Nischal Lal Shrestha
 
Android Game Minisyonize
Android Game MinisyonizeAndroid Game Minisyonize
Android Game Minisyonizesavvy
 
Learning to Reason in Round-based Games: Multi-task Sequence Generation for P...
Learning to Reason in Round-based Games: Multi-task Sequence Generation for P...Learning to Reason in Round-based Games: Multi-task Sequence Generation for P...
Learning to Reason in Round-based Games: Multi-task Sequence Generation for P...Deren Lei
 
An Introduction To Game development
An Introduction To Game developmentAn Introduction To Game development
An Introduction To Game developmentAhmed
 

Ähnlich wie Ludocore: A Logical Game Engine for Modeling Videogames (20)

GDF: A Gamification Design Framework powered by Model-Driven Engineering
GDF: A Gamification Design Framework powered by Model-Driven EngineeringGDF: A Gamification Design Framework powered by Model-Driven Engineering
GDF: A Gamification Design Framework powered by Model-Driven Engineering
 
Introduction to Game Development
Introduction to Game DevelopmentIntroduction to Game Development
Introduction to Game Development
 
My Presentation.ppt
My Presentation.pptMy Presentation.ppt
My Presentation.ppt
 
Introduction to Game Engine: Concepts & Components
Introduction to Game Engine: Concepts & ComponentsIntroduction to Game Engine: Concepts & Components
Introduction to Game Engine: Concepts & Components
 
Matching Game Mechanics and Human Computation Tasks in Games with a Purpose
Matching Game Mechanics and Human Computation Tasks in Games with a PurposeMatching Game Mechanics and Human Computation Tasks in Games with a Purpose
Matching Game Mechanics and Human Computation Tasks in Games with a Purpose
 
Matching Game Mechanics and Human Computation Tasks in Games with a Purpose
Matching Game Mechanics and Human Computation Tasks in Games with a PurposeMatching Game Mechanics and Human Computation Tasks in Games with a Purpose
Matching Game Mechanics and Human Computation Tasks in Games with a Purpose
 
Connecting the Box - On Tabletop Games and Technology
Connecting the Box - On Tabletop Games and Technology Connecting the Box - On Tabletop Games and Technology
Connecting the Box - On Tabletop Games and Technology
 
Game Analytics & Machine Learning
Game Analytics & Machine LearningGame Analytics & Machine Learning
Game Analytics & Machine Learning
 
Wakka Monkey - Game Development
Wakka Monkey - Game DevelopmentWakka Monkey - Game Development
Wakka Monkey - Game Development
 
Level-Up Poster V3
Level-Up Poster V3Level-Up Poster V3
Level-Up Poster V3
 
Introduction to game_design
Introduction to game_designIntroduction to game_design
Introduction to game_design
 
First Seminar Presentation
First Seminar PresentationFirst Seminar Presentation
First Seminar Presentation
 
Designing a pragmatic back-end service for mobile games
Designing a pragmatic back-end service for mobile gamesDesigning a pragmatic back-end service for mobile games
Designing a pragmatic back-end service for mobile games
 
Game Architecture and Programming
Game Architecture and ProgrammingGame Architecture and Programming
Game Architecture and Programming
 
R.A.W - THE GAME
R.A.W - THE GAMER.A.W - THE GAME
R.A.W - THE GAME
 
Components of Computing Game
Components of Computing GameComponents of Computing Game
Components of Computing Game
 
A realtime classic chess game [proposal]
A realtime classic chess game [proposal]A realtime classic chess game [proposal]
A realtime classic chess game [proposal]
 
Android Game Minisyonize
Android Game MinisyonizeAndroid Game Minisyonize
Android Game Minisyonize
 
Learning to Reason in Round-based Games: Multi-task Sequence Generation for P...
Learning to Reason in Round-based Games: Multi-task Sequence Generation for P...Learning to Reason in Round-based Games: Multi-task Sequence Generation for P...
Learning to Reason in Round-based Games: Multi-task Sequence Generation for P...
 
An Introduction To Game development
An Introduction To Game developmentAn Introduction To Game development
An Introduction To Game development
 

Mehr von rndmcnlly

Two Methods for Voxel Detail Enhancement
Two Methods for Voxel Detail EnhancementTwo Methods for Voxel Detail Enhancement
Two Methods for Voxel Detail Enhancementrndmcnlly
 
A Case Study of Expressively Constrainable Level Design Automation Tools for ...
A Case Study of Expressively Constrainable Level Design Automation Tools for ...A Case Study of Expressively Constrainable Level Design Automation Tools for ...
A Case Study of Expressively Constrainable Level Design Automation Tools for ...rndmcnlly
 
Mechanizing Exploratory Game Design (PhD Defense)
Mechanizing Exploratory Game Design (PhD Defense)Mechanizing Exploratory Game Design (PhD Defense)
Mechanizing Exploratory Game Design (PhD Defense)rndmcnlly
 
BMOSLFGEMW: A Spectrum of Game Engine Architectures
BMOSLFGEMW: A Spectrum of Game Engine ArchitecturesBMOSLFGEMW: A Spectrum of Game Engine Architectures
BMOSLFGEMW: A Spectrum of Game Engine Architecturesrndmcnlly
 
Variations Forever: Flexibly Generating Rulesets from a Sculptable Design Spa...
Variations Forever: Flexibly Generating Rulesets from a Sculptable Design Spa...Variations Forever: Flexibly Generating Rulesets from a Sculptable Design Spa...
Variations Forever: Flexibly Generating Rulesets from a Sculptable Design Spa...rndmcnlly
 
The intelligent game designer: Game design as a new domain for automated disc...
The intelligent game designer: Game design as a new domain for automated disc...The intelligent game designer: Game design as a new domain for automated disc...
The intelligent game designer: Game design as a new domain for automated disc...rndmcnlly
 

Mehr von rndmcnlly (6)

Two Methods for Voxel Detail Enhancement
Two Methods for Voxel Detail EnhancementTwo Methods for Voxel Detail Enhancement
Two Methods for Voxel Detail Enhancement
 
A Case Study of Expressively Constrainable Level Design Automation Tools for ...
A Case Study of Expressively Constrainable Level Design Automation Tools for ...A Case Study of Expressively Constrainable Level Design Automation Tools for ...
A Case Study of Expressively Constrainable Level Design Automation Tools for ...
 
Mechanizing Exploratory Game Design (PhD Defense)
Mechanizing Exploratory Game Design (PhD Defense)Mechanizing Exploratory Game Design (PhD Defense)
Mechanizing Exploratory Game Design (PhD Defense)
 
BMOSLFGEMW: A Spectrum of Game Engine Architectures
BMOSLFGEMW: A Spectrum of Game Engine ArchitecturesBMOSLFGEMW: A Spectrum of Game Engine Architectures
BMOSLFGEMW: A Spectrum of Game Engine Architectures
 
Variations Forever: Flexibly Generating Rulesets from a Sculptable Design Spa...
Variations Forever: Flexibly Generating Rulesets from a Sculptable Design Spa...Variations Forever: Flexibly Generating Rulesets from a Sculptable Design Spa...
Variations Forever: Flexibly Generating Rulesets from a Sculptable Design Spa...
 
The intelligent game designer: Game design as a new domain for automated disc...
The intelligent game designer: Game design as a new domain for automated disc...The intelligent game designer: Game design as a new domain for automated disc...
The intelligent game designer: Game design as a new domain for automated disc...
 

Kürzlich hochgeladen

Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...gurkirankumar98700
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 

Kürzlich hochgeladen (20)

Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 

Ludocore: A Logical Game Engine for Modeling Videogames

  • 1. Ludocore: A Logical Game Engine for Modeling Videogames amsmith@soe.ucsc.edu CIG 2010 – Copenhagen, Denmark Adam M. Smith (presenter),Mark J. Nelson, and Michael Mateas
  • 2. Ludocore is a game enginethat helps you model videogames.
  • 3. What is a model of a videogame? Motherload (XGen Studios, 2004) DrillBot 6000 (Smith et al., 2009) a complete game a playable game sketchmodeling a complete game
  • 4. Why build models of videogames? Models are easier to build than complete games. AND Playtesting these models leads to understanding of design ideas.
  • 5. “Game engines” Conventional game engines: Solutions to game programming problems (physics, graphics, sound, network, …) API or scripting language Ludocore (a logical game engine): Solutions to logical game modeling problems (actions, effects, expectations about players, …) Sketching language
  • 6. Outline Modeling approaches Building up a logical game model Use cases Perspective
  • 7. Modeling Approaches State-transition formalisms State over time leading to rewards… …but games have rules Game Description Language (Love et al., 2004) Representation using logic programs Game concepts (players, moves, goals) Event calculus for game modeling (Nelson et al., 2008) Independently modifiable rules “Commonsense law of inertia”
  • 8. Building up a logical game model (Step 0) A complete, logical game model Each box is a pile of logical assertions. Game-specific Common
  • 9.
  • 14.
  • 17. Building up a logical game model (Step 3) A specification of a game Idea: Quickly implement the game’s world in terms of foundational concepts. Game Engine Game Rules State Events Consequences Nature model ------------------------------------------ Supporting concepts World configuration Dynamic Timeless Event Calculus
  • 18.
  • 20.
  • 23. Using Ludocore models Method: Assemble speculative assumptions. Request gameplay traces. Use cases: Running the simulation… Forward Backward Sideways Structural queries Human playtesting
  • 24. Running the simulation… Forward: Traces starting from some initial conditions Backward: Traces ending in some final conditions Sideways: Traces matching some conditions across time happens(mine(a1),0). happens(drain,1). happens(drain,2). happens(trade,3). happens(mine(a2),4). happens(mine(a0),5). happens(down_to(a),6). happens(mine(space_canary_corpse),7). happens(mine(c0),8). happens(down_to(c),9). happens(down_to(f),10). happens(up_to(c),11). happens(up_to(a),12). happens(down_to(c),13). happens(down_to(f),14). A DrillBot 6000 event trace
  • 25. Structural queries Method: Mark certain elements of world configuration as flexible. Request gameplay traces including specific configurations. Determining mine positions in Minesweeper Placing roads, buildings, and cliffs in Warzone 2100 http://warzone2100.org.uk/manual-diorama.html
  • 26. Human playtesting Use a human playtester instead of the engine’s included solver. (Smith et al., 2009) Answers for… Engagement? Fun? Hesitation?
  • 27. Perspective Ludocore doesn’t solve design problems. It provides intelligent feedback that helps humans solve design problems. Forward simulation: “Here’s an obvious bug!” Backward simulation: “My puzzle has no shortcuts.” Structural queries: “99 new level designs!” Human playtesting: “Players always go left at the fork.”
  • 28. Conclusion Ludocore provides a powerful representation for games and design expectations. Ludocore models supports focused, machine playtesting. One logical game model can enable a variety of uses.
  • 29. Thank you Ludocore: A Logical Game Engine for Modeling Video Games Presenter: Adam M. Smith amsmith@soe.ucsc.edu

Hinweis der Redaktion

  1. Here is simple statement.Let me build some context around this statement before the bulk of the talk.
  2. Left: Motherload-- Mining robot, navigating a world, drilling out rocks to recover valuable ore, managing a continually draining energy supply, trade in rocks and refuel only at the top of the mapRight: db6k was created using our game engine with the same core mechanics, but art assets and other details stripped awayNote: Real games designers build prototypes like this as part of the design process for real games (abstract, programmer art, subset of complete mechancs). Making this kind of game as part of an experiment towards designing larger games is what separates prototypes from toy research games.Keep db6k in mind, it will be my running example.
  3. Quickly building informative models is what Ludocore is all about.Ludocore focuses on automated playtesting, but can be used with human players as well.
  4. Def: comprehensive software libraries for game developmentIn practice: a collection of code you would have had to re-write for every game, wrapped via an accessible interfaceNOTE: models that you create with L are fed into an answer set solver which produces detailed gameplay traces(no code in this talk)
  5. S-T (MDPs): misses the major point that games have RULES (some inherently factored rep of dynamic system from which gameplay emerges)GDL: but much easier to specify, still S-T at the core, ultimately designed to learn about (GG)players, not game designsEC: is a logic language for representing and reasoning about actions and their effectsRules: swap in/out, better resonates with how real games are defined – don’t write out a complete trans function, it emerges from rulesCLoI: imperative updates to state variables in game code;So: ec has properties we really want, but missing a game vocabulary and playtesting toolsLudocore: higher level formalism specific to building game models
  6. Models in our engine are made of components that incrementally build on each other.You could just write an ad-hoc game model from scratch (we did many times!), but this factoring seems to be useful.Fill up this diagram over the next few slides
  7. Temporal logic: We’ve found it useful to use EC as a base (vs something ad-hoc).Timepoints map to game simulation ticksFluents are conditions that can change over time (subject to CLoI), map to tables of game stateEvents instantaneous occurences, straight-forwardPluggable init/term rules, map to event handling logic in gamesTraces are logs of events and world state over time.Existence of interesting traces and their contents is where the design understanding comes from.TL: can be used to arbitrary systems with state change over time -- but: we focus on modeling systems which could reasonable be described by the code implementing some game
  8. NOTE: use drillbot examplesState: raw inertial state + computed views + implicit current-time (ex: occupied(Pos) ~ rock(R),in(R,P),holds(present(R),T) ,T=now)Events: conflict (mine and trade) vs. possibility (mine with energy) vs. selectability (trade with empty inventory)Player/Nature: tag subsets of game events as player actions or spontaneous/triggered actions (player’s avatar movement vs. NPC movement)Models: pluggable, selection policies for events (more later)MISSING: scoring, victory conditions (possible to build, but not necessary for most models)PRESENT: structure which supports the our factoring of game models, the dotted-line boundaries
  9. Given high-powered concepts in the background theory, Db6k is relatively easy to describeState: robot is at position with some energy, rock is presentEvents: mining, moving, refueling (only refuel at base, only move to empty cavern)Consequences: moving reduces energy (and changes position!), refueling restores itNature model: spontaneous energy drain (slow leakage over time, not a player’s move, but keeps happening, blame on nature)S Concepts: non-dynamic, but still critical definitions (how many energy levels there are, energy cost of actions)W Configuration: concrete level design and item specs (cavern network, tagging some rocks as treasure)
  10. Modeling the game’s rules isn’t enough to produce an informative model.There is a big gap between what is technically possible in a game and what you see during play (conj: game design is all about understanding this gap!). Demonstrating and documenting that gap is an important function of a game model (a play model, really).Asserts: refuel robot is at the base and under half energyForbids: no mining if there are more than 5 rocks in the inventoryDefault model says anything goes. Pile-on to incrementally carve away unrealistic behavior.
  11. Player model restricted the game model to only realistic gameplay traces.SAs do the same thing, restricting the model to only interesting traces (with interestingness at the whim of the designer).Scenarios: alternative initial conditionsGoals: something that must be true of every trace the model admitsMetrics: compute numerical score for any trace, ask to minimize or maximizeWrap up: this is what it takes to specify an informative model (requires modeling a focused view of some play situation)
  12. Method: (concretely) Writing a little bit of code- Running our command-line tool
  13. Initial conditions: robot starts underground with low energy. What can happen next?Final conditions: all rocks are collected at t=10. How did this happen?Partial spec: t=1..20, refueling only happened once (don’t know/care when). How did the robot survive?Event trace at right is actual output from design tools.
  14. Instead of trying to learn about the dynamic part of your game’s rules. SQs can tell you about the timeless/static parts of the rules.Minesweeper: What placements of mines on the map are consistent with the current visible game state? Puzzle solver in ~100 lines.Wz2100: What building locations and terrain heights are consistent with certain strategic-fairness constraints? We didn’t do this work, but the developers use the same logic tools we do.~ with our engine you could extend this procedural content generation with dynamic, gameplay contraintsThe magic: write down the mechanics for forward simulation and get a puzzle solvers and procedural content generators almost for free
  15. The Ludocore engine is heavy machinery behind Biped, a dual support prototyping tool we presented elsewhere.Letting a human play the role of an incremental forward simulator is relatively easy (computationally speaking).Human players reveal information that can’t be read from a symbolic trace.
  16. It can’t say a game is good or bad, but it can the provide objective feedback you need to form your own opinion.Taking this feedback and deciding the next gameplay experiment is what game design is all about.
  17. Design expectations: structure outside of just the game’s rules is critical for making the model informative. Machine playtesting: respects documented assumptions about real player behavior. Using logic for PCG? Come to my talk tomorrow at 11!