HomeJavaModsEnchanting Rework
Enchanting Rework
ModsJava

Enchanting Rework

by BeansNToast · on Modrinth

A custom enchanting-table GUI that replaces the vanilla gamble. Forge reusable enchanted books from ingredient blueprints (the ingredients are not…

⬇ Download on Modrinth

Enchanting Rework

A custom enchanting-table GUI that replaces the vanilla "gamble on three options" flow with something deterministic and craft-y. Right-click an enchanting table (or run /enchanting) to open a 54-slot interface with two functions: a Book Forge that mints enchanted books from ingredient blueprints, and an Apply station that puts a book onto an item for a flat level cost.

What it does

Book Forge

Place a recipe's ingredient items in the three forge slots and some lapis in the lapis slot. The ingredients are a blueprint - they are not consumed. When they match a configured recipe, a preview of the resulting enchanted book appears in the output. Click it (with an empty cursor) to mint the book; you pay the recipe's level and lapis cost, and the ingredients stay where they are so you can forge again.

Recipes can require specific materials (CACTUS, DIAMOND), a potion (potion:strength), or whole categories (any sword, any armor, any pickaxe...). The two shipped example recipes are:

(The original idea's "sharpening station" is mapped to a vanilla grindstone.) A broad default set covers common combat, tool, armor, and bow enchants - see /enchanting recipes in game or config.yml.

Apply

Put an item in the target slot and an enchanted book in the book slot. A preview of the enchanted item appears in the output; click it to enchant the item for a flat level cost (default 5). Conflicting enchants are skipped, and a stored enchant only upgrades the item if it is a higher level than what is already there.

By default, books minted by the forge are reusable - they are not consumed when applied. That is the intended buff. Books from other sources (loot, trades) are consumed on apply like normal. Set reusable-books: false to make every book single-use.

Minted books are genuine vanilla enchanted books, so anvils and grindstones still work with them.

Opening the GUI

Players without enchanting.use always fall through to the vanilla enchanting table, so disabling permission never locks anyone out of enchanting entirely.

Commands

All under /enchanting (aliases: /erework, /ench).

Command Description
/enchanting Open the Enchanting Rework GUI.
/enchanting recipes List the configured book-forge recipes.
/enchanting info Plugin info and current toggles.
/enchanting reload Reload config.yml. (admin)

Permissions

Permission Default Grants
enchanting.use true Open the GUI, forge books, apply enchants, list recipes.
enchanting.admin op reload (includes enchanting.use).

Configuration (config.yml)

Key Default Meaning
open-via-command true Allow opening the GUI with /enchanting.
intercept-enchanting-table true Right-clicking a vanilla table opens this GUI.
reusable-books true Forged books are not consumed on apply.
apply-cost-levels 5 Flat level cost to apply a book to an item.
default-level-weaker-than-max true Recipes with no explicit level use vanilla max minus one.
recipes.<id> (see file) A forge recipe: ingredients, result-enchant, optional level, cost-levels, cost-lapis.

Ingredient tokens accepted in a recipe: a material name (CACTUS, minecraft:diamond), a potion (potion, potion:strength), or a category (any_sword, any_axe, any_pickaxe, any_shovel, any_hoe, any_tool, any_armor, any_helmet, any_chestplate, any_leggings, any_boots, any_bow, any_book). Result enchants accept a modern key (sharpness, minecraft:thorns) or a legacy Bukkit name (DAMAGE_ALL). Bad recipes are logged and skipped on load, never partially applied.

Compatibility

Paper / Spigot / Bukkit / Purpur, Minecraft 1.21.1-1.21.11. One jar, built against the 1.21.1 API (Java 21, class 65), load-tested on Paper 1.21.11; no Paper-only classes, no NMS, no dependencies. Action-bar feedback uses the bundled BungeeCord chat component API, which is part of the Spigot API.

Known gaps / not yet verified


Original concept by u/Ciryl_Lynyard on Reddit (r/Minecraft). Built by BeansNToast.

Quick facts

Install steps are the general flow for this file type — How to install Minecraft Java mods & modpacks walks through it step by step.

Verified by MCModsHub

These come from our own check of the pack file, not from the source page.

Explore more