Computronics 配方
基本信息
| 属性 | 值 |
|---|---|
| 实现包 | pl.asie.computronics.integration(ModRecipes / RecipeUtils / RecipeColorizer / RecipeDecolorizer) |
| 配方集 | 5 个,见下表 |
配方集总览
| 配方集 | 文件 | 数量 | 生效条件 |
|---|---|---|---|
| 默认配方 | ModRecipes.java |
37 条 addShapedRecipe |
无条件注册(Railcraft 段另有 9 条,见下) |
| Railcraft 配方 | ModRecipes.registerRailcraftRecipes(ModRecipes.java:497-588) |
6 条 | Mods.isLoaded(Mods.Railcraft) |
| GregTech 5 | GregTech5Recipes.java |
34 条 | GT5 且 recipes.gtRecipeMode |
| GregTech 6 | GregTech6Recipes.java |
34 条 | GT6 且 recipes.gtRecipeMode |
| OC 零件 | IntegrationOpenComputers.postInit |
15 条 | !isGTNHLoaded |
| TIS-3D 模块 | IntegrationTIS3D.postInit |
3 条 | itemModules != null |
| 无人机对接站 | IntegrationBuildCraft.postInitOC |
1 条 | !isGTNHLoaded |
计数说明:grep -n 'addShapedRecipe' ModRecipes.java 共 37 条,按方法边界拆分——registerRailcraftRecipes(:497 起)内 6 条(:500、:516、:529、:544、:559、:572),核心段 31 条(:29–:474),后者覆盖 11 个方块 + 便携驱动器的 OC/无 OC 双配方、10 个磁带变体、录音带轨道、染色器与漂白器。GT5 / GT6 各 34 条(grep -c 'addShapedRecipe')。这些是源码文本计数,配方可能因材料回退而指向不同物品。
GTNH 特殊行为
Computronics.isGTNHLoaded = Loader.isModLoaded("dreamcraft")(Computronics.java:206)。
两处配方集在 GTNH 中被整体跳过:
| 配方集 | 门控位置 |
|---|---|
| OC 零件 15 条 | 各自包在 if (!Computronics.isGTNHLoaded) 内(IntegrationOpenComputers.java:344、:367、:390、:412、:427、:446、:463、:478、:497、:517、:536、:555、:576、:597、:617) |
| 无人机对接站 1 条 | IntegrationBuildCraft.java:59 |
不受影响的:默认配方 31 条、Railcraft 6 条、GT5/GT6 各 34 条、TIS-3D 3 条。默认配方虽然在文件中位于 OC 判断分支内,但整个 ModRecipes.registerRecipes 方法无条件执行(Computronics.java:405-409),分支只决定「用 OC 材料还是无 OC 材料」。
配方选择逻辑
ModRecipes.registerRecipes 的统一门控(ModRecipes.java:62):
boolean useOC = Mods.isLoaded(Mods.OpenComputers) && !Config.NON_OC_RECIPES;
| 条件 | 结果 |
|---|---|
装了 OC 且 recipes.easyRecipeMode = false |
用 OC 材料配方(oc:materialTransistor / oc:circuitChip1 / oc:materialCircuitBoardPrinted 等) |
装了 OC 且 easyRecipeMode = true |
用无 OC 配方 |
| 没装 OC | 用无 OC 配方 |
easyRecipeMode 的语义是反向的,命名容易误解(Config.java:321-326)。
材料回退链
多个方块的配方使用逐级回退,取第一个非空物品(这是上游 GTNH 生态的通用写法,让配方跨 GT 版本工作):
| 材料 | 回退链 | 出现处 |
|---|---|---|
| 音源方块 | 扩音器 → 铁音符盒 → 音符盒 | 磁带机、语音盒、便携驱动器、鸣笛卡、噪音卡 |
| 磁带零件 | 录音带轨道 → 音符盒 | 加密机 / 高级加密机 |
| Railcraft 板 | part.plate meta 2 → minecraft:stonebrick |
中继器、信号盒、售票机 |
| Railcraft 板 | part.plate meta 1 → ingotSteel / ingotIron |
检测器、售票机 |
| GT 工具 | GT 工具 → 手持工具 / 方块回退 | 高级加密机、GT 录音带 |
物品加工配方
| 配方 | 作用 | 源行 |
|---|---|---|
RecipeColorizer |
给磁带染色 | ModRecipes.java:320 |
RecipeDecolorizer |
漂白磁带 | ModRecipes.java:321 |
二者是 AsieLib 提供的类(pl.asie.lib.util.color.RecipeColorizer / RecipeDecolorizer),不属于 Computronics 本仓库,通过 GameRegistry.addRecipe 注册而非 addShapedRecipe,因此不计入上表的 37 条。默认路径下两者包在 if (Computronics.itemTape != null) 内(ModRecipes.java:319)。
⚠️ 装了 GregTech 就无法漂白磁带。GT5(GregTech5Recipes.java:410)与 GT6(GregTech6Recipes.java:462)都只注册了 RecipeColorizer,没有 RecipeDecolorizer——GregTech5Recipes.registerRecipes() 整体替换了 ModRecipes 的角色(Computronics.java:397-409),默认路径那两行不再执行。
逐方块配方
11 个核心方块 + 便携驱动器的两套配方(OC / 无 OC)分别列在各方块条目的「## 合成配方」一节:
铁音符盒 · 音频线 · 扩音器 · 磁带机 · 摄像头 · 聊天盒 · 加密机 · 高级加密机 · 雷达 · 彩灯 · 语音盒 · 便携式磁带驱动器
Railcraft 配方见 Railcraft 集成。OC 零件 15 条见 OpenComputers 零件。TIS-3D 3 条见 TIS-3D 模块。
相关条目
- 设置:普通项 -
recipes.easyRecipeMode/recipes.gtRecipeMode - 设置:OpenComputers - OC 门控的配置来源
- GregTech 集成 - 34 + 34 条 GT 配方