Research NODECATALYZATION(节点催生)

基本信息

属性 值
研究键 NODECATALYZATION
中文名 节点催生
英文名 Node Catalyzation
研究副标题(zh_CN) 无中…生有
类别 BASICS
复杂度要素 AURA 20、VOID 15、GREED 12、ELDRITCH 9、MIND 6、MAGIC 3(合计 65)
图标 节点基体
父研究 NODEJAR、NODETAPPER2
隐藏父研究 JARLABEL(setParentsHidden)
特殊标记 调用了 setSpecial()(其具体作用由泰老 ResearchItem 实现定义)
扭曲值 研究扭曲 8(addWarpToResearch)+ 节点基体物品扭曲 8(addWarpToItem)
注册时机 NodalResearch.initResearch()(FMLPostInitializationEvent)
页面数 6(1 文本页 + 5 配方页)

NodalMechanics 是整个 mod 唯一的泰老研究,也是全部三个配方的唯一前置: matrixRecipe、动态的 RecipeAttune、动态的 RecipeNode 都在 ThaumcraftApiHelper.isResearchComplete(player.getCommandSenderName(), "NODECATALYZATION") 处做同一道校验。研究未完成时,节点基体无法合成、无法调制、也无法催生节点。

构造参数原文

new ResearchItem("NODECATALYZATION", "BASICS",
        new AspectList().add(Aspect.AURA, 20).add(Aspect.VOID, 15).add(Aspect.GREED, 12)
                        .add(Aspect.ELDRITCH, 9).add(Aspect.MIND, 6).add(Aspect.MAGIC, 3),
        -5, 4, 3,
        new ItemStack(NodalItems.itemMatrix))
    .setPages(...).setParents("NODEJAR", "NODETAPPER2").setParentsHidden("JARLABEL").setSpecial();
  • 前三个整型参数按调用顺序为 -5、4、3。它们对应 TC4 ResearchItem(String key, String category, AspectList, int, int, int, ItemStack) 的位置, 通常是研究面板的行 / 列 / 索引参数;TC4 的构造器不在本仓库内,具体语义未在此断言, 这里只如实记录传值。
  • 复杂度要素合计 65(AURA 20 最高),位置在 BASICS 分类内偏高,属于中后期研究。

页面构成

页 类型 内容
1 文本 nodalmechanics.nodecatalyzation.research(zh_CN:「将你关于节点和要素罐子的学识付之一用…之后给其注入大量的要素就能激发它的生成。」)
2 配方 NodalRecipes.matrixRecipe — 初始基体配方
3 配方 NodalRecipes.variedAttuneRecipe — 六种本原要素各 2 的基体
4 配方 NodalRecipes.sameAttuneRecipe — IGNIS 16 的基体
5 配方 NodalRecipes.variedNodeRecipe — 六本原各 8 vis + 4 × itemResource:14
6 配方 NodalRecipes.sameNodeRecipe — IGNIS 64 vis + 4 × itemResource:14

页面 3~6 是静态 ShapedArcaneRecipe / InfusionRecipe,只为展示配方图。 NodalRecipes.initRecipes() 只把 matrixRecipe、RecipeAttune、RecipeNode 三个 注册进 ThaumcraftApi.getCraftingRecipes(),其余四张从不参与实际合成判定。 因此:

  • 页面上的"ABC / X / DEF"与"AAA / ABA / AAA"布局不是硬性要求, 实际按 Matrix Attunement 的规则判定(任意本原要素组合的源质瓶均可);
  • 页面上的 nodetype 固定 0(NORMAL)也不代表实际结果—— 实际类型/修饰符按 Node Infusion 的概率随机。

页面 2:初始基体配方

参数 值
研究 NODECATALYZATION
核心物品(key) 节点基体
不稳定性 10
要素消耗 禁忌 SLOTH 16、PRIDE 16、AURA 32、MAGIC 32
注入材料 deadlyShards meta 3、itemShard:6、deadlyShards meta 5、itemShard:6、deadlyShards meta 5、itemShard:6
产物(recipeOutput) IC2 Ic2Items.lapotronCrystal(meta = WILDCARD)

key 为基体、recipeOutput 为拉普隆晶体的组合与直觉相反,是照抄源码原样记录; 实际注魔机返还哪一个栈由泰老的 InfusionRecipe / BlockArcaneInfusion 决定, 不在本 mod 内(详见 节点基体 的配方章节)。

扭曲值

项目 值 API
研究扭曲 8 ThaumcraftApi.addWarpToResearch("NODECATALYZATION", 8)
节点基体物品扭曲 8 ThaumcraftApi.addWarpToItem(new ItemStack(itemMatrix), 8)

合成节点基体的行为扭曲 8;同时节点基体在被右键检视等场合也会显示 8 点扭曲。 扭曲的具体数值效果由泰老定义。

限制与已知风险

  • 本原要素数量硬编码为 6:NodalRecipes 构造 variedAttuneRecipe 时写死 ItemStack[] phials = new ItemStack[6],随后却用 for (int i = 0; i < primalAspects.size(); i++) phials[i] = ... 填充。 泰老本体的本原要素正好 6 种;若其他 mod 追加第 7 种本原要素,初始化阶段会抛 ArrayIndexOutOfBoundsException。这是照源码推断的硬上限,不是 mod 作者显式写下的检查。
  • 研究的三个整型参数依赖 TC4 构造器签名,本仓库无法验证其含义。
  • setSpecial() 的语义、以及 NODECATALYZATION 对泰老完成度统计的影响,均由泰老实现决定。
  • 父研究 NODEJAR / NODETAPPER2 与隐藏父 JARLABEL 均为泰老自带的节点/罐子研究, 需先完成对应研究才会出现在正常研究列表流程中。

相关条目