Eine Rutsche bringt Dinge von A nach B. Interessant wird es, wenn sie unterwegs entscheidet: Eisenerz zum Ofen, Kupfererz zum anderen, Samen ins Lager, Verdorbenes in den Komposter. Dafür gibt es Sortierer, Stapler und digitale Rutschenteile. Die Grundlagen der Rutschen stehen in Rutschen und Logistik: Grundlagen, Ein- und Ausgänge.
Die Geräte im Überblick
| Gerät | Strom | Modi | Steuerung |
|---|---|---|---|
| Sorter | 50 W | Split, Filter, Logic | Output 0 oder 1 |
| Logic Sorter | 5 W | All, Any, None | Regeln im eigenen Speicher |
| Stapler | 50 W | Automatic, Logic | Setting, Activate, Output |
| Entlader | 50 W | Automatic, Logic | Output |
| Loader (Loader) | 50 W | Auto, Logic | Open, Dispense |
| Digitales Ventil für Rutsche links | 10 W | – | Open |
| Digitaler Rutschen-Flip-Flop-Splitter links | 10 W | Mode0, Mode1 | Setting, SettingOutput |
Alle haben einen gemeinsamen Anschluss für Strom und Daten. Sorter und Logic Sorter entstehen aus dem Kit (Sortierer) (10 Eisen, 1 Gold, 5 Kupfer), Stapler, Entlader und Loader aus dem Kit (Stapler) (10 Eisen, 2 Kupfer) – der Loader braucht zwei davon.
Der Sorter
Der Sorter hat einen Eingang und zwei Ausgänge. Was mit einem Gegenstand passiert, bestimmt Mode:
- 0
Splitschickt die Gegenstände abwechselnd an Export und Export 2. - 1
Filtersortiert nach einer Filterliste: Treffer gehen an Export 2, alles andere an Export. Dazu gehört im Spiel das Sorter-Motherboard (5 Gold, 5 Silber aus dem Elektronik-Drucker). - 2
Logicüberlässt die Entscheidung einem Chip. Er liest den wartenden Gegenstand aus Fach 0 und schreibtOutput: 0 heißt Export, 1 heißt Export 2.
Der Modus Logic ist der flexibelste: Jede Regel, die sich in IC10 ausdrücken lässt, wird zur Sortierregel. Nach jedem Gegenstand setzt der Sorter Output selbst auf −1 und wartet auf die nächste Entscheidung. Vorsicht beim Umschalten: Wechselt Mode auf Split oder Logic, ist die Filterliste gelöscht.
Ein Chip sortiert Erz
Das folgende Programm schickt Eisen- und Kupfererz auf Output 0 und alles andere auf Output 1. Den Sorter benennst du mit dem Etikettierer „Sorter Erz“.
# Sorter: Eisen- und Kupfererz auf 0, alles andere auf 1
define SORTER -1009150565 # Sorter (StructureSorter)
define NSORTER HASH("Sorter Erz") # Name des Sorters
define EISENERZ 1758427767 # Erz (Eisen) (ItemIronOre)
define KUPFERERZ -707307845 # Erz (Kupfer) (ItemCopperOre)
define MODUSLOGIK 2 # Mode 2 = Logic
alias belegt r0
alias teil r1
alias eisen r2
alias kupfer r3
alias ziel r4
start:
yield
sbn SORTER NSORTER Mode MODUSLOGIK
lbns belegt SORTER NSORTER 0 Occupied 0
bnan belegt start # kein Sorter mit diesem Namen
beqz belegt start # Fach leer: nichts entscheiden
lbns teil SORTER NSORTER 0 OccupantHash 0
seq eisen teil EISENERZ
seq kupfer teil KUPFERERZ
or ziel eisen kupfer # 1 = gesuchtes Erz
seqz ziel ziel # gesuchtes Erz auf 0, Rest auf 1
sbn SORTER NSORTER Output ziel
j start
So liest du es:
- Jeden Takt stellt der Chip sicher, dass der Sorter im Modus
Logicsteht. Occupiedsagt, ob in Fach 0 etwas wartet. Ist das Fach leer, schreibt der Chip nichts. Das ist wichtig: EinOutput, das der Chip bei leerem Fach setzt, würde für das nächste Stück gelten, bevor er es gesehen hat.lbnsliest den Prefab-Hash des wartenden Gegenstands.seqvergleicht mit den beiden Erz-Hashes,orverknüpft die Ergebnisse,seqzdreht sie um.
Eisen- und Kupfererz landen so im Fach Export und am Anschluss „Ausgang“, alles andere in Export 2 am „Ausgang 2“. Welche Öffnung am Modell welche ist, zeigt der erste Testlauf. Liegt es falsch herum, tauschst du die Rutschen – oder streichst die Zeile mit seqz. Mehr dazu in der IC10-Akademie: Sortierer.
lbns mit Batchmodus 0 bildet den Mittelwert über alle Geräte mit diesem Namen. Zwei Sorter namens „Sorter Erz“ würden ihre Hashes mitteln, und keiner passt mehr. Jeder Sorter bekommt also einen eigenen Namen.
Die Hashes aller Gegenstände findest du in der Hash-Suche. Mehr zu Fachwerten in der Akademie: IC10-Akademie: Slots und IC10-Akademie: Batch-Modi.
Der Logic Sorter
Der Logic Sorter sieht aus wie der Sorter und braucht nur 5 W. Einen Logikwert Output hat er nicht. Er entscheidet selbst, nach Regeln in seinem eigenen Speicher mit 32 Plätzen. Ein Chip schreibt sie einmal mit put hinein, danach sortiert die Maschine allein.
Jede Regel prüft eine Eigenschaft des wartenden Gegenstands: Prefab-Hash gleich oder ungleich, Sortierklasse, Fachtyp oder Stapelmenge. Mode verknüpft die Regeln: All (0) schickt an Export 2, wenn alle zutreffen, Any (1), wenn mindestens eine zutrifft, None (2), wenn keine zutrifft. Alles andere geht an Export. Leere Plätze (0) werden übersprungen, alte Regeln bleiben bis zum Überschreiben oder clrd stehen.
Der Vorteil gegenüber dem Sorter im Modus Logic: Der Chip muss nicht jeden Takt mitlaufen, ein einziger Chip kann nacheinander viele Logic Sorter einrichten. Wie die Regelzahlen aufgebaut sind, zeigt die IC10-Akademie: Logiksortierer.
Stapler, Entlader und Loader
Der Stapler fasst gleiche Gegenstände zu Stapeln zusammen. Sein drittes Fach heißt „Verarbeitung“ – dort wächst der Stapel. Im Modus Automatic arbeitet er allein, im Modus Logic entscheidet ein Chip über Activate und Output. Über Fach 2 liest der Chip Quantity und MaxQuantity.
Warum sich Stapeln lohnt, zeigt ein Rechenbeispiel: Eine Rutsche von 20 Feldern hält 20 Gegenstände. Als Einzelstücke sind das 20 Erze, als volle Stapel zu je 50 bis zu 1000.
Der Entlader leert Behälter wie eine Kiste: Im Modus Automatic holt er Fach für Fach den Inhalt heraus, danach schickt er den leeren Behälter weiter. Im Modus Logic holt Output 1 ein Stück heraus, Output 0 lässt den Behälter mit Inhalt durch, danach steht Output wieder auf −1.
Der Loader („Loader“) macht das Umgekehrte. Er hat zwei Rutscheneingänge: einen für die Ware (Fach „Payload“) und einen für den Behälter (Fach „Recipient“). Jedes Stück Ware kommt ins erste freie, passende Fach des Behälters.
- Im Modus
Autogeht der Behälter weiter, sobald er voll ist oderOpen1 steht. Ware, für die kein Behälter da ist oder kein Fach passt, läuft direkt zum Ausgang durch. - Im Modus
Logicbleibt der Behälter stehen, bis ein ChipDispense1 schreibt. Ware ohne Platz wartet im Eingang.
Ein Rechenbeispiel: Eine Kiste mit zehn Fächern und Eisenerz in Stapeln zu 50 nimmt bis zu 500 Erz auf. Der Loader füllt sie, der Entlader am anderen Ende leert sie wieder.
Digitale Ventile und Splitter
Das Digitales Ventil für Rutsche links lässt Gegenstände durch, solange Open 1 ist. Damit baust du Schleusen in der Rutsche: Ein Chip liest mit OccupantHash, was im Ventil wartet, und öffnet nur für das Richtige. Der Digitaler Rutschen-Flip-Flop-Splitter links verteilt auf zwei Ausgänge und hat dafür die schreibbaren Werte Mode, Setting, Quantity und SettingOutput.
Ein Beispiel-Aufbau
Ein Erzlager mit Automatik könnte so aussehen:
- Einwurfbehälter für alles, was du vom Abbau mitbringst.
- Stapler, damit lose Erze zu Stapeln werden.
- Sorter im Modus
Logicmit dem Programm oben: Eisen und Kupfer zum Ofen, Rest weiter. - Zweiter Sorter für das nächste Erz, am Ende ein Verkaufsautomat als Lager.
So bleibt jede Strecke kurz, und jeder Sorter hat nur eine Frage zu beantworten.
Weiter
- Rutschen, Bausätze und Lager: Rutschen und Logistik: Grundlagen, Ein- und Ausgänge
- Ernte aus dem Gewächshaus sortieren: Hydrokultur und Pflanzkübel: Aufbau und Automatik
- Geräte per Name ansprechen: IC10: Gerät per Name steuern
- Code ausprobieren: IC10-Editor