Anleitungen / Bauen & Ressourcen
Comparatorsignalstärke aus Containern: die Formel und die Stapelgrößen-Falle
Eine Truhe mit einem Gegenstand gibt Signal 1 aus, aber eine Truhe mit dreiundsechzig ebenfalls. Die Formel erklärt, warum – und warum Shulker-Kisten und Eimer jede Berechnung zunichtemachen.
Das Auslesen eines Containers mit einem Komparator ist das Rückgrat der meisten Gegenstandssortier- und Auto-Crafting-Redstone-Schaltungen. Die Formel ist kurz, und jede Eigenheit ergibt sich aus ihr.
Die Formel
signal = floor(1 + (sum of fullness across slots ÷ number of slots) × 14)
wobei die Füllmenge jedes Slots items in slot ÷ max stack size for that item beträgt.
Das 1 + ist der wichtige Teil: Jeder Inhalt ungleich null erzeugt mindestens Signal 1, und ein leerer Container ergibt 0. Deshalb ist es trivial, „ist überhaupt etwas darin" zu erkennen – und nicht trivial, „wie viel genau" zu erkennen.
Warum ein Gegenstand und dreiundsechzig beide 1 ergeben
Eine doppelte Truhe hat 54 Slots. Ein Stapel aus 64 Bruchstein füllt einen Slot vollständig:
1 + (1 ÷ 54) × 14 = 1 + 0.259 = 1.259 → floor = 1
Du brauchst vier volle Stapel, bevor die Ausgabe 2 erreicht. Der klassische Einzelgegenstand-Detektor funktioniert, weil 1 der Mindestwert für jeden Inhalt ist, nicht weil er einen einzelnen Gegenstand misst.
Die Stapelgröße ändert alles
max stack size gilt pro Gegenstand, und hier brechen die Berechnungen:
| Gegenstand | Stapel | Ein Gegenstand ergibt |
|---|---|---|
| Bruchstein | 64 | 1/64 eines Slots |
| Enderperle | 16 | 1/16 |
| Gefüllter Eimer, Lore, Boot | 1 | einen ganzen Slot |
In den fünf Slots eines Trichters zählt ein nicht stapelbarer Gegenstand – ein Wassereimer, eine Lore – als ein Fünftel voll: Signal 3, wo ein Bruchstein 1 ergibt. Vier davon ergeben 12. Deshalb sind nicht stapelbare Gegenstände die Standardmethode, um einen Zähler in großen, vorhersehbaren Schritten weiterzuschalten. (Ein leerer Eimer stapelt sich zu 16, verhält sich also nicht genauso.)
Shulker-Kisten sind nicht transparent
Ein Komparator, der eine Truhe ausliest, die eine Shulker-Kiste enthält, sieht die Kiste als einen Gegenstand, der einen Slot belegt. Er sieht nicht hinein. Sortiersysteme, die etwas anderes annehmen, zählen still und leise falsch.
Komparator-Auslesungen bei Nicht-Containern
Derselbe Komparator liest auch aus:
| Block | Signal |
|---|---|
| Kessel | 0–3 je nach Wasserstand |
| Komposter | 0–8 je nach Füllstufe |
| Kuchen | 14 bis 0 pro gegessenem Stück |
| Rahmen | 1–8 je nach Drehung |
| Plattenspieler | 1–15 je nach Schallplatte |
| Lesepult | 1–15 je nachdem, wie weit die aufgeschlagene Seite im Buch ist |
| Bienenstock | 0–5 Honigstand |
| Endportalrahmen | 15 mit Auge, 0 ohne |
Rahmen und Lesepulte sind die nützlichen für versteckte Schalter, weil sie durch eine Wand hindurch auslesen.
Subtraktionsmodus
Die vordere Fackel leuchtet bedeutet Subtraktionsmodus: Die Ausgabe ist Seite von Hinten abgezogen, mindestens 0. Der Vergleichsmodus (Fackel aus) gibt das hintere Signal nur dann weiter, wenn es mindestens so stark ist wie das stärkste seitliche Signal.
Gib den Inhalt eines Containers ein und erhalte das exakte Signal, einschließlich gemischter Stapelgrößen, in der Reference & Calculators — Set 2.