From MachinationsWiki
Revision as of 11:18, 24 June 2012 by Joris (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

A Trader is a node that controls the exchange of resources between two players (or rather, locations in the diagram). It is one of the Four Economic Functions.

Traders can have four different activation modes:

  1. Automatic Traders fire once every time step (or once after every turn for Turn-Based Diagrams).
  2. Interactive Traders fire when a user activates it by clicking on it.
  3. Starting Traders fire once when a diagram starts running.
  4. Passive Traders only fire when triggered.

When a Traders fires it attempts to pull resources towards as specified by the Labels of all its input Resource Connections. It can be in two different pull modes:

  1. In 'any' pull mode it will pull any available resources up to amount specified by its inputs, even when there are not enough.
  2. In 'all' pull mode it will only pull resources when the amount specified by its inputs is available.

Conceptually a Trader can be build form a number of Gates connected through Triggers (See the equivalent pattern below).

Sometimes it is easy to confuse Converters and Traders. The difference between them is that with a Converter a number of resources are destroyed and another number are created, as a result the total number of resources can change, whereas with a Trader the resources are traded between elements and their number must stay the same. It is for this reason that the Trader exists as an Element in the framework, but in practice it is rare to be using traders. In many cases a Converter or correctly connected Pools work just as well.

Traders are a little tricky to hook up. It is best to use match the colors of the input and output Flow Connections for a trader.

Due to the Perspective of most diagrams, you will find that sometimes it is inconvenient to model a full Traders. From the perspective of an individual player Traders and Converters act the same: you put recourses in and you get some out. You can use incomplete Traders in a diagram. A Trader is incomplete when it has fewer than two inputs or outputs. An incomplete trader acts just like a Converter would. Yet it might still me convenient to distingish conceptually between the two.