MC Toolkit

ガイド / 建築とリソース

コンテナからのコンパレーター信号強度:計算式とスタックサイズの罠

アイテム1個のチェストは信号1を出力するが、63個入りのチェストも同じく1を出力する。その理由を計算式が説明し、シュルカーボックスとバケツがなぜあらゆる計算を狂わせるのかを解説する。信号の最大値は15です。

コンパレーターでコンテナを読み取ることは、ほとんどのアイテム仕分けや自動クラフトレッドストーンの基盤だ。計算式は短く、すべての癖はそこから導き出される。

計算式

signal = floor(1 + (sum of fullness across slots ÷ number of slots) × 14)

各スロットの充填度はitems in slot ÷ max stack size for that item。

重要なのは1 +の部分だ。中身がゼロでなければ少なくとも信号1を出力し、空のコンテナは0になる。だから「ここに何か入っているか」を検出するのは簡単だが、「正確にどれだけ入っているか」を検出するのは簡単ではない。

アイテム1個でも63個でも1になる理由

ラージチェストには54スロットある。丸石1スタック(64個)でスロット1つが完全に埋まる:

1 + (1 ÷ 54) × 14  =  1 + 0.259  =  1.259  →  floor = 1

出力が2に達するには満杯のスタック4つが必要だ。古典的な単一アイテム検出器が機能するのは、1がどんな中身に対しても下限だからであり、アイテム1個を測っているからではない。

スタックサイズがすべてを変える

max stack sizeはアイテムごとに決まり、ここで計算が破綻する:

アイテムスタックアイテム1個で
丸石64スロットの1/64
エンダーパール161/16
水入りバケツ、トロッコ、ボート1スロット1つ分

ホッパーの5スロットでは、スタック不可のアイテム1個——水入りバケツやトロッコ——が5分の1の充填として数えられ、信号3になる。丸石1個なら1だ。4個なら12になる。だからスタック不可アイテムは、大きな予測可能な刻みでカウンターを進める標準的な手段になる。(空のバケツは16個までスタックするので、同じようには機能しない。)

シュルカーボックスは透明ではない

シュルカーボックスが入ったチェストをコンパレーターで読むと、ボックスは1スロットを占める1アイテムとして扱われる。中は見えない。そうでないと仮定した仕分けシステムは、気づかないうちに数え間違える。

コンテナ以外のコンパレーター読み取り

同じコンパレーターは以下も読み取る:

ブロック信号
大釜水位に応じて0~3
コンポスター充填段階に応じて0~8
ケーキ一切れ食べるごとに14から0へ
額縁回転に応じて1~8
ジュークボックスディスクに応じて1~15
書見台開いているページが本のどこまで進んでいるかに応じて1~15
養蜂箱蜂蜜レベルに応じて0~5
エンドポータルフレームエンダーアイありで15、なしで0

額縁と書見台は隠しスイッチに便利だ。壁越しに読み取れるからである。

減算モード

前面の松明が点灯していると減算モードになる。出力は背面から側面を引いた値で、下限は0だ。比較モード(松明消灯)は、背面の信号が最も強い側面の信号以上の場合にのみ、そのまま通す。

スタックサイズが混在する場合も含め、コンテナの中身を入力すれば正確な信号が得られる:Reference & Calculators — Set 2。

マインクラフト 資料 & 計算機 — 第 2 集 →

その他のガイド

すべて見る →