一个研究的结构:
{ "entries" :[
{
"key": "EXAMPLE",
"name": "research.example.title",
"icons": [ "thaumcraft:textures/items/thaumonomicon.png", "minecraft:logs;1;1" ],
"category": "BASICS",
"parents": [ "SOMETHING@3", "~ANOTHER_THING" ],
"siblings": [ "~BROTHER", "SISTER" ],
"meta": [ "ROUND","SPIKY","HIDDEN","REVERSE","AUTOUNLOCK" ],
"location": [ 0,0 ],
"reward_item": [ "minecraft:stick" ],
"reward_knowledge": [ "OBSERVATION;AUROMANCY;1" ],
"stages": [
{
"text": "research.example.text.stage.1",
"recipes": ["A_RECIPE","ANOTHER_RECIPE"],
"required_item":["minecraft:planks;30;1;{display:{Lore:['Stuff you need to hand in']}}"],
"required_knowledge":["THEORY;GOLEMANCY;2","OBSERVATION;AUROMANCY;1"],
"required_research":["RESEARCH_YOU_NEED","RESEARCH_YOU_NEED_WITH_CUSTOM_TEXTURE;thaumcraft:textures/items/thaumonomicon.png"] },
{
"text": "research.example.text.stage.2",
"recipes": ["THE_FINAL_RECIPE"],
"warp": 5
}
],
"addenda": [
{
"text": "research.example.text.stage.1",
"recipes": ["A_RECIPE","ANOTHER_RECIPE"],
"required_research":["RESEARCH_YOU_NEED"]
}
]
}
]
}
key:必须要有,识别研究的关键词;
name:研究名称。可以使用语言文件中的非本地化名称;
icons:图标。可以使用自定义材质,也可以调用原版物品。如果定义多个图标,会每间隔 1 秒进行循环。
自定义材质:统一使用标准的资源定位格式;
调用原版物品:物品id;数量;meta,比如上图中的minecraft:logs;1;1。
category:必须要有,用来定位研究所在的章节;
parents:前置研究。完成指定的前置研究后才能开启,默认会在此研究和前置研究间绘制连线;
可以在前置研究名称后添加 @数字,表示前置研究在第几阶段即可开启本篇章;
可以再前置研究名称前添加 ~ 符号,禁阻前置研究与此研究间连线。多用于独立研究或者隐藏研究;
可使用自定义字符串添加特殊解锁条件,但需要手动判断条件是否满足
siblings:能够解锁的子研究。
可以再前置研究名称前添加 ~ 符号,禁阻子研究与此研究间连线。多用于独立研究或者隐藏研究;
meta:
ROUND:此标记会将该研究的白色方形边框更改为圆形
SPIKY:该标记会为此研究的图标四角添加特殊图案,并且每完成一个带有此标记的研究会为研究台额外增加0.5个最大可用灵感
REVERSE:带有此标记的研究将会更改前置研究到本研究的箭头轨迹,使其与默认轨迹呈镜面对称
HIDDEN:带有此标记的研究将成为隐藏研究,未完成前置将不可见,并且每完成一个带有此标记的研究会为研究台额外增加0.1个最大可用灵感
AUTOUNLOCK:字面意思,到Beta26为止TC6本体尚未使用此标记,原因可能为此标记会导致玩家在满足研究所需条件后仍然无法解锁的bug
HEX:此标记会将该研究的白色方形边框更改为六边形
location:研究图标所在的位置(传入 x 和 y 值);
reward_item:奖励物品。玩家完成此研究后获得的物品奖励。
reward_knowledge:奖励知识。玩家完成此研究后获得的知识奖励。
stages:研究条目的具体内容:
text:必须要有。研究的描述;
recipes:显示的合成表。需要写入合成产物 id,该产物必须要在神秘时代中有相关合成。
required_item:解锁研究需要的物品;
required_craft:解锁研究需要进行的合成。传入合成产物 id 即可。
required_knowledge:需要前置知识;
required_research:需要的研究:
和先前的前值研究篇章书写方式类似;
你可以指定不需要完全研究的条目,这时候相关条目将会以 ? 符号覆盖原有的图标,你需要在语言文件中添加 research.RESEARCH_YOU_NEED.text 条目来添加本地化。
如果想要显示其他图标,可以采用一些特殊的书写方式:
m_ 开头的研究会显示地图图标;
f_ 开头的会显示药水瓶图标;
c_ 开头的会显示箱子图标;
warp:此研究完成后获得扭曲值;
addenda:为特殊研究添加的篇章。这些特殊研究在主研究解锁后会显示一次;或者其他间接的触发的方式才会显示。多用于一些需要研究特定物品才会显示的独立研究篇章,比如炼狱熔炉与风箱的篇章。
text:必须要有。研究的描述;
recipes:显示的合成表。需要写入合成产物 id,该产物必须要在神秘时代中有相关合成。
required_research:需要的研究:
和先前的前值研究篇章书写方式类似;
你可以指定不需要完全研究的条目,这时候相关条目将会以 ? 符号覆盖原有的图标,你需要在语言文件中添加 research.RESEARCH_YOU_NEED.text 条目来添加本地化。
如果想要显示其他图标,可以采用一些特殊的书写方式:
m_ 开头的研究会显示地图图标;
f_ 开头的会显示药水瓶图标;
c_ 开头的会显示箱子图标;
最后请在Mod源码中 FMLInitializationEvent 处使用 ThaumcraftApi.registerResearchLocation 方法注册该json文件的ResourceLocation,研究才会启用。