= 创作分享 =
技术讨论
AE2多原料发配的前世今生——多原料注魔挑战两周年纪念 ...
Doremy

AE2多原料发配的前世今生——多原料注魔挑战两周年纪念

Doremy 于 2020-7-14 08:40 ( 3年前 ) [教程] [复制链接] [显示全部楼层] [打印]
本贴模组名片
应用能源2 (Applied Energistics 2)
Applied Energistic2是一个物流模组。[h1=对于玩家的地位]你可称它为模组中的红石:掌握者能够非常娴熟地运用,而新手时常认为其很难,同时可能性巨大。不过,不要生畏。[mark:title_menu][h1=如何开始?]不建议直接阅读物品资料。它们生涩难懂,而且不会形成一个线性的学习过程。物品资料..

MCMod:AppliedEnergistic2多原料发配的前世今生
一、历史
        该问题其实有许多源头,从github上想要自动9*9无尽合成到mc工业2吧要自动化GT5装配线。主要的原因是这些合成表的材料大于9组,然而AppliedEnergistic2(下文简称)的自动化模板标记只有9格原料:

尝试解决该问题的人也有不少,各显神通:普通玩家硬着头皮手搓几百个成品;DreamMaster(GTNH作者)做了一个附属mod使得玩家能够标记16格原料。但是真正直面这个问题的玩家还是非常稀少的,而我有幸成为其中一个。虽然我的理论不是最早的,但是可以说是国内最完善的了,也算是有一定的传播广度。
在2018 wohaopa发布了ThaumCraft4(下文简称TC4)注魔祭坛的自动化https://www.mcbbs.net/thread-806769-1-1.html,而我于2018.7.14上午10点左右提出了一个挑战,自动合成InfinityEvolvedSkyBlock的最终物品——永恒魔力池(合成表见下)。说来也挺绝的,这篇文章是在2020.7.13号开始写的,也是该自动化终于完工的那一天,本篇文章完工时间见文末。

二、理论和实现
1.基础理论:
(目前找到的最早贴:https://tieba.baidu.com/p/529198 ... ;cid=0#111112305841)
AE2的处理模板只负责材料的发送和成品的接受。再看看漏斗矿车的合成:漏斗矿车=矿车+漏斗,漏斗=5铁+箱子,箱子=8木板,矿车=5铁……
可以发现大量材料都是通过嵌套进行发配的。那么其实我们可以让我们手头上的材料进行嵌套发配,只需要“小小地”骗一下ME网络即可,告诉他,a+b+c……=纸1,纸1+……=成品,这样就可以发配大于9组原料了。





(铁剑是什么?后面会补充的)

2、发配标记物品和控制材料一份一份发送
2018.8:
将一份材料发配至箱子之后直接跟进后续材料,当该箱子没有物品之后发配下一份材料。废案:原因,后续材料都跟着发配过来了。

2019.2:
将模板的材料中放入一个“信物”。将该信物分离到标记物品处理中心,根据信物发配标记物品。当然标记物品也需要分离出来返还给标记物品处理中心。
模拟一下合成
模板:
        觉醒灵宝镐=觉醒灵宝镐1b+……
        觉醒灵宝镐1b=灵宝镐+觉醒灵宝镐1a+……
过程:
觉醒灵宝镐1b的材料被发送,首先进入祭坛的是灵宝镐被放入祭坛中央。觉醒灵宝镐1a被发送至“多原料发配控制网络”(一个独立的网络)。因为该网络收到了觉醒灵宝镐1a,通过发信器和输出总线,同时输出一个 觉醒灵宝镐1a 和一个 觉醒灵宝镐1b给主网络。
主网络收到 觉醒灵宝镐1b 发配觉醒灵宝镐的材料,材料齐全,开始注魔。

仅控制1b的合成,因为“合成”一个1b发配的是一份材料,而收到一个”1b”之后再发配的也是一份材料。
控制1b合成使用的是:

蓝色主网络面板型ME接口启用阻挡模式,红色祭坛网络发信器配置:<1发出信号

后续合成是相同的一个装置,但是不需要发信器和反相触发总线,直接连即可。


2020.7.13:

让主网络无法存储被标记过的蜘蛛网,主网络不断尝试输入蜘蛛网,只有在正在合成标记蜘蛛网的时候输入标记蜘蛛网进入CPU再发配,这个时候蜘蛛网被返还给原来的箱子。

(无法存储标记过的蜘蛛网)

(祭坛网络分离蜘蛛网)

(蓝色网络不断尝试输入蜘蛛网)

模板设置是一开始放送的图片。
和之前一样需要控制的只有最先发配的那份材料需要被控制,即“创造魔力池1”

但是和之前不同(2019版的也可以使用该方案),这里如果方块ME接口中缓存了一份材料,那么下一份的后续跟进材料也会被发配。
所以借鉴了https://www.mcmod.cn/post/896.html的防多份原料系统,不过因为这里的特殊性稍作修改。
上文提到的铁剑是留在绿色网络的方块型ME接口里的,当合成完毕被抽走,使得蓝色主网络的ME接口在阻挡模式下发送下一份材料。


左侧方块接口gui,如此配置使得铁剑停留:

右侧输入总线:红石卡-脉冲模式。当注魔结束一段时间后抽走绿色网络方块型ME接口内的铁剑以启用下一次合成。

总逻辑:
0、蓝色网络无法输入重命名后的蜘蛛网
1、启动合成
2、蓝色网络发配了一份永恒魔力池的第一份材料,铁剑被保留在上述方块型接口内,其它材料发配至祭坛。
3、与此同时,蓝色网络发配了这份材料的CPU可以接受“永恒魔力池1”蜘蛛网了,于是从箱子中抽走了它,并发配了永恒魔力池2对应的材料到另一个绿色祭坛网络连接的ME接口内,不含铁剑等。它们中“永恒魔力池1”蜘蛛网被返还给了箱子,其它材料被发配至祭坛。
4、同理,要合成一个永恒魔力池的所有的材料都被正常发配,蜘蛛网归位。
5、开始注魔
6、注魔完成,祭坛内只剩下一个(特殊情况也会有这么一瞬间的)物品,过了一小会,成品被抽走
7、又过了一小会,铁剑被抽走,整个系统发配了一整份材料,回收了一个成品,其它内容回归到0状态。


三、总结三个实现方案都是基于之前二1的理论,却也是有巨大的不同的。它们的主要区别在于“如何获取   需要发配什么标记物品    这一信息”上。
(1)**要考虑的是直接通过材料判定。但是很明显一个接口对应一个配方体积过大过于繁琐了
(2)第二版通过添加信物使得判定相对简化,但是任然需要进行繁琐的物品标记
(3)第三版直接利用CPU的特性在CPU上获取信息,省略了进行物品标记的时间
        能够进行这一个探究也算是非常有幸了。通过它,也有了后续的许多“自动化”的挑战。也有许多可以诉说的内容。希望,这篇文章对你有用。或许,这正好两年的世界,也是抱头蹲防命运的安排呢……(?                        2020.7.14    00:35           Doremy(www.mcmod.cn)
发表于 2020-7-14 08:40:51 | 显示全部楼层 |阅读模式

回复 | 举报

该帖共收到 2 条回复!
奇行之力
作者大大nb,但我一个都看不懂
发表于 2020-7-15 12:50:33 | 显示全部楼层

回复 | 举报

Doremy
QQ酱40248 发表于 2020-7-15 12:50
作者大大nb,但我一个都看不懂


(X)
https://www.mcbbs.net/thread-1077888-1-1.html
下载对应资源
百科不方便挂附件……
发表于 2020-7-21 21:47:58 | 显示全部楼层

回复 | 举报

百科目前不允许匿名发帖哦~ 请先 [ 登陆 ][ 注册 ] 吧~

本版积分规则

发新帖
  • 回复
  • 点评
  • 评分

[ MC百科(mcmod.cn) 除另有声明,所有开放公共编辑的内容均使用 BY-NC-SA 3.0 协议 ]

Minecraft百科CC协议
快速回复 返回顶部 返回列表