Four Economic Functions
In their discussion of a game's internal economy represented by the flow of resources, Adams and Rollings identify four basic economic functions: sources, drains, converters and traders (2007:331-340). Sources create resources, drains destroy resources. Converters replace one type of resource for another, while traders allow the exchange of resources between players or game elements. In theory, a pool or combination of pools and gates can fulfill all these functions, but for clarity it is useful to introduce special nodes to represent sources, drains, converters and traders.
Sources are nodes that produce resources. In Risk, the building action is a source: it produces armies. Likewise passing 'Go' in Monopoly also is a source: it generates money. Health packs are sources of health in shooter games. As any node in a Machinations diagram, sources have an activation mode that is either passive, interactive or automatic. An example of an automatic source is the steady regeneration of the protective shields of the player's star fighter in Star Wars: X-Wing Alliance. The rate at which a source produces resources is a fundamental property of a source. The building action in Risk and the passing of 'Go' in Monopoly are examples of sources activated by user actions and game events respectively. Adams and Rollings distinguish between 'limited' and 'unlimited' sources (2007: 333). A limited source can easily be represented as a pool without inputs that starts with a number of resources on it. An unlimited source can be represented as a pool without inputs but with a sufficiently large number of resources on it (or rather an infinite number of resources). To represent unlimited sources, the Machinations framework includes a special source node represented as a triangle pointing upwards. Note that Adam and Rollings' notion of a 'limited source' is still represented as as a pool with no inputs.
Drains are nodes that consume resources. In an adventure game where you can cross hot lava at the cost of loss of health points, the lava acts as a drain. Being underwater in most games causes a resource representing breath to be drained away. The rate of a drain is determined by the flow rate of its input resource connection. Some drains consume resources at a steady rate while others consume resources at random rates or intervals. Drains could be represented as a pool with no outputs, but the Machinations framework includes a special drain node represented as a triangle pointing downwards.
Converters convert one resource into another. In Monopoly the option to buy property acts as a converter: the resource money is converted into another resource: property. In a shooter game, killing enemies might also invoke a converter. In this case ammunition is used in an attempt to kill, which in turn, when the enemy is put down, might be converted in new ammunition or health packs dropped by the enemy. Converters act exactly as a drain that triggers a source, consuming one resource to produce another. As with sources and drains, converters can have different types of rates to consume and produce resources. The Machinations framework represents a converter as a vertical line over a triangle pointing to the right.
Traders are nodes that cause resources to change ownership when fired: two players could use a trader to exchange resources. The board game Settlers of Catan is built around a trading mechanism allowing players to trade the five types of resource cards among each other against exchange rates they establish among themselves. A player that has many of timber cards, might for example decide to exchange three timber cards for two wool cards of another player. Compared to converters, traders are relatively rare; in many games, what appears to be a trader is often implemented as a converter. For example, depending on the implementation, the merchants in many computer role-playing games where players can barter for goods and equipment are converters, not traders. These merchants will happily buy whatever the player has to offer and seem to have an unlimited supply of handy items and money to buy the player's unwanted loot (Castronova 2005: 198-199). Fallout 3, where all traders' supplies are limited, is an exception. A trading mechanism can be constructed by two gates connected by a trigger ensuring that when one resource is received the other is returned in exchange. The Machinations framework represents a trader as a vertical line over two triangles pointing left and right.
Converters versus Traders
The difference between converters and traders is not always immediately clear. Especially from the perspective of an individual player, converters and traders will almost have the same function: pass a number of resources to it, and get a number of other resources in return. Yet, there is an important difference. As pointed out above: a converter can be seen as a combination of a drain and a source. Using a converter resources are actually consumed and produced, and therefore the total number of resources in the game might change. Whereas with a trader the number of resources always stays the same (Adams & rollings 2007: 334). When a converter is replaced by two pools as the equivalents of a source and a drain suggest the number of resources also stays the same. However, if one considers resources that are trapped on a pool without outputs and which state no longer affect the game to be inactive then the number active resources might change.
Economic Functions and Perspective
The economic function of a particular game element can change according to the perspective of the diagram. For example, the diagram below represents Monopoly from the perspective of an individual player. Only in the perspective of an individual player rent income is a source. From the perspective of the entire game rent acts as trader: money simply exchanges ownership. In this case, the bank should be modeled as an individual pool with which money is only traded. After all, the boxed game comes with a finite supply of play money. All of these would constitute valid models of the same game. As mentioned in the introduction, the Machinations framework allows one to model a game with different levels of detail and abstraction. The important question is: what does one try to model? For a basic understanding of behavior of Monopoly a simple, limited perspective as in the diagram below might suffice. Especially when one can imagine how this same structure is repeated for every player. But for a more thorough analysis more detail might be required (see for example Tutorial 1).