Feature Setup & Mechanics
Setup guide for each feature — from drag-drop enchanting to soul tracking and set bonuses.
Drag & Drop Enchanting
The primary way to apply enchants. Players drag enchant books onto MMOItems in their inventory.
How it works
- Player drags an Enchant Book from inventory → drops onto a compatible MMOItems item
- Plugin validates: applicable-to (item type), conflicts, max-enchants, and stacking rules
- Rolls the book's success rate (base % + Lucky Dust bonus)
- On success: enchant applied, stats recalculated, lore updated instantly
- On failure: rolls destroy chance — Protection Stone may save the item
Config: settings/application.yml → drag-drop section
Toggle: drag-drop.enabled: true/false
Slot limit: config.yml → max-enchants-per-item + extra slots from Slot Increaser
Protection Stone
Protects gear from being destroyed when enchant application fails. Supports stacking charges.
Setup
Give to player: /sle give <player> protection 1
Drag stone onto item → lore shows "Protected: 1x"
Multiple stones stack charges (e.g. "Protected: 3x")
Behavior
When enchant fails + destroy roll hits → 1 charge consumed, item saved.
Message from messages.yml → protection-saved
Default material: TOTEM_OF_UNDYING
Tier Shop GUI
GUI shop where players buy Enchant Orbs by rarity tier. Open: /sle shop • Config: settings/tier-shop.yml
Purchase Flow
- Player opens shop GUI and clicks a tier button (Common, Rare, Epic, etc.)
- Currency deducted (EXP, Level, Vault, or PlayerPoints)
- Player receives an Enchant Orb in inventory
- Right-click the Orb → reveals a random enchant book from that tier
- Book has randomized rates: success = base ±15%, failure = 0 to 2× base
EXP (default)
Uses total experience points with vanilla formula
LEVEL
Deducts player levels directly
VAULT
Uses Vault economy balance
POINTS
Uses PlayerPoints
Enchant Browser GUI
Paginated GUI to browse all available enchants. Open: /sle browser • Config: settings/enchant-browser.yml
Browse
Paginated display of all loaded enchants with full details
Sort
Sort by: name, rarity, level, item type
Filter
Filter by: All, Sword, Axe, Pickaxe, Bow, Armor, Hoe
Details
Click enchant → full stats, abilities, max level preview
Dust Crafting System
Convert unwanted enchant books into Lucky Dust, then use dust to boost success rates. Open: /sle dust
How it works
- Place enchant books in the Dust Crafting GUI → converted to Lucky Dust
- Higher tier books give more dust (see table below)
- Drag Lucky Dust onto an enchant book → increases success rate
Dust Yield by Tier
| Tier | Success Boost |
|---|---|
| Common | 1 – 5% |
| Uncommon | 3 – 8% |
| Rare | 5 – 12% |
| Epic | 8 – 18% |
| Legendary | 12 – 25% |
Extraction System
Remove enchants from items and convert them back into books. Config: settings/extraction.yml
Usage
/sle extract— remove a random enchant from held item/sle extract <enchant_id>— remove a specific enchant- If
require-scroll: true, player needs an Extraction Scroll in off-hand - Give scroll:
/sle give <player> scroll 1
3 Possible Outcomes
Success
Enchant extracted into a book
Fail
Nothing happens, scroll consumed
Destroy
Enchant and scroll both lost
Fusion System
Combine multiple enchant books to create a more powerful enchant. Open: /sle fusion • Config: settings/fusion.yml
Example: Strength I ×3 → Strength II
recipes: strength_2: result: enchant: strength level: 2 ingredients: - enchant: strength level: 1 amount: 3
Grindstone & Anvil
Vanilla integration — no extra config needed.
Grindstone
Removes all custom enchants. Works with custom-only items. Lore + stats recalculated instantly. Items placed & taken back = enchants preserved.
Anvil Combining
Same enchant + same level → level+1. Different levels → higher wins. Conflict check enforced. Full durability on result.
Enchant Table Integration
Custom enchants can appear from vanilla enchanting table. Config: settings/enchant-table.yml
Blacklist Mode (default)
All enchants appear from table except those in the blacklist
Whitelist Mode
Only listed enchants appear from table. Set weight per enchant.
Soul System
Enchants with soul-cost consume souls each time they activate. Souls are tracked per-item via NBT.
Setup & Flow
- Give Soul Stone:
/sle give <player> soul_pvp 1— enables tracking on item - Drag Soul Stone onto weapon → starts soul tracking
- Kill mobs/players → earn souls (configurable:
souls-per-kill) - Give Soul Booster:
/sle give <player> soul_booster_pvp 1to add bonus souls - Enchant activation → checks
soul-cost→ deducts if enough, skips if not
Death penalty: lose 10% souls (configurable: soul-death-loss-percent)
PAPI: %slenchant_soul_pvp%, %slenchant_soul_pve%, %slenchant_soul%
Trak System
Counts blocks mined and mobs/players killed with an item. Displayed on item lore.
BlockTrak
/sle give <player> trak_block 1
Tracks blocks mined per item.
KillTrak
/sle give <player> trak_kill 1
Tracks player kills per item.
MobTrak
/sle give <player> trak_mob 1
Tracks mob kills per item.
Set Bonus System
Enchants with set bonuses activate when wearing multiple items with the same enchant.
Tier Progression
- 2 pieces → Tier 1 bonus (e.g. +10% ATK DMG)
- 4 pieces → Tier 2 bonus (e.g. +20% ATK DMG + ability)
- 6 pieces → Full set bonus with powerful abilities
King Legendary
ATK-focused set with GOLEM_WRATH ability
Warlord Epic
DEF-focused set with HEAVY_CHARGE ability
Phantom Rare
Speed-focused set with BLINK ability
Slot Increaser
Increases max enchant slots per item.
Usage
- Give:
/sle give <player> slot_increaser 1 - Drag onto item → +1 max enchant slot
- Extra slot limit:
application.yml → extra-slot-limit: 5 - Example: base=5, extra=3 → that item holds max 8 enchants