History

Current version

3/8/2026, 10:07:01 PM

Imported from wiki

by tmascroft · 3/8/2026, 9:32:39 PM

Sorter

## Sorter

:::infobox
| Property | Value |
|----------|-------|
| Prefab Hash | -1009150565 |
| Prefab Name | StructureSorter |
| Power Usage | 5W |
| Placed With | [Kit (Sorter)](/wiki/kit-sorter) |
| Placed On | Small Grid |

![Sorter](StructureSorter.png)
:::
### Deconstruction Steps

| Step | Tool | Recovered Item |
|---|---|---|
| 1 | [Hand Drill](/wiki/hand-drill) | [Kit (Sorter)](/wiki/kit-sorter) |


*Not to be confused with Logic Sorter.*


## Description

> *"No amount of automation is complete without some way of moving different items to different parts of a system. The [Xigo](/wiki/xigo-faction) A2B sorter can be programmed via a computer with a [Sorter Motherboard](/wiki/sorter-motherboard) to direct various items into different chute networks. Filtered items are always passed out the righthand side of the sorter, while non filtered items continue straight through."*
> — Stationpedia

**Mode 0 (Split):** Items alternate between output lanes automatically. The Output property switches between 0 and 1 after each item.

**Mode 1 (Filter):** Requires a [computer](/wiki/computer) with a [Motherboard (Sorter)](/wiki/motherboard). Whitelisted items exit one lane, all others exit the alternate lane. When facing the output side (power switch on your right), whitelisted items exit left, rejected items exit right. **Note:** Some players report issues with the Motherboard (Sorter) interface. Consider using Mode 2 (Logic) with [IC10](/wiki/ic10) as a more reliable alternative.

**Mode 2 (Logic):** The sorter waits for [IC10](/wiki/ic10) or logic chips to set the Output parameter (0 or 1) before releasing each item. After the item exits, Output resets to -1 automatically. Your controller must set Output for every item - this is intended behavior, not a bug. See [Example IC10 sorting script](/wiki/#example-ic10-sorting-script) below for a working implementation.

**Output orientation:** When facing outputs with power switch on your right: Output 0 exits right (near power switch), Output 1 exits left.

## Data Network


| Parameter | Type | Access | Description |
|---|---|---|---|
| Power | Boolean | Read | Can be read to return if the Sorter is correctly powered or not, set via the power system, return 1 if powered and 0 if not |
| Mode | Integer | Read/Write | The mode of the Sorter, **Split** does alternate outputs, **Filter** decides output via [Motherboard (Sorter)](/wiki/motherboard-sorter), **Logic** determines output via parameter **Output** |
| Error | Boolean | Read | 1 if device is in error state, otherwise 0 |
| Lock | Boolean | Read/Write | Disable manual operation of the Sorter. |
| On | Boolean | Read/Write | The current state of the Sorter. |
| RequiredPower | Integer | Read | Idle operating power quantity, does not necessarily include extra demand power |
| ClearMemory | Integer | Read/Write | r=0 |
| ExportCount | Integer | Read | How many items exported since last ClearMemory |
| ImportCount | Integer | Read | How many items imported since last ClearMemory |
| Output | Integer | Read/Write | Decides which side the next item will be sent to.
In **Logic** mode, defaults to -1 after action. In **Split** mode, alternates between 0 and 1 after action. Does nothing in **Filter** mode.
When set to 0 the item will exit the output slot closest to the power switch.  When set to 1, the item will exit the slot furthest from the power switch. |
| PrefabHash | Integer | Read | The hash of the structure |
| ReferenceId | Integer | Read | Unique Reference Identifier for this object |
| NameHash | Integer | Read | Provides the hash value for the name of the object as a 32 bit integer. |

### Data Slots

These are all parameters, that can be read with a [Slots Reader](/wiki/kit-logic-io#slots-reader). The outputs are listed in the order a Slots Reader's "VAR" setting cycles through them.
| Number || Name | Description |
|---|---|
| 0 | Import |
| 1 | Export (accept) |
| 2 | Export (reject) |
| 3 | Data Disk |

| Name | Data Type | Description |
|---|---|---|
| MaxQuantity | Integer | Returns maximum stacksize. |
| Damage | Integer | Item durability in percent. |
| Class | Integer | Item class ID. |
| Quantity | Integer | Size of stack. |
| PrefabHash | Integer | Returns [ItemHash](/wiki/itemhash) of item in slot. |
| Occupied | Boolean | Returns whether the slot occupied. (0 for no, 1 for yes). |
| OccupantHash | Integer | Returns [ItemHash](/wiki/itemhash) of item in slot. |

## Item Slot Classes / Types

Reading the *class* attribute of the input slot will give one of the following values:

Note that you can use <pre style="display: inline">SlotClass.<Item></pre> directly in IC code instead of the numeric value
- NOTE The classes listed in this section are FilterSlotTypeCompare and NOT sorting class.

| + Item values and descriptions | Item | Value | Description | Item | Value | Description | Item | Value | Description |
|---|---|---|---|---|---|---|---|---|---|
| None | 0 |  | Helmet | 1 |  | Suit | 2 |  |  |
| Back | 3 |  | GasFilter | 4 |  | GasCanister | 5 |  |  |
| Motherboard | 6 |  | Circuitboard | 7 |  | DataDisk | 8 |  |  |
| Organ | 9 |  | Ore | 10 | Includes reagent mixes from recycler and ices | Plant | 11 |  |  |
| Uniform | 12 |  | Entity | 13 |  | Battery | 14 |  |  |
| Egg | 15 |  | Belt | 16 |  | Tool | 17 |  |  |
| Appliance | 18 |  | Ingot | 19 |  | Torpedo | 20 |  |  |
| Cartridge | 21 |  | AccessCard | 22 |  | Magazine | 23 |  |  |
| Circuit | 24 |  | Bottle | 25 | This refers to Paint Can | ProgrammableChip | 26 |  |  |
| Glasses | 27 |  | CreditCard | 28 |  | DirtCanister | 29 |  |  |
| SensorProcessingUnit | 30 |  | LiquidCanister | 31 |  | LiquidBottle | 32 |  |  |
| Wreckage | 33 |  | SoundCartridge | 34 |  | DrillHead | 35 |  |  |
| ScanningHead | 36 |  | Flare | 37 |  | Blocked | 38 |  |  |
| SuitMod | 39 |  | Crate | 40 |  | Portables | 41 |  |  |

### Example IC10 sorting script

Basic ingot sorter - filters one item type to the left output, rejects everything else to the right.

<pre>
1. Ingot Sorter Controller
1. When facing outputs (power switch on right): matched items exit left, rejected exit right
1. Setup:
1. 1. Connect d0 to the sorter
1. 2. Change hTarget to match your desired ingot

define hTarget HASH("ItemIronIngot")

alias dSorter d0
alias vHash r0
alias vOutput r1

s dSorter Mode 2 # Logic mode
s dSorter On 1 # Turn on

main:
  ls vHash dSorter 0 OccupantHash # Read import slot
  beqz vHash skip # Empty - skip processing

  seq vOutput vHash hTarget # 1=match, 0=reject
  s dSorter Output vOutput

  skip:
  yield
j main
</pre>