SlideShare a Scribd company logo
MetaBoard: a framework for board
games.
By Laura Risani (alias) with the
collaboration of Stéphane Ducasse
Motivation
Games like
•PacMan
• Tetris
•Sokoban
•Snake
•Miner
•SameTile
•Atomic
•BoulderDash
A tiled space through which pieces are moved
according to some rules
Boardician’s design metaphor
There is a board on a table, a post-it of game data
attached to it, players sitting around and a director
standing.
He says 'play' successively to each of them and, as a
consequence, they according to their thoughts (play-
conditions) modify other players' thoughts by saying
things to them and modify the board/post-it with
their hands.
board
data
play-
conditions
#play
director
player
player
player
player
BGPlayer
BGDirector
BGData BGUserInterface
BGBoardSpace
BGBoardPlace
BGWall
BGFloor
BGMovableItem
BGSteadyItem
<PlayCondition>
BGBoard
BGPosition
*
*
*
*
BGHuman
BGPointer
•BGPlayer : action of modifying game’s board/data/players'
play-conditions when
1. receiving #play
2. receiving other msg to do some work related to its
playing purpose
Tell #nextPlayer.
•<PlayCondition> : anything that conditions how a player
behaves when receiving #play (like
BGDirection : BGDown, … ;
BGPlayState : BGOver , BGPaused, … ;
BGUserInput: BGClick, BGKeyStroke). Not necessarily directly
known by the player.
•BGHuman : action of modifying (…) because of user input.
•BGDirector : action of directing game flow. Initialize and
know the things that made up the board game. Loop while
game not over : decide who plays next, send him #play.
•BGBoard : board’s space and items placed at it.
•BGData : game data that doesn't belong to any particular
object (like lives, score, ... )
•BGUserInterface : handling of user input/output.
•BGFloor can hold any type of BGBoardItem
(BGMovableItem, BGSteadyItem), while BGWall doesn’t
accept any
A possible workflow
To implement a game with the framework
1. Define game's director (subclass of BGDirector) and
then define/implement successively what is needed
in each msg sent from within BGDirector's msg
#initialize.
2. Run game sending 'BGDirectorSubclass new play'
and adjust details according debug windows.
3. Add enhancements (menu, settings, … )
Example : Mines (MI-)
BGFloor
MIBoard
MITile
MIMine MINumber MIVoid
BGBoardSpace
MICoverState
MICovered
MIUncovered
MIFlagState MIFlagged
MIUnflagged
BGBoard
*
BGData MIData
BGPlayer
MITileAction
BGHuman MIHuman
BGDirector MinesGame
•MIData: mines left, seconds spent playing.
•MITileAction: action of doing something on a tile (toggle flag /
uncover) and carrying on its consequences. It’s play-conditions are
the pointed MITile’s MICoverState and MIFlagState.
( 1° )
( 2° ) MICoverState
MIFlagState
Example : Tetris (DP-)
BGSteady
Item
DPBoard
DPSquare
DPPiece
BGBoard
BGMovable
Item
DPPieceLayout
*
BGData
DPData
•DPData: number of completed lines.
BGPlayer
DPPieceMover
BGHuman DPHuman
BGDirector TetrisGame
•DPPieceMover: action of moving current piece. It’s play-condition is
aBGDirection.
•DPPieceDropper: action of dropping current piece (if not bottomed
periodically drop it, if bottomed add it to board and drop a new one).
It’s play-conditions are aBGTimedState and the BGPosition of the
board where new pieces are first dropped)
( 1° )
( 2° )
BGTimedState
BGDirection
DPPieceDropper
( 3° ) BGPosition
Example : Pacman (E-)
BGBoardSpace
BGFloor
BGMovableItem
BGSteadyItem
EBoard
*
*
EEater
BGBoard
EBiFloor
ETeletransporter
ETriFloor
EDirectedFloor
EBullet
EBigBullet ESmallBullet
EScoreItem
EMonster
BGData EData
BGPlayer
EEaterMover
BGHuman EHuman
BGDirector PacmanGame
( 1° )
( 2° )
BGTimedState
BGDirection
EMonsterMover
( 3° )
EScoreItemPlacer
( 4° )
BGDirection EAttitude
EVulnerability
EMoveConseq
uencer
, ,
EPositionSituation
EEaterAtBullet ,
EEaterAtEmptyFloor ,
EEaterAtMonster ,
EEaterAtScoreItem ,
EMonsterNotAtEater
•EData: lives, score.
•EMoveConsequencer : action of carrying on consequences of
moving an EEater / EMonster. Play-conditions: BGPosition,
EEater/EMonster , EPositionSituation subclasses.
•EEaterMover : action of moving an EEater and carrying on
consequences. Play-conditions: BGDirection.
•EMonsterMover: action of moving an EMonster and carrying on
consequences. Play-conditions: BGFloor subclasses, BGDirection,
EVulnerability, EAttitude.
•EScoreItemPlacer : action of placing/displacing a EScoreItem on the
board. Play-conditions: BGTimedState.
Other example games : Sokoban, Snake, SameColor.
More info at
http://boardician.blogspot.com/2015/07/metaboard.html
Questions? Comments? Suggestions? Mail me at
laura.risani@gmail.com
Thank you !
<3

More Related Content

What's hot

Lordmancer II ICO deck
Lordmancer II ICO deckLordmancer II ICO deck
Lordmancer II ICO deck
Ilya Mikov
 
7 gate game design document
7 gate game design document 7 gate game design document
7 gate game design document ARshut Syabrin
 
Beat Your Mom At Solitaire—Reverse Engineering of Computer Games
Beat Your Mom At Solitaire—Reverse Engineering of Computer GamesBeat Your Mom At Solitaire—Reverse Engineering of Computer Games
Beat Your Mom At Solitaire—Reverse Engineering of Computer Games
Christoph Matthies
 
Disk partition alignment
Disk partition alignmentDisk partition alignment
Disk partition alignment
Paolo Pedaletti
 
Endless vision gdd_revised_1214
Endless vision gdd_revised_1214Endless vision gdd_revised_1214
Endless vision gdd_revised_1214
Lisa Lee
 
Nighthawk Controller
Nighthawk ControllerNighthawk Controller
Nighthawk Controller
Ben Speer
 
Top zed run alternatives
Top zed run alternativesTop zed run alternatives
Top zed run alternatives
zaarahary
 
Dino system preview
Dino system previewDino system preview
Dino system preview
EatSleepDigitals.com
 
Work Flow
Work FlowWork Flow
Work Flow
copelandadam
 
Lock and Key Design Document Draft Two
Lock and Key Design Document Draft Two Lock and Key Design Document Draft Two
Lock and Key Design Document Draft Two
Ochuko Ideh
 
cpbricks project document
cpbricks project documentcpbricks project document
cpbricks project document
i i
 
XINO 2014 Hardware - Mechanix
XINO 2014 Hardware - MechanixXINO 2014 Hardware - Mechanix
XINO 2014 Hardware - Mechanix
Dhruv Khurana
 
Gateway 3ds ultra 3.0.1 public beta released
Gateway 3ds ultra 3.0.1 public beta releasedGateway 3ds ultra 3.0.1 public beta released
Gateway 3ds ultra 3.0.1 public beta released
r4gateway
 

What's hot (17)

Lordmancer II ICO deck
Lordmancer II ICO deckLordmancer II ICO deck
Lordmancer II ICO deck
 
Ch2
Ch2Ch2
Ch2
 
7 gate game design document
7 gate game design document 7 gate game design document
7 gate game design document
 
Game design document
Game design document Game design document
Game design document
 
Ten facts about minecraft
Ten facts about minecraftTen facts about minecraft
Ten facts about minecraft
 
Beat Your Mom At Solitaire—Reverse Engineering of Computer Games
Beat Your Mom At Solitaire—Reverse Engineering of Computer GamesBeat Your Mom At Solitaire—Reverse Engineering of Computer Games
Beat Your Mom At Solitaire—Reverse Engineering of Computer Games
 
Disk partition alignment
Disk partition alignmentDisk partition alignment
Disk partition alignment
 
Endless vision gdd_revised_1214
Endless vision gdd_revised_1214Endless vision gdd_revised_1214
Endless vision gdd_revised_1214
 
Nighthawk Controller
Nighthawk ControllerNighthawk Controller
Nighthawk Controller
 
Top zed run alternatives
Top zed run alternativesTop zed run alternatives
Top zed run alternatives
 
Dino system preview
Dino system previewDino system preview
Dino system preview
 
Hci
HciHci
Hci
 
Work Flow
Work FlowWork Flow
Work Flow
 
Lock and Key Design Document Draft Two
Lock and Key Design Document Draft Two Lock and Key Design Document Draft Two
Lock and Key Design Document Draft Two
 
cpbricks project document
cpbricks project documentcpbricks project document
cpbricks project document
 
XINO 2014 Hardware - Mechanix
XINO 2014 Hardware - MechanixXINO 2014 Hardware - Mechanix
XINO 2014 Hardware - Mechanix
 
Gateway 3ds ultra 3.0.1 public beta released
Gateway 3ds ultra 3.0.1 public beta releasedGateway 3ds ultra 3.0.1 public beta released
Gateway 3ds ultra 3.0.1 public beta released
 

Viewers also liked

Anil Deshmukh_cv_BE_Mech
Anil Deshmukh_cv_BE_MechAnil Deshmukh_cv_BE_Mech
Anil Deshmukh_cv_BE_MechAnil Deshmukh
 
Data Defeats Truman – SXSW Panelpicker Pitch
Data Defeats Truman – SXSW Panelpicker PitchData Defeats Truman – SXSW Panelpicker Pitch
Data Defeats Truman – SXSW Panelpicker Pitch
Kyle J. Britt
 
MEMO.AutoStay.GarnREDACTED (1)
MEMO.AutoStay.GarnREDACTED (1)MEMO.AutoStay.GarnREDACTED (1)
MEMO.AutoStay.GarnREDACTED (1)Rebecca Holmes
 
Wavelet estimation for a multidimensional acoustic or elastic earth- Arthur W...
Wavelet estimation for a multidimensional acoustic or elastic earth- Arthur W...Wavelet estimation for a multidimensional acoustic or elastic earth- Arthur W...
Wavelet estimation for a multidimensional acoustic or elastic earth- Arthur W...
Arthur Weglein
 
хөдөлмөрийн сайд, сангийн сайдын хамтарсан тушаал
хөдөлмөрийн сайд, сангийн сайдын хамтарсан тушаалхөдөлмөрийн сайд, сангийн сайдын хамтарсан тушаал
хөдөлмөрийн сайд, сангийн сайдын хамтарсан тушаал
Хатанбаатарын Батжаргал
 
戴宇陞簡報Ted台北
戴宇陞簡報Ted台北戴宇陞簡報Ted台北
戴宇陞簡報Ted台北
宇陞 戴
 
David lee te dx taipei open mic
David lee te dx taipei open micDavid lee te dx taipei open mic
David lee te dx taipei open mic
David Lee
 
English process essay
English process essay English process essay
English process essay
kimberleyfay
 
Go言語の紹介
Go言語の紹介Go言語の紹介
Go言語の紹介
Amuro Nishizawa
 
Graham Boyd CV care worker
Graham Boyd CV  care workerGraham Boyd CV  care worker
Graham Boyd CV care workerGraham Boyd
 
Google Apps Which May Help Me Land a Job!
Google Apps Which May Help Me Land a Job!Google Apps Which May Help Me Land a Job!
Google Apps Which May Help Me Land a Job!
Shetay Ashford, M.S.
 
Search pets lost pets finder-how to find a lost pet-Search my lost pet
Search pets lost pets finder-how to find a lost pet-Search my lost petSearch pets lost pets finder-how to find a lost pet-Search my lost pet
Search pets lost pets finder-how to find a lost pet-Search my lost pet
shawnwilson729
 
Typhoon Asia
Typhoon AsiaTyphoon Asia
Typhoon Asiarupsankit
 
Altdata biggsea txn analytics 20150719
Altdata  biggsea txn analytics 20150719Altdata  biggsea txn analytics 20150719
Altdata biggsea txn analytics 20150719
Altan Atabarut, MSc.
 

Viewers also liked (19)

UA Achievements
UA AchievementsUA Achievements
UA Achievements
 
Anil Deshmukh_cv_BE_Mech
Anil Deshmukh_cv_BE_MechAnil Deshmukh_cv_BE_Mech
Anil Deshmukh_cv_BE_Mech
 
Data Defeats Truman – SXSW Panelpicker Pitch
Data Defeats Truman – SXSW Panelpicker PitchData Defeats Truman – SXSW Panelpicker Pitch
Data Defeats Truman – SXSW Panelpicker Pitch
 
MEMO.AutoStay.GarnREDACTED (1)
MEMO.AutoStay.GarnREDACTED (1)MEMO.AutoStay.GarnREDACTED (1)
MEMO.AutoStay.GarnREDACTED (1)
 
Wavelet estimation for a multidimensional acoustic or elastic earth- Arthur W...
Wavelet estimation for a multidimensional acoustic or elastic earth- Arthur W...Wavelet estimation for a multidimensional acoustic or elastic earth- Arthur W...
Wavelet estimation for a multidimensional acoustic or elastic earth- Arthur W...
 
хөдөлмөрийн сайд, сангийн сайдын хамтарсан тушаал
хөдөлмөрийн сайд, сангийн сайдын хамтарсан тушаалхөдөлмөрийн сайд, сангийн сайдын хамтарсан тушаал
хөдөлмөрийн сайд, сангийн сайдын хамтарсан тушаал
 
AS%20Assignments%20Book
AS%20Assignments%20BookAS%20Assignments%20Book
AS%20Assignments%20Book
 
Secrets
SecretsSecrets
Secrets
 
戴宇陞簡報Ted台北
戴宇陞簡報Ted台北戴宇陞簡報Ted台北
戴宇陞簡報Ted台北
 
David lee te dx taipei open mic
David lee te dx taipei open micDavid lee te dx taipei open mic
David lee te dx taipei open mic
 
English process essay
English process essay English process essay
English process essay
 
Go言語の紹介
Go言語の紹介Go言語の紹介
Go言語の紹介
 
Graham Boyd CV care worker
Graham Boyd CV  care workerGraham Boyd CV  care worker
Graham Boyd CV care worker
 
Google Apps Which May Help Me Land a Job!
Google Apps Which May Help Me Land a Job!Google Apps Which May Help Me Land a Job!
Google Apps Which May Help Me Land a Job!
 
Search pets lost pets finder-how to find a lost pet-Search my lost pet
Search pets lost pets finder-how to find a lost pet-Search my lost petSearch pets lost pets finder-how to find a lost pet-Search my lost pet
Search pets lost pets finder-how to find a lost pet-Search my lost pet
 
Typhoon Asia
Typhoon AsiaTyphoon Asia
Typhoon Asia
 
whole
wholewhole
whole
 
Zachs_Resume
Zachs_ResumeZachs_Resume
Zachs_Resume
 
Altdata biggsea txn analytics 20150719
Altdata  biggsea txn analytics 20150719Altdata  biggsea txn analytics 20150719
Altdata biggsea txn analytics 20150719
 

Similar to MetaBoard

Unity workshop
Unity workshopUnity workshop
Unity workshop
fsxflyer789Productio
 
Going Multi-Node
Going Multi-NodeGoing Multi-Node
Going Multi-Node
SmartLogic
 
PlayStation®3 Leads Stereoscopic 3D Entertainment World
PlayStation®3 Leads Stereoscopic 3D Entertainment World PlayStation®3 Leads Stereoscopic 3D Entertainment World
PlayStation®3 Leads Stereoscopic 3D Entertainment World
Slide_N
 
Thesis Overview
Thesis OverviewThesis Overview
Thesis OverviewGertThijs
 
Impact of big data in gaming industry
Impact of big data in gaming industryImpact of big data in gaming industry
Impact of big data in gaming industry
Vikas Kumar
 
JRC Seminar (History of Video Game Industry)
JRC Seminar (History of Video Game Industry)JRC Seminar (History of Video Game Industry)
JRC Seminar (History of Video Game Industry)
Shibaura Institute of Technology
 
Let's make a game for the Playdate
Let's make a game for the PlaydateLet's make a game for the Playdate
Let's make a game for the Playdate
Giorgio Pomettini
 
Android game engine
Android game engineAndroid game engine
Android game engine
Julian Chu
 
Parallel Graphics in Frostbite - Current & Future (Siggraph 2009)
Parallel Graphics in Frostbite - Current & Future (Siggraph 2009)Parallel Graphics in Frostbite - Current & Future (Siggraph 2009)
Parallel Graphics in Frostbite - Current & Future (Siggraph 2009)
Johan Andersson
 

Similar to MetaBoard (9)

Unity workshop
Unity workshopUnity workshop
Unity workshop
 
Going Multi-Node
Going Multi-NodeGoing Multi-Node
Going Multi-Node
 
PlayStation®3 Leads Stereoscopic 3D Entertainment World
PlayStation®3 Leads Stereoscopic 3D Entertainment World PlayStation®3 Leads Stereoscopic 3D Entertainment World
PlayStation®3 Leads Stereoscopic 3D Entertainment World
 
Thesis Overview
Thesis OverviewThesis Overview
Thesis Overview
 
Impact of big data in gaming industry
Impact of big data in gaming industryImpact of big data in gaming industry
Impact of big data in gaming industry
 
JRC Seminar (History of Video Game Industry)
JRC Seminar (History of Video Game Industry)JRC Seminar (History of Video Game Industry)
JRC Seminar (History of Video Game Industry)
 
Let's make a game for the Playdate
Let's make a game for the PlaydateLet's make a game for the Playdate
Let's make a game for the Playdate
 
Android game engine
Android game engineAndroid game engine
Android game engine
 
Parallel Graphics in Frostbite - Current & Future (Siggraph 2009)
Parallel Graphics in Frostbite - Current & Future (Siggraph 2009)Parallel Graphics in Frostbite - Current & Future (Siggraph 2009)
Parallel Graphics in Frostbite - Current & Future (Siggraph 2009)
 

Recently uploaded

Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Product School
 
When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...
Elena Simperl
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
Kari Kakkonen
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Albert Hoitingh
 
Knowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and backKnowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and back
Elena Simperl
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
Thijs Feryn
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
ControlCase
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
Prayukth K V
 
Connector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonConnector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a button
DianaGray10
 
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Thierry Lestable
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
DanBrown980551
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
91mobiles
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
Product School
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
Guy Korland
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
DianaGray10
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
Cheryl Hung
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
KatiaHIMEUR1
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance
 
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdfFIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance
 

Recently uploaded (20)

Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...
 
When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
 
Knowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and backKnowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and back
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
 
Connector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonConnector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a button
 
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
 
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdfFIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
 

MetaBoard

  • 1. MetaBoard: a framework for board games. By Laura Risani (alias) with the collaboration of Stéphane Ducasse
  • 3. Boardician’s design metaphor There is a board on a table, a post-it of game data attached to it, players sitting around and a director standing. He says 'play' successively to each of them and, as a consequence, they according to their thoughts (play- conditions) modify other players' thoughts by saying things to them and modify the board/post-it with their hands.
  • 6. •BGPlayer : action of modifying game’s board/data/players' play-conditions when 1. receiving #play 2. receiving other msg to do some work related to its playing purpose Tell #nextPlayer. •<PlayCondition> : anything that conditions how a player behaves when receiving #play (like BGDirection : BGDown, … ; BGPlayState : BGOver , BGPaused, … ; BGUserInput: BGClick, BGKeyStroke). Not necessarily directly known by the player. •BGHuman : action of modifying (…) because of user input.
  • 7. •BGDirector : action of directing game flow. Initialize and know the things that made up the board game. Loop while game not over : decide who plays next, send him #play. •BGBoard : board’s space and items placed at it. •BGData : game data that doesn't belong to any particular object (like lives, score, ... ) •BGUserInterface : handling of user input/output. •BGFloor can hold any type of BGBoardItem (BGMovableItem, BGSteadyItem), while BGWall doesn’t accept any
  • 8. A possible workflow To implement a game with the framework 1. Define game's director (subclass of BGDirector) and then define/implement successively what is needed in each msg sent from within BGDirector's msg #initialize. 2. Run game sending 'BGDirectorSubclass new play' and adjust details according debug windows. 3. Add enhancements (menu, settings, … )
  • 9. Example : Mines (MI-) BGFloor MIBoard MITile MIMine MINumber MIVoid BGBoardSpace MICoverState MICovered MIUncovered MIFlagState MIFlagged MIUnflagged BGBoard *
  • 10. BGData MIData BGPlayer MITileAction BGHuman MIHuman BGDirector MinesGame •MIData: mines left, seconds spent playing. •MITileAction: action of doing something on a tile (toggle flag / uncover) and carrying on its consequences. It’s play-conditions are the pointed MITile’s MICoverState and MIFlagState. ( 1° ) ( 2° ) MICoverState MIFlagState
  • 11. Example : Tetris (DP-) BGSteady Item DPBoard DPSquare DPPiece BGBoard BGMovable Item DPPieceLayout * BGData DPData •DPData: number of completed lines.
  • 12. BGPlayer DPPieceMover BGHuman DPHuman BGDirector TetrisGame •DPPieceMover: action of moving current piece. It’s play-condition is aBGDirection. •DPPieceDropper: action of dropping current piece (if not bottomed periodically drop it, if bottomed add it to board and drop a new one). It’s play-conditions are aBGTimedState and the BGPosition of the board where new pieces are first dropped) ( 1° ) ( 2° ) BGTimedState BGDirection DPPieceDropper ( 3° ) BGPosition
  • 13. Example : Pacman (E-) BGBoardSpace BGFloor BGMovableItem BGSteadyItem EBoard * * EEater BGBoard EBiFloor ETeletransporter ETriFloor EDirectedFloor EBullet EBigBullet ESmallBullet EScoreItem EMonster BGData EData
  • 14. BGPlayer EEaterMover BGHuman EHuman BGDirector PacmanGame ( 1° ) ( 2° ) BGTimedState BGDirection EMonsterMover ( 3° ) EScoreItemPlacer ( 4° ) BGDirection EAttitude EVulnerability EMoveConseq uencer , , EPositionSituation EEaterAtBullet , EEaterAtEmptyFloor , EEaterAtMonster , EEaterAtScoreItem , EMonsterNotAtEater
  • 15. •EData: lives, score. •EMoveConsequencer : action of carrying on consequences of moving an EEater / EMonster. Play-conditions: BGPosition, EEater/EMonster , EPositionSituation subclasses. •EEaterMover : action of moving an EEater and carrying on consequences. Play-conditions: BGDirection. •EMonsterMover: action of moving an EMonster and carrying on consequences. Play-conditions: BGFloor subclasses, BGDirection, EVulnerability, EAttitude. •EScoreItemPlacer : action of placing/displacing a EScoreItem on the board. Play-conditions: BGTimedState.
  • 16. Other example games : Sokoban, Snake, SameColor. More info at http://boardician.blogspot.com/2015/07/metaboard.html Questions? Comments? Suggestions? Mail me at laura.risani@gmail.com Thank you ! <3