|Elements Of Game Design (MIT Press)|
Author: Robert Zubek
Is developing a computer game very different than working on a different sort of app, and can you learn how to do it from a book?
The author of this book, Robert Zubek, is a game designer who has developed large-scale social online games at Zynga, MMO game and analytics infrastructure at Three Rings Design, and console games at Electronic Arts/Maxis, so he knows what he's talking about. He also teaches game development courses at Northwestern University, and the book started out as a set of course notes. As such, the aim of the book is to teach newcomers to game design the process of creating computer games.
Zubek starts the book with a look at the basic elements of a game, and how to describe those elements using a model. He uses the example of a game of poker, and works through how a game designed would go about working out what poker consists of in terms of a system of rules and interactions, and the process a player goes through when playing a game of poker. He describes how a game designer would go about the basic design, and the different roles designers can take.
The explanations are interesting and understandable, but as you'd expect from a university level course, don't pull their punches in the vocabulary or concepts.
The next chapter looks at the player experience - different ways of thinking about players, and what motivates someone to play a game. There's an interesting analysis of player theories where Subek looks at several models. These include the Bartle model that says players fall into a number of set categories based on motivation; the Koster model that essentially says people play to have fun and get better; the Big Five Personalities model that splits people into different personality types; and Yee's Gamer Motivation profiles that look at twelve different player profile types.
Mechanics, the basic activities of the game and the rules that govern them, are next on the agenda. There's a good section on games as state spaces that explains the terms and concepts well, and another section on 'families of mechanics' for control, progression, uncertainty and resource management. A chapter on systems, mechanics working together, comes next, with explanations of how mechanics chain together into sequences of relationships such as producers and consumers.
Gameplay, the dynamic activity that comes from players' interactions with the mechanical elements, is the topic of the next chapter. This covers how to analyze games in terms of gameplay loops, along with what motivates players to take part in those loops and how developers can support that player motivation.
Gameplay on a larger scale is covered in a chapter on macrostructure, in which Zubek considers the way a player's experience changes from the beginning through the game to the end, along with what players do in game terms outside the game - talk about it, put teams together, etc.
The book ends with a chapter on prototyping and playtesting that describes how to go about getting ready to design a game, and how to make sure the game is working - tricky for apps like games when there's no single route through the code.
Overall, this is an interesting and well-written book. It's never wow zap sensational, it approaches game development as a serious job that you need to understand at an intellectual level. If you are interested in developing games, I'd recommend it.