Drain

From MachinationsWiki
Jump to: navigation, search

A Drain is a node that destroys resources. It is one of the Four Economic Functions.

Drains can have four different activation modes:

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

When a Drain 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.

The Labels of input Resource Connections can have random values or fractions. When the modifier is a fraction resources are pulled only a fraction of the times the drain fires. When the value is 0.5 the drain needs to fire twice to pull one resource.

When a Drain collects resources it destroys them. If there are any outgoing Triggers these will be fired when the specified number of resources have been collected from all its inputs.