Skip to content

Advanced Universal Pipes

CD4017BE edited this page Oct 19, 2018 · 4 revisions

The Advanced Universal Pipes are much more expensive in terms of crafting resources than Basic Pipes but they also come with significant advantages:

  • Resources move instantly from providing to receiving inventory without any internal buffering.
  • Locations and distances don't matter for them, multiple resources can move from anywhere to anywhere else within the same connected pipe network.
  • All 6 block faces of a pipe are configured (and filtered) independently, which makes them fit perfectly in tight spaces.

Other than with the Basic Pipes, there is only one Advanced Universal Pipe block that on its own only provides a structural base.
To make these actually move resources around, the different types of Basic Pipes need to be attached on the sides of connected Advanced Universal Pipe blocks (by right-click with the item in hand) to configure how they should interact with neighboring item or fluid inventories.

There are two ways to establish resource transfer through Advanced Universal Pipes which are called provider mode and retriever mode in the following.

Note: These modes won't interfere with a each other and can be used both at the same time on the same pipe network (each for both fluids and items).

Provider mode

Provider mode makes use of Extraction Pipe and Destination Pipe connectors. Here each Extraction connection tries to get rid of the contents of its attached inventory by inserting the resources into the inventories attached to Destination connections.

If there are multiple Destination connections, they are traversed in descending priority order until the currently processed item/fluid stack has been fully inserted.

Retriever mode

Retriever mode makes use of Injection Pipe and Source Pipe connectors. Here each Injection connection tries to fill its connected inventory by taking resources from inventories attached to Source connections.

If there are multiple Source connections, they are traversed in ascending priority order until a suitable fluid/item stack for the Injection inventory has been collected.

Connector priorities

Passive connectors (Source, Destination) are assigned with priorities that control the order in which these are used by active connectors (Extraction, Injection), like described above. If multiple connectors have the same priority then their ordering is more less random.

The priority of a connector is defined by the Pipe Filter attached to it, where connectors without a filter have priority 0. Each Pipe Filter has a priority setting which you can set to any value in range -127 to +127.

Advanced connector control

Other than just assigning priorities, you can get even more control over which sources/destinations each extractor/injector should interact with, by making use of the Pipe Filter's blocking mode:

If the destinations/sources traversal comes across a filtered connector with blocking mode enabled and according to the filter the resource to be inserted/extracted should not pass on, then the traversal will stop at that connector and ignore any remaining connectors that haven't been visited yet.

Having blocking mode enabled on an extraction/injection connector will cause that connector to start it's search for destinations/sources at the priority configured in the filter instead of starting with the highest/lowest (like it would normally do). So an extractor will skip all destinations will a priority higher than the specified one and an injector will skip all sources with a priority lower than specified.

Config Settings

The following properties can be tweaked via config:

  • fluid_warp_tick controls the interval in ticks between actions of Fluid Extraction and Fluid Injection connections, default is 4 ticks (= 0.2 seconds).
  • item_warp_tick controls the interval in ticks between actions of Item Extraction and Item Injection connections, default is 4 ticks (= 0.2 seconds).

The amount of fluid transfered during a single action is only limited by the tanks attached to the pipe, so under ideal conditions it would be equal to their capacity.
The same applies for items too, however the Item Extraction and Item Injection connections only operate on a single slot at a time, so in most cases, the transfered amount would be the item's stack size.

Clone this wiki locally