研究树 Research Tree
基本信息
| 属性 | 值 |
|---|---|
| 注册位置 | common/registration/RegisteredResearches.java |
| 初始化时机 | FML postInit(CommonProxy.java:83) |
| 存活研究总数 | 54 |
| 分类注册 | ResearchCategories.registerCategory("gadomancy", ...)(RegisteredResearches.java:93-96) |
| 分类图标 | /items/category_icon.png(RegisteredResearches.java:43) |
| 分类背景 | /gui/gui_researchback.png(RegisteredResearches.java:42) |
实现类分布
| 实现类 | 数量 | 说明 |
|---|---|---|
SimpleResearchItem |
28 | 标准研究,自带图标、要素、复杂度与研究页 |
PseudoResearchItem |
10 | 纯树节点,无图标无奖励,只在研究树上占一个位置并供其他研究挂靠父节点 |
占位引用(new ResearchItem(id, modid)) |
10 | 仅注册键供 setParents 引用,不显示在树上 |
IfAnyParentResearchItem |
2 | 满足「任一父研究」即可解锁 |
AlternatingResearchItem |
2 | 配方二选一的研究 |
DisguiseResearchItem |
1 | 护甲伪装研究 |
StickyJarResearchItem |
1 | 粘性罐动态配方研究 |
| 合计 | 54 | 全部为存活注册 |
其中 10 条占位引用只是为了拿到 .key 用于父引用(new ResearchItem("VOIDMETAL", Gadomancy.MODID) 之类),不构成玩家可见内容;另有 10 条伪研究同样不提供奖励。因此玩家实际可解锁的研究为 32 条。
标记含义
| 标记 | 含义 |
|---|---|
concealed |
setConcealed() —— 隐藏研究,完成前在树上不可见 |
special |
setSpecial() —— 特殊研究节点 |
round |
setRound() —— 圆形研究节点 |
anyParents |
setAnyParents() —— 任一父研究解锁即可 |
死代码:AI_SHUTDOWN
AI_SHUTDOWN 的注册位于块注释内(RegisteredResearches.java:624):
* researchAiShutdown = new SimpleResearchItem("AI_SHUTDOWN", -3, 5, 2, new
它不计入 54 条。但 en_US.lang:150-152 仍留有三条占位键:
tc.research_name.GADOMANCY.AI_SHUTDOWN=NULL
tc.research_text.GADOMANCY.AI_SHUTDOWN=NULL
gadomancy.research_page.AI_SHUTDOWN.1=NULL
有 lang 条目、无注册类——典型死条目。
全部 54 条研究
| 研究 ID | 显示名 | 实现类 | 复杂度 | 标记 | 源码行 |
|---|---|---|---|---|---|
GOLEMTALLOW |
— | 伪研究 | — | — | 98 |
GOLEMSILVERWOOD |
Silverwood Golems | SimpleResearchItem | 3 | concealed | 100 |
GOLEMRUNICSHIELD |
Golemic Shielding | SimpleResearchItem | 4 | concealed | 114 |
BELLOWS |
— | 伪研究 | — | — | 127 |
ARCANEDROPPER |
Arcane Dropper | SimpleResearchItem | 2 | concealed | 129 |
COREHARVEST |
— | 伪研究 | — | — | 143 |
COREGUARD |
— | 伪研究 | — | — | 144 |
ELEMENTALAXE |
— | 占位引用 | — | — | 146 |
ELEMENTALPICK |
— | 占位引用 | — | — | 147 |
ELEMENTALSHOVEL |
— | 占位引用 | — | — | 148 |
ELEMENTALSWORD |
— | 占位引用 | — | — | 150 |
GOLEMCOREBREAK |
Golem Core: Break | SimpleResearchItem | 3 | concealed | 152 |
BOOTSTRAVELLER |
— | 占位引用 | — | — | 170 |
GOLEMCOREBODYGUARD |
Golem Core: Bodyguard | SimpleResearchItem | 2 | concealed | 173 |
FOCUSPRIMAL |
— | 占位引用 | — | — | 188 |
VOIDMETAL |
— | 伪研究 | — | — | 189 |
WANDPED |
— | 伪研究 | — | — | 190 |
PAVEWARD |
— | 占位引用 | — | — | 191 |
WANDPEDFOC |
— | 占位引用 | — | — | 192 |
COREUSE |
— | 占位引用 | — | — | 193 |
RUNICARMOR |
— | 占位引用 | — | — | 194 |
OCULUS |
— | 伪研究 | — | special + round | 196 |
INFUSIONCLAW |
Automated Infusion | SimpleResearchItem | 5 | concealed | 199 |
NODE_MANIPULATOR |
Node Manipulator | SimpleResearchItem | 2 | concealed + special | 219 |
E_PORTAL_CREATOR |
Gate of the Voidwalkers | SimpleResearchItem | 2 | concealed + special | 243 |
BLOCK_PROTECTOR |
Enervation Field Emitter | SimpleResearchItem | 2 | concealed | 263 |
ETHEREAL_FAMILIAR |
Ethereal Familiar | SimpleResearchItem | 2 | concealed + special | 281 |
FAMILIAR_SHOCK |
Lightning Impact | SimpleResearchItem | 2 | concealed | 296 |
FAMILIAR_FIRE |
Flash Burn | SimpleResearchItem | 2 | concealed | 311 |
FAMILIAR_POISON |
Corrosive Venom | SimpleResearchItem | 2 | concealed | 326 |
FAMILIAR_WEAKNESS |
Enervation | SimpleResearchItem | 2 | concealed | 341 |
FAMILIAR_DAMAGE |
Arc Amplification | IfAnyParentResearchItem | 2 | concealed + anyParents | 356 |
FAMILIAR_RANGE |
Sensitivity Boost | IfAnyParentResearchItem | 2 | concealed + anyParents | 376 |
FAMILIAR_SPEED |
Frequency Emission Overdrive | SimpleResearchItem | 2 | concealed | 395 |
GROWING |
Growing Nodes | SimpleResearchItem | 5 | concealed + special | 414 |
GROWING_AGGRESSION |
Aggressive Behavior | SimpleResearchItem | 6 | — | 427 |
GROWING_GROWTH |
Growing Behavior | SimpleResearchItem | 6 | — | 437 |
GROWING_ATTACK |
Destroying Behavior | SimpleResearchItem | 6 | — | 450 |
GROWING_GROWTHCLUE |
Secrets of growth | SimpleResearchItem | 2 | concealed + special + round | 460 |
ANCIENT_STONES |
Ancient Stones | AlternatingResearchItem | 3 | concealed | 481 |
AURA_CORE |
Aura Core | AlternatingResearchItem | 2 | concealed + special | 513 |
CLEAN_AURA_CORE |
Core Cleaning | SimpleResearchItem | 0 | concealed | 528 |
AURA_PYLON |
Aura Pylon | SimpleResearchItem | 2 | — | 542 |
AURA_EFFECTS |
Aura Effects | SimpleResearchItem | 2 | concealed | 564 |
KNOWLEDGE_BOOK |
Book of Knowledge | SimpleResearchItem | 2 | — | 574 |
ESSENTIARESERVOIR |
— | 伪研究 | — | — | 595 |
ESSENTIA_COMPRESSOR |
Essentia Condenser | SimpleResearchItem | 2 | — | 597 |
ARCANE_PACKAGER |
Arcane Packager | SimpleResearchItem | 2 | — | 636 |
INFUSIONENCHANTMENT |
— | 伪研究 | — | — | 652 |
REVEALER |
Thaumic Sight | SimpleResearchItem | 1 | concealed | 657 |
ARMORDISGUISE |
Armor Disguise | DisguiseResearchItem | 1 | concealed | 670 |
JARLABEL |
— | 伪研究 | — | — | 693 |
STICKYJAR |
Sticky Jars | StickyJarResearchItem | 2 | concealed | 698 |
REMOTEJAR |
Mirrored Jars | SimpleResearchItem | 3 | concealed | 712 |
复杂度分布
| 复杂度 | 数量 |
|---|---|
| 0 | 1(CLEAN_AURA_CORE) |
| 1 | 2(REVEALER、ARMORDISGUISE) |
| 2 | 21 |
| 3 | 4(GOLEMSILVERWOOD、GOLEMCOREBREAK、ANCIENT_STONES、REMOTEJAR) |
| 4 | 1(GOLEMRUNICSHIELD) |
| 5 | 2(INFUSIONCLAW、GROWING) |
| 6 | 3(GROWING_AGGRESSION、GROWING_GROWTH、GROWING_ATTACK) |
| 无(伪研究 / 占位引用) | 20 |
复杂度范围 0 – 6。
父研究前置
部分研究依赖 Thaumcraft 自己的研究作为父节点(Gadomancy 无法定义它们的内容):
| 外部父研究 ID | 被哪些 Gadomancy 研究引用 |
|---|---|
DISTILESSENTIA |
ARCANEDROPPER |
INFUSION |
注入附魔类研究(REVEALER 链路) |
THAUMIUM |
同上 |
TUBEFILTER |
精华冷凝器链路 |
GOGGLES |
REVEALER 链路(RegisteredResearches.java:595、:668) |
THAUMATORIUM |
同上 |
PRIMPEARL |
FAMILIAR_SPEED |
这些 ID 由 new ResearchItem("XXX", Gadomancy.MODID) 预先注册(:146-194),只为拿到 .key 供 setParents 引用。