Game Layers
Another approach to formalize game design is to divide it into a set of 'slices' to focus the designer's attention when he creates a game.
These slices are related to anything involved with videogames, from inner game structure to player experience. Several examples of such models exist.
The simplest ones are using three slices, such as the MDA model [pdf] and Katie Salen & Eric Zimmerman's Primary Schemas. Aki Jävrinen's "game elements" are an evolution of the MDA model aiming to provide more details through the use of nine different slices of a game. Such models may also be heavily detailed, as shown by Jesse Schell's "lenses" his book, The Art of Game Design, provides a hundred slices.
Among these "slice-based" tools, one of the most suited for architecture seems to be proposed by Paolo Tajè. His model divides the game-player relationship into six "layers." By focusing his attention on a single layer at a time, a game designer should be able to create or to modify a game design more easily. These layers are ordered in a precise manner from the "game" to the "player":
- Token, at the bottom, is a layer to reference every game element (i.e. "tokens", as defined by Rolling & Morris).
- Prop layer contains the different "properties" of the tokens. We observe here a high similarity with the Object-Oriented paradigm: "token" would be "objects" and "prop" would be their embedded "methods."
- Dyn lists all the actions a player can perform.
- Goal lists all the goals a player have to reach to win the game.
- Meta references any other element that is not defined in the previous layers, but that is still playing an active role in shaping the player experience.
- Last but not least, Psycho summarizes any emotion the player is likely to feel when he is playing.
 A representation of Angry Birds using Tajè's Game Layers.
This model provides an overview of the different elements in a game to help designers to spot potential design flaws. By summarizing and categorizing all the game features in a single document, this tool is handy to quickly communicate the game design to other departments. First, the Token, Prop, Dyn, Goal, and Meta layers can be used by software engineers as a reference to build a digital prototype. Then, the Psycho layer will allow checking whether players feel the expected emotions during beta tests.
Discussion
All these architectural tools serve a simple purpose: presenting a game structure in a formalized way. Although each model features various levels of details and complexity, the four models presented in this article could be very useful when a game designer needs to explain her creation to software engineers.
As discussed in the introduction of this article, some game developers in the industry are seeking for new tools to complement or replace the traditional Game Design Document. I think that the models presented in this article could be a convenient way for the design department of a game studio to communicate with the development one. By using such formal models, the game designer shapes his own work in a way the software engineers are used to.
Although some models are not based on previously existing standards (such as UML or Petri net), they all seem deeply influenced by the process of abstraction tied to programming languages, and more specifically by the "object-oriented programming paradigm. Indeed, all these tools divide a game into distinct and autonomous elements, and explicitly state how these elements interact with each other. The table below summarizes my observations regarding the potential uses of these models.
Comparison between the four "formal game design tools":

As suggested by this table, the four models can be useful for a single game project. For example, to create a game like FarmVille, a game designer might start by sketching all the game elements into "Tokens" (e.g. crops, animals, land units...). He can then define the basic interactions between tokens through an interaction matrix (e.g. crops can be planted on land units...).
However, the quite complex economical system of such a game would be easier to model with Machinations (e.g. proportion of resources produced by each type of crop for a given amount of time…). The documents produced thanks to these two models should help the Software Engineers to build running prototypes of the game. The Alchemy and Layers models will then allow the designer to formalize guidelines for the beta test. Whether to use Alchemy or Layers depends on the inner complexity of the game.
Another approach consists in relying on a single model. For instance, Alchemy can produce an exhaustive document that may be used to communicate with both engineering and testing departments. Indeed, this tool allows detailing each rule and element of the game through its "mechanics" system. It should guide the engineers. These "mechanics" can then be linked to an "expected player experience" composed by the acquisition of "skills." This information can be used as a reference by beta testers.
Conclusion
As of today, none of the tools presented in this article seems to be widely used by game development studios. While some professionals might find them impractical, we think that this situation is largely due to two factors: ignorance of the existence of such models, and difficulty to fit them in the game creation process.
By presenting a selection of four formal models related to game design, I hope to help people being aware of the existence of such theoretical tools. As for the way to fit them in the game creation process, we think that they can be useful in two cases. First, they may help a designer to create a game design by guiding him with a "defined framework."
Additionally, these tools are helpful to build the software architecture of video games. They make a game designer present his work in a form similar to the object-oriented paradigm. It may help game designers to communicate with software engineers to build solid architecture. By modeling the expected player reactions, some of these tools may even help designers to give clear guidelines to the testing department. So, formal game design tools may be a solution for game studios wishing to experiment new communicational tools to replace the traditional Game Design Document.
However, for now these tools remain theoretical and do not allow direct code generation. A further step to formalize game design would be to create prototyping software based on these models. Indeed, with programs like IBM's Rational Rose, software engineers can automatically generate code by drawing UML diagrams. So, why don't game designers have access to similar tools for videogames?
We already observe that some amateur game creation tools, such as GameMaker and The Games Factory 2 are sometimes used in the industry to build prototypes. They share conceptual similarities with the tools presented in this paper.
For instance, to ease the creation of the game rules, The Games Factory 2 features a giant table looking like the "token interaction matrix" introduced by Rollings and Morris. But, as of today, no such prototyping software is truly based on an existing theoretical model. Hence, some researchers are conducting experiments to build new software tools based on solid theoretical models.
I already mentioned the software tool based on Machinations. It can perform some automated tests to check for potential design flaws, but it does not allow designers to create playable prototypes yet. Another example is Ludocore [pdf], which is a tool to build playable games prototypes by using the event calculus logical language. Thanks to its strong theoretical foundations, it generates useful "gameplay traces." The tool logs the actions of players to help designers who use this tool to improve the rules of their games.
I, along with a team of researchers, am also doing some experiments in this field. Our "Gam.B.A.S." tool is based on a theoretical model that divides a game structure into elementary pieces called "GamePlay bricks." We are currently working on an improved version of the theoretical model to build a better software tool.
The design of such tools is an experimental task that requires a high investment in research & development. Unlike graphics or physics-related research, the creation of new professional design tools is hard to convert into a unique selling point feature for a commercial video game. Therefore, this field appears to be an opportunity for university laboratories to get involved in videogames-related research. A few academic projects already exist, but we hope that many others researchers and industry professionals will be interested in exploring the field of "formal game design tools."
|
So, have you tried articy:draft yourself? If yes, what do you think of it ?
The exception is the Angry Birds example using Cook’s Game Alchemy and this illustrates perhaps what all of these models should be striving for first and foremost: the elegance of a focused, readable, repeatable format.
If a system is confusing, perhaps it’s trying to cover too much ground. As the article states, games are deeply layered, each layer is its own system and deserving of it’s own model. Ultimately, the task of bringing all those layers together into a meaningful whole is almost impossible to reduce to diagram form; it's that sought-but-never-tamed skill that make talented designers special.
I've been using the Token and Alchemy models for as long as I've been designing games. I didn't really look for a name and "official" rules for these, I just used my programmer knowledge to do my best in communicating with the programmers. These is just an extension of UML and all the questions you have to ask yourself when making the analysis of the clients need for a software : when the user hits this button, what shoud come up and what 'mechanics' are running in the background to display the correct result. However I didn't know about the Layer model and it can be interesting, although I think it can easily be integrated in the other 2 I already use.
Sometimes I think that trying to find a model that works for every existing game types and for the ones yet to be invented is impossible. Trying to create a simple model (meaning with only a few elements to use) will limit it to simple games, and trying to make an exhaustive model will make it impossible to use for even large games (ie the Layer model which can contain up to 100 in Jesse Schell's book). So maybe defining "gameplay bricks / pre-existing mechanic blocks" for different game types could be a good way to go, especially as some genres are well established and mastered already. Then providing a set of sementic tools to use to create additional, inovative features that will fit in the model's rules can make it open for additions and let it evolve while the game design practices evolve.
Another point that I want to raise regarding this article titled "Game Design Tools for Collaboration" is that you don't really talk about communicating with artists, writters, sound designers and other departments. Sounds are parts of a feedback, so are some graphics and when you think about it, they have to be plugged together by the programmers. Focusing on the core mechanics is good and necessary to set the ground rules of your game, but I like my documentation to be useful for the entire team, regardless of their department. Unless we add these to the model, there is a huge amount of work left to have a real overall view of the game and the effects it will have on the player. Sometimes the fun doesn't come from learning something, but enjoying the visual and sound feedbacks the player gets from executing a 'meaningless' action.
Moreover, if we can write a document exhaustive enough to contain informations useful for the entire team, and clear enough to be used by all the departments, it's a win-win situation and a real gain of time that can be spent on tweaking, testing and improving the game.
Hope I made myself understandable, I got a little bit carried away from my initial thoughts :D
This idea have yet to result in a fully functional software design tool, but if you are interested in how I see the "gameplay brick" idea, you can find out more in a 2006 article published here: http://www.gameclassification.com/EN/about/article.html.
Regarding your comment on the "collaborative" side of the tools, you are right, my main goal with the tools presented here was for communication between game designers and game developers. I haven't been looking at communication needs for others departments, but your idea of "one document to communicate it all" is very interesting. Do you have some example of such document that you could share?
And by-the-way, I really enjoyed your book and your PhD thesis. It was very inspiring to mine.
I just want to show you all a "spin-off" of that article, a Layer-based deck of cards useful for prototyping and brainstorming.
Here's the link:
http://www.layersdesigntool.com/
It's a tool that still lacks an updated theroretical background (I've changed the layers a little) but I plan to work on that in the future.
Also, another similar "game design deck of cards" that may interest you is Playgen's "Adding Play" (http://gamification.playgen.com/). I didn't mention it in the article because it's a tool 100% geared towards game design IMHO, but it's also a very interesting deck of cards (and with a slightly different "layering" than yours Paolo, so maybe you'll want to try it out).
Anyway, definitively looking forwards your next article of Game Layers!