This mod extends the vanilla json datapack/recipe system. It does not provide an own scripting language.
About
It's a simple fabric mod which allows you to add/change JSON crafting/cooking/etc. recipes to use nbt input and output.
Everything is kept nicely visualized in the vanilla gui.
This can be achieved through the now reintroduced data attribute.
For more information see the wiki pages.
You may want to use this mod with Cotton since this enables you to load datapacks globally and to remove unwanted recipes.
Extras :)
Nbt Crafting also gives you the ability to add new brewing recipes and enables you to add cauldron and anvil recipes. See the wiki for an explanation of these features.
Due to some additions made with this mod the recipe book displays also the output amount of all recipes - yay!
Server Usage
This mod works also server-side only. This causes minor cosmetic issues at the client side.
Example
A simple recipe to get a cool "Battle Axe" of a diamond and a diamond sword with less than 41 damage.
{
"type": "crafting_shapeless",
"ingredients": [
{
"item": "minecraft:diamond_sword",
"data": {
"require": {
"Damage": "$..40"
}
}
},
{ "item": "minecraft:diamond" }
],
"result": {
"item": "minecraft:diamond_axe",
"data": {
"display": {
"Name": "{\"text\":\"Battle Axe\"}"
},
"Enchantments": [
{
"id": "minecraft:sharpness",
"lvl": 10
}
]
}
}
}
Mod support
Every mod which is based on the default vanilla recipe system and which uses the Ingredient
class should be compatible in terms of input nbt matching.
Feedback
If you encouter bugs or have suggestions just open a GitHub issue.
License/Modpack usage
This mod is released under CC0. Feel free to reuse code or to include it in modpacks etc.