Enchantment Solution icon

Enchantment Solution -----

The All-In-One Custom Enchanting Plugin!



Release 2.3.0
Notes:
  • Upgrading from 2.2 to 2.3 will cause some data loss.
    • Any enchantments currently generated in the enchanting table and saved in data.yml will be deleted. This is because the new update removes the material in favor of an itemdata which has more flexibility.
    • Backups of the configuration files will not transfer between 2.2 and 2.3 due to using a new and better system for it. Therefore, restoring from a backup in 2.2 is impossible in 2.3, and any configuration you use should be finalized in your 2.2 version before upgrading to 2.3
Additions:
  • Advancements:
    • Added 11 new advancements for the new enchantments:
      • Wildlife Conservation: Spawn every breedable animal by killing one
      • Meat Ready to Eat: Earn extra cooked drops with Butcher
      • Yummy Repairs: Repair an item with Force Feed
      • Hungry Hippos: Wear a full set of armor with Force Feed
      • Stainless Steel: Equip an Iron Pickaxe with Curse of Stagnancy and the highest level of Unbreaking
      • Nether Dull (Upcoming 1.16): Equip a Netherite Sword with Curse of Stagnancy and the highest level of Sharpness
      • Environmental Protection: Earn 1000 experience from Recycler
      • Light as a Feather: Prevent a fully grown crop from being trampled
      • Knockback Reversed: Knockback an enemy mob by blocking
      • Simple Repair: Repair an item from a stick
      • Sticky Bees: Break 8 items into sticks
  • Commands:
    • Added /es command
      • A faster way to find all the commands with aliases
      • Calls other commands of ES
    • Added /eshelp command
      • Lists all available commands from EnchantmentSolution and their usages
      • Can add a specific command to view information specific to a command
      • Requires the enchantmentsolution.command.help permission
    • Added /esfix
      • Fixes enchantments on items for a particular person
      • Can use on self or others (requires enchantmentsolution.command.fix.others permission)
      • Requires enchantmentsolution.command.fix permission
    • Added /esrpg
      • Displays a GUI for a player's ESRPG statistics
      • Requires the enchantmentsolution.command.rpg permission (should only be given when ESRPG is enabled)
    • Added /rpgstats
      • View a player's ESRPG stats
      • Requires the enchantmentsolution.command.rpgstats permission and the enchantmentsolution.command.rpgstats.others permission to view other players' stats
    • Added /rpgedit
      • Edit a player's ESRPG data
      • Requires the enchantmentsolution.command.rpgedit permission
    • Added /rpgtop
      • View the players with the highest ESRPG levels
      • Uses pagination (/rpgtop [page])
      • Requires the enchantmentsolution.command.rpgtop permission
  • Configurations:
    • Added "use_particles" to config.yml
      • Setting to true will set block breaking enchantments to display block breaking particles
      • May cause lag with high levels of Height++/Width++
    • Added "play_sounds" to config.yml
      • Setting to true will set block breaking enchantments to play block breaking sounds
    • Added "gametypes" to config.yml
      • Specifies additional functional "gametypes" for Enchantment Solution
      • More information found in "Gametypes" section of changelog
  • Enchantments:
    • Added 8 new enchantments
      • Butcher: (Swords Enchantment) Earn additional meat from killing mobs (Conflicts with Looting and Husbandry)
      • Curse of Stagnancy: (Everything Enchantment) Enchantments can no longer be added or modified on this item except removing them through the Grindstone (Conflicts with Curse of Contagion)
      • Force Feed: (Everything Enchantment) (Originally from Enchantment Solution Additions) Equipped items will repair themselves using the hunger bar (Conflicts with Mending and Sticky Hold)
      • Husbandry: (Swords Enchantment) Gives chance to spawn a baby animal when killing animals (Conflicts with Looting and Butcher)
      • Light Weight: (Boots Enchantment) Prevents trampling crops (Conflicts with Feather Falling)
      • Pushback: (Shield Enchantment) When blocking, knocks back melee-using damaging mobs
      • Recycler: (Swords and Axes Enchantment) Common loot drops will turn into experience (Conflicts with Exp. Share)
      • Sticky Hold: (Everything Enchantment) When the item breaks, it will turn into a stick which can be repaired back into the item (Conflicts with Mending and Force Feed)
  • Events:
    • Added AddDropsEvent
      • Extends DropEvent from ES
      • Simple event
    • Added ButcherEvent
      • Extends AddDropsEvent
      • Simple event
    • Added ESEntitySpawnEvent
      • Extends ESEntityEvent
      • Adds the spawner player and the spawn location
    • Added ESItemBreakEvent
      • Extends ESPlayerEvent
      • Adds the itemstack being broken
    • Added ForceFeedEvent
      • Extends ItemRepairEvent from ES
      • Adds how much exhaustion will be added to the player from the event
    • Added HusbandryEvent
      • Extends ESEntitySpawnEvent
      • Adds the percentage chance of spawning the entity
    • Added ItemRepairEvent
      • Extends ESPlayerEvent
      • Adds the item to be repaired and the amount of damage to repair
    • Added LightWeightEvent
      • Extends ESBlockEvent
      • Adds the player trampling the block
    • Added ModifyVectorEvent
      • Extends ModifyActionEvent
      • Adds two vectors, the original vector and a newVector, as well as the entity being pushed back
    • Added OverrideDropsEvent
      • Extends DropEvent from ES
      • Adds the original drops and whether to override the original drops or add to original drops
    • Added ProjectileSpawnEvent
      • Extends InteractEvent
      • Adds method willCancel, which gets extended in other events to whether the event from its arguments should be cancelled
    • Added PushbackEvent
      • Extends ModifyVectorEvent
      • Simple event
    • Added RecyclerEvent
      • Extends ExperienceEvent from ES
      • Simple event
    • Added StickyHoldBreakItemEvent
      • Extends ESItemBreakEvent
      • Simple event
  • Gametypes:
    • Hard Mode:
      • To be implemented further in a future update
      • Will increase health of random mobs by a percentage based on local difficulty
    • Minigame Mode:
      • Extra custom enchanting table GUIs for faster usage on Minigame servers
      • None of the GUIs require Lapis Lazuli to work
      • Option to allow anviling by using the player inventory rather than a normal anvil
      • Anvil cost and enchanting cost can be specified depending on configurations
      • Three different types of GUIs:
        • Fast GUI
          • Has an item for each kind of unique enchantable type
          • Will generate items based on those enchantable types
          • All enchantments will show up on a book placed in player's inventory
          • Generated based on configuration values (number of books, level to get, etc.)
        • Mondays GUI
          • Based loosely upon the Minecraft Mondays enchanting GUI
          • Certain enchantments can be bought for fixed prices
          • Enchantments will be bought at level 1 always
          • Option for random enchantment
        • Custom GUI
          • Various sizes (in multiples of 7 or 9) can be chosen from
          • Items and how they are used defined by configuration values
          • Buying a certain item may increase the cost of getting the next one
          • Possible of random or multiple random enchantments being generated on an item
    • RPG Mode:
      • A gamemode where a player has to use enchantments to level up and earn the ability to receive better enchantments
      • Configurable experience per level, unlock points per level, experience that using each enchantment gains the player, the unlock points cost of enchantments, and which enchantments are available by default
      • Receive sound cues and Hotbar/Boss Bar cues for leveling up and gaining experience
      • Unlock better enchantments using /esrpg
      • All data for ESRPG stored on disabling plugin in data.yml
      • API:
        • Added methods to set specific ESRPG features from the ApiEnchantmentWrapper constructor
        • pointsLevelOne, pointsIncrease, freeLevel, experience, and free are all modifiable from the API
  • Better Items Support:
    • Removed Disabled Items
    • Added in MMOItems support
      • Enchantments can now be added to items based on MMOItems types or type sets
      • To use, add "mmoitems:<'type' or 'typeset'>.<type or type set>" to an item's enchantment_item_types and anvil_item_types
    • Enchantment Item Types and Anvil Item Types:
      • Enchantments can now be modified to go on a custom set of items
        • Note that this may cause issues with certain enchantments; please make a bug report on github for any issues that arise
    • Extra Enchantables:
      • Any item that is not enchantable in vanilla Minecraft will need to be added into "extra_enchantables" in enchantments.yml before they can be placed in the custom enchanting table
      • Adding vanilla items to the enchantment_item_types or anvil_item_types is as easy as "minecraft:<material>"

Changes:
  • API:
    • Changed getItemTypes() to getEnchantMaterials() and getAnvilMaterials()
      • Each of these returns a list of ItemData, which includes a MatData and extra methods for if the specific item comes from MMOItems
  • Commands:
    • Each command can be called using their normal method or through general '/es <command>' command
    • May display usage information when incorrect usage is displayed (when "print_usage" set to true in config.yml)
  • Configurations:
    • "treasure" values removed from all "loots" areas
  • Database:
    • Changed the name of the database file to backups.db
    • Changed the way backups are made, which now encodes the full configuration file instead of splitting them into field, value, and type arrays
      • This should allow for faster reloading and backing up of files
  • Data Files:
    • extras/data.yml will now create a backup every time the server is reloaded (not when plugin is reloaded)
  • Enchantments:
    • Curse of Contagion will no longer infect items when Curse of Stagnancy is on that item
    • Gung Ho now only affects melee damage attacks
    • Hollow Point's damage reduced from 1.5x to 1.25x
    • Removed Flower Gift's usage of NMS
    • Transmutation now accurately gets between the min and max amount of loot (instead of max - 1)
      • Salmon, Cod, Kelp, Scute, Ink Sac, Prismarine Shards, Prismarine Crystals, Coral, Coral Fans, and Sea Pickles can now be found in stacks of 1 higher than originally
  • Events:
    • DropEvent modified
      • Removed the override and originalDrops arguments
      • Changed newDrops to drops
    • Changed the BeheadingEvent to extend OverrideDropsEvent instead of DropEvent
    • Moved ExperienceEvent into two different events: ExperienceEvent and ExpShareEvent
      • ExperienceEvent is for any event that modifies the experience of an event
      • ExpShareEvent is specific for ExpShare and extends ExperienceEvent
      • ExpShareType is moved to ExpShareEvent, but ExperienceEvent is otherwise the same
    • DetonateCreeperEvent and DetonatorExplosionEvent now includes the detonating entity (detonator)
    • Added block to HeightWidthEvent as the original block broken
    • SplatterFestEvent and OverkillEvent now extends ProjectileSpawnEvent
    • TransmutationEvent now extends OverrideDropsEvent
  • Enchantment Locations:
    • Replaced the treasure enchantment system with an EnchantmentLocation system
      • Places where enchantments can spawn:
        • TABLE (Enchanting Table)
        • NON_BOOK (Will generate on tools, weapons, armor, etc.)
          • Previously, enchantments only spawning on books were "Book" enchantments (Irene's Lasso, Frequent Flyer, Icarus, etc.)
        • CHEST_LOOT (Will generate in normal chest loot)
        • MOB_LOOT (Will generate in normal mob loot)
        • FISHING_LOOT (Will generate from fishing)
        • VILLAGER_TRADES (Will generate in villager trades)
        • PIGLIN_TRADES 1.16+ (Will generate when Soul Speed is the original enchantment (Piglin chest loot and piglin bartering))
        • NONE (For use in commands; all enchantments)
      • These locations can be modified via the enchants.yml file for each enchantment
  • Compatibility:
    • Update McMMO Overhaul compatibility to 2.1.128
    • Update Jobs compatibility to 4.15.11
    • Update AuctionHouse compatibility to 2.0.8
  • Misc:
    • The Anvil will only enchant one item at a time if multiple exist in the first position
    • Added Bee Nest and Beehive to the Silk Touch drops of Telepathy
    • Modified the CustomEnchantmentWrapper to no longer need a max level value
      • CustomEnchantmentWrapper will now programmatically modify things such as max level and conflicting enchantments for custom enchantments based on default values or as defined in enchantments.yml
      • This does not affect vanilla enchantments (specifically higher level enchantments)

Fixes:
Fix for removing a helmet with Unrest not removing the Night Vision potion effect
Fix for conflicting enchantments not working properly with protection enchantments and "protection_conflicts" set to true
Fix for enums not properly updating from /esconfig menu
Fix for Hollow Point throwing NullPointerExceptions on non-fully armored opponents
Fix for bad EnchantmentLevel always saying its from the fishing config
Fix for grindstone throwing NullPointerException in /esgrindstone
Fix for McMMO not correctly removing enchantments with only 1 level
Fix for Lapis Lazuli being lost in EnchantmentTable when adding stacks less than the max stack size
Fix for Magma Walker not preventing magma damage
Fix for tamed animals not being properly tamed (most noticeable in Skeleton Horses)
Fix for bug where clicking items in player inventory while renaming will remove the player from the rename screen
Fix for Campfire being considered a pickaxe block to break instead of axe
Fix for players dying or leaving while in a custom inventory not working properly upon respawn​
----------, Jun 2, 2020
Resource Information
Author:
----------
Total Downloads: 64,635
First Release: Aug 7, 2018
Last Update: Jun 1, 2024
Category: ---------------
All-Time Rating:
89 ratings
Version -----
Released: --------------------
Downloads: ------
Version Rating:
----------------------
-- ratings