⭐ UnderscoreEnchants ⭐ CREATE CUSTOM ENCHANTMENTS | 2 GUIs ⚡ icon

⭐ UnderscoreEnchants ⭐ CREATE CUSTOM ENCHANTMENTS | 2 GUIs ⚡ -----

Create your own enchantments for free. No coding knowledge. Seriously.



Update 2.2
UnderscoreEnchants v2.2 is FINALLY OUT!
After 1.5 years in the works, UnderscoreEnchants v2.2 is finally out. It is not just an improvement over v2.1 - it's a complete recode in a different language with different standards in mind, higher quality and more effort. Many features were taken from 2.1, of course, so the plugin isn't completely unrecognizable, but it is backwards-incompatible with previous versions.

Changelog

In the changelog of the update 2.1, I promised some new specific features.

Here's what's been added/done:

- A new condition in-water will indicate whether the player is in water.
- Messages will migrate to their own files (such as messages/en.yml).
- Grindstones will be supported.
- drop-item <material> <world> <x> <y> <z> will have an item be dropped at a certain location.
- A new global placeholder <closest_player> will return the name of the closest player.
- The current registration system is ugly! Is there really a need for a separate enchantment class for every event? Investigate and potentially rewrite.
- A new field activation-indicator accepts bossbar, particles or none to indicate activation of the enchantment. For backwards compatibility, the default value will be bossbar.
- A new field conflicts-with takes a list of strings to indicate the enchantments that this enchantment conflicts with.
- A new field unique accepts a boolean to indicate whether this enchantment is the only one that's allowed on the item.

Here's what is not yet added/done, but will be added/done soon:

- player-drop-item <material> <x> <y> <z> will have an item be dropped at a certain location at the player's world.
- player-timed-actionbar <duration in seconds> <text> will have an actionbar be displayed to the player for a certain amount of time. Note that this duration is a rough approximation and the actionbar shall be displayed for a couple more/less seconds.
- A new global placeholder <block_at_[WORLD]_[X]_[Y]_[Z]> will return the block material at the given location.`
- A video tutorial on how to setup the plugin and create enchantments will be made.

Here's what will not be added/done for various reasons:

- UnderscoreEnchants will migrate to ConfigLib in order to properly support configuration changes.
- Instead of hardcoding applicables, they will now be accessible at applicables.yml. The default applicables (tools, weapons, etc.) will be created with the file by default.


Aside from what's been promised in the v2.1 changelog, here are some other new features:

- KEY ADDITION: Actions, placeholders, triggers, conditions, etc. are now not confined to what I as the developer create, but are now also creatable with the extensive UnderscoreEnchantsAPI! The Javadocs are available here and the documentation for working with the API is here.
- KEY ADDITION: There is now a central repository for sharing enchantments, enchantment packs and localization files! There is no frontend web interface for it as of right now, but it is planned. The instructions on interacting with the repository are available here; instructions for self-hosting are available here; the source code is available here and the central repository itself is located here.
- New commands /ue browsepacks, /ue browseenchs and /ue browselocales are the closest that we currently have to a frontend interface. It opens a respective GUI in Minecraft where you can browse, download and preview content from the repository.
- The plugin now stores data about players, specifically their personal locale, their active cooldowns and their disabled enchantments. By default the data is stored in JSON files, but the plugin can be configured to use YAML files or MongoDB or MySQL databases.
- Placeholders can now take arguments and instead of getting hardcoded weird parsing with regex for specific placeholders like <highest_block_at_%x%_%z%> they now properly take arguments as in <placeholder=highest-block:arguments={x=4|z=5|world=world}>.
- An <attribute> placeholder.
- A requiredPlugins field. The enchantment will not activate if any plugin is not found.
- A requiredEnchantments field. The enchantment will not activate if the player does not have these enchantments.
- A stackable field, indicating that the effects of the enchantment should take place multiple times, depending on how many enchanted items the player has.
- Two new fields world-blacklist and world-whitelist for enchantments.
- A cancel action for most triggers.
- A set-attribute action.
- An attribute condition.
- The tab completion has been improved even further.
- The configuration versioning, starting with this update, should be working properly.
- Conditions for each separate action.
- Placeholders are now properly supported in conditions.
- Items in actions are now parsed from the component format.
- The documentation for the plugin has moved from the GitHub wiki to here.
- A new command /ue debug that homes subcommands like /ue debug log (creating a log), /ue debug registry (debugging the registry), etc. Focuses on being informative instead of being user-friendly, as it is intended for use only when something goes wrong.

This update is HUGE! I have tested it as thoroughly as I could and I do not know of any bugs as of today, but I am certain that with a fresh glance, you as an end user can discover something. Please join the Discord support server to report any bugs. Alternatively, you can open GitHub issues, but they are not prioritized.
----------, Jul 18, 2024
Resource Information
Author:
----------
Total Downloads: 1,620
First Release: Oct 21, 2021
Last Update: Jul 18, 2024
Category: ---------------
All-Time Rating:
9 ratings
Version -----
Released: --------------------
Downloads: ------
Version Rating:
----------------------
-- ratings