Guides / Building & Resources

ความแรงสัญญาณคอมพาราเตอร์จากภาชนะ: สูตรและกับดักขนาดสแต็ก

หีบที่มีของ 1 ชิ้นจะส่งสัญญาณ 1 แต่หีบที่มีของ 63 ชิ้นก็ส่งสัญญาณ 1 เช่นกัน สูตรนี้จะอธิบายว่าทำไมถึงเป็นเช่นนั้น และทำไมกล่องชัลเกอร์กับถังถึงทำให้การคำนวณทั้งหมดของคุณผิดเพี้ยนไป

การอ่านค่าภาชนะด้วยคอมพาราเตอร์ (comparator) เป็นหัวใจสำคัญของระบบคัดแยกไอเทมและระบบคราฟต์อัตโนมัติที่ใช้เรดสโตนส่วนใหญ่ สูตรนี้สั้นและทุกความแปลกประหลาดก็มาจากมัน

สูตร

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 ช่อง หินหยาบ (Cobblestone) หนึ่งสแต็ก 64 ชิ้นจะเติมเต็มหนึ่งช่องพอดี:

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

คุณต้องมี สี่สแต็กเต็ม ก่อนที่เอาต์พุตจะถึง 2 ตัวตรวจจับไอเทมเดี่ยวแบบคลาสสิกทำงานได้เพราะ 1 เป็นค่าต่ำสุดสำหรับเนื้อหาใดๆ ไม่ใช่เพราะมันวัดไอเทมหนึ่งชิ้น

ขนาดสแต็กเปลี่ยนทุกสิ่ง

max stack size เป็นต่อไอเทม และนี่คือจุดที่การคำนวณผิดพลาด:

ไอเทมสแต็กหนึ่งไอเทมให้ค่า
หินหยาบ (Cobblestone)641/64 ของช่อง
ไข่มุกเอนเดอร์ (Ender pearl)161/16
ถัง (Bucket), รถราง (Minecart), เรือ1เต็มช่อง

ท่อส่ง (Hopper) ช่องเดียวที่บรรจุ ถัง (Bucket) หนึ่งใบจะอ่านค่าเต็ม — สัญญาณ 15 นี่คือเคล็ดลับมาตรฐานสำหรับตัวนับที่แม่นยำ: เติม 4 ใน 5 ช่องของท่อส่งด้วยไอเทมที่ไม่สามารถสแต็กได้ และใช้ช่องที่ห้าเป็นสัญญาณ

กล่องชัลเกอร์ (Shulker Box) ไม่โปร่งใส

คอมพาราเตอร์ที่อ่านหีบที่มี กล่องชัลเกอร์ (Shulker Box) จะมองเห็นกล่องนั้นเป็นไอเทมหนึ่งชิ้นที่ครอบครองหนึ่งช่อง มันไม่สามารถมองเห็นข้างในได้ ระบบคัดแยกที่สันนิษฐานเป็นอย่างอื่นจะนับผิดพลาดโดยไม่รู้ตัว

การอ่านค่าคอมพาราเตอร์ที่ไม่ใช่ภาชนะ

คอมพาราเตอร์เดียวกันนี้ยังอ่านค่าได้จาก:

บล็อกสัญญาณ
หม้อปรุงยา (Cauldron)0–3 ตามระดับน้ำ
ถังหมักปุ๋ย (Composter)0–8 ตามระดับการเติม
เค้ก (Cake)14 ลงไปถึง 0 ต่อชิ้นที่ถูกกิน
กรอบไอเทม (Item Frame)1–8 ตามการหมุน
ตู้เพลง (Jukebox)1–15 ตามแผ่นดิสก์
แท่นอ่านหนังสือ (Lectern)หมายเลขหน้า
กล่องรังผึ้ง (Beehive)0–5 ระดับน้ำผึ้ง
กรอบประตูมิติเอนด์ (End Portal Frame)15 ถ้ามีตา, 0 ถ้าไม่มี

กรอบไอเทม (Item Frame) และแท่นอ่านหนังสือ (Lectern) มีประโยชน์สำหรับสวิตช์ที่ซ่อนอยู่ เพราะสามารถอ่านค่าผ่านกำแพงได้

โหมดลบ

คบเพลิง (Torch) ด้านหน้าติดสว่างหมายถึงโหมด ลบ (subtract): เอาต์พุตคือค่าด้านข้างลบออกจากด้านหลัง โดยมีค่าต่ำสุดที่ 0 โหมดเปรียบเทียบ (compare) (คบเพลิงไม่ติดสว่าง) จะส่งผ่านสัญญาณด้านหลังก็ต่อเมื่อสัญญาณนั้นมีความแรงอย่างน้อยเท่ากับสัญญาณด้านข้างที่แรงที่สุด

ป้อนเนื้อหาของภาชนะและรับสัญญาณที่แน่นอน รวมถึงขนาดสแต็กที่ผสมกัน ใน Reference & Calculators — Set 2

คู่มือและเครื่องคิด — ชุดที่ 2 →

More guides

Browse all →

กำลังหาเครื่องมือ Minecraft อื่นอยู่ไหม

ชุดเครื่องมือสร้าง ดู และแปลงไฟล์ที่ทำงานในเบราว์เซอร์ ฟรีทั้งหมด