这篇教程分为几个部分
1.移除或添加研究

2.研究之间的链接

3.对魔导书页面的修改

第一部分

移除研究

我们可以使用remove.research ( )方法删除研究。然而,如果这项研究被用作任何研究的先决条件,魔导书将会在打开该研究的标签时导致游戏崩溃。您可以使用orphanResearch( )切断与某项研究的所有联系,以确保移除的安全性,或者使用clearpreqs( )清除特定研究的先决条件。

示例:

//ResearchKey
mods.thaumcraft.Research.orphanResearch("ROD_greatwood");
mods.thaumcraft.Research.removeResearch("ROD_greatwood");

第一句是切断这个研究和其他研究的联系,而第二句是将这个研究删除,如果不事先切断联系的话,将会导致打开魔导书的时候崩溃

创造研究(也叫本地化研究)

研究是用一个唯一的研究名、一个研究页、一个方面坐标、复杂度等级以及纹理路径或材质定位来创建的,以给它一个图标。创建新的研究需要本地化。

如果一项研究是通过modtweeker添加的,它的名字会本地化为“TC.research_name”。”接着是研究描述。它的描述提示被本地化为“TC.research_text”。”后面跟着研究名。

要素以单个字符串形式输入,方面和值列表用逗号分隔。如果你计划让一个研究自动解锁,可以把它放在没有要素的地方,只需输入一个null作为方位列表。

方位坐标不同于标准数学坐标系。减少Y会使研究向上移动,而增加Y会使研究向下移动。增加X会使研究进一步向右移动,正如人们所预料的那样。

示例:

//ResearchKey, TabKey, AspectList, X, Y, Complexity, ItemStack //Make sure that the X and Y coordinates of your research doesn't conflict with other researches
mods.thaumcraft.Research.addResearch("WTFPLANTS", "BASICS", "lucrum 100, alienis 200", 1, 0, 8, <minecraft:sapling>);
game.setLocalization("en_US", "tc.research_name.WTFPLANTS", "Trees!");
game.setLocalization("en_US", "tc.research_text.WTFPLANTS", "[MT] Science just doesn't know!");

仅仅建立基础研究是不够的。基础研究开始时没有页面,如果你试图打开它,游戏就会崩溃。创建研究后,可以使用addPage( )添加新页面。只需添加的页面和内容,就会添加一个可以用本地化填充的普通文本页面。(要是不填充内容其实没有什么问题,就是显示一行TC.research.page罢了)

示例:

//ResearchKey, LocalizationKey
mods.thaumcraft.Research.addPage("WTFPLANTS", "derp.research_page.WTFPLANTS");
game.setLocalization("en_US", "derp.research_page.WTFPLANTS", "Plants! What are they?<BR>The Thaumometer doesn't know!");

本地化研究页面的文本时,可以使用以下标记:

# Special formatting codes:
# <BR> or <BR/>         Paragraph break (<BR/> is included for people using XML for their localization)
# <LINE> or <LINE/>     Insert a fancy linebreak between sections of text.
# <IMG>...</IMG>  Insert a centered image into text. Parameters are separated by ':' and are:
#                    - mod resource location name
#                    - png file location (assumed to be a 256x256 texture, a sub-image will be grabbed from this png as specified below)
#                    - x location of sub-image in png
#                    - y location of sub-image in png
#                    - x size of sub-image (255 if full x size of png must be used)
#                    - y size of sub-image (255 if full y size of png must be used)
#                    - scaling - 1.0 for normal 256x256 images, or smaller for proportionately smaller .png files (a 16x16 image will be 0.0625)   
#               Examples: 
#                   <IMG>thaumcraft:textures/gui/gui_researchbook.png:24:184:96:4:1.0</IMG>   <-- line break image as used in <LINE> above
#                   <IMG>thaumcraft:textures/items/alumentum.png:0:0:255:255:0.0625</IMG>     <-- alumentum item icon

注意:一个研究可以有不同语言的多个page 但是不能有两个相同语言的page并且在使用中文的时候(zh_CN)必须使用ASCLL语言,如果直接使用中文会报错。

对于添加显示合成表的页面,可以使用以下方法。每一个都以一个研究和一个物品标签作为参数,并将添加一个页面,显示它能找到的项目的第一个配方。在尝试添加合成表页面之前,请确保添加了某个项目的合成表。

//Adds a normal crafting table recipe page
mods.thaumcraft.Research.addCraftingPage("WTFPLANTS", <minecraft:planks>);
//Adds an arcane crafting table recipe page
mods.thaumcraft.Research.addArcanePage("WTFPLANTS", <Thaumcraft:WandRod>);
//Adds a crucible recipe page
mods.thaumcraft.Research.addCruciblePage("WTFPLANTS", <Thaumcraft:ItemResource:1>);
//Adds an infusion recipe page
mods.thaumcraft.Research.addInfusionPage("WTFPLANTS", <Thaumcraft:WandRod:2>);

第一条为普通工作台的合成,第二条为奥数工作台合成,第三条为坩埚合成,第四条为注魔的合成(注意:在添加之前请确保这个物品有合成表)

第二部分

对原有研究的修改
研究分为三种:基础研究,隐藏研究,特殊研究

基础是你在研究某项研究之前需要解开的前提研究。例如,ROD _ silverwood是隐藏研究,ROD _ great wood是前置研究。没有先研究前置研究,你就不能研究隐藏研究。如果一项研究与其前置在同一页上,Thaumonomicon会在前置和隐藏之间划一条线,指出哪一条通向哪一条。

隐藏的研究就像普通研究,除了Thaumonomicon不会在他们之间划清界限,即使他们在同一页上。如果你想减少研究标签上的混乱,请使用这个。

要将研究添加到隐藏研究中:

//ResearchKey, Parent, Hidden?
mods.thaumcraft.Research.addPrereq("WTFPLANTS", "ICHOR", false);

特殊研究是当某项研究被解锁时自动解锁的研究。例如,divirelessentia将JARLABEL作为连锁研究。当你研究本质蒸馏时,你会自动解锁罐子标签研究。当连锁研究在同一个标签上时,Thaumonomicon会在他们之间划清界线。(也就是自动解锁)

要将研究添加到特殊研究中:

//ResearchKey, Sibling
mods.thaumcraft.Research.addSibling("WTFPLANTS", "ZOMGSAPLINGS");

要更改现有研究的前置研究或特殊研究,您需要使用以下命令清除这些值,然后添加自己的值。

//ResearchKey
mods.thaumcraft.Research.clearPrereqs("ICHOR");
mods.thaumcraft.Research.clearSiblings("WTFPLANTS");

每个研究页也用它自己独特的字符串来标识。这些对于了解您是想删除这一页还是在这一页中放置新的研究很重要。

已知的标签键:

* BASICS(基础学)
* THAUMATURGY(神秘学)
* ALCHEMY(炼金学)
* ARTIFICE(炼化学)
* GOLEMANCY(傀儡学)
* FORBIDDEN (Apocrypha)(伪经)
* TT_CATEGORY (Thaumic Tinkering)(神秘工匠)
* TX (Thaumic Esoterica)
* RAILCRAFT (Traheremagy)
* WITCHGADG (Witching Gadgets)

你可以通过键入/minetweaker research将所有标签页输出到日志中来获得游戏中所有研究页的列表。

修改研究

有许多标签和额外的命令用于向您创建的研究中添加更多的特征或修改现有的特征。

一些标准的研究标签是:

基础研究在Thaumonomicon中有一个基础图标。通常用于非处方研究或自动解锁研究。

重点研究的图标周围有尖峰。通常用于表示研究很重要。

玩家无法研究存根研究。通常用于以其他方式解锁的研究,如特殊或自动解锁。

点数研究在Thaumonomicon中有一个八角形图标,是用点数而不是研究来购买的。

虚拟研究并不真正存在,也无法研究。用作通常无法解锁的“前置”研究。

自动解锁-研究开始时已经解锁。

在Thaumonomicon的前置研究完成之前,隐藏研究不会出现在该页面上。默认情况下,用于大多数研究。

可以使用以下句式设置它们:

//ResearchKey, Value
mods.thaumcraft.Research.setRound("WTFPLANTS", true);

//设置为基础研究
mods.thaumcraft.Research.setSpikey("WTFPLANTS", true);

//设置为重点研究
mods.thaumcraft.Research.setStub("WTFPLANTS", true);

//设置为连锁研究
mods.thaumcraft.Research.setSecondary("WTFPLANTS", true);

//设置为点数研究
mods.thaumcraft.Research.setVirtual("WTFPLANTS", true);

//设置为前置研究
mods.thaumcraft.Research.setAutoUnlock("ASPECTS", false);

//设置为一开始解锁
mods.thaumcraft.Research.setConcealed("WTFPLANTS", true);

//设置为隐藏

你可以修改现有研究的某些方面。这些方面决定了你需要消耗什么样的研究点和多少个研究点,以简单的研究模式进行研究,或者是否是点数研究。他们还决定了在非点数研究或连线研究模式下的研究,你需要连接哪些方面。

//ResearchKey, Aspects
mods.thaumcraft.Research.setAspects("WTFPLANTS", "lucrum 39, perditio 96, potentia 100");

复杂性决定了研究的难度。研究的复杂程度越高,就越高讨厌的难度。

//ResearchKey, Complexity
mods.thaumcraft.Research.setComplexity("WTFPLANTS", 16);

如果您试图更改现有研究的页面,首先需要用以下方法清除页面研究:

//ResearchKey
mods.thaumcraft.Research.clearPages("WTFPLANTS");

清除所有页面后,您可以手动添加任何格式的页面。

通常,当你改变一个Thaumcraft配方时,它的研究页面仍然会显示原始配方。您可以通过清除所有页面并将其重新添加来手动更改,也可以使用它来尝试并强制刷新配方:

//ResearchKey
mods.thaumcraft.Research.refreshResearchRecipe("WTFPLANTS");

(通常用于强制刷新研究)

刷新研究只有在配方仍然相同的情况下才会有效(神秘工作台、注魔等...)否则,您需要清除研究页面,并将其添加回新的配方类型。

最后,如果您想将现有研究移动到不同的位置和/或不同的标签,可以使用以下方法:

//ResearchKey, DestinationCategory, X, Y
mods.thaumcraft.Research.moveResearch("INFERNALFURNACE", "FORBIDDEN", 1, 0);

第三部分

页面的添加

我们可以通过mt来给神秘的魔导书添加一个全新的页面

mods.thaumcraft.Research.addTab("LZ", "thaumcraft", "textures/items/crimson_rites.png");

game.setLocalization("zh_CN", "tc.research_category.LZ", "u4f8bu5b50");

注意:这里如果要使用中文,请转换为ASCLL的格式

这样我们就成功添加一个新的页面,这个页面的显示名是例子

但是页面默认使用的背景的神秘的默认背景

如果我们想要修改怎么办

mods.thaumcraft.Research.addTab("LZ", "thaumcraft", "textures/items/crimson_rites.png","forbidden", "textures/misc/runecircle.png");

game.setLocalization("zh_CN", "tc.research_category.LZ", "u4f8bu5b50");

注意:这里需要装禁忌魔法,因为调用的页面材质是禁忌魔法的

这样我们就得到一个全新的页面,用禁忌魔法的做背景的页面

注意:在切换语言之后,所有由mt添加的文字会无法显示,需要输入/mt reload重置后即可修复