我的世界自动炼药

炼药装置作为生存后期的产物,最大的好处就是可以自动化炼药过程,不用守在炼药台旁边添加材料 。那么怎么制作炼药装置?如何完成自动炼药?下面小编带大家一起看看 。
工具/材料
我的世界
那么这个装置的核心自然就是这个炼药台了 。是不是很不科学?如此庞大的红石机构,其核心仍旧是一个小小的炼药台 。其他所有的红石都不过是为了达到自动化的辅助 。
我的世界自动炼药

这是一个经典的炼药装置 。上方的漏斗放入材料,侧面的漏斗放入水瓶,下方的漏斗取出药水并放进箱子 。但是在药水炼制完成之前,是不可以取出药水的,所以要给下方漏斗一个信号,阻止其传输 。
我的世界自动炼药

如果想手动取药水的话,这样的一个装置就可以达到目的 。但是一旦药水被取走,侧面漏斗又会放入新的水瓶,然后马上被下方漏斗抽走,该怎么处理?

因此需要一个延时装置 。当药水被取走之后,比较器输出信号不足,经过中继器延时之后,信号停止,被充能的漏斗可以继续输入水瓶 。
我的世界自动炼药

我的世界自动炼药

解决了水瓶的输入和药水的收取之后,还剩下材料的输入装置 。这个装置虽然原理很简单,但是消耗的材料也是最多的 。不能自由选择材料,怎么能算是全自动呢?这是材料选择的一个截面 。

当拉下拉杆时电路被接通,从下方传递的信号可以被一直传到投掷器中,使投掷器将里面的材料传递到漏斗阵列中 。
我的世界自动炼药

我的世界自动炼药

解决了炼药的3个步骤之后,这个装置就已经可以手动运行了 。但是如果想要自动化的话,则需要一套循环检测和延时装置 。
先分析一下装置的运行过程(以自动炼药循环为例):
输入炼药信号;
放入材料,并暂时阻断炼药信号输入;
等待炼药完成;
取出药水,补充水瓶;
恢复炼药信号,开始下一个循环 。
控制部分就是一个锁存器 。锁存器的功能图中已经标了出来 。
我的世界自动炼药

关键的检测药水炼好的装置,我是如此设计的 。我无法检测药水炼制完成,但是我可以检测什么时候最后一个材料进入炼药台,因此只需要计时20s,也就是一个材料需要的时间 。
我的世界自动炼药

关于比较器输出信号的强度,我搬运一下wiki 的解释:
物品栏检测输出
当容器为空,则无输出 。
当容器不为空,输出信号由下式给出:
输出信号强度 = 向下取整{1 + [容器内的物品数量 / (容器的物品槽总数 * 64)] * 14}
例:发射器(9个物品槽)里有300个方块,则输出信号强度为8:1 + (300/(9*64))*14 = 8.292,向下取整(即直接去掉小数部分)之后为8
注:假设一组方块为64个, 无法堆叠的物品(例如矿车)被看做是满堆叠的 。


产生特定的输出信号强度
你可以利用比较器的这个特性产生特定的输出信号强度 。容器内所需的物品数量可由上式的反函数,即下式给出:
需要的物品数量 = 最大值(需要的信号强度, 向上取整((容器的物品槽总数 * 64 / 14) * (需要的信号强度 - 1) ) )
例:要想使用熔炉(3个物品槽)产生强度为9的信号,你需要110个物品:8与(3*64/14)*(9-1)的最大值为109.714,向上取整后为110 。

熔炉中28个物品,信号强度4
漏斗中69个物品,信号强度5
而68个物品的漏斗信号强度也是4
也就是说,当漏斗中攒够了69个物品的时候,计时器才能输出信号
而漏斗传输速度为2.5个/s,69个需要27.6s ,比预期的20s多了不少 。但是由于基本是挂机炼药,所以影响并不算大,毕竟你手动添加材料(最多5个材料)也要花费不少时间对吧?
同样采用了漏斗计时器,这次放了23个物品,信号强度从1到2 。接近10s的时间足够所有的材料集中到这个漏斗里,再进入下面的检测漏斗 。
我的世界自动炼药

在服务器里,我把这个装置放在下面,并且用半砖传导上来,无疑复杂了很多,这里应该可以简化 。
我的世界自动炼药

药水取出的控制装置因为空间不够放在了下面 。被红石火把充能的红石粉会充能其右边的方块,达到了阻止炼药台下方漏斗传输的目的 。只要输入信号让红石火把熄灭,那么药水就会被取出 。