CraftTweaker: Necronomicon - Shinoow/AbyssalCraft-Integration GitHub Wiki

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.

Adding Chapters

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.


Removing Chapters

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.


Adding Pages

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.


Removing Pages

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.


Used Identifiers:

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

Mapping Dimension Names to the Necronomicon

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.


Map both Book Type and Name to a Dimension

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 ¯\_(ツ)_/¯

⚠️ **GitHub.com Fallback** ⚠️