Crafttweaker: Necronomicon
As of ACI 1.4.0, you can now edit the Necronomicon! The things you can do is add/edit/remove Chapters (collections of Pages), and add/edit/remove Pages (simply a Page, can be plain text, an ItemStack, a Crafting Recipe or an Image with text underneath). There's currently 232 editable Pages, so you have A LOT of things to mess around with.
mods.abyssalcraft.necronomicon.internal.addChapter(<uniqueidentifier>, <chaptertitle>, <necroDataUniqueidentifier>)
Where:
uniqueidentifier is a String representing the Category (should be unique for the NecroData, eg. only a single Category can have a specific identifier)
chaptertitle is a String representing a title (either localized, if possible in the .zs file, or just a name)
necroDataUniqueidentifier is a String representing the NecroData you want to add your category to.
There will be a list at the bottom of the page naming all used NecroData and Category identifiers.
mods.abyssalcraft.necronomicon.internal.removeChapter(<uniqueidentifier>, <necroDataUniqueidentifier>)
Where:
uniqueidentifier is a String representing the Category (should be unique for the NecroData, eg. only a single Category can have a specific identifier) you want to remove
necroDataUniqueidentifier is a String representing the NecroData you want to remove the category from.
mods.abyssalcraft.necronomicon.internal.addNormalPage(<pageNum>, <pagetext>, <chapterIdentifier>, <necrodataIdentifier>)
mods.abyssalcraft.necronomicon.internal.addItemPage(<pageNum>, <displayitem>, <pagetext>, <chapterIdentifier>, <necrodataIdentifier>)
mods.abyssalcraft.necronomicon.internal.addImagePage(<pageNum>, <resourcepath>, <pagetext>, <chapterIdentifier>, <necrodataIdentifier>)
mods.abyssalcraft.necronomicon.internal.addCraftingPage(<pageNum>, <output>, <pagetext>, <chapterIdentifier>, <necrodataIdentifier>)
mods.abyssalcraft.necronomicon.internal.addCraftingPage(<pageNum>, <output>, [inputs], <pagetext>, <chapterIdentifier>, <necrodataIdentifier>)
mods.abyssalcraft.necronomicon.internal.addURLPage(<pageNum>, <url>, <pagetext>, <chapterIdentifier>, <necrodataIdentifier>)
Where:
pageNum is a Integer representing the Page's number (setting that as the number of an already existing page will override it).
pagetext is a String representing the text displayed on the page (localized string or plain text).
chapterIdentifier is a String representing the identifier of the Chapter this Page should be added to.
necrodataIdentifier is a String representing the identifier of the NecroData the aforementioned Chapter belongs to.
displayitem is an ItemStack used to display on the Page. Only that type is allowed.
resourcepath is a String representing a ResourceLocation to an image (like 'modid:path/to/texture.png", or "path/to/texture.png" which would default to Minecraft's texture resources).
output is a Item/Block/ItemStack representing the output of a Crafting Recipe (if used without the array, any registered recipe will automatically be fetched).
inputs is an array of Items/Blocks/ItemStacks used to display the recipe (in cases where you want to show a specific recipe for something with multiple recipes). In it's code form, it can accept null values, as it requires 9 Objects (so if there's a substitute for null Objects, use that for any blanks in the recipe).
url is a website URL pointing to an image. The format of the image should be the same as that which you'd use for a ResourceLocation-based image.
mods.abyssalcraft.necronomicon.internal.removePage(<pagenum>, <chapterIdentifier>, <necrodataIdentifier>)
Where:
pageNum is a Integer representing the number of the Page to be removed.
chapterIdentifier is a String representing the identifier of the Chapter this Page should be removed from.
necrodataIdentifier is a String representing the identifier of the NecroData the aforementioned Chapter belongs to.
These are probably outdated by now
It should be noted that not all Chapter identifiers are used in every NecroData instance.
NecroData:
- greatoldones
- overworld
- abyssalwasteland
- dreadlands
- omothol
- darkrealm
- rituals
- miscinfo
Chapter:
- outergods
- greatoldones
- materials
- progression
- entities
- specialmaterials
- armortools
- gettingstarted
- potentialenergy
- enchantments
mods.abyssalcraft.Rituals.mapDimensionToName(<dim>, <name>);
Where: dim is the Integer ID of the dimension, and name is a String representing the name of the dimension.
Example: mods.abyssalcraft.Rituals.mapDimensionToName(10, "The Beneath);
This maps The Beneath (yadda yadda default dim ID) to be displayed in the Necronomicon as "The Beneath" for dimension-specific rituals.
mods.abyssalcraft.Rituals.mapDimensionToBookTypeAndName(<dim>, <bookType>, <name>);
Which combines the above 2 methods, mapping both a dimension to a book type and the same dimension to a name displayed for dimension-specific rituals.
Example: mods.abyssalcraft.Rituals.mapDimensionToBookTypeAndName(10, 4, "The Beneath");
There isn't really a reason not to use the combined method right away, but some edge case where only one method is required could pop up in the future ¯\_(ツ)_/¯