JSON Recipe Manager: A Tool for Custom Crafting Combinations in Minecraft
This modification enables you to add and modify crafting recipes in Minecraft using JSON format files stored in a special configuration folder. It's the perfect solution for those who want to create custom recipes without dealing with code.
Supported Formats
The modification works with JSON files that match the standard Minecraft recipe format, including special Forge crafting types like ore_shaped.
Usage Examples for JSON Files
Several types of files are provided for organizing recipes that you can utilize.
Constants File _constants.json
This special file allows you to define common ingredients that can be reused across different recipes:
[{
"name": "MIXED",
"ingredient": [
{
"type": "forge:ore_dict",
"ore": "stickWood"
},
{
"item": "minecraft:torch"
}
]
}]
Single Recipes
File test_1.json demonstrates creating a single crafting recipe:
{
"type": "forge:ore_shaped",
"group": "json.recipes",
"result": { "item": "minecraft:diamond_ore" },
"pattern": [
"x x",
" x ",
"x x"
],
"key": {
"x": { "type": "forge:ore_dict", "ore": "gemDiamond" }
}
}
Multiple Recipes
In test_2.json, you can see how multiple recipes can be combined in one file:
[{
"type": "forge:ore_shaped",
"group": "json.recipes",
"result": { "item": "minecraft:coal_ore" },
"pattern": [
"x x",
" y ",
"x x"
],
"key": {
"x": { "item": "minecraft:coal", "data": 0 },
"y": { "item": "#MIXED" }
}
}, {
"type": "forge:ore_shaped",
"group": "json.recipes",
"result": { "item": "minecraft:iron_ore" },
"pattern": [
"x x",
" y ",
"x x"
],
"key": {
"x": { "type": "forge:ore_dict", "ore": "ingotIron" },
"y": { "item": "#MIXED" }
}
}]
Replacing Existing Recipes
File test_3.json demonstrates the ability to remove old recipes and add new ones:
{
"remove": [
{ "item": "minecraft:wooden_axe" }
],
"add": [
{
"type": "forge:ore_shaped",
"group": "json.recipes",
"result": {
"item": "minecraft:wooden_axe"
},
"pattern": [
"xx ",
"xx ",
" x"
],
"key": {
"x": {
"type": "forge:ore_dict",
"ore": "stickWood"
}
}
}
]
}
Advanced Features
Test_4.json shows how to replace a recipe during the 'init' event:
{
"when": "init",
"remove": [
{ "item": "stevescarts:modulecomponents", "data": 43 }
],
"add": [
{
"type": "forge:ore_shaped",
"group": "json.recipes",
"result": {
"item": "stevescarts:modulecomponents", "data": 43, "count": 12
},
"pattern": [
"xx ",
"xx ",
" "
],
"key": {
"x": {
"type": "forge:ore_dict",
"ore": "stickWood"
}
}
}
]
}
Note: All recipe files must be placed in the config/JSONRecipes folder.