Matterium - 能量汇聚与物质制造

Matterium - 能量汇聚与物质制造

零膨胀能量汇,吞噬多余FE并输出物质——可投入合成、任务,或作为分层整合包货币使用(可通过配置或KubeJS完全禁用)。

技术

问题所在

玩了一大堆整合包,每次都是同一个故事。能量是一种真正的资源,直到它不再是。你玩到中途,完成了一个反应堆或组装了一些自动化,然后就有比你整合包能消耗的还要多的FE堆在那里。而一旦发生这种情况,你就不再关心它了。没有理由扩大生产,没有理由碰中级发电机或处理器,你直接跳到最大的东西,因为实际上没有任何东西在阻止你。而且也不是“多了一点点”而已。数百万FE/t 在那里闲置,在剩下的游戏流程中毫无用处

与此同时,游戏的另一半却在往另一个方向发展。你仍然需要大量材料,而唯一真正能扩展的方式就是横向的产线农场。前期没问题。到了后期,那就是一个巨型的装置,光是它自己就能让你的 FPS 暴跌,并毁掉服务器上其他所有人的 TPS

你可以把所有这些都放在任务系统后面,当然可以,但那是一记重锤。用 KubeJS 把一个物品放入一个成本例如为 50,000,000 FE (可在 config 中配置,见 #config) 的合成配方中,突然中级的东西就值得再建了。你不再遵循“直奔最大发电机”的脚本,而是真的会去看其他路线。整合包作者们在这两个问题上都没有一个干净且通用的解决方案。Matterium 就是那个调节旋钮

Matter Generators

它到底是什么

它是一个原语。没有内容,对你整合包没有看法。四个发电机,每个消耗 FE 来产出一种等级的物质,绿色、橙色、紫色和黑色,一个比一个贵,而且全部可以通过配置编辑。外加一个配方系统,用于把物质变回物品,你想怎么设置就怎么设置,或者干脆不设置

建造发电机是普通的机器合成,配方进,方块出。之后物质就是一个普通的物品。可以像其他东西一样堆叠和管道传输,放进 ME 系统也没问题,而且一旦它离开发电机,这个模组就不再关心你拿它做什么了。汇率、等级 progression、物质真正值得花在什么地方,这些都完全由你作为整合包作者来决定

你也不必四个都用。如果只有一个等级能满足你的需求,那就只跑那一个,通过 KubeJS 禁用其余的

All Mod Items


花费物质的两种方式

[ 1 ] 在合成台中花费物质

配方通过普通的 3x3 合成格运行,你把物质放在哪里就是配方的一部分。左上角放两个物质,与中间一行放两个物质是完全不同的配方。每个配方使用 1 到 9 个物质,也就是每级有 226 种布局,四个等级共计 904 种。你不需要填满每个格子,这只是如果你需要的话的上限

Matter Crafts Example

[ 2 ] 或者完全跳过合成格

把配置里的所有配方都清空,物质仍然有它的作用,因为它只是一个物品,任何消耗物品的东西都可以使用它。这涵盖了 KubeJS/CraftTweaker 配方(包括其他模组的机器,几个现成的脚本放在 examples/kubejs/ 里,把它们复制到 kubejs/server_scripts/),通过 FTB Quests 或 Odyssey Quests 或你整合包所用的任何任务模组来作为任务奖励和门槛,一种由四个压缩能量等级构建的分级整合包货币,或者只是作为你自己写的 Mekanism、Create 等配方中的一个材料

KubeJS Mekanism example


配置

随附的配置只是一个演示,不是设计声明。它存在的意义是让模组在你安装后能有点作用

成本在 config/matterium/matterium-common.toml 中,每级一个区块:

[green]
    #1 单位绿色物质的 FE 成本。
    # 默认值: 1000000
    # 范围: 1 ~ 2305843009213693951
    matterCostFE = 1000000

    #绿色发电机的内部能量缓冲 0 = 自动 (2 x matterCostFE)
    # 默认值: 0
    # 范围: 0 ~ 4611686018427387903
    bufferCapacityFE = 0

    #发电机每 tick 接受的最大 FE(推入 + 拉取)0 = 无限
    # 默认值: 0
    # 范围: 0 ~ 2305843009213693951
    maxReceiveFEPerTick = 0

物质能合成什么,是每级一个单独的文件,config/matterium/items/green.json。每行一个条目,"item_id": [x] 或 "item_id": [x, y] —— x 是输出数量,y 是物质成本,如果你省略掉它会自动选择

{
  "minecraft:dirt": [40, 5],
  "create:andesite_alloy": [16],
  "ae2:certus_quartz_crystal": [8, 2]
}

不过你也不必手动编辑任何一个文件。手持物品,运行一条命令,搞定

/matterium add <color> <craft_output> [cost_matter]   # 例如 /matterium add green 3 4
/matterium rem <color>
/matterium reset <color> # 清除该等级的所有物品

更改会写入 config/matterium/items/<color>.json,使用 /reload 应用


发现 Bug 或想要贡献?

在 GitHub 上开一个 issue 或 PR,我会尽快回复你