基于TrainCarts插件的钓鱼分类装置的设计与实现
1. 设计背景及意义
随着服务器内钓鱼需求不断增大,钓鱼机的个数和规模飞速上升。同时,大规模钓鱼机对钓鱼产物分类装置的要求也逐渐增高。传统的分类方式如手工分类、红石分类装置都逐渐暴露出它们的弊端。手工分类虽然准确度高,但对玩家游戏体验不友好;红石机器分类虽然可以自动化分类过程,但建造繁琐,造价昂贵。
图 1.1 元央诺亚多核钓鱼机
图 1.2 钓鱼机红石分类装置
近年来,随着对TrainCarts插件的不断研究,本设计将TrainCarts插件和钓鱼产物分类装置相结合,提高其分类效率,节约人力、物力和时间成本。
2. 关键控制牌介绍
2.1 物品传送:transfer
transfer控制牌可以将箱子矿车中的物品传送至附近的箱子、熔炉或发射器。
第一行写[train]
或[+train]
,+
代表该控制牌一直生效。不写+
时,给予控制牌红石信号使其生效。
第二行写chest in
、furnace in
或dispenser in
,分别代表传送至箱子、熔炉、发射器。除此之外,第二行还可指定搜索容器的范围,默认半径为2。
第三、四行写传送的物品ID,若留空,则传送箱子矿车内的所有物品,多个物品ID之间用;
或-
分隔。
图 2.1 transfer控制牌示例
上图的控制牌将箱子矿车内的鲑鱼和鳕鱼放入最近且有空位的箱子中,搜索半径为5。
图 2.2 transfer控制牌默认监测半径
transfer控制牌的默认监测半径为2,形状为矩形(如上图),将任意玻璃换成箱子都可正常放入物品。
2.2 自动捡取掉落物:pickupitems
pickupitems
可以将地上的掉落物自动吸入箱子矿车,范围半径为1格。格式如下图。
图 2.3 pickupitems控制牌写法
3. 总体设计
TrainCarts分类装置的总体流程图如下所示。
图 3.1 总体流程图
4. 详细设计
4.1 装载
4.1.1 原版方案
使用漏斗装入,钓鱼产物收集到漏斗,然后装入至矿车。因为漏斗内物品装入箱子矿车需要时间,因此建议配合station
控制牌使用,该控制牌使矿车停在原地若干秒,保证漏斗内物品全部装入。下图的station
控制牌第三、四行的含义是:矿车停10秒后向左行驶(l
代表左,r
代表右)。
图 4.1 漏斗装入
4.1.2 控制牌方案
使用pickupitems
控制牌装入则不需要station控制牌,因为矿车可以一次性装载所有附近的掉落物,pickupitems
的使用详见上文2.2节。
图 4.2 控制牌装入
4.2 分类
典型的分类单元如下图所示,实际使用只需在控制牌的三、四行写存入本单元的物品ID,然后堆叠该单元即可。
图 4.3 分类单元
4.3 销毁
使用transfer的dispenser in
功能将剩余不需要的物品装入发射器进行销毁。
4.4 TrainCarts分类机典例
可以前往托勒密铁路西局的钓鱼台查看TrainCarts分类机成品,可以使用托勒密网络的星门或乘坐托勒密高铁前往。
图 4.4 分类机位置