Badges update automatically and link to the mod page on MineUniverse.
Disable any enchantment in your world with a single line in a datapack.
Add an enchantment to one tag and it simply stops existing. It won’t show up in enchanting tables, villager trades, loot chests, or the creative menu, and it gets stripped off any items that already have it.
Want to get rid of Mending? Here’s how.
Go to your world’s folder and create this structure inside datapacks:
<your world>/
└── datapacks/
└── no-mending/
├── pack.mcmeta
└── data/
└── enchantmentdisabletag/
└── tags/
└── enchantment/
└── disabled.json
You can name the no-mending folder whatever you like. Everything else has to be spelled exactly as shown.
pack.mcmeta
{
"pack": {
"pack_format": 15,
"description": "Disables Mending"
}
}
disabled.json
{
"replace": false,
"values": [
"minecraft:mending"
]
}
Start the world, or run /reload if you’re already in one.
That’s it. Mending is gone.
Just add them to the same list, separated by commas:
{
"replace": false,
"values": [
"minecraft:mending",
"minecraft:silk_touch",
"minecraft:fire_aspect"
]
}
Keep "replace": false. That tells Minecraft to merge your list with any others. Setting it to true overwrites what other datapacks have added, which is usually not what you want.
Type /enchant @s in chat and the game will list every enchantment ID it knows about. Use those names exactly, including the minecraft: prefix.
The values list accepts everything vanilla’s tag system does, not just plain names.
Prefix an entry with # to point at another tag and disable everything inside it:
{
"replace": false,
"values": [
"#somemod:cursed_enchantments"
]
}
Worth knowing: Minecraft 1.20.1 doesn’t ship any enchantment tags of its own (those arrived in 1.21), so this is mainly for tags added by mods, or ones you define yourself. Pointing at a tag that doesn’t exist will fail to load, so use the optional form below if you’re not sure it’s there.
Naming an enchantment from a mod that isn’t present will break the datapack. To make an entry optional, write it as an object with "required": false:
{
"replace": false,
"values": [
"minecraft:mending",
{ "id": "somemod:lifesteal", "required": false }
]
}
Now the pack loads fine whether or not that mod is installed. This is the safe way to write a pack meant to be shared.
Any mod’s enchantments work, just use that mod’s ID instead of minecraft:. Modpack authors can ship the datapack inside the pack so players don’t have to set anything up.
The mod works on the server by itself, but installing it on the client too gives a cleaner experience:
/enchant command shows a proper error message instead of a generic oneYes. Disabling an enchantment removes it from items that already have it. An enchanted book that ends up with nothing left turns back into a plain book.
Back up your world before disabling anything, and consider compensating players who spent a long time grinding for the enchantment you’re removing.
This mod is originally the work of Greenhouse Modding (with ChrysanthCow), who released it into the public domain. The original was taken down, so this is a rebuilt version I made that keeps it available with some fixes and improvements. It uses the same mod ID and the same enchantmentdisabletag:disabled tag, so any datapack or world you already have still works untouched.
Full credit to them for the original work. Maintained now by me.