Difference between revisions of "Conveyor Mechanics"

From Space Engineers Wiki
Jump to: navigation, search
m (Sapphire moved page Conveyor Network to Conveyor Mechanics: The name is more suitable for the purpose of the page as it'll be added under "Game Mechanics")
m
Line 136: Line 136:
 
<!-- Will return at a later point to add more content and make more corrections -->
 
<!-- Will return at a later point to add more content and make more corrections -->
  
[[Category:Tutorials]]
+
[[Category:Game Mechanics]]

Revision as of 16:30, 24 July 2015

Example of a conveyor network between multiple inventories
Example of a medium cargo container, showing the large and small conveyor ports

Introduction

The conveyor network by definition, is the act of transferring of items between devices within the game. This can be achieved by either connecting devices next to each other through conveyor ports, or through the use of conveyor blocks.

Control

Currently, as of Update 01.046, it is not possible to determine where the conveyor network stores or deposits items. Although the player may manage inventories manually at their leisure, they however cannot control which inventories the network should pull from, where to store them, etc.

The only amount of control a player has over the network is by switching off its link to the conveyor network.
ConveyorNetwork01.jpg

However, it should be noted that this toggle is not available for all devices such as cargo containers.

Mechanics

Quoted from George Mamakos.[1]


This text is purely illustrational and cannot be taken for a design document or hard-coded rules that won't ever change. On the contrary - as we keep working on the game and making it better, a lot of the information here might become obsolete.

Conveyor Push-n-Pull principles

Some of the blocks (e.g. assembler, turrets, etc.) that can be connected to the conveyor system can automatically "push" or "pull" items to/from the conveyors. This works as follows:

  1. If the block is set to use the conveyor system, it checks certain conditions when it is necessary (which are different for each block type) that say whether it should send a push/pull request.
  2. If the conditions for the request are met, the block finds another block with inventory that can satisfy the request.

Push Request

  1. If the block sends a push request, it finds a suitable remote inventory, which has the CanReceive flag set. Once the inventory is found, the request is fulfilled by sending the requested items to the remote inventory.
  2. If the remote inventory does not have enough free space, only a part of the request is fulfilled and the request continues by searching for another remote inventory.

Pull Request

  1. If the block sends a pull request, it finds a remote inventory with the CanSend flag set. The remote inventory also has to contain the desired items.
  2. If these conditions are met, the request is fulfilled by transferring the items from the remote inventory.

Inventories with CanSend flag

  • Cargo container inventories
  • Assembler output inventory
  • Refinery output inventory
  • Ship drill inventory
  • Ship grinder inventory
  • Collector inventory
  • Connector inventory

Inventories with CanReceive flag

  • Cargo container inventories
  • Assembler input inventory
  • Refinery input inventory
  • Reactor inventory
  • Turret & gun inventories
  • Connector inventory

Requests of the individual block types


  • Assembler:
- If the input inventory is less than 60% full, the assembler issues a pull request for the needed materials according to the current blueprint
- If the output inventory is more than 75% full, the assembler issues a push request for its contents.
  • Refinery:
- See assembler; Refinery works similarly
  • Collector:
- Sends push requests for all of its contents
  • Reactor:
- If the fuel inventory is less than 60% full, sends pull request for some small amount of fuel
  • Turrets and ship guns:
- If their inventories ar less than 50% full, they send pull requests for ammo
  • Ship drill & ship grinder:
- Send push requests for all of their contents

Conveyor blocks

The conveyor blocks are more or less "pipes" that can be placed between devices when direct connections are impossible. In other words, conveyors are pipeline blocks the player can place to connect one inventory to another. The style in which players place the conveyors is completely up to them. The only requirement needed to establish a connection is by having two inventories on either end of the network.

List of conveyor blocks

The blocks listed below only function as conveyor and have no other purpose.

Large Conveyors

Small Conveyors

Conveyor ports

Conveyor ports are the input/output slots that conveyors and/or other devices may connect to in order to allow items to be transferred to another inventory.

Small port

Small conveyor ports are small, and do not allow objects larger than the ports themselves through.

ConveyorNetwork03.jpg

Items that can transfer through small ports

Small to Large port Incompatibilities

Players should be aware when using the conveyors that small ports & large are not compatible! You can not fit a smaller conveyor into a larger port, and a large into small port.

Bad conveyor port connection to a medium cargo container
Good conveyor port connection to a medium cargo container
Good conveyor port connection to a small ship drill
Bad conveyor port connection to a small ship welder

Large port

Large ports are larger in size, and can allow all item types to transfer through them.

ConveyorNetwork04.jpg

Examples

ConveyorNetwork15.jpg
ConveyorNetwork12.jpg
ConveyorNetwork13.jpg
ConveyorNetwork14.jpg
ConveyorNetwork11.jpg

References

  1. Forum thread: Explanation of pull & push principles in conveyor system Retrieved 9/4/2014