Multiblocked(mbd)是一个极其灵活但具有原版风格的自定义多方块模组,它包含 MultiblockTweaker 和 Modular Machinery 的各个方面并远超过他们。
mbd 的设置初衷是让整合包作者或模组作者尽可能轻松地创建多方块,以与其他模组的功能进行交互,并提供尽可能多的细节控制。mbd 本质上既是一个魔改模组,也是一个提供大量渲染和逻辑代码支持的 API 库模组。
特点:
mbd 提出代理概念处理其他模组的 IO 能力(Capability)。这意味着用户不需要为某个功能(比如,物品,流体,气体)创建特定的输入/输出仓。例如,物品输入可以是一个箱子、一个熔炉或其他可以提取物品的容器。当然也可以自己创建包含不同能力组合的方块,mbd 只关心 IO,而不关心方块本身的内部是如何管理的。
我们注意到,整合包作者在创建机器和添加配方时,苦于编写脚本和查询脚本 API。我们设计了一个可视化编辑器来帮助用户直观地和交互式地创建多方块。您无需编写任何脚本便可以创建机器、配方并配置它们的详细功能。
为整合包作者提供了广泛的功能接口,mbd 通过 CrT 几乎暴露了一切。例如,更新逻辑、数据同步、自定义配方逻辑等等。当你有更高级的自定义功能需求时,可以通过 CrT 接入自己的函数逻辑。如果您不习惯使用 CrT,mbd也提供了对 KubeJS 的支持。
提供了多样的渲染技术,允许您无需使用 Java 甚至 CrT 脚本就可以创建各种各样的渲染器。您可以轻松地使用 mbd 创建如格雷科技风格(动态可扩展结构),沉浸工程风格(动态模型),神秘时代风格(动画模型)。甚至允许你通过写着色器(Shader)制作酷炫的渲染效果。
mbd 拥有极佳的性能,通过多线程技术的应用,几乎不在主线程中引入任何开销。配方检测、结构检测等都在异步线程完成,即便创建 5000+ 的机器也依然保持稳定的 20 TPS。优化了渲染性能,即便渲染再多的粒子也保有稳定的帧率。
mbd 是一个具有无限可能性的模组,你可以使用它定义多方块(也可以定义单方块)机器,自定义它的逻辑、渲染、GUI、能力等等。而可视化编辑器帮助您无需掌握代码能力便能创建自己的机器。