Recipe Modification library
Modby Player_005
Allows you to automatically apply arbitrary modifications to all recipes at runtime in a simple way.
Type
Mod
CurseForge Downloads
22,793
CurseForge ID
1345325
Modrinth Downloads
98,869
Modrinth ID
fRIu3HNp
Last Updated
Jun 11, 2026
Description
# Recipe Modification
## What is this?
This mod on its own doesn't do anything, instead, it's a tool for **mod pack creators, data pack creators, other mod developers** or anyone who likes tinkering.
It allows you to automatically apply arbitrary modifications to any type of recipe at runtime in a simple way, either by using JSON files in a datapack or using the Java API.
This means, instead of manually overriding multiple existing recipes, you define a set of recipe modifiers, which are applied when the game is starting. This means that modifications are applied to any recipes added by all other mods as well, without causing any incompatibilities or weird issues in case of multiple mods overriding the same recipe.
### Some examples:
For example, if you wanted to make it so that all button recipes create 8 buttons instead of just 1 because you think the button recipe is a scam otherwise, you can easily do that in just a few lines of JSON!
```json
{
"target_recipes": "#minecraft:buttons",
"modifiers": [
{
"type": "modify_result_item",
"function": "set_count",
"count": 8
}
]
}
```

Other use cases would be, for example, if some mod's recipes are not properly compatible because they don't utilise tags correctly
(or there are no standardised tags for the relevant items), you can easily make them compatible
(without having to manually override every single recipe! yay!).
Say, for example, a mod named "mod_xyz" doesn't use the right tag for copper nuggets in their recipes, which makes these incompatible with copper nuggets from other mods.
Using Recipe Modification, you can fix it like this:
```json
{
"target_recipes": {
"type": "namespace_equals",
"namespace": "mod_xyz"
},
"modifiers": [
{
"type": "add_alternative",
"ingredients": "mod_xyz:copper_nugget",
"alternative": {
"tag": "c:copper_nuggets"
}
}
]
}
```
## How can I use this?
Generally, the preferred way to interact with this mod is via JSON files, however, there is also a Java API available.
**Check out [the document about JSON Syntax](https://github.com/Player005/RecipeModification/blob/1.21.1/main/docs/JSON_Syntax.md) for more information on how to write these JSON files and what you can do with this mod.**
There are also some (nonsensical, but working) [test modifiers](https://github.com/Player005/RecipeModification/tree/1.21.1/main/common/src/main/resources/data/testing/recipe_modifier) that you can take inspiration from.
For the Java API, just take a look at the [api package](https://github.com/Player005/RecipeModification/tree/1.21.1/main/common/src/main/java/net/player005/recipe_modification/api), especially the methods in the [main `RecipeModification` class](https://github.com/Player005/RecipeModification/blob/1.21.1/main/common/src/main/java/net/player005/recipe_modification/api/RecipeModification.java).
More detailed instructions & usage information coming soon™.
If you have any questions or need help, always feel free to [message me on discord](https://discord.com/users/650714531844194304) or open a GitHub issue.
Compatibility
Mod Loaders
Fabric
Forge
Neoforge
Quilt
Game Versions
1.20.1
1.21.1
1.21.11
Screenshots
Similar Mods
Rad Gyms [Cobblemon]
Cobblemon roguelike gyms based on RCT Api
Mod
1,216,424
Power Drop
Allows items to be dropped more powerfully
Mod
1,215,744
Vintage Animations
Overhaul Animations of Basic Actions
Mod
1,215,573
Pickup Notifications
Show notifications on item pickup.
Mod
1,215,285
Collective Framework
A library mod for my mods, also includes a few interesting features
Mod
1,214,887
Terraformed Api Reforged
Port of the terraformerm api from terraformersmc mods to forge
Mod
1,214,060