Skip to content

addons3

Joachim Stolberg edited this page Jan 26, 2019 · 17 revisions

High Performance blocks

Table of Contents

This extensions provides the following blocks which are able to pull/push ItemStacks instead of single items. Thus, the tubelib throughput is dramatically increased. But it also includes a teleporter block for item exchange between two paired teleporter blocks.

HighPerf Chest


A large chest with more capacity and the possibility to pull item stacks (together with the high performance pusher). The Chest supports commands to read the last player action (player-name, take/put, item-name) and the chest state ("empty", "loaded", "full").
The chest returns "loaded" when it is not empty and not "full",
"full" is returned, when no empty stack is available.
If the chest is programmed with a block number by means of the Tubelib Programmer, the chest sends an "on" command after each player interaction, followed by an "off" command one second later.

HighPerf Chest [tubelib_addons3:chest]

States:

  • "empty", "loaded", "full"

Features:

  • sends an "on" event on each player interaction (take/put items), followed by an "off" event one second later
  • Programmer support (store node numbers)

Supported Commands:

  • "chest_state": read the state of the chest
    • via SmartLine Controller: chest
    • via SaferLua Controller: $get_status(num)
  • "action": read the action "take"/"put" and the name of the item
    • via SaferLua Controller: $get_player_action(num)

HighPerf Pusher


The Pusher is a pulling/pushing block, moving items from one inventory block to another (e.g. chests). This Pusher moves one item stack every 2 seconds form a HighPerf Chest or from the Harvester to any other inventory block.

HighPerf Pusher [tubelib_addons3:pusher]

States:

  • "running", "stopped", "standby", "blocked", "defect"

Features:

  • none

Supported Commands:

  • "control": turn the device/block "on" or "off"
    • via SmartLine Controller: switch
    • via SaferLua Controller: $send_cmnd(num, text)
  • "state": read the state of the block
    • via SmartLine Controller: state
    • via SaferLua Controller: $get_status(num)

HighPerf Distributor


The Distributor works as filter and pusher. It allows to divide and distribute incoming items into the 4 output ports. The channels can be switched on/off and individually configured with up to 6 item types. The filter passes the configured items and restrains all others. This Distributor tries to push one item stack every 2 seconds. Unconfigured but activated filters are used for items, which do not fit to all other filters. If the Distributor can’t push an item into a block with an inventory (such as a chest) because that inventory is full, but there is one open and unconfigured output, it will use this output port.

HighPerf Distributor [tubelib_addons3:distributor]

States:

  • "running", "stopped", "standby", "blocked", "defect"

Features:

  • none

Supported Commands:

  • "control": turn the device/block "on" or "off"
    • via SmartLine Controller: switch
    • via SaferLua Controller: $send_cmnd(num, text)
  • "state": read the state of the block
    • via SmartLine Controller: state
    • via SaferLua Controller: $get_status(num)
  • "filter": enable/disable one of the four filters ("red"/"green"/"blue"/"yellow")
    • via SmartLine Controller: set_filter
    • via SaferLua Controller: $set_filter(num, slot, val)
  • "counter": read the counter value of already processed items
    • via SaferLua Controller: $get_counter(num)
  • "clear": clear the item counter (set to 0)
    • via SaferLua Controller: $clear_counter(num)

HighPerf Pushing Chest


The HighPerf Pushing Chest is a combination of a sorting and pushing block with inventory.

The block has two inventories:

  • "shift", the upper inventory (with the yellow wool) which is used as pass-through register
  • "main", the lower inventory (with the blue wool) as standard chest inventory

Received items for which the same item type is not yet available in the "main" inventory are stored in the "shift" inventory and forwarded with the next cycle (yellow wool). In this case, the block works as Pusher.
Received items for which the same item type is already available in the "main" inventory are also stored in the "main" inventory (blue wool).
That means to configure the HighPerf Pushing Chest, you simply have to put the dedicated items into the "main" inventory.

This block is for large sorting warehouses but also to build a high performance ring as tubelib backbone.


An example for a backbone ring of HighPerf Pushing Chests plus a HighPerf Pusher and HighPerf Chest to increase the ring storage capacity. Each chest can be used to push items into the ring or pull items out.

The HighPerf Pushing Chests has the following readable states:

  • "empty" -- the "main" inventory is empty
  • "loaded" -- the "main" inventory is partly loaded
  • "full" -- the "main" inventory is full
  • "blocked" -- an item from the "shift" inventory can't be pushed to the next block
  • "defect" -- the Pushing Chests is broken and has to be repaired

HighPerf Pushing Chest [tubelib_addons3:pushing_chest]

States:

  • "running", "stopped", "standby", "blocked", "defect"

Features:

  • none

Supported Commands:

  • "state": read the state of the block
    • via SmartLine Controller: state
    • via SaferLua Controller: $get_status(num)

Tubelib Teleporter


Teleporters are tube like blocks that move items to other Teleporter blocks, regardless of the distance between them. For the pairing of two Teleporters, enter the same channel string in both block forms. Only Teleporter with the same channel name will be linked together.

Tubelib Teleporter [tubelib_addons3:teleporter]

States:

  • none

Features:

  • none

Supported Commands:

  • none