SlideShare une entreprise Scribd logo
1  sur  37
Télécharger pour lire hors ligne
Chapter 7:
DESIGN PATTERNS
Hamzah Asyrani Sulaiman
Introducing Design Patterns
You might have noticed that some diagrams look remarkably similar. For example,
we used Figure 7.1 to illustrate a feedback loop in Monopoly, and Figure 7.2 shows
a single player version of the Harvester game we described in Chapter 6, “Common
Mechanisms.”
Brief History of Design Patterns
Alexander and his colleagues originally identified design patterns in
an attempt to capture objective standards of quality in architecture.
They documented the patterns
they found to help architects design good buildings.
Alexander describes an entire library of patterns for architecture,
which he calls a pattern language
Design Vocabularies in Games
In a 1999 Gamasutra article “Formal Abstract Design
Tools, ” designer Doug Church set out to create a framework for
a common vocabulary for game design. According to Church,
“formal” indicates that the vocabulary needs to be precise, and
“abstract” indicates the vocabulary must transcend the
particular details of a single game.
For Church the vocabulary should function as a set
of tools, in which different tools are suited for different tasks,
and not all tools are applicable for a given game.
http://www.gamasutra.com/view/feature/131764/formal_abst
ract_design_tools.php
http://www.gamasutra.com/view/feature/131764/formal_abstract_design_tools.php
Design Patterns in Games
Staffan Björk and Jussi Holopainen describe hundreds of
patterns, and you can find many more patterns on
the accompanying website.
However, Björk and Holopainen choose the following definition
as their starting point for their pattern language: “Game design
patterns are semiformal interdependent descriptions of
commonly reoccurring parts of the design of a game that
concern gameplay” (p. 34).
In other words, their approach is much more like a design
vocabulary than it is like a pattern language.
They do not formulate a clear theoretical vision on what quality
in games is or where it might come from.
Their book is a valuable collection of design knowledge, but it
does not really tell you how to use that knowledge effectively
to build better games.
Machinations Design Pattern Language
In Appendix B you will find
complete descriptions of all the
design patterns used in this book.
You will notice that these
descriptions follow a strict
format. If you are familiar with
software design patterns, you
might recognize the format; we
took it from the descriptions used
in Design Patterns by the Gang of
Four.
Pattern Descriptions
In Appendix B you will find
complete descriptions of all the
design patterns used in this book.
You will notice that these
descriptions follow a strict
format. If you are familiar with
software design patterns, you
might recognize the format; we
took it from the descriptions used
in Design Patterns by the Gang of
Four.
Category: Engines
STATIC ENGINE
A static engine produces a steady flow of
resources over time for players to consume or
to collect while playing the game.
Use a static engine when you want to limit
players’ actions without complicating the
design. A static engine forces players to think
how they are going to spend their
resources without much need for long-term
planning.
DYNAMIC ENGINE
A source produces an adjustable flow of
resources. Players can invest resources to
improve the flow. Use a dynamic engine when:
• You want to introduce a trade-off between
long-term investment and short-term gains.
This pattern gives the player more control
over the production rate than a static engine
does.
CONVERTER ENGINE
Two converters set up in a loop create a surplus of resources
that can be used elsewhere in the game. Use a converter
engine when:
• You want to create a more complex mechanism to provide
the player with more resources than a static or dynamic
engine provides. (Our example converter engine contains
two interactive elements while the dynamic engine contains
only one.) It increases the difficulty of the game because the
strength and the required investment of the feedback loop
are more difficult to assess.
• You need multiple options and mechanics to tune the
profile of the feedback loop that drives the engine and
thereby the stream of resources that flows into the game.
ENGINE BUILDING
With this pattern, a significant portion of
gameplay is dedicated to building up and
tuning an engine to create a steady flow
of resources. Use engine building when:
• You want to create a game that has a
strong focus on building and
construction.
• You want to create a game that
focuses on long-term strategy and
planning. NOTE remember that the
profile of a feedback loop is the
collection of its characteristics such as
effect, investment, speed, and so on,
that we described in Table 6.1.
Category: Friction
STATIC FRICTION
A drain automatically consumes resources
produced by the player. Use static friction
when:
• You want to create a mechanism that
counters production but that can eventually
be overcome by the players.
• You want to exaggerate the long-term
benefits from investing in upgrades for a
dynamic engine.
DYNAMIC FRICTION
A drain automatically consumes resources
produced by the player; the consumption
rate is affected by the state of other elements in
the game. Use dynamic friction
when:
• You want to balance games where resources
are produced too fast.
• You want to create a mechanism that
counters production and automatically scales
with players’ progress or power.
• You want to reduce the effectiveness of long-
term strategies created by a dynamic engine
in favor of short-term strategies.
STOPPING MECHANISM
This pattern reduces the effectiveness of a
mechanism every time it is activated. Use a
stopping mechanism when:
• You want to prevent players from abusing
particular actions.
• You want to counter dominant strategies.
• You want to reduce the effectiveness of a
positive feedback mechanism.
ATTRITION
Players actively steal or destroy resources of other players that they need for other actions in the game. Use
attrition when:
• You want to allow direct and strategic interaction between multiple players.
• You want to introduce feedback into a system whose nature is determined by the strategic preferences
and/or whims of the players.
Category: Escalation
ESCALATING CHALLENGE
Progress toward a goal increases the difficulty of
further progression. Use escalating challenge
when:
• You want to create a fast-paced game based
on player skill (usually physical skill) in which
the game gets harder as the player advances;
his ability to complete tasks is inhibited as he
goes.
• You want to create emergent mechanics that
(partially) replace predesigned level
progression.
EXCALATING COMPLEXITY
Players act against growing complexity, trying to
keep the game under control until
positive feedback grows too strong and the
accumulated complexity makes them
lose. Use escalating complexity when:
• You aim for a high-pressure, skill-based
game.
• You want to create emergent mechanics that
(partially) replace predesigned level
progression.
ARMS RACE
Players can invest resources to improve their
offensive and defensive capabilities
against other players. Use arms race when:
• You want to create more strategic options
for a game that uses the attrition pattern.
• You want to lengthen the playing time of
your game.
Miscellaneous Patterns
PLAYING STYLE REINFORCEMENT
By applying slow, positive, constructive
feedback on player actions, the game gradually
adapts to the player’s preferred playing style.
Use playing style reinforcement when:
• You want players to make a long-term
investment in the game that spans multiple
sessions.
• You want to reward players for building,
planning ahead, and developing personal
strategies.
• You want players to grow into a specific role
or strategy.
MULTIPLE FEEDBACK
A single gameplay mechanism feeds into
multiple feedback mechanisms, each with
a different profile. Use multiple feedback when:
• You want to increase a game’s difficulty.
• You want to reward the player’s ability to
read the current game state.
TRADE
This pattern allows trade between players to
introduce multiplayer dynamics and
negative, constructive feedback. Use trade
when:
• You want to introduce multiplayer
dynamics to the game.
• You want to introduce negative,
constructive feedback.
• You want to introduce a social mechanic
that encourages players to interact with
one another via commerce (as opposed to
combat).
WORKER PLACEMENT
The player controls a limited resource she must
commit to activate or improve different
mechanisms in the game. Use worker
placement when:
• You want to introduce constant
micromanagement as a player task.
• You want to encourage players to adapt to
changing circumstances.
• You want to introduce timing as a crucial
factor in successful strategies.
• You want to create a subtle mechanism for
indirect conflict.
SLOW CYCLE
This is a mechanism that cycles through different states
slowly, creating periodic
changes to the game’s mechanics. Use a slow cycle when:
• You want to create more variation by introducing
periodic phases to the game.
• You want to counteract the dominance of a particular
strategy.
• You want to force players to periodically adapt strategies
to shifting circumstances.
• You want to require a longer period of learning before
achieving mastery of the game. (Players experience slow
cycles less frequently, so have fewer opportunities to
learn from them.)
• You want to introduce subtle, indirect strategic
interaction by allowing players to influence the cycle’s
period or amplitude.
Combining Design Patterns
Games rarely implement just one design pattern. Most of the
time, you’ll find that a game combines a few of these patterns
in a clever construction.
For example, Tetris combines escalating complexity (the game
gets more difficult as the tetrominoes build up and more and
more holes—unfilled spaces—appear at the bottom) and
escalating challenge (the tetrominoes start falling more quickly
as the player clears more lines).
Elaboration and Nesting Patterns
From the perspective of design pattern theory, this type of relationship
between patterns is called elaboration. One pattern (for example, attrition)
is a more elaborate
implementation of another pattern (for example, dynamic friction).
Within the engine patterns, the worker placement pattern elaborates the
engine building pattern, while the engine building elaborates the dynamic
engine, and the dynamic engine elaborates the static engine.
Elaboration does not apply only to design patterns; it applies to almost any element in a Machinations diagram.
For example, Figure 7.5 displays a number of ways to elaborate a converter.
Any game mechanism can be an elaboration of a converter as long as it displays more or less the same functionality:
consume one resource to produce another.
Extending the Pattern language
When encountering a new pattern, it is important to try to
describe it in generic terms.
You might have found a new pattern in a science-fiction game
about intergalactic trade, but that doesn’t mean the pattern
and its participants should take their names from that game.
When describing new patterns, stick to the description format
and general terms described in the earlier section “Pattern
Descriptions.”
Identify and name the most important participants; try to think
of a number of different ways to implement the pattern, but
most importantly identify the common
design problems your pattern solves.
Leveraging Patterns for Design
A pattern language is a tool designed to help you. It does not
enforce a particular way to design games.
Patterns are guidelines you can use to explore your designs, not
rules instructing you what you must do to make a good game.
Nevertheless, we advise you to stick to the patterns initially.
Implementing these patterns is a great way to build your design
experience and learn by copying time-tested structures.
Once you have some experience with identifying and applying
these patterns, it makes perfect sense to start to break away
from them. Moving into new, uncharted territory is exciting and
important, but it is best done after you’ve gained some
experience.
Improving Your Designs
The most important thing you can do with design patterns is to use them to solve
problems in your design.
For example, you might notice that your game produces
arbitrary outcomes because a strong positive, constructive feedback loop amplifies a small
random difference in luck early in the game.
Looking at the patterns, a number of solutions suggest themselves. If the game has
multiple resources, you might introduce more negative feedback by using the trade
pattern.
Or you could apply dynamic friction to counter the positive feedback.
Brainstorming with Design Patterns
Pattern languages make good brainstorming tools, and they
allow all sorts of creative exercises.
One simple technique is to choose two or three patterns at
random from the collection and try to design a game economy
around them.
You can do a similar thing for games you are currently
developing. The patterns suggest many generic terms for
resources in your game based on their function in the
economy.
Randomly pick a pattern and use it as a lens on the game,
asking yourself questions like, Is the pattern present in the
current design, and if so, does it work the way you want it to? If
not, would adding it help counter problems in the design?
Summary
• This chapter introduced the concept of design patterns: recurring structures that appear in architecture,
software, games, and other fields.
• After an overview of this idea’s history, we identified 16 common patterns from game mechanics, in 3
categories (engines, friction, and escalation), plus several more patterns that don’t neatly fit into a
category.
• We ended the chapter by discussing some ways that you can use the patterns in your own game design
practice by combining them and brainstorming about them.
• The patterns can also be used to analyze games that you already have in development.
• Another of their benefits is that they give you a common vocabulary to discuss the characteristics of your
game’s mechanics with other members of your team.
Exercises in Individual (Compulsory)
1. What design patterns did you use in recent game projects (PSM)? What design patterns
might you have used that you didn’t? Could you have improved your game with
one of them? Submit THREE design patterns using Machinations
2. Think of a game that you know well. It can belong to any genre except pure
adventure games (which have no internal economy). What patterns can you find in
it? Try diagramming them in the Machinations Tool. Submit THREE design patterns using Machinations

Contenu connexe

Tendances

NDC 2012 이은석 - 고전게임 화이트데이 디렉터 포스트모템
NDC 2012 이은석 - 고전게임 화이트데이 디렉터 포스트모템NDC 2012 이은석 - 고전게임 화이트데이 디렉터 포스트모템
NDC 2012 이은석 - 고전게임 화이트데이 디렉터 포스트모템Eunseok Yi
 
LAFS SVI Level 2 - Psychology of Play
LAFS SVI Level 2 - Psychology of PlayLAFS SVI Level 2 - Psychology of Play
LAFS SVI Level 2 - Psychology of PlayDavid Mullich
 
Introduction to Game Development
Introduction to Game DevelopmentIntroduction to Game Development
Introduction to Game DevelopmentShaan Alam
 
【Unite Tokyo 2018】実践的なパフォーマンス分析と最適化
【Unite Tokyo 2018】実践的なパフォーマンス分析と最適化【Unite Tokyo 2018】実践的なパフォーマンス分析と最適化
【Unite Tokyo 2018】実践的なパフォーマンス分析と最適化Unity Technologies Japan K.K.
 
국내인디게임개발자의현실
국내인디게임개발자의현실국내인디게임개발자의현실
국내인디게임개발자의현실Mingu Heo
 
Optimizing unity games (Google IO 2014)
Optimizing unity games (Google IO 2014)Optimizing unity games (Google IO 2014)
Optimizing unity games (Google IO 2014)Alexander Dolbilov
 
Optimizing Large Scenes in Unity
Optimizing Large Scenes in UnityOptimizing Large Scenes in Unity
Optimizing Large Scenes in UnityNoam Gat
 
LAFS Game Design 1 - Structural Elements
LAFS Game Design 1 - Structural ElementsLAFS Game Design 1 - Structural Elements
LAFS Game Design 1 - Structural ElementsDavid Mullich
 
剣と魔法のログレス いにしえの女神 〜スマホ時代の MMORPG を支える技術
剣と魔法のログレス いにしえの女神 〜スマホ時代の MMORPG を支える技術剣と魔法のログレス いにしえの女神 〜スマホ時代の MMORPG を支える技術
剣と魔法のログレス いにしえの女神 〜スマホ時代の MMORPG を支える技術Satoshi Yamafuji
 
Unreal Engine 4 Introduction
Unreal Engine 4 IntroductionUnreal Engine 4 Introduction
Unreal Engine 4 IntroductionSperasoft
 
Unity Internals: Memory and Performance
Unity Internals: Memory and PerformanceUnity Internals: Memory and Performance
Unity Internals: Memory and PerformanceDevGAMM Conference
 
Course Presentation: Games design
Course Presentation: Games designCourse Presentation: Games design
Course Presentation: Games designBrunel University
 
Networking Architecture of Warframe
Networking Architecture of WarframeNetworking Architecture of Warframe
Networking Architecture of WarframeMaciej Siniło
 
2 lecture (gdd, responsibilites, level of game) 18 1-2021
2 lecture (gdd, responsibilites, level of game) 18 1-20212 lecture (gdd, responsibilites, level of game) 18 1-2021
2 lecture (gdd, responsibilites, level of game) 18 1-2021Durgesh Pandey
 
これから Houdini 始める
これから Houdini 始めるこれから Houdini 始める
これから Houdini 始めるKen Taki
 
The Principles of Game Design
The Principles of Game DesignThe Principles of Game Design
The Principles of Game DesignInstantTechInfo
 
Software Engineer- A unity 3d Game
Software Engineer- A unity 3d GameSoftware Engineer- A unity 3d Game
Software Engineer- A unity 3d GameIsfand yar Khan
 

Tendances (20)

NDC 2012 이은석 - 고전게임 화이트데이 디렉터 포스트모템
NDC 2012 이은석 - 고전게임 화이트데이 디렉터 포스트모템NDC 2012 이은석 - 고전게임 화이트데이 디렉터 포스트모템
NDC 2012 이은석 - 고전게임 화이트데이 디렉터 포스트모템
 
LAFS SVI Level 2 - Psychology of Play
LAFS SVI Level 2 - Psychology of PlayLAFS SVI Level 2 - Psychology of Play
LAFS SVI Level 2 - Psychology of Play
 
01 - Introduction to Game Mechanics
01 - Introduction to Game Mechanics01 - Introduction to Game Mechanics
01 - Introduction to Game Mechanics
 
Introduction to Game Development
Introduction to Game DevelopmentIntroduction to Game Development
Introduction to Game Development
 
【Unite Tokyo 2018】実践的なパフォーマンス分析と最適化
【Unite Tokyo 2018】実践的なパフォーマンス分析と最適化【Unite Tokyo 2018】実践的なパフォーマンス分析と最適化
【Unite Tokyo 2018】実践的なパフォーマンス分析と最適化
 
국내인디게임개발자의현실
국내인디게임개발자의현실국내인디게임개발자의현실
국내인디게임개발자의현실
 
Optimizing unity games (Google IO 2014)
Optimizing unity games (Google IO 2014)Optimizing unity games (Google IO 2014)
Optimizing unity games (Google IO 2014)
 
Optimizing Large Scenes in Unity
Optimizing Large Scenes in UnityOptimizing Large Scenes in Unity
Optimizing Large Scenes in Unity
 
LAFS Game Design 1 - Structural Elements
LAFS Game Design 1 - Structural ElementsLAFS Game Design 1 - Structural Elements
LAFS Game Design 1 - Structural Elements
 
剣と魔法のログレス いにしえの女神 〜スマホ時代の MMORPG を支える技術
剣と魔法のログレス いにしえの女神 〜スマホ時代の MMORPG を支える技術剣と魔法のログレス いにしえの女神 〜スマホ時代の MMORPG を支える技術
剣と魔法のログレス いにしえの女神 〜スマホ時代の MMORPG を支える技術
 
Unreal Engine 4 Introduction
Unreal Engine 4 IntroductionUnreal Engine 4 Introduction
Unreal Engine 4 Introduction
 
Game design document
Game design document Game design document
Game design document
 
Unity Internals: Memory and Performance
Unity Internals: Memory and PerformanceUnity Internals: Memory and Performance
Unity Internals: Memory and Performance
 
Game Design fundamentals
Game Design fundamentalsGame Design fundamentals
Game Design fundamentals
 
Course Presentation: Games design
Course Presentation: Games designCourse Presentation: Games design
Course Presentation: Games design
 
Networking Architecture of Warframe
Networking Architecture of WarframeNetworking Architecture of Warframe
Networking Architecture of Warframe
 
2 lecture (gdd, responsibilites, level of game) 18 1-2021
2 lecture (gdd, responsibilites, level of game) 18 1-20212 lecture (gdd, responsibilites, level of game) 18 1-2021
2 lecture (gdd, responsibilites, level of game) 18 1-2021
 
これから Houdini 始める
これから Houdini 始めるこれから Houdini 始める
これから Houdini 始める
 
The Principles of Game Design
The Principles of Game DesignThe Principles of Game Design
The Principles of Game Design
 
Software Engineer- A unity 3d Game
Software Engineer- A unity 3d GameSoftware Engineer- A unity 3d Game
Software Engineer- A unity 3d Game
 

Similaire à GAME MECHANIC - chapter 7 v1.0 (2018 edition)

Game of Thrones: Conquest - Tear Down
Game of Thrones: Conquest - Tear DownGame of Thrones: Conquest - Tear Down
Game of Thrones: Conquest - Tear DownBrandonDietz4
 
GAME MECHANIC - chapter 1 v1.4 (2019 edition)
GAME MECHANIC - chapter 1 v1.4 (2019 edition)GAME MECHANIC - chapter 1 v1.4 (2019 edition)
GAME MECHANIC - chapter 1 v1.4 (2019 edition)Hamzah Asyrani Sulaiman
 
A QUICK TAKE ON MY FAVORITE GAMES
A QUICK TAKE ON MY FAVORITE GAMESA QUICK TAKE ON MY FAVORITE GAMES
A QUICK TAKE ON MY FAVORITE GAMESBac Le
 
Rehabilitation Game Model for Personalised Exercise (Dominic Holmes, Darryl C...
Rehabilitation Game Model for Personalised Exercise (Dominic Holmes, Darryl C...Rehabilitation Game Model for Personalised Exercise (Dominic Holmes, Darryl C...
Rehabilitation Game Model for Personalised Exercise (Dominic Holmes, Darryl C...Karel Van Isacker
 
Wcss2012presentation
Wcss2012presentationWcss2012presentation
Wcss2012presentationyusuke_510
 
LAFS Game Mechanics - Balancing
LAFS Game Mechanics - BalancingLAFS Game Mechanics - Balancing
LAFS Game Mechanics - BalancingDavid Mullich
 
GAME MECHANIC - chapter 4 v1.1 (2018 edition)
GAME MECHANIC - chapter 4 v1.1 (2018 edition)GAME MECHANIC - chapter 4 v1.1 (2018 edition)
GAME MECHANIC - chapter 4 v1.1 (2018 edition)Hamzah Asyrani Sulaiman
 
LAFS Game Design 7 - Prototyping
LAFS Game Design 7 - PrototypingLAFS Game Design 7 - Prototyping
LAFS Game Design 7 - PrototypingDavid Mullich
 
mixi’s (XFLAG) Pursuit of Growth in Esports and Community | Langer Lee
mixi’s (XFLAG) Pursuit of Growth in Esports and Community | Langer Leemixi’s (XFLAG) Pursuit of Growth in Esports and Community | Langer Lee
mixi’s (XFLAG) Pursuit of Growth in Esports and Community | Langer LeeJessica Tams
 
Runners monetization
Runners monetizationRunners monetization
Runners monetizationRan Shahar
 
Game Balance 3: Interesting Strategies
Game Balance 3: Interesting StrategiesGame Balance 3: Interesting Strategies
Game Balance 3: Interesting StrategiesMarc Miquel
 
Playoff how to create a game
Playoff how to create a gamePlayoff how to create a game
Playoff how to create a gameSilvia Galessi
 
LAFS Game Design 9 - Balancing
LAFS Game Design 9 - BalancingLAFS Game Design 9 - Balancing
LAFS Game Design 9 - BalancingDavid Mullich
 
Continuous Improvement Tricks
Continuous Improvement TricksContinuous Improvement Tricks
Continuous Improvement TricksLitheSpeed
 
Creative Mobile: How to eliminate risks in game design evaluation
Creative Mobile: How to eliminate risks in game design evaluationCreative Mobile: How to eliminate risks in game design evaluation
Creative Mobile: How to eliminate risks in game design evaluationDevGAMM Conference
 
98 374 Lesson 04-slides
98 374 Lesson 04-slides98 374 Lesson 04-slides
98 374 Lesson 04-slidesTracie King
 
How to develop a game
How to develop a game How to develop a game
How to develop a game Intersog
 

Similaire à GAME MECHANIC - chapter 7 v1.0 (2018 edition) (20)

Game of Thrones: Conquest - Tear Down
Game of Thrones: Conquest - Tear DownGame of Thrones: Conquest - Tear Down
Game of Thrones: Conquest - Tear Down
 
GAME MECHANIC - chapter 1 v1.4 (2019 edition)
GAME MECHANIC - chapter 1 v1.4 (2019 edition)GAME MECHANIC - chapter 1 v1.4 (2019 edition)
GAME MECHANIC - chapter 1 v1.4 (2019 edition)
 
04 - Internal Economy
04 - Internal Economy04 - Internal Economy
04 - Internal Economy
 
A QUICK TAKE ON MY FAVORITE GAMES
A QUICK TAKE ON MY FAVORITE GAMESA QUICK TAKE ON MY FAVORITE GAMES
A QUICK TAKE ON MY FAVORITE GAMES
 
Rehabilitation Game Model for Personalised Exercise (Dominic Holmes, Darryl C...
Rehabilitation Game Model for Personalised Exercise (Dominic Holmes, Darryl C...Rehabilitation Game Model for Personalised Exercise (Dominic Holmes, Darryl C...
Rehabilitation Game Model for Personalised Exercise (Dominic Holmes, Darryl C...
 
Wcss2012presentation
Wcss2012presentationWcss2012presentation
Wcss2012presentation
 
LAFS Game Mechanics - Balancing
LAFS Game Mechanics - BalancingLAFS Game Mechanics - Balancing
LAFS Game Mechanics - Balancing
 
Anger story pitch
Anger story pitchAnger story pitch
Anger story pitch
 
GAME MECHANIC - chapter 4 v1.1 (2018 edition)
GAME MECHANIC - chapter 4 v1.1 (2018 edition)GAME MECHANIC - chapter 4 v1.1 (2018 edition)
GAME MECHANIC - chapter 4 v1.1 (2018 edition)
 
LAFS Game Design 7 - Prototyping
LAFS Game Design 7 - PrototypingLAFS Game Design 7 - Prototyping
LAFS Game Design 7 - Prototyping
 
mixi’s (XFLAG) Pursuit of Growth in Esports and Community | Langer Lee
mixi’s (XFLAG) Pursuit of Growth in Esports and Community | Langer Leemixi’s (XFLAG) Pursuit of Growth in Esports and Community | Langer Lee
mixi’s (XFLAG) Pursuit of Growth in Esports and Community | Langer Lee
 
Runners monetization
Runners monetizationRunners monetization
Runners monetization
 
Game Balance 3: Interesting Strategies
Game Balance 3: Interesting StrategiesGame Balance 3: Interesting Strategies
Game Balance 3: Interesting Strategies
 
Segap project(lncs)
Segap project(lncs)Segap project(lncs)
Segap project(lncs)
 
Playoff how to create a game
Playoff how to create a gamePlayoff how to create a game
Playoff how to create a game
 
LAFS Game Design 9 - Balancing
LAFS Game Design 9 - BalancingLAFS Game Design 9 - Balancing
LAFS Game Design 9 - Balancing
 
Continuous Improvement Tricks
Continuous Improvement TricksContinuous Improvement Tricks
Continuous Improvement Tricks
 
Creative Mobile: How to eliminate risks in game design evaluation
Creative Mobile: How to eliminate risks in game design evaluationCreative Mobile: How to eliminate risks in game design evaluation
Creative Mobile: How to eliminate risks in game design evaluation
 
98 374 Lesson 04-slides
98 374 Lesson 04-slides98 374 Lesson 04-slides
98 374 Lesson 04-slides
 
How to develop a game
How to develop a game How to develop a game
How to develop a game
 

Plus de Hamzah Asyrani Sulaiman

03 - Complex systems and the structure of Emergence
03 - Complex systems and the structure of Emergence03 - Complex systems and the structure of Emergence
03 - Complex systems and the structure of EmergenceHamzah Asyrani Sulaiman
 
GAME MECHANIC - chapter 8 v1.0 (2019 edition)
GAME MECHANIC - chapter 8 v1.0 (2019 edition)GAME MECHANIC - chapter 8 v1.0 (2019 edition)
GAME MECHANIC - chapter 8 v1.0 (2019 edition)Hamzah Asyrani Sulaiman
 
GAME MECHANIC - chapter 6 v1.0 (2018 edition)
GAME MECHANIC - chapter 6 v1.0 (2018 edition)GAME MECHANIC - chapter 6 v1.0 (2018 edition)
GAME MECHANIC - chapter 6 v1.0 (2018 edition)Hamzah Asyrani Sulaiman
 
GAME MECHANIC - chapter 5 v1.1 (2019 edition)
GAME MECHANIC - chapter 5 v1.1 (2019 edition)GAME MECHANIC - chapter 5 v1.1 (2019 edition)
GAME MECHANIC - chapter 5 v1.1 (2019 edition)Hamzah Asyrani Sulaiman
 
GAME MECHANIC - chapter 3 v1.1 (2018 edition)
GAME MECHANIC - chapter 3 v1.1 (2018 edition)GAME MECHANIC - chapter 3 v1.1 (2018 edition)
GAME MECHANIC - chapter 3 v1.1 (2018 edition)Hamzah Asyrani Sulaiman
 
GAME MECHANIC - chapter 2 v1.1 (2018 edition)
GAME MECHANIC - chapter 2 v1.1 (2018 edition)GAME MECHANIC - chapter 2 v1.1 (2018 edition)
GAME MECHANIC - chapter 2 v1.1 (2018 edition)Hamzah Asyrani Sulaiman
 

Plus de Hamzah Asyrani Sulaiman (7)

05 - Machinations
05 - Machinations05 - Machinations
05 - Machinations
 
03 - Complex systems and the structure of Emergence
03 - Complex systems and the structure of Emergence03 - Complex systems and the structure of Emergence
03 - Complex systems and the structure of Emergence
 
GAME MECHANIC - chapter 8 v1.0 (2019 edition)
GAME MECHANIC - chapter 8 v1.0 (2019 edition)GAME MECHANIC - chapter 8 v1.0 (2019 edition)
GAME MECHANIC - chapter 8 v1.0 (2019 edition)
 
GAME MECHANIC - chapter 6 v1.0 (2018 edition)
GAME MECHANIC - chapter 6 v1.0 (2018 edition)GAME MECHANIC - chapter 6 v1.0 (2018 edition)
GAME MECHANIC - chapter 6 v1.0 (2018 edition)
 
GAME MECHANIC - chapter 5 v1.1 (2019 edition)
GAME MECHANIC - chapter 5 v1.1 (2019 edition)GAME MECHANIC - chapter 5 v1.1 (2019 edition)
GAME MECHANIC - chapter 5 v1.1 (2019 edition)
 
GAME MECHANIC - chapter 3 v1.1 (2018 edition)
GAME MECHANIC - chapter 3 v1.1 (2018 edition)GAME MECHANIC - chapter 3 v1.1 (2018 edition)
GAME MECHANIC - chapter 3 v1.1 (2018 edition)
 
GAME MECHANIC - chapter 2 v1.1 (2018 edition)
GAME MECHANIC - chapter 2 v1.1 (2018 edition)GAME MECHANIC - chapter 2 v1.1 (2018 edition)
GAME MECHANIC - chapter 2 v1.1 (2018 edition)
 

Dernier

Computed Fields and api Depends in the Odoo 17
Computed Fields and api Depends in the Odoo 17Computed Fields and api Depends in the Odoo 17
Computed Fields and api Depends in the Odoo 17Celine George
 
Final demo Grade 9 for demo Plan dessert.pptx
Final demo Grade 9 for demo Plan dessert.pptxFinal demo Grade 9 for demo Plan dessert.pptx
Final demo Grade 9 for demo Plan dessert.pptxAvyJaneVismanos
 
Solving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptxSolving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptxOH TEIK BIN
 
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPTECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPTiammrhaywood
 
How to Configure Email Server in Odoo 17
How to Configure Email Server in Odoo 17How to Configure Email Server in Odoo 17
How to Configure Email Server in Odoo 17Celine George
 
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdfBASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdfSoniaTolstoy
 
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17Celine George
 
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxSOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxiammrhaywood
 
Blooming Together_ Growing a Community Garden Worksheet.docx
Blooming Together_ Growing a Community Garden Worksheet.docxBlooming Together_ Growing a Community Garden Worksheet.docx
Blooming Together_ Growing a Community Garden Worksheet.docxUnboundStockton
 
CARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptxCARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptxGaneshChakor2
 
Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111Sapana Sha
 
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdfssuser54595a
 
Introduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher EducationIntroduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher Educationpboyjonauth
 
Paris 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityParis 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityGeoBlogs
 
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions  for the students and aspirants of Chemistry12th.pptxOrganic Name Reactions  for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions for the students and aspirants of Chemistry12th.pptxVS Mahajan Coaching Centre
 
Enzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdf
Enzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdfEnzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdf
Enzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdfSumit Tiwari
 
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Krashi Coaching
 
Class 11 Legal Studies Ch-1 Concept of State .pdf
Class 11 Legal Studies Ch-1 Concept of State .pdfClass 11 Legal Studies Ch-1 Concept of State .pdf
Class 11 Legal Studies Ch-1 Concept of State .pdfakmcokerachita
 
EPANDING THE CONTENT OF AN OUTLINE using notes.pptx
EPANDING THE CONTENT OF AN OUTLINE using notes.pptxEPANDING THE CONTENT OF AN OUTLINE using notes.pptx
EPANDING THE CONTENT OF AN OUTLINE using notes.pptxRaymartEstabillo3
 
Presiding Officer Training module 2024 lok sabha elections
Presiding Officer Training module 2024 lok sabha electionsPresiding Officer Training module 2024 lok sabha elections
Presiding Officer Training module 2024 lok sabha electionsanshu789521
 

Dernier (20)

Computed Fields and api Depends in the Odoo 17
Computed Fields and api Depends in the Odoo 17Computed Fields and api Depends in the Odoo 17
Computed Fields and api Depends in the Odoo 17
 
Final demo Grade 9 for demo Plan dessert.pptx
Final demo Grade 9 for demo Plan dessert.pptxFinal demo Grade 9 for demo Plan dessert.pptx
Final demo Grade 9 for demo Plan dessert.pptx
 
Solving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptxSolving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptx
 
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPTECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
 
How to Configure Email Server in Odoo 17
How to Configure Email Server in Odoo 17How to Configure Email Server in Odoo 17
How to Configure Email Server in Odoo 17
 
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdfBASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
 
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
 
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxSOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
 
Blooming Together_ Growing a Community Garden Worksheet.docx
Blooming Together_ Growing a Community Garden Worksheet.docxBlooming Together_ Growing a Community Garden Worksheet.docx
Blooming Together_ Growing a Community Garden Worksheet.docx
 
CARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptxCARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptx
 
Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111
 
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
 
Introduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher EducationIntroduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher Education
 
Paris 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityParis 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activity
 
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions  for the students and aspirants of Chemistry12th.pptxOrganic Name Reactions  for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
 
Enzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdf
Enzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdfEnzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdf
Enzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdf
 
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
 
Class 11 Legal Studies Ch-1 Concept of State .pdf
Class 11 Legal Studies Ch-1 Concept of State .pdfClass 11 Legal Studies Ch-1 Concept of State .pdf
Class 11 Legal Studies Ch-1 Concept of State .pdf
 
EPANDING THE CONTENT OF AN OUTLINE using notes.pptx
EPANDING THE CONTENT OF AN OUTLINE using notes.pptxEPANDING THE CONTENT OF AN OUTLINE using notes.pptx
EPANDING THE CONTENT OF AN OUTLINE using notes.pptx
 
Presiding Officer Training module 2024 lok sabha elections
Presiding Officer Training module 2024 lok sabha electionsPresiding Officer Training module 2024 lok sabha elections
Presiding Officer Training module 2024 lok sabha elections
 

GAME MECHANIC - chapter 7 v1.0 (2018 edition)

  • 2. Introducing Design Patterns You might have noticed that some diagrams look remarkably similar. For example, we used Figure 7.1 to illustrate a feedback loop in Monopoly, and Figure 7.2 shows a single player version of the Harvester game we described in Chapter 6, “Common Mechanisms.”
  • 3.
  • 4. Brief History of Design Patterns Alexander and his colleagues originally identified design patterns in an attempt to capture objective standards of quality in architecture. They documented the patterns they found to help architects design good buildings. Alexander describes an entire library of patterns for architecture, which he calls a pattern language
  • 5. Design Vocabularies in Games In a 1999 Gamasutra article “Formal Abstract Design Tools, ” designer Doug Church set out to create a framework for a common vocabulary for game design. According to Church, “formal” indicates that the vocabulary needs to be precise, and “abstract” indicates the vocabulary must transcend the particular details of a single game. For Church the vocabulary should function as a set of tools, in which different tools are suited for different tasks, and not all tools are applicable for a given game. http://www.gamasutra.com/view/feature/131764/formal_abst ract_design_tools.php
  • 7. Design Patterns in Games Staffan Björk and Jussi Holopainen describe hundreds of patterns, and you can find many more patterns on the accompanying website. However, Björk and Holopainen choose the following definition as their starting point for their pattern language: “Game design patterns are semiformal interdependent descriptions of commonly reoccurring parts of the design of a game that concern gameplay” (p. 34). In other words, their approach is much more like a design vocabulary than it is like a pattern language. They do not formulate a clear theoretical vision on what quality in games is or where it might come from. Their book is a valuable collection of design knowledge, but it does not really tell you how to use that knowledge effectively to build better games.
  • 8. Machinations Design Pattern Language In Appendix B you will find complete descriptions of all the design patterns used in this book. You will notice that these descriptions follow a strict format. If you are familiar with software design patterns, you might recognize the format; we took it from the descriptions used in Design Patterns by the Gang of Four.
  • 9. Pattern Descriptions In Appendix B you will find complete descriptions of all the design patterns used in this book. You will notice that these descriptions follow a strict format. If you are familiar with software design patterns, you might recognize the format; we took it from the descriptions used in Design Patterns by the Gang of Four.
  • 10. Category: Engines STATIC ENGINE A static engine produces a steady flow of resources over time for players to consume or to collect while playing the game. Use a static engine when you want to limit players’ actions without complicating the design. A static engine forces players to think how they are going to spend their resources without much need for long-term planning.
  • 11. DYNAMIC ENGINE A source produces an adjustable flow of resources. Players can invest resources to improve the flow. Use a dynamic engine when: • You want to introduce a trade-off between long-term investment and short-term gains. This pattern gives the player more control over the production rate than a static engine does.
  • 12. CONVERTER ENGINE Two converters set up in a loop create a surplus of resources that can be used elsewhere in the game. Use a converter engine when: • You want to create a more complex mechanism to provide the player with more resources than a static or dynamic engine provides. (Our example converter engine contains two interactive elements while the dynamic engine contains only one.) It increases the difficulty of the game because the strength and the required investment of the feedback loop are more difficult to assess. • You need multiple options and mechanics to tune the profile of the feedback loop that drives the engine and thereby the stream of resources that flows into the game.
  • 13. ENGINE BUILDING With this pattern, a significant portion of gameplay is dedicated to building up and tuning an engine to create a steady flow of resources. Use engine building when: • You want to create a game that has a strong focus on building and construction. • You want to create a game that focuses on long-term strategy and planning. NOTE remember that the profile of a feedback loop is the collection of its characteristics such as effect, investment, speed, and so on, that we described in Table 6.1.
  • 14. Category: Friction STATIC FRICTION A drain automatically consumes resources produced by the player. Use static friction when: • You want to create a mechanism that counters production but that can eventually be overcome by the players. • You want to exaggerate the long-term benefits from investing in upgrades for a dynamic engine.
  • 15. DYNAMIC FRICTION A drain automatically consumes resources produced by the player; the consumption rate is affected by the state of other elements in the game. Use dynamic friction when: • You want to balance games where resources are produced too fast. • You want to create a mechanism that counters production and automatically scales with players’ progress or power. • You want to reduce the effectiveness of long- term strategies created by a dynamic engine in favor of short-term strategies.
  • 16. STOPPING MECHANISM This pattern reduces the effectiveness of a mechanism every time it is activated. Use a stopping mechanism when: • You want to prevent players from abusing particular actions. • You want to counter dominant strategies. • You want to reduce the effectiveness of a positive feedback mechanism.
  • 17. ATTRITION Players actively steal or destroy resources of other players that they need for other actions in the game. Use attrition when: • You want to allow direct and strategic interaction between multiple players. • You want to introduce feedback into a system whose nature is determined by the strategic preferences and/or whims of the players.
  • 18. Category: Escalation ESCALATING CHALLENGE Progress toward a goal increases the difficulty of further progression. Use escalating challenge when: • You want to create a fast-paced game based on player skill (usually physical skill) in which the game gets harder as the player advances; his ability to complete tasks is inhibited as he goes. • You want to create emergent mechanics that (partially) replace predesigned level progression.
  • 19. EXCALATING COMPLEXITY Players act against growing complexity, trying to keep the game under control until positive feedback grows too strong and the accumulated complexity makes them lose. Use escalating complexity when: • You aim for a high-pressure, skill-based game. • You want to create emergent mechanics that (partially) replace predesigned level progression.
  • 20. ARMS RACE Players can invest resources to improve their offensive and defensive capabilities against other players. Use arms race when: • You want to create more strategic options for a game that uses the attrition pattern. • You want to lengthen the playing time of your game.
  • 21. Miscellaneous Patterns PLAYING STYLE REINFORCEMENT By applying slow, positive, constructive feedback on player actions, the game gradually adapts to the player’s preferred playing style. Use playing style reinforcement when: • You want players to make a long-term investment in the game that spans multiple sessions. • You want to reward players for building, planning ahead, and developing personal strategies. • You want players to grow into a specific role or strategy.
  • 22. MULTIPLE FEEDBACK A single gameplay mechanism feeds into multiple feedback mechanisms, each with a different profile. Use multiple feedback when: • You want to increase a game’s difficulty. • You want to reward the player’s ability to read the current game state.
  • 23. TRADE This pattern allows trade between players to introduce multiplayer dynamics and negative, constructive feedback. Use trade when: • You want to introduce multiplayer dynamics to the game. • You want to introduce negative, constructive feedback. • You want to introduce a social mechanic that encourages players to interact with one another via commerce (as opposed to combat).
  • 24.
  • 25. WORKER PLACEMENT The player controls a limited resource she must commit to activate or improve different mechanisms in the game. Use worker placement when: • You want to introduce constant micromanagement as a player task. • You want to encourage players to adapt to changing circumstances. • You want to introduce timing as a crucial factor in successful strategies. • You want to create a subtle mechanism for indirect conflict.
  • 26. SLOW CYCLE This is a mechanism that cycles through different states slowly, creating periodic changes to the game’s mechanics. Use a slow cycle when: • You want to create more variation by introducing periodic phases to the game. • You want to counteract the dominance of a particular strategy. • You want to force players to periodically adapt strategies to shifting circumstances. • You want to require a longer period of learning before achieving mastery of the game. (Players experience slow cycles less frequently, so have fewer opportunities to learn from them.) • You want to introduce subtle, indirect strategic interaction by allowing players to influence the cycle’s period or amplitude.
  • 27. Combining Design Patterns Games rarely implement just one design pattern. Most of the time, you’ll find that a game combines a few of these patterns in a clever construction. For example, Tetris combines escalating complexity (the game gets more difficult as the tetrominoes build up and more and more holes—unfilled spaces—appear at the bottom) and escalating challenge (the tetrominoes start falling more quickly as the player clears more lines).
  • 28. Elaboration and Nesting Patterns From the perspective of design pattern theory, this type of relationship between patterns is called elaboration. One pattern (for example, attrition) is a more elaborate implementation of another pattern (for example, dynamic friction). Within the engine patterns, the worker placement pattern elaborates the engine building pattern, while the engine building elaborates the dynamic engine, and the dynamic engine elaborates the static engine.
  • 29.
  • 30.
  • 31. Elaboration does not apply only to design patterns; it applies to almost any element in a Machinations diagram. For example, Figure 7.5 displays a number of ways to elaborate a converter. Any game mechanism can be an elaboration of a converter as long as it displays more or less the same functionality: consume one resource to produce another.
  • 32. Extending the Pattern language When encountering a new pattern, it is important to try to describe it in generic terms. You might have found a new pattern in a science-fiction game about intergalactic trade, but that doesn’t mean the pattern and its participants should take their names from that game. When describing new patterns, stick to the description format and general terms described in the earlier section “Pattern Descriptions.” Identify and name the most important participants; try to think of a number of different ways to implement the pattern, but most importantly identify the common design problems your pattern solves.
  • 33. Leveraging Patterns for Design A pattern language is a tool designed to help you. It does not enforce a particular way to design games. Patterns are guidelines you can use to explore your designs, not rules instructing you what you must do to make a good game. Nevertheless, we advise you to stick to the patterns initially. Implementing these patterns is a great way to build your design experience and learn by copying time-tested structures. Once you have some experience with identifying and applying these patterns, it makes perfect sense to start to break away from them. Moving into new, uncharted territory is exciting and important, but it is best done after you’ve gained some experience.
  • 34. Improving Your Designs The most important thing you can do with design patterns is to use them to solve problems in your design. For example, you might notice that your game produces arbitrary outcomes because a strong positive, constructive feedback loop amplifies a small random difference in luck early in the game. Looking at the patterns, a number of solutions suggest themselves. If the game has multiple resources, you might introduce more negative feedback by using the trade pattern. Or you could apply dynamic friction to counter the positive feedback.
  • 35. Brainstorming with Design Patterns Pattern languages make good brainstorming tools, and they allow all sorts of creative exercises. One simple technique is to choose two or three patterns at random from the collection and try to design a game economy around them. You can do a similar thing for games you are currently developing. The patterns suggest many generic terms for resources in your game based on their function in the economy. Randomly pick a pattern and use it as a lens on the game, asking yourself questions like, Is the pattern present in the current design, and if so, does it work the way you want it to? If not, would adding it help counter problems in the design?
  • 36. Summary • This chapter introduced the concept of design patterns: recurring structures that appear in architecture, software, games, and other fields. • After an overview of this idea’s history, we identified 16 common patterns from game mechanics, in 3 categories (engines, friction, and escalation), plus several more patterns that don’t neatly fit into a category. • We ended the chapter by discussing some ways that you can use the patterns in your own game design practice by combining them and brainstorming about them. • The patterns can also be used to analyze games that you already have in development. • Another of their benefits is that they give you a common vocabulary to discuss the characteristics of your game’s mechanics with other members of your team.
  • 37. Exercises in Individual (Compulsory) 1. What design patterns did you use in recent game projects (PSM)? What design patterns might you have used that you didn’t? Could you have improved your game with one of them? Submit THREE design patterns using Machinations 2. Think of a game that you know well. It can belong to any genre except pure adventure games (which have no internal economy). What patterns can you find in it? Try diagramming them in the Machinations Tool. Submit THREE design patterns using Machinations