本篇教程由作者设定未经允许禁止转载。
前言
Mekanism(Mek)作为经典的minecraft模组,从minecraft 1.7.10到现在的1.12.1已经发展了9年时间。在该模组中,塑料是一个略显鸡肋但绕不开的物品:大多数时候,塑料只是一种好看的装饰方块,生产核聚变所需燃料的太阳能中子活化机却也需要塑料作为前置材料。
尽管塑料的功能是如此有限,但其生产却并不简单:生产塑料的机器需要同时以物品、液体、气体作为输入,并产出气体物品;生产塑料的主线路有两道工序,但中间产物需要支线才能配平。这些都导致塑料生产的自动化十分困难,在MC百科社区中不乏对其的负面评价。
本文基于minecraft 1.7.10的mekanism,结合Applied Energistics2(AE2)、Buildcraft(BC) 等老牌模组,设计了一个占地仅4x4x4的塑料生产线,兼顾占地面积的同时,也做到了中间产物的自动配平和工厂的可扩展性。本文的主要贡献如下:
1. 以图片形式,力求清晰地展现出工厂的搭建流程,提供了设计流程思路,为后续复发工厂搭建的相关工作提供了思路;
2. 给出了塑料生产线的3个步骤的配平比例;
3. 论证了4x4x4是生产线压缩的最小极限,并展示了达到该极限的方法。
本工作的效果如下图所示。
游戏环境与模组需求
本教程基于 minecraft 1.7.10 编写。forge版本:Forge10.13.4.1614-1.7.10。
模组名 | 模组版本 | mc百科链接 | 在本设计中的作用 |
mekanism | 1.7.10-9.1.0.281 | https://www.mcmod.cn/class/187.html | 核心。提供了塑料生产的相关机器、液体、气体管道、抽水机 |
applied energistics 2 | rv2-stable-10 | https://www.mcmod.cn/class/260.html | 提供了网络的概念,方便为机器抽取、供给物品,以及物品的存储机制 |
extra cells 2 | 2.3.14 | https://www.mcmod.cn/class/174.html | AE2的附属模组,提供了气体的抽取和存储机制 |
buildcraft | 7.1.14 | https://www.mcmod.cn/class/4.html | 有一种黏土管道,可以保证流体优先供给与之相连的容器 |
Buildcraft和Extra Cells 2只支持到Minecraft1.12的版本,因此此教程可能不完全适配更高版本的玩家;但如果有实现相似功能的新版本minecraft模组,也可以从此教程中获得灵感。
生产线:基础知识与数据
这一部分讲解PRC机以及相关配方的数据。如果你对这部分很熟悉了,只想知道如何压缩到4x4x4,可以跳到压缩方案:设计思路和实操。
在Mekansim中,生产塑料需要一台名为加压反应室的机器,也被叫做PRC:
其内部GUI如下图所示。其中,左侧的黄色、红色、深红色是机器的输入框,分别用于输入液体、气体、物品;右侧的两个蓝色框是产物,所有PRC机都会同时产生物品和气体。
我们可以发现,想要一台PRC机工作,需要插满它的6个面:输入三个面,输出两个面,以及一个面用于供给能源。正是因此,很难为PRC机搭建一个足够美观的生产线。
在了解了PRC机后,我们看一下它支持的3个合成配方,也即塑料的生产流程:
配方1
配方2
配方3
配方1中,将生物燃料(粉碎大部分农作物获得)转换成了塑料基片和乙烯(气体),用到水和氢气;配方2输入刚得到的基片和乙烯,再输入一些氧气就可以生产HDPE弹,它再经过后续合成就可以转换为塑料制品了。配方2生成副产物氧气(当然比输入的要少)。
那配方3是做什么的?原因在于,配方1中生产的乙烯会多一些,配方2在转换后会富裕一些。因此可以将这些多余的乙烯液化后,和水通入到配方3中,用于增殖基片。这个过程也会产生副产物氧气。具体地,三个机器的具体输入输出数据如下(仅液体和气体):
配方 | 输入液体 | 输入气体 | 输出气体 |
1 | 水,10mB | 氢气,100 | 乙烯,100 |
2 | 液态乙烯,50mB | 氧气,10 | 氧气,5 |
3 | 水,200mB | 乙烯,100 | 氧气,10 |
气液转换中,1000mB的液体和1000的气体是等价的。可以看到,当配方1生产的1单位基片被配方2消耗时,会富裕50单位的乙烯。只有当上述三个配方执行次数比例为9:16:1时,刚好能消耗掉所有的基片和乙烯。
除了三台PRC机,还需要如下几种机器:
设备名 | 图片 | 用途 | 方块特性 |
电解分离机 | 输入水,电解生成氢气和氧气, | 只能从左侧输出氢气, | |
回旋式气液转换机 | 将气态乙烯转换为液态,或者反过来。 | 只能左侧输入输出气体, | |
电动泵 | 产生水,供给配方1、配方2和电解分离机 | 只能背面输入能源,上侧输出液体。 |
生产线:实操搭建
我们先搭建一个没有压缩的流水线,来说明整个流水线的逻辑,并介绍下相关设备的使用。
按照顺序,我们先让第一个PRC机工作:
为了方便展示,所有的机器都省略供电线缆的连接,以IC2的调试设备内部供电。水泵抽水,供给右侧的PRC机,同时供给最上面的电解分离机,电解水产生氢气和氧气,氢气从右侧导管导出供给PRC机;最左侧的箱子供给生物燃料。PRC机右侧产出乙烯(气体),下侧产出基片。机器的摆放有如下注意点:
1. 关于PRC输入输出面的配置:实现上图中的输入输出,需要你在PRC机中做出这样的配置:
图1
图2
图3
在图1中,先选择左上角圈起来的按钮,进入机器的侧面配置,然后你会看到类似于图2的界面,这说明你已经进入到物品侧面配置了。注意主界面外面应该有4个按钮,你点击哪个按钮,就是对应配置哪种类型的输入输出,你只能看到3个是因为当前你就处于物品配置界面,因此对应的按钮被隐藏了。结合图2和图3,四个按钮分别配置物品、能源、液体、气体。
主界面中的6个格子的位置,对应了机器的6个侧面;颜色对应了图1中的颜色:注意到液槽和物品槽都有颜色吗?
结合搭建图,我们希望物品从机器后侧输入到图1中的红框位置,并将蓝框处的物品产物从机器下侧输出,因此我们在图2中,将对应的位置标记为红色和蓝色(红色所处的左下角位置对应机器背面;其他位置比较好理解)。此外,我们还要开启弹射,这意味着只要情况允许,机器就会自动将产物输出,而不需要手动提取。
我们用同样的逻辑为气体的输入输出配置界面,如图3所示。
注意到一点:PRC机没有液体的输出。因此你可以在液体界面中将所有面都标记上,能源也是如此(默认就是这样)。
2. 不同于PRC机,电解分离机无法配置输出面:它一定会在机器左侧输出氢气,右侧输出氧气(液体和能源可以在其他任意面),因此搭建时,需要你反过来放置电解分离机。
第二台机器如法炮制:
首先,我们将第一台PRC机(设备1)输出的乙烯(气体)接入气液转换机,将输出的液体乙烯从第二台PRC(设备2)输入。此外,设备2需要的基片从后部输入,需要的氧气刚好可以利用电解分离机的副产品。
在接入设备3之前,有一个小问题需要我们思考:我们希望设备3处理设备2没用完的乙烯,因此需要优先供给设备2,设备2的储液槽满了再供给设备3。但Mek的管道是平均分配气体的。为此,我们可以使用buildcraft中的黏土流体管道:它会将液体优先供给给与之相连的机器,然后再供给其他管道。最后的设计如下图:
我们将左侧的回旋式气液转换机的输出部分替换为BC管道。首先需要木质流体管道作为液体提取的开始,而后接黏土流体管道;上面弯的一圈用原石、石头、石英流体管道都可以,我这里用的是石英。BC的管道不能自动提取液体,需要在木质管道上安放安装了专制脉冲扩展的门,触发逻辑设置为:
含义是,只要没有红石信号,就一直发送脉冲(即提取液体)。因为设备3需要的是乙烯气体,这里还需要重新过一遍气液转换机,背对着当前视角放,并在界面中点击左上角的“T”转换为气化模式。此外,设备3上方输入水(来自水泵),后侧输入基片(来自设备1),下方和右侧分别输出物品和气体。注意Mek的机械管道和BC的液体管道是互通的,搭建的时候离远点,避免水管和液态乙烯管道串流。
这样三个机器的连接就都搞定了。此外还要注意:设备2的运行速度一定要高于设备1(你可以通过给设备2添加速度升级做到),不然多余的乙烯气体会导致设备3生产的基片堆积。
上述产线搭建大致说明了如何生产PRC,但除了占地空间大,还有个比较大的问题:产物和原料的管理。显而易见地,上面的产线并没有处理设备2、3产生的氧气;设备3产生的基片也没有重新投入生产。纯Mek也许能解决,但我们有更好的解决方案:AE2+ExtraCells2。
AE2的使用可以参考MC百科中的其他教程;ExtraCells为AE2扩展了液体、气体的存储和IO能力。经过改造后的生产线下图所示:
呃,好吧,还是好抽象啊,除了能看出是用AE线缆将一些设备连接起来了,看不出细节啊!我这里拿设备2举个例子,其他的机器是类似的思路。我假设你已经了解了频道、ME控制器、ME驱动器、以及存储元件的概念和使用方法。
设备2单独拿出来的ME网络接线如下图:
正视图
左后视图
先看正视图,上方、右侧、下方的接口分别是:ME气体输出总线、ME气体输入总线、ME输入总线(输入物品),背面的是ME输出总线。注意在当前语境下,输入和输出都是相对于网络的:如果你希望为PRC机输入气体,对网络而言相当于输出,因此你需要使用ME气体输出总线。此处4个接口是输入还是输出、是物品还是气体,配置和使用管道时是一样的。
不同于输入总线,输出总线需要额外配置。对于ME(物品)输出总线,需要拿想要输出的物品在其GUI中标记;设备2的输入物品是基片,因此你需要将其标记为:
你还需要为ME气体输出总线标记氧气。除了ExtraCells自带的工具,你也可以用Mek的滴量器吸取氧气后,点击ME气体输出总线的GUI标记,如图(右下角的滴量器不是GUI的一部分):
(用滴量器点击PRC中的气体或液体槽,就可以吸取最多1000单位的流体,shift+右击清空滴量器。很适合用来清理机器中的废液废气)
标记后,设备2就算配置好了。接下来,你还需要依次标记设备1、设备2以及电解分离机处的接口,具体地:
设备 | 统计 | 备注 |
设备1 | 2接口:物体输入输出 | 标记:生物燃料 |
设备2 | 4接口:流体输入输出、气体输入输出 | 标记:基片、氧气 |
设备3 | 3接口:物品输入输出、气体输入 | 标记:基片 |
电解分离机 | 1接口:气体输入 | - |
这样,就可以将整个生产线的物品产物和氧气统一管理,并在适当的位置投料了。此外,AE的输入接口是主动提取的,PRC不开弹射也能正常运行。
相信通过上面的章节,你已经对生产线的逻辑有了大致的认识;下面我们考虑如何压缩此生产线。这个过程中,我们需要考虑机器之间的相对位置,并且还要考虑电缆的走线。
压缩方案:设计思路和实操
1. 关于PRC机压缩上限的思考
PRC机的6个面都需要输入输出,那么一个很直接的推论是,与PRC机相邻的6个方块无法摆放其他生产机器。如下图,红色玻璃处只能放ME智能线缆以及BC或Mek的管道:
为了压缩空间,摆放3个PRC机时,我们希望满足上述约束下将它们摆放得足够近。我们只有将它们按照下面的方式摆放,摆到某个直角三棱锥的三个顶点上:
此时三台机器和它们周围的管线已经占据了4x4x4的空间。因此我们可以得到推论:生产线不可能压缩到比4x4x4更小的空间中。
这里多说一句:这个直角三棱锥不一定是“平放在地面上”的,如下图也是一个合理的摆放:
我们称前一种摆法为“下三角”,后一种为“上三角”。
2. 关于PRC机侧面的情况
以上三角为例,我们剥离PRC机,看一下与这三台机器相邻的侧面。
可以看到,有一个位置与三个机器都连接,这个位置最好放运输三个PRC机都需要的资源,电缆是最佳选择;有3个位置是两台机器共用的,设备1和3都需要水,适合安放水管;还有9个位置是每个机器自己使用的。如果我们想要尽可能压缩空间,那就尽可能在共用的侧面供给共用的资源,私有的资源尽可能从绿色的侧面供给或输出。
3. 关于供水系统
一个供水至少要占1x1x3的空间,才能放下水方块、水泵和机械管道:
你可能会质疑机械管道是不是必须的,为什么不直接在水泵上面放PRC机?这种情况PRC机放在了第三层。结合前面关于PRC机侧面的分析,这种接法要么会在下三角摆法中占用一个红色的位置,要么在上三角摆法中占用2个黄色位置,都浪费了空间。
既然机械管道无法省去,我们不妨考虑能否将设备1和3直接与之连接。基于这种考虑,我们选择了上三角而不是下三角的搭法。此时我们已经有了如下图的大致设计:
同时也确定了三台机器的功能:第二层为设备2,上面两台的位置是对称的,但我们不妨让后面的那个为设备1,左边的为设备3。
4. 其他设备的摆放
现在我们将主线中的其他设备加进来:一台电解分离机、两台回旋式气液转换机,以及相关管道。
电解分离机的位置没啥太多疑问,连接机械管道,并尽可能靠近设备1。我选择放在机械管道上方,如下图。放在绿色处的设计应该也是可以的。
接下来,接上第一个气液转换机:
然后是BC管道到设备2和3的走线。为了先供给设备2、再供给设备3,走线稍微有些绕,注意第二个气液转换机的摆放方向:
5. 先做ME还是供电?
接下来的工作只有两个了:一个是搭建ME网络,替换掉上图中的所有红色玻璃并连接到一起;另一个是给每个机器都连接上供电线缆,并将所有线缆连接到一起。
我推荐从ME的网络开始搭建,有三个原因:其一,ME的网络约束更多,网络中的设备数量超过了8个,你需要找到一个合理的位置放置ME控制器来避免频道过载;其二,安装各种总线是个精细活,你需要一个开阔的场地来放置它们;其三,如果你发现AE网络搭建好后很难将供电网络连接为一个整体,还可以通过P2P通道桥接。(我最终版的设计中找到了合理布线的方法,但上一版确实用了P2P通道才解决)
我们面对的是这样的情况:红色玻璃的位置不能走线;绿色玻璃右侧需要与一根线连接;蓝色玻璃所有还没填充的邻面都要走线。最终我们的走线方案如下:
需要连接接口的位置
最终的走线方案
走线方案:带ME控制器和接口
走线方案应该不止这一种,只要能连接上所有接口的位置即可,大家可以发挥自己的创造力探寻其他方案。ME控制器的位置是刻意设计的,放在这个位置刻意刚好将分成两股线,分别都是5个频道;由于AE的所有设备都可以当做线缆用,你可以将上述走线的任何位置放置ME驱动器。
下面只剩下供电线缆了,蓝色玻璃标出了需要供电的机器(7个):
最后再来几张实景图吧,记得设备2一定要比设备1运转速度更快:
总结
文本中,我们首先介绍了Mekanism中塑料生产的机器和工序,然后搭建了一个逻辑上有效的生产工厂,以说明BC管道、两次气液转换的必要性,以及引入AE2带来的便捷;其次分析上述尝试,分析了包含PRC和供水的系统在设计上的约束,得到了塑料工厂的压缩极限;最后,我们分步给出了实现此极限的工厂的搭建方法,保证了实践结果的可重复性。希望本工作能带给大家启发,为大家在MC的游玩中提供更多乐趣。
后日谈
1. 为什么我搭好了才知道还有个叫末影接口的神级模组啊,白设计了(#捂脸);
2. 水泵那里其实还能更省:可以使用BC水泵,它可以不光向上送水,除了下面的5个面都可以用,这样说不定也可以从下三角开始设计;
3. 曾经的王牌模组都不更新了啊。写教程时一查才发现BC停留在了1.12,其他好多曾经的王牌模组也不更新了。我手上的整合包也玩了快10年了,时间过得真快啊。
4. 写教程花了不少心思的,希望能得到大家积极的意见反馈!