
A simple, powerful, and fully configurable GUI-based shop for enchanting items using your server's economy.
A complete enchanting system with a GUI shop, a high-stakes enchantment gambler, a disenchanter, and powerful admin tools.

After a long battle with the code demons, EnchantShop has emerged victorious! This plugin provides a seamless way for your players to spend their hard-earned in-game money to get the exact enchantments they want, bypassing the randomness of the vanilla enchanting table. (YES I'M PUTTING THIS BECAUSE THIS IS MY FIRST PLUGIN AND I WANT TO SHOW YOU HOW HARD IT WAS)
/eshop): A main menu lets players choose between the classic, safe Enchant Shop and the risky new Gambler./disenchant): A separate GUI allows players to remove enchantments for a configurable refund./enchanter <player> <enchant> <level>: Instantly apply any enchant./eshop reload: Reload the config on the fly.Important: If updating from a previous version, you must delete your old config.json to allow the new gambling settings to generate.
EnchantShop.jar from the Modrinth page..jar files into your server's /plugins folder.config.json.config.json to your liking, then use /eshop reload!For Players:
/eshop: Hold an item to open the main menu, then choose "Enchant Item" or "Gamble Item"./disenchant: Hold an enchanted item to open the disenchanting menu.For Admins:
/eshop reload: Reloads the configuration file./enchanter <player> <enchant> <level>: Gives an enchant to a player.You can configure every aspect of the shop in the plugins/EnchantShop/config.json file. The file is automatically generated with sane defaults.
{
"costFormula": "base_cost * (level * level)",
"enchantmentBaseCosts": {
"minecraft:sharpness": 1000.0,
"minecraft:mending": 10000.0
},
"mainMenuTitle": "&8Main Menu",
"successSound": "ENTITY_PLAYER_LEVELUP",
"failSound": "ENTITY_VILLAGER_NO",
"gambleTickSound": "BLOCK_NOTE_BLOCK_HAT",
"gambleWinSound": "ENTITY_FIREWORK_ROCKET_TWINKLE",
"gambleLoseSound": "ENTITY_VILLAGER_DEATH",
"gambleDoubleSound": "UI_TOAST_CHALLENGE_COMPLETE",
"gambleChanceToWinPercent": 50,
"gambleChanceForSecondEnchantPercent": 20,
"messages": {
"prefix": "&8[&6EnchantShop&8] &r",
"gamble_no_enchants": "&cThe item you are holding must have at least one enchantment to gamble!",
"gamble_win": "&a&lVICTORY! &fYour item has been enchanted with &e{enchant} {level}&f!",
"gamble_win_extra": "&6&lJACKPOT! &fYou won an &eEXTRA&f random enchantment!",
"gamble_lose": "&c&lDEFEAT! &fAll enchantments on your item have been &cWIPED&f!"
},
"perEnchantPermissions": false,
"enchantmentBlacklist": [
"minecraft:binding_curse"
],
"maxLevelOverrides": {},
"disenchantRefundPercentage": 50.0
}
EnchantShop has a robust permission system for ultimate control.
enchantshop.disenchant: Allows use of the /disenchant command. (Default: true)enchantshop.reload: Allows use of the /eshop reload subcommand. (Default: op)enchantshop.enchanter: Allows use of the /enchanter admin command. (Default: op)enchantshop.buy.<enchant_name>: Required to buy an enchant if perEnchantPermissions is enabled.enchantshop.admin: A parent node that grants all administrative permissions.Have a question, a suggestion, or just want to hang out? Join the official Duckalds' Mods Discord server! Click the banner below to join.