Difference between revisions of "Pattern Library"

From MachinationsWiki
Jump to: navigation, search
(Static Engine)
Line 11: Line 11:
 
===[[Dynamic Engine]]===
 
===[[Dynamic Engine]]===
  
A source produces an adjustable flow of resources. Players can invest resources to improve the flow.
+
A source produces an adjustable flow of resources. Players can invest resources to improve the flow. Use a dynamic engine when:
  
* Use a dynamic engine when you want to introduce a trade-off between long term investment and short-term gains.  
+
* you want to introduce a trade-off between long term investment and short-term gains.  
  
 
===[[Converter Engine]]===
 
===[[Converter Engine]]===
  
Two converters set up in a loop create a surplus of resources that can be used elsewhere in the game.
+
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:
  
* Use the converter engine when you want to create a delicate mechanism to provide the player with resources. It increases the difficulty of the game as the strength and the required investment of the feedback loop are more difficult to asses.
+
* you want to create a delicate mechanism to provide the player with resources. It increases the difficulty of the game as the strength and the required investment of the feedback loop are more difficult to asses.
* Use the converter engine when you need multiple options and mechanics to tune the signature of the feedback loop that drives the engine, and the thereby the stream of resources that flow into the game.
+
* you need multiple options and mechanics to tune the signature of the feedback loop that drives the engine, and the thereby the stream of resources that flow into the game.
  
 
===[[Engine Building]]===
 
===[[Engine Building]]===
  
A significant portion of gameplay is dedicated to building up and tuning an engine to create a steady flow of resources.
+
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:
  
* 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 has a strong focus on building and construction.
* Use engine building when you want to create a game that focuses on long-term strategy and planning.
+
* you want to create a game that focuses on long-term strategy and planning.
  
 
== Friction ==
 
== Friction ==
 
===[[Static Friction]]===
 
===[[Static Friction]]===
  
A drain automatically consumes resources produced by the player.
+
A drain automatically consumes resources produced by the player. Use static friction when:
  
* Use static friction to create a mechanism that counters production, but which can eventually be overcome by the players.
+
* you want to create a mechanism that counters production, but which can eventually be overcome by the players.
* Use static friction to exaggerate the long-term benefits from investing in upgrades for a Dynamic Engine.
+
* you want to exaggerate the long-term benefits from investing in upgrades for a Dynamic Engine.
  
 
===[[Dynamic Friction]]===
 
===[[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.
+
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:
  
* Use dynamic friction to balance games where resources are produced too fast.
+
* you want to balance games where resources are produced too fast.
* Use dynamic friction to create a mechanism that counters production that automatically scales with players' progress or power.
+
* you want to create a mechanism that counters production that automatically scales with players' progress or power.
* Use slow dynamic friction to reduce the effectiveness of long term strategies created by a dynamic engine in favor for short term strategies.
+
* you want to reduce the effectiveness of long term strategies created by a dynamic engine in favor for short term strategies.
  
 
===[[Stopping Mechanism]]===
 
===[[Stopping Mechanism]]===
  
Reduce the effectiveness of a mechanism every time it is activated.  
+
Reduce the effectiveness of a mechanism every time it is activated. Use a stopping mechanism when:
  
* Use a stopping mechanism to prevent players from abusing particular actions.
+
* you want to prevent players from abusing particular actions.
* Use a stopping mechanism to counter dominant strategies.
+
* you want to counter dominant strategies.
* Use a stopping mechanism to reduce the effectiveness of a positive feedback mechanism.
+
* you want to reduce the effectiveness of a positive feedback mechanism.
  
 
===[[Attrition]]===
 
===[[Attrition]]===
  
Players actively steal or destroy resources of other players that they need for other actions in the game.
+
Players actively steal or destroy resources of other players that they need for other actions in the game. Use attrition when:
  
* Use attrition to allow direct and strategic interaction between multiple players.
+
* you want to allow direct and strategic interaction between multiple players.
* Use attrition to introduce feedback into a system which nature is determined by the strategic preferences or whims of the players.
+
* you want to introduce feedback into a system which nature is determined by the strategic preferences or whims of the players.
  
 
== Other Patterns (no categories yet) ==
 
== Other Patterns (no categories yet) ==

Revision as of 11:45, 9 September 2011

Machinations diagrams are a good vehicle to capture and reason about recurrent patterns in the internal economy of games. Below you can find an overview of 13 patterns that have been documented thus far:

Engines

Static Engine

Produce 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.

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 delicate mechanism to provide the player with resources. It increases the difficulty of the game as the strength and the required investment of the feedback loop are more difficult to asses.
  • you need multiple options and mechanics to tune the signature of the feedback loop that drives the engine, and the thereby the stream of resources that flow into the game.

Engine Building

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.

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 which 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 that automatically scales with players' progress or power.
  • you want to reduce the effectiveness of long term strategies created by a dynamic engine in favor for short term strategies.

Stopping Mechanism

Reduce 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 which nature is determined by the strategic preferences or whims of the players.

Other Patterns (no categories yet)