在《我的世界》的红石工程领域,红石比较器是一种功能强大且不可或缺的组件。它不像红石中继器那样只是简单地传递和加强信号,而是能够读取、比较和减去红石信号强度,从而实现更为复杂和精密的自动化控制。本篇文章将深入探讨红石比较器的方方面面,从它的基础功能到高级应用,帮助你在方块世界中打造出更加智能的机械。
一、红石比较器是什么?
红石比较器的外观与基本功能
红石比较器(Redstone Comparator)是《我的世界》中一种特殊的红石元件,它的外观呈扁平状,顶部有三个红石火把状的指示灯。当它被放置时,始终朝向玩家。与红石中继器类似,它具有固定的输入端和输出端:其尾部(有两个红石火把指示灯的一端)是主输入端,两侧是侧输入端,而头部(有一个红石火把指示灯的一端)则是输出端。
红石比较器最核心的功能是感知和处理红石信号强度。普通的红石线或红石火把只能传递开/关信号,而红石比较器能够识别信号的强弱等级(从0到15),并根据内部的逻辑进行比较或减法运算,然后输出相应强度的信号。
红石比较器的两种工作模式
红石比较器拥有两种独特的工作模式,通过右键点击可以进行切换:
- 比较模式(Comparison Mode): 这是比较器默认的工作模式,当它被放置时即处于此模式。在这种模式下,比较器会比较其主输入端信号强度与两个侧输入端中信号强度最大值。如果主输入端的信号强度大于或等于侧输入端信号强度最大值,比较器将输出与主输入端相同强度的信号;否则,它将不输出任何信号(信号强度为0)。红石比较器在比较模式下,顶部的单个红石火把指示灯处于熄灭状态。
- 减法模式(Subtraction Mode): 在比较模式下对比较器右键点击一次,它就会切换到减法模式。在此模式下,比较器会将主输入端的信号强度减去两个侧输入端中信号强度最大值,然后输出计算结果的信号强度。如果计算结果小于0,比较器将不输出任何信号。红石比较器在减法模式下,顶部的单个红石火把指示灯会亮起。
这两种模式赋予了红石比较器极高的灵活性,使其能够用于检测物品数量、计算信号差值等复杂场景。
二、如何获取与合成?
红石比较器的合成配方
红石比较器不能在野外自然生成,玩家必须通过合成台制作获得。它的合成配方如下:
所需材料的获取
- 下界石英: 可以在下界(The Nether)通过开采下界石英矿石获得。下界石英矿石通常分布在下界的各个高度。
- 石头: 通过开采任何石质方块(如圆石、花岗岩、闪长岩、安山岩等)获得圆石,然后将圆石放入熔炉烧炼即可得到石头。
- 红石火把: 由一根木棍和一份红石粉合成。红石粉可以通过开采红石矿石获得。
收集这些材料相对简单,使得红石比较器成为一种易于获取但功能强大的红石元件。
三、比较器的工作原理与模式详解
红石信号强度基础
理解红石比较器,首先要理解红石信号强度。在《我的世界》中,红石信号强度是一个0到15之间的整数值。一个被激活的红石块或红石火把通常发出强度为15的信号。红石线每延伸一格,其信号强度就会衰减1。因此,最长可以传递15格距离。红石比较器能够“读取”并“输出”这些不同强度的信号。
比较模式(Comparison Mode)的详细逻辑与应用
在比较模式下(顶部的单个红石火把熄灭),红石比较器执行以下逻辑:
- 获取输入:
- 主输入端(尾部):获取来自后方方块或红石线的信号强度(通常被称为输入A)。
- 侧输入端(两侧):获取来自左右两侧方块或红石线的信号强度,取两者中的最大值(通常被称为输入B)。如果只有一个侧输入,则取该侧输入的值。
- 进行比较: 比较器将输入A与输入B进行比较。
- 输出结果:
- 如果
输入A ≥ 输入B,比较器将输出强度为输入A的信号。 - 如果
输入A < 输入B,比较器将不输出任何信号(信号强度为0)。
- 如果
应用示例:
低库存提醒器: 设想一个箱子,你希望当里面的物品数量少于某个特定值时发出警报。你可以将比较器放置在箱子后面(主输入),然后将一个固定信号源(如带有红石块的杠杆或红石线衰减后的信号)连接到比较器的侧输入端(代表你的阈值)。当箱子里的物品数量减少,导致主输入信号强度低于侧输入阈值时,比较器就会熄灭,停止输出信号,从而触发警报机制。
举例说明:一个装满64个物品的箱子,其主输入信号强度可能为15。如果你在侧输入端输入一个强度为5的信号,那么只要箱子中的物品量足够大,使得其信号强度大于或等于5,比较器就会输出箱子实际物品量对应的信号强度。一旦箱子物品量过少,导致信号强度低于5,比较器便不再输出。
减法模式(Subtraction Mode)的详细逻辑与应用
在减法模式下(顶部的单个红石火把亮起),红石比较器执行以下逻辑:
- 获取输入:
- 主输入端(尾部):获取来自后方方块或红石线的信号强度(输入A)。
- 侧输入端(两侧):获取来自左右两侧方块或红石线的信号强度,取两者中的最大值(输入B)。
- 进行减法: 比较器将输入A减去输入B。
- 输出结果:
- 如果
输入A - 输入B ≥ 0,比较器将输出强度为输入A - 输入B的信号。 - 如果
输入A - 输入B < 0,比较器将不输出任何信号(信号强度为0)。
- 如果
应用示例:
物品分类器核心: 减法模式是构建高效物品分类器的关键。一个漏斗被比较器读取信号强度,当漏斗中特定物品达到一定数量时,比较器会输出信号。通过巧妙地利用减法模式,可以精确控制漏斗何时停止吸取物品,从而避免溢出并实现精准分类。例如,你可以设定一个侧输入信号强度,使得只有当主输入(漏斗)的信号强度超过这个阈值时,比较器才输出一个正值信号,用于激活下方的漏斗或投掷器。
自动酿造台: 在酿造台上放置比较器可以检测酿造进度。当酿造台中的瓶子或材料数量发生变化时,信号强度也会变化。通过减法模式,你可以检测酿造台的特定状态,例如当酿造完成时,某个槽位的物品清空,导致信号强度下降,此时比较器输出为0,可以触发活塞推出成品或投掷器投入新材料。
可读取信号的方块类型与信号强度关系
红石比较器能够读取多种方块的内部状态并将其转换为红石信号强度。这些方块被称为“容器方块”或“互动方块”。它们输出的信号强度与它们的填充度或状态密切相关。
可读取信号的方块列表:
- 容器类方块: 箱子、陷阱箱、末影箱、漏斗、投掷器、发射器、桶、信标、营火、运输矿车、漏斗矿车、酿造台。它们通常根据内部物品的数量或堆叠百分比来决定信号强度。
- 特殊功能方块:
- 唱片机: 根据放入的唱片种类发出不同强度的信号(每种唱片有固定的输出强度)。
- 炼药锅: 根据内部液体的多少(水、熔岩、粉雪)来决定信号强度(分为0-3格)。水炼药锅:3格水->3,2格水->2,1格水->1。
- 末地传送门框架: 如果其中一个框架上放置了末影之眼,比较器会输出强度15的信号。
- 堆肥桶: 根据堆肥进度输出不同强度的信号。
- 重生锚: 根据充能次数(充能满为4次)输出不同强度的信号。
- 烛台: 根据烛台上的蜡烛数量(最多4根)输出不同强度的信号。
信号强度与容器填充度的关系:
对于大部分容器方块,信号强度并非线性关系,而是根据其最大堆叠容量和物品数量,按照特定公式计算得出。这个公式是 floor(1 + (N / S) * 14),其中:
N是容器中当前物品总数的估算值(考虑到物品堆叠)。S是容器最大储存容量的估算值。floor表示向下取整。
简而言之,当容器几乎为空时,信号强度为1;当容器完全填满时,信号强度为15。中间的强度值会根据填充百分比进行分级。这个非线性关系使得比较器在处理不同大小和堆叠的物品时非常灵活,但需要一定的经验来精确掌握。
四、为什么要使用红石比较器?
独特性与不可替代性
红石比较器的独特之处在于其处理“信号强度”的能力,这是红石中继器和红石火把所不具备的。中继器只能传递和加强信号,而火把只能提供开/关信号。当你的红石电路需要:
- 检测物品数量: 比如自动农场的作物收割时机、仓库物品的进出。
- 精确控制: 需要根据条件动态调整信号强度,而非简单的开/关切换。
- 建立逻辑门: 实现更复杂的逻辑判断,如“A信号比B信号强就触发”。
在这些场景下,红石比较器是几乎不可替代的元件。它提供了一个连接物理世界状态(如箱子里的物品多少)和红石逻辑世界的桥梁。
精确控制与自动化
红石比较器使得《我的世界》中的自动化系统可以达到前所未有的精确度。例如:
- 自动化仓库: 通过比较器连接漏斗,可以自动分拣物品,并防止单个存储单元因物品过多而溢出。
- 智能农场: 检测作物生长进度,当作物成熟时自动收割,避免过早或过晚。
- 资源管理系统: 检测燃料、弹药或任何其他消耗品的库存,当库存低于阈值时自动补充或发出警报。
- 基于物品的密码门: 只有放入特定数量或类型的物品才能打开门。
这些应用都依赖于比较器精确读取和处理信号强度的能力,极大地提升了自动化装置的智能水平和效率。
五、红石比较器的高级应用案例
物品分类器核心
这是红石比较器最经典且最重要的应用之一。通过减法模式的比较器,可以构建一个高度可靠的物品分类系统。基本原理是:
- 在用于分类的漏斗下方放置一个普通的箱子(或另一个漏斗)。
- 在分类漏斗的侧面放置一个被锁定的漏斗(通过活塞或红石火把锁定),这个漏斗中预先放入一个用于过滤的“鬼魂物品”(即少量要分类的物品和其他一些无法堆叠的垃圾物品,如命名过的物品,来占据其绝大部分槽位,只留下一小部分空槽来储存真正要分类的物品)。
- 将比较器放置在分类漏斗的后方(主输入)。
- 将一个侧输入信号连接到比较器,这个信号强度通常根据过滤漏斗中鬼魂物品的数量来设定,使得当分类漏斗中实际分类物品达到一个特定数量(例如22个)时,减法模式的比较器恰好输出一个1强度的信号。
- 这个1强度的信号会激活下方的红石线,解锁下面的漏斗,从而将多余的物品向下传输到存储箱。
这样,分类漏斗总是保持着一个固定数量的物品(例如22个),当有新的同类物品进入时,它会先补充到22个,多余的物品则被传输走。这个机制确保了分类的精确性和储存单元不会被错误物品污染。
全自动农场与酿造台
红石比较器在自动化生产中扮演着关键角色:
- 自动农场: 对于海带、甘蔗等农场,可以通过比较器检测其上方水方块的变化(例如,当海带长到一定高度,改变了水方块的亮度或状态),从而触发活塞收割。对于农作物农场,可以检测堆肥桶的进度或发射器中的骨粉数量。
- 自动酿造台: 通过比较器读取酿造台的输出槽位,可以判断是否酿造完成。当酿造台的某个槽位有物品(如药水)时,比较器会输出信号;当药水被取出或喝掉,槽位变空时,信号强度会下降或变为0。利用这个变化,可以设计电路自动补充材料或排出成品。
稳定红石时钟与脉冲处理
比较器还可以用于构建各种时钟电路和脉冲处理单元:
- 比较器时钟: 将一个比较器和一个红石中继器首尾相连,形成一个循环,并在中继器旁放置一个方块,方块上放置红石火把或红石线。这可以创建一个非常紧凑且稳定的脉冲时钟。调整中继器的延迟可以改变时钟的周期。
- 脉冲延长器: 通过比较器的减法模式,可以设计出延长红石脉冲的装置。一个较弱的信号通过比较器时,会与一个侧输入信号进行减法运算,如果结果为正,则持续输出,直到主输入信号彻底消失,这样可以有效地延长短促的脉冲信号。
- 脉冲发生器: 将比较器首尾相连,主输入端连接一个信号源(如方块上的红石火把),侧输入端连接红石线。通过精心设计,可以利用比较器的延迟特性产生短促的脉冲。
缓冲区与溢出保护
在大型自动化系统中,控制物品流速和防止溢出至关重要。红石比较器可以作为理想的缓冲区和溢出保护装置:
- 漏斗缓冲区: 在连续的漏斗传输线上,可以在关键节点放置比较器来检测漏斗的填充状态。当某个漏斗即将满载时,比较器会输出高强度信号,可以用来暂停上游的物品供应,防止堵塞。
- 自动切断供水/供料: 在一些需要精确控制原料供应的装置(如大型熔炉阵列),比较器可以检测下游容器的库存,当库存达到预设值时,通过比较器输出的信号切断上游的燃料或材料供应,避免资源浪费和系统堵塞。
六、比较器使用技巧与注意事项
放置方向与信号流向
红石比较器有明确的输入和输出方向。放置时,它的“尾部”(两个红石火把端)是主输入端,通常接受来自其正后方方块或红石线的信号。它的“头部”(一个红石火把端)是输出端,信号会从这里发出。两侧的输入端则接收来自左右方块或红石线的信号。理解这个方向性对于正确连接电路至关重要。
延迟特性
与红石中继器一样,红石比较器在处理信号时也会产生延迟。每个红石比较器会引入1个红石刻(redstone tick,即2个游戏刻,或0.1秒)的延迟。在设计需要精确时序的电路时,必须将这些延迟考虑在内,以避免意外的时序问题。
常见问题与排查
- 无输出或输出错误: 检查比较器是否处于正确的模式(比较模式或减法模式)。检查所有输入端的信号强度是否正确接入,以及主输入和侧输入是否按照设计逻辑工作。确保比较器下方没有阻碍其输出的方块。
- 信号强度不符预期: 容器方块的信号强度计算并非线性,请参考相关wiki了解具体方块的信号强度输出规则。有时,物品堆叠不均匀或容器容量较大时,信号强度变化可能不明显。
- 连锁反应不工作: 检查延迟。如果多个比较器或中继器串联,累积的延迟可能导致时序错乱。确保信号强度足够强,能够激活后续元件(例如,一个强度为1的信号可能不足以激活较远的活塞)。
- 幽灵方块或错误激活: 有时,红石电路的更新顺序(block update order)可能导致一些不稳定的行为。尝试调整元件放置顺序或引入更多中继器来稳定信号。
总结
红石比较器是《我的世界》红石系统中一个精密而强大的工具。它通过其独特的信号强度读取、比较和减法功能,将红石工程的自动化水平提升到了一个新的高度。无论是简单的物品计数器,还是复杂的全自动生产线和逻辑系统,红石比较器都是实现这些高级功能的基石。掌握它的工作原理和应用技巧,将使你能够设计出更加智能、高效且富有创造力的红石机械,极大地丰富你的《我的世界》体验。