
This mod provides universal cutting recipes for all matching items.
This mod is an util separated from another mod named Convenient Storage (Not on Modrinth) by Admsgenter.
FUNCTION
Adds universal cutting recipes for items missing appropriate recipes.
For example, items of wood has no recipes for cutting, we added for them.

Completes direct recipes for items can be crafted through multiple recipes.
For example, Stone can be cut into Cobblestone, Cobblestone can be cut into Cobblestone Stairs, a cutting recipe from Stone to Cobblestone Stairs will be added if absent.

- Note: Cutting Recipe from Stone to Cobblestone is not present in Minecraft 1.20, it is added by this mod.
DATAPACK
The rule for this mod can be modified in datapack or kjs.
Structure
The structure of the datapack should be like:
data/<namespace>/
├ universal_ingredient/
│ └ <ingredient_file_name>.json
└ universal_recipe/
└ <recipe_file_name>.json
JSON
Universal Ingredient
We add cutting recipes for items by matching their ids.
We use '*' as wildcard for matching.
For example, "minecraft:oak_log", "minecraft:birch_log", ... matches "*_log".
The structure of the json should be like:
JSON
├ <ingredient_0>: [<rule_0>, <rule_1>, ...]
├ <ingredient_1>: [<rule_0>, <rule_1>, ...]
...
For example, part of data/universal_cutting_recipe/universal_ingredient/default.json:
{
"boat": ["*_boat"],
"bricks": ["*_bricks"],
"button": ["*_button"],
"door": ["*_door"],
"fence": ["*_fence"],
"fence_gate": ["*_fence_gate"],
"log": ["*_log", "*_stem"],
"planks": ["*_planks"],
"stripped_log": ["stripped_*_log", "stripped_*_stem"],
"stripped_wood": ["stripped_*_wood", "stripped_*_hyphae"],
"trapdoor": ["*_trapdoor"],
"wood": ["*_wood", "*_hyphae"]
}
- Note: A standalone "*" can't be a rule.
Universal Recipe
The structure of the json should be like:
JSON
├ <input_ingredient_0>: {
│ <output_ingredient_0>: <count_0>,
│ <output_ingredient_1>: <count_1>,
│ ...
│ }
├ <input_ingredient_1>: {
│ ...
│ }
...
For example, part of data/universal_cutting_recipe/universal_recipe/default.json:
{
"*": {
"bricks": 1,
"button": 1,
"fence": 1,
"fence_gate": 1,
"slab": 2,
"stairs": 1
},
"log": {
"stripped_log": 1
},
"planks": {
"button": 1,
"door": 1,
"fence": 1,
"fence_gate": 1,
"minecraft:ladder": 2,
"minecraft:stick": 3,
"sign": 1,
"slab": 2,
"stairs": 1,
"trapdoor": 1
},
"stripped_log": {
"boat": 1,
"minecraft:barrel": 1,
"minecraft:chest": 1,
"minecraft:composter": 2,
"minecraft:crafting_table": 1,
"planks": 4
},
"stripped_wood": {
"stripped_log": 1
},
"wood": {
"log": 1,
"stripped_wood": 1
}
}
- Note: A standalone "*" can be a input_ingredient.
Then recipes will be added if the * of input and output are same.
MISC
Can I use this mod in modpacks?
Yes.
- Edition: Minecraft Java
- File type: .jar
- Minecraft version listed: 1.20.1
- How to install: Install the matching mod loader (Forge, Fabric or NeoForge) for your Minecraft version. → Download the .jar. → Put it in the .minecraft/mods folder and launch that loader profile.
- Where to get it: Opens on Modrinth — not every file is mirrored on our own servers.
Install steps are the general flow for this file type — How to install Minecraft Java mods & modpacks walks through it step by step.
- Ships as Universal Cutting Recipe-1.20.1-Forge.jar — drop this file into the mods folder
- Download size: 20 KB
- Download link checked 13 Sept 2026 — working
These come from our own check of the pack file, not from the source page.