stationeers.de Mod-Werkstatt · Dominik1199
EN Anmelden
  1. Start
  2. IC10-Akademie
  3. Tag 257

Tag 257 von 365 · Profi · Monat 9: Logistik und Gewächshaus

Erntelogistik

Vom Harvie ins Lager: Slots in einer Schleife zählen, Sum für echte Stückzahlen, Stau am Export erkennen und den Harvie bei vollem Lager anhalten.

Lektion 18 Min. Woche 37

Das lernst du heute

  • Ernte einsammeln
  • Lager zählen
  • Überlauf vermeiden

Der Harvie legt jede Ernte in seinen Export-Slot. Von dort geht sie über eine Rutsche weiter, im einfachsten Fall in einen Kühlschrank. Läuft der voll, staut sich alles bis zum Harvie zurück, und die nächste reife Pflanze kann nicht geerntet werden.

Der Weg der Ernte

  1. Der Harvie erntet, die Früchte landen in Slot 1 (Export).
  2. Über den Export-Anschluss gehen sie in eine Rutsche.
  3. Am Ende steht ein Lager: Kühlschrank (StructureFridgeBig, 15 Slots) oder Spind (StructureStorageLocker, 30 Slots).

Ein Kühlschrank verlangsamt den Verfall von Essen. Für die Ernte ist er deshalb die bessere Wahl.

Lager zählen

Jeder Slot meldet Quantity (Stückzahl) und Occupied. Für die Summe über alle Slots gehst du mit einer Schleife durch die Slotnummern. lbns mit Sum addiert dabei jede Nummer über alle gleichnamigen Kühlschränke. Hier ist Sum richtig, denn Stückzahlen addieren sich wirklich.

move summe 0
move belegt 0
move idx 0
zaehlen:
lbns tmp KUEHL HASH("Vorrat") idx Quantity Sum
add summe summe tmp
lbns tmp KUEHL HASH("Vorrat") idx Occupied Sum
add belegt belegt tmp
add idx idx 1
blt idx SLOTS zaehlen

15 Durchläufe mit sechs Befehlen sind 90 Befehle, das passt in einen Takt. Bei einem Spind mit 30 Slots wären es 180. Dann verteilt sich die Schleife von selbst auf zwei Takte, weil der Chip nach 128 Befehlen unterbricht. Werte das Ergebnis deshalb immer erst nach der Schleife aus.

Überlauf vermeiden

Occupied mit Sum zählt die belegten Slots. Sind alle belegt, ist das Lager voll – genauer: fast voll, denn ein Stapel kann noch wachsen. Für den Harvie reicht eine einfache Regel:

  • Lager voll oder Export-Slot des Harvie belegt → Harvie aus, Lampe an.
  • Ein belegter Export-Slot heißt: Die Rutsche nimmt nichts mehr ab.
sge stopp belegt KAPAZ                            # alles belegt
lbns tmp ERNTER HASH("Ernter") 1 Occupied Average   # Export voll?
sgtz tmp tmp
or stopp stopp tmp
Achtung

Sum liefert ohne passendes Gerät 0, nicht NaN. Ein abgebauter Kühlschrank sieht dann aus wie ein leerer – und der Harvie erntet ins Nichts. Prüfe die Anwesenheit getrennt, zum Beispiel mit PrefabHash und Average: Das ergibt ohne Gerät NaN.

Tipp

Zwei gleichnamige Kühlschränke haben zusammen 30 Slots, die Schleife läuft aber weiter nur über die Nummern 0 bis 14 – lbns addiert jede Nummer über beide. Deshalb zwei defines: SLOTS für die Schleife, KAPAZ für die Gesamtzahl.

Schaubild

Ein Schrank mit nummerierten Slots Schrank (d0) Slot 0 Eisenerz Occ 1 Qty 5 Slot 1 Kupfererz Occ 1 Qty 12 Slot 2 leer Occ 0 Qty 0 Slot 3 leer Occ 0 Qty 0 ls r0 d0 0 Occupied r0 = 1 ls r1 d0 1 Quantity r1 = 12 Slots zählen ab 0. Werte im Slot heißen LogicSlotTypes.
lbns mit Sum addiert eine Slotnummer über alle gleichnamigen Kühlschränke, die Schleife geht alle Nummern durch.

Übung

Aufgabe

Der Harvie „Ernter“ liefert in den Kühlschrank „Vorrat“ (15 Slots). Schreibe einen Chip, der jeden Takt:

  • alle 15 Slots zählt und die Gesamtstückzahl auf der Anzeige „Vorrat“ zeigt
  • den Harvie ausschaltet und die Lampe „Lager“ einschaltet, wenn alle Slots belegt sind, der Export-Slot 1 des Harvie belegt ist oder der Kühlschrank fehlt
  • sonst den Harvie einschaltet und die Lampe aus
  • ohne Kühlschrank −1 anzeigt

Hinweise

Hinweis 1

Schleife mit idx von 0 bis 14, darin zwei lbns … Sum für Quantity und Occupied.

Hinweis 2

Voll: sge stopp belegt KAPAZ. Stau: lbns auf Slot 1 des Harvie.

Hinweis 3

Anwesenheit: lbn tmp KUEHL HASH("Vorrat") PrefabHash Average und snan.

Quiz

4 Fragen. Ab 60 % ist das Quiz bestanden – die Auswertung macht der Server.

Tag abschließen

  • Übung im Simulator bestanden
  • Quiz mit mindestens 60 % bestanden

Ohne Konto wird der Fortschritt nur in diesem Browser gespeichert.

Fehler in dieser Lektion melden

Zum Melden bitte anmelden. Anmelden

Esc
↑ ↓ wählenEnter öffnen/ öffnet die Suche überall