dynaMAZE

Teachers: 
Fulvio Frapolli
Maurizio Rigamonti
Denis Lalanne
Student: 
Tom Forrer
Project status: 
Finished
Year: 
2008

Context

On the subject of games, we often mean either physical games, i.e. Monopoly, Chess, Poker, Scrabble, or video games such as Arcanoid, Pong, Tetris, Age of Empires, etc.
Today with games, we devise strategies, explore the possibilities of navigating or interacting with the game world, or just enjoy the entertainment they create. With a physical board game, the game concept is only playable with a few variants: we are often confined by physical boundaries. Also in most video games we just play scenarios within the game, but the gameplay is rarely accessible to wide modifications.
The Dynamic Rule theory [1] proposes to let human intelligence and imagination interact with the artificial intelligence, by manipulating in a natural way the game‘s abstract rules. The possibility of dynamically modifying the game‘s rules can create new synergies and lead to novel interaction paradigms for games. This bachelor project is situated within this context. This bachelor project consists in developing a game, which enables the user to play it with dynamic rules.

Goal

The main goal of this project is to demonstrate that the language describing the abstract rule-set can be dynamically modified, in order to create new variants of a game. This is done by creating a small game engine that can read a set of abstract game rules, and instantiate the entities associated with them. An entity is an element of the game, with its own state and behaviour: i.e. a player‘s figure, a tile, a ball, etc.
For this project, the game „Labyrinth“ has been chosen. The „Labyrinth“ game consists mainly in reaching some specific objects in a maze, which changes after each turn. In fact, each player must change the structure of the maze by placing a tile on the game board. This slides a column or a row of the game board. Optionally, he can move his figure afterwards along a reachable path in the mutated maze. The first player, who has reached and collected all objects in the maze, wins the game.
„Labyrinth“ provides a behaviour, which is typically confined by the physical properties of the game board, and can be represented by abstract rules. In this project we will:

  • decompose the game in entities,
  • describe the entities in a XML format,
  • implement a simple message model for the entities,
  • implement the game,
  • and evaluate the game on the DiamondTouch Table [2]

Description

  1. Study the model of Dynamic Rules: Abstraction of the game and decomposition of the rules into logical game rules and physical game rules [1].
  2. Choose a game, and describe its behaviour, according to the Dynamic Rules model. Obtain with this approach the abstract rules of the chosen game and identify atomic game mechanics actions. Furthermore, propose variants of the game, which vary the logical rules of the game.
  3. Identify the structure of dynamic entities, which can pass messages to each other and load some basic dynamic behaviour. Picture of the game „Labyrinth Master“, illustrating a player move.
  4. Implementation of the game and, in particular, of our game engine that loads the rule-set, creates the entities and starts the game. Implementation of the graphical user interface for launching the game. Implement new variants of the chosen game.
  5. Integration for a physical interface. The DiamondTouch table will be used for evaluating the flexibility of our game. Four players will play and dynamically update the game‘s rules.

Technology

Java, AWT/Java2D, XML

Bibliography

  1. Dynamic Rules thesis, by Fulvio Frapolli: http://diuf.unifr.ch/people/frapollf/thesis.php
  2. DiamondTouch Table: http://www.merl.com/projects/DiamondTouch/