This plugin will allow you to disenchant an item.  When you drag and drop the de-enchantment item on an enchanted item, it will transfer one of enchantments on the item onto an EnchantmentBook item.

The created EnchantmentBook can be used to enchant another item.

To use this plugin, you would need EnchantmentBook and TokenEnchant plugins.

Video:




Commands:
 
  • /disenchant help : displays the help menu
  • /disenchant reload : reloads config.yml file.
  • /disenchant give <player> <type> <s:rate> <d:rate> [+]: gives <player> the DisEnchanter of <type>, the DisEnchanter will have success rate <s:rate> and destroy rate <d:rate> with an option of [+] (add level mode).

    for <type> can be one of:
    • RANDOM_ONE : move one level of a randomly selected enchantment onto an EnchantmentBook.
    • RANDOM_ALL : move all levels of a randomly selected enchantment onto an EnchantmentBook.
    • SELECTIVE : allow you to pick which enchantment to be turned into an EnchantmentBook.
    • DEL_RANDOM_ONE : delete one level of a randomly selected enchantment.
    • DEL_RANDOM_ALL : delete all levels of a randomly selected enchantment.
    • DEL_SELECTIVE : allow you to pick which enchantment to be deleted.
          examples:
  • /disenchant give vk2gpz RANDOM_ONE s:random d:random +
    will give vk2gpz an DisEnchanter which will remove one level of randomly selected enchantment.  Resulting EnchantmentBook will have success rate and destroy rate, both of which are randomly selected.

Permissions:
 
  • disenchantment.reload : It allows you to reload config.yml.
  • disenchantment.give : it allows you to /disenchant give command.
  • disenchanter.use : it allows you to use DisEnchanter.

Installation:
First, you need to install TokenEnchant and EnchantmentBook plugins. Once you've installed TE and EB, you can put DisEnchantment.jar in the plugins folder.

Configuration:
If you would like to customise how your DisEnchanter looks like, you can do so in the config.yml.  Make sure to set "AllowRefund: true" in TokenEnchant's config.yml.  If you do not want to allow players to use TE's refund to get tokens, set RefundRate: 0.0 .

Messages:
  ErrorMsg : "&c[DisEnchanter] : Some error occured."
  DisEnchanterGiven: "&e[DisEnchanter] : You've given DisEnchanter!"
  NoPlayerFound: "&c[DisEnchanter] : %player% is not found"
  NoPermission: "&c[DisEnchanter] : You don't have a permission to use EnchantmentBook function!"
  NoSuchDisEnchanter: "&c[DisEnchanter] : The disenchanter %type% is not found."
  ListingHeader : "=== &e[&aDisEnchantment List (%version%)&e] &r==="

HelpMessages:
  banner:
    msg: "=== &e[&aDisEnchantment Commands List (%version%)&e] &r==="
  help:
    msg: "&a/disenchant help : displays this help menu."
  reload:
    msg: "&a/disenchant reload : reloads config file."
    permission: "disenchantment.reload"
  debug:
    msg: "&a/deenhant debug <true|false> : turn on / off the debug mode."
    permission: "disenchantment.debug"
  give:
    msg: "&a/disenchant give <player> <type> [enchant:name] [level:lvl] [s:rate] [d:rate] [+]"
    permission: "enchantmentbook.give"
  list:
    msg: "&a/disenchant list : list available de-enchanter"
    permission: "enchantmentbook.give"

DisEnchantGUITitle: "&aDisEnchanter"
UseNBT: true
IncludeVanillaEnchant: true
Sound: ENTITY_PLAYER_LEVELUP  # pre 1.9  use LEVEL_UP

# enchantments (including TokenEnchant's custom enchantments) listed here
# won't be included in the de enchantable list.
Blacklist:
  - Mending

DisEnchanter:
  RandomOne:
    Type: RANDOM_ONE
    Name: "RandomOneDisEnchanter"
    Material: PAPER
    Lore: "Click an enchanted item with\nThis item to remove\none level of randomly chosen enchantmet.\nSuccess rate : %success%\nDestroy rate : %destroy%\nMode : %mode%"
    Success:
      Min: 0.1
      Max: 0.8
    Destroy:
      Min: 0.1
      Max: 0.4

  RandomAll:
    Type: RANDOM_ALL
    Name: "RandomAllDisEnchanter"
    Material: PAPER
    Lore: "Click an enchanted item with\nThis item to remove\nrandomly chosen enchantmet.\nSuccess rate : %success%\nDestroy rate : %destroy%\nMode : %mode%"
    Success:
      Min: 0.1
      Max: 0.8
    Destroy:
      Min: 0.1
      Max: 0.4

  Selective:
    Type: SELECTIVE
    Name: "SelectiveDisEnchanter"
    Material: PAPER
    Lore: "Click an enchanted item with\nThis item to select\nwhich enchantment\nyou wish to remove.\nSuccess rate %success%\nDestroy rate %destroy%"
    Success:
      Min: 0.1
      Max: 0.8
    Destroy:
      Min: 0.1
      Max: 0.4
  RandomOneDel:
    Type: DEL_RANDOM_ONE
    Name: "RandomOneDisEnchanter(del)"
    Material: PAPER
    Lore: "Click an enchanted item with\nThis item to remove\none level of randomly chosen enchantmet."

  RandomAllDel:
    Type: DEL_RANDOM_ALL
    Name: "RandomAllDisEnchanter(del)"
    Material: PAPER
    Lore: "Click an enchanted item with\nThis item to remove\nrandomly chosen enchantmet."

  SelectiveDel:
    Type: DEL_SELECTIVE
    Name: "SelectiveDisEnchanter(del)"
    Material: PAPER
    Lore: "Click an enchanted item with\nThis item to select\nwhich enchantment\nyou wish to remove."