UltraColor [END OF LIFE] icon

UltraColor [END OF LIFE] -----

Chat and name color plugin with hex color and format support!




This update adds support for 1.20.1.

With 1.20 now supported, this plugin is now fully end-of-life as it's now hard to maintain. No more support or updates will be provided for this plugin.

I honestly want to thank you for being here for the past almost 3 years and using it on your servers. It was a fun and beneficial experience to develop this plugin. A plugin that had almost 7k downloads over its existence and brought me to know multiple of you.

This plugin will remain open-sourced and I'll continue maintaining author rights to this plugin.

Thank you again for everything and I hope to see you on the flip side!

Yours Truly,
Ultimation
----------, Jun 16, 2023

Hello all!

Figured I would give an update about 1.2.0 support.

Once Paper has released stable builds for 1.20, I'll begin my testing with 1.20 support. The same is said for the pro version. As soon as I get 1.20 supported for this plugin, I'll be posting it here, so please remain patient.

As a reminder, this version of UltraColor gets archived tonight at midnight CDT. Starting at that time, no more updates or support will be provided for this version of the plugin with the exception of MC 1.20 support. If you want continued updates and support, you are encouraged to purchase the pro version. For more info, please join our Ulti Studios Discord below.

https://discord.gg/YkHcSwayV7
----------, Jun 9, 2023

This update primarily fixes a NullPointerException reported by a user. The rest is minor internal improvements and a library update.

Enjoy! :)
----------, May 29, 2023

This announcement is crucial to ALL UltraColor users. You're advised to read the entire announcement.

Back on March 25th, I announced about releasing a premium version of UltraColor, which is now called UltraColorPro (or UCPro for short). If you haven't read about it, I encourage you to do so here.

Today, I’m happy to announce that after at least a month of beta testing, we’re now prepping that rocket for launch. This version won't be published on Spigot due to my ineligibility of posting premium resources here.

With that mentioned, if you’re interested in purchasing this version (and getting continued updates for UltraColor), please join the discord at the bottom. There, I’ll be posting updates, including when the plugin gets approved on the site I plan to publish on. We’re also recruiting people to join our support team, along with helpers, moderators, and administrators.


At this time, the plugin is planned to be regularly priced at $10 for the variety of features, quality, and flexibility provided. However, there’s a planned discount sale when the plugin goes live. If you want more details on that, then join the discord mentioned, and I’ll post about it there when the time comes.

Lastly, this part regards this version of UltraColor. Over the past 7 months (October 9th, 2022 to now), I’ve provided only 5 updates for the plugin, and it’s been around for over 2 years now. The plugin itself is now hard to maintain for me, which is why there’s been a recode so that I can better maintain it. With college coming soon and UCPro, I won’t have time to give any updates to this version. So with that said, when UCPro gets launched, there’ll be a two-week grace period before I officially archive this free version (meaning that it’ll still be seen on here, but it won’t be updated at all. I'm still deciding whether or not to make an exception for 1.20 support).

To reassure everyone, UCPro comes with a player data migrator that’ll allow you to migrate your players to UCPro. For those that use a MySQL database, you will need to start a new database due to a table name change. But you can set the migration to transfer your players to your newly created database too when loaded successfully. The source of the free version will still be public for others to continue using and expanding themselves. But to ensure this can continue to happen without issue, I’ll still be maintaining author rights.

Thank you, everyone, for sticking around and I hope to see you on the other side!

Sincerely,
UltimateGamer200/Ultimation

New Discord: https://discord.gg/YkHcSwayV7
----------, May 21, 2023

It's been reported that some servers may have trouble loading player's data from MySQL databases due to the saving of players taking longer than the loading.

To combat this, in the settings file, there is now a configurable settings option in the Database section named Load_After_Ticks.

This would load player data from the MySQL database after x ticks of them joining the server. If you haven't had problems with database loading, you can keep the value between 25 and 30. Otherwise, if you notice some issues, try increasing or decreasing the value.

If you're unsure as to either increase or decrease it, specify "mysql" in the Debug option and reload the plugin. You'll then see in console how long it takes to save and load each player's data.

If you're still unsure, open a message with me and I'll be happy to help! Enjoy! :)
----------, May 12, 2023

This jar just releases a minor bug fix, fixing the %ucolor_nickname% returning "None" if the player has no nickname. Now it returns the player's name (uncolored) if no nick can be found.

While this doesn't seem like a bug, this does make variable systems that don't accept colored placeholders unable to use this placeholder (eg. ChatControlRed).

Thanks, @LimitedGames for reporting this! :)
----------, Apr 2, 2023

Howdy, ya'll!

This releases support for MC 1.19.4! Enjoy the update!
----------, Mar 25, 2023

Happy March ya'll! I hope you all are doing well! Figured I would release another update with some more fixes reported along with a couple of improvements. Things have been going mostly well with me, but don't worry, you'll hear again from me!

Anyway, I hope you enjoy the update!

  • Fixed | When checking if a player can use a color/format, the wildcard permissions (eg. ultracolor.nameformat.*) were taking priority over whether the color/format is enabled or not.
  • Fixed | Users couldn't type "none" in chat or name gradient prompt. Thanks, @hrdu, for the bug report!
  • Fixed | Hex color and gradient prompts weren't checking if a format is enabled along with providing accurate available options. Thanks, @hrdu, for bringing this to my attention.
  • Improved | Updated the main library to the latest version.
  • Improved | Various code improvements to reduce unneeded code.
----------, Mar 1, 2023

It's been a while, but I haven't forgotten about ya'll!

I hope you all are doing well and are enjoying the holiday season so far! I've been on winter break for the past week now, so I managed to squeeze in a couple of hours to make another update. The changelog is as follows
  • Added | 1.19.3 support
  • Improved | Internal code improvements to increase coding standards.
  • Fixed | Detected wrong gradient type when setting rainbow name inside name color menu.
  • Fixed | Gradient color button wasn't pointing to the gradient menu in /color.
I hope ya'll have a happy holiday and I want to thank you for a good 2022! Even though this plugin has been discontinued, about 85 servers still use it, and that honestly brings a smile to my face.

Thank you again and I'll see you around in 2023! :)

- UltimateGamer200
----------, Dec 24, 2022

Well, the time has come. The 1.6.0 plugin update is here.

This update contains code and file cleanup of 500-1,000 lines (clean up in /ucolor setchatcolor and /ucolor setnamecolor commands and merged the regular color set success messages into one for simplicity).

It's before October 10th at the time I'm writing this (11:35 pm CDT), but this is me now discontinuing the plugin. As of now, the plugin will not be guaranteed any future updates, and if given updates, they would only be essential things (eg. new MC update, critical bug fixes/improvements, etc). These updates would also be during my own time when I'm not busy.

On a brighter note, I do thank each of you for the past almost two years! This was the first plugin I launched to the public and it turned out to be a bigger success than I thought! I appreciate those reporting bugs, those giving donations, and those just overall using the plugin to their full potential. And most importantly, I appreciate you for even considering using this plugin. I couldn't be more thankful enough.

I won't be selling or transferring author rights to the plugin quite yet because life can be quite unpredictable. The plugin will also remain open-sourced for the public so that it can continue to be maintained.

Again, I thank you for being a user of UltraColor. You were the reason why I kept going after March of this year. I'll miss doing much with this plugin, but I know it's for the best for my future up ahead (I even got admitted to college just a couple of days ago!).

Best wishes to everyone! I hope to see you one day again.

- UltimateGamer200
----------, Oct 10, 2022

NOTE: The 1.6 update is drawing near. With that in mind, it is anticipated that plugin discontinuation will happen on October 10th at 12 am CDT. Meaning that starting on October 10th, updates will not be guaranteed and will be limited in terms of what they will contain. At this time, the goal is to fix as many bugs, along with making any other essential improvements before October 10th. But I'll need your help.

If you spot a bug, please report it to the GitHub page, and it'll hopefully be fixed! The same goes for any essential improvements that could benefit the plugin!

I did also make an attempt of bringing back iterate through all the players stored. Sadly, that was unsuccessful, which makes the third planned system of removing inactive players from the data.db file unlikely to happen on my end.

I appreciate and thank everyone's understanding and support. Enjoy the update!

Improved | The default hex format prompt message has been modified to include all enabled formats instead of just all formats (including disabled ones). Inside your messages file, just make sure the "Format_Prompt" value under "Hex_Colors" has the {format_options} placeholder to display this. Thanks, @LimitedGames, for suggesting this!
----------, Sep 30, 2022

Note: I have tried to run the database saving of a player when they leave ONLY IF an update is needed. Sadly, I have not had a successful attempt. If anyone wants to help figure this out, I have made a public commit here. But until it's figured out (which no guarantees it will), it'll continue to run when a player leaves regardless if an update is needed or not. Saving the database when the plugin shuts down is also removed as explained below. I'm sorry for any inconvenience.

- Removed | Mechanism that saves players to MySQL databases when the plugin shuts down. This is the culprit for the JSONParseException reported back in July ( https://github.com/UltimateGamer200/UltraColor/issues/6). It's hoped this removal is only temporary. Any players affected by the JSONParseException need to reselect their colors (or make new selections) for their data to be parsed correctly and the error to disappear.
- Improved | The database saving and loading were running async twice when the player joins/leaves. Now they only run async once when the player joins/leaves. This should help fix performance issues with database loading/saving.
----------, Sep 16, 2022

Hello all!

These past few weeks have been quite busy with starting back with school, with the network I manage/lead development, enjoying the last year of high school, and making any preparations I need to do for college and adulthood.

Because of these things, I can see that I would not be able to focus on UltraColor development even somewhat actively for the foreseeable future.

With that, I have decided within the next 1-2 months from September 10th, 2022, to mark UltraColor as discontinued.

WHAT THIS MEANS?:
Once UltraColor is discontinued, there would barely be any updates unless something crucial is needed such as a new MC update and critical bug fixes and improvements.

Even with these things, there will be no guarantees/promises on whether or not something will be implemented.

WHAT ABOUT ULTRACOLOR BEING OPEN-SOURCED?:
UltraColor will remain open-sourced for as long as I maintain author rights to it.

I don't plan to transfer the author rights for UltraColor, though, that isn't set in stone. But please don't ask me to do so, otherwise, I may change my mind to not consider transferring UltraColor to someone else.

WHAT'S THE PLAN FROM NOW UNTIL DISCONTINUATION?:
There are at least three main things I would like to make before I mark UltraColor as discontinued (which would be the 1.6.0 update).

The first is changing how MySQL databases are saved to improve performance. Right now, they are saving on player disconnect and plugin shutdown, regardless of any changes. What I would like to do is possibly run the saving every x duration of time (configurable) and only do it for a player if changes need to be made for them.

The next two relate to the data.db file. I plan to bring back the ability to iterate through the players stored, so that we can do things for all players stored, even on large networks.

I also plan to bring a feature to purge players in the data.db file if they haven't logged on after a configurable amount of time.

THANK YOU:
I thank everyone who's been using UltraColor. From those who's used it since 2020 to those just now using it for the first time. You're the reason why I kept going for so long. However, as some say, good things must come to an end, and I feel it's about time for the same for UltraColor.

I may publish again on the plugin market, but only time can tell.

Thank you again, everyone, and I'll see you soon!

-UltimateGamer200/Ultimation
----------, Sep 10, 2022

Note for 1.19+: Players may get disconnected when chatting for the first time with new hex/gradient selections. This is an issue on MC's side due to the new chat reporting system implemented by Microsoft. Until a fix is provided, please use V1nc3ntWasTaken's version of the NoEncryption plugin here.
  • Added | Support for 1.19.1 and 1.19.2.
  • Fixed | Added back the menu size options for gradient chat and name selection menus due to unintended configuration setup. Thanks, @Antrox for pointing this out.
  • Fixed | Database saving should now occur on plugin shutdown for any players online. Thanks, ItzRonaldMLG for reporting this!
----------, Aug 10, 2022

  • Added | New Dutch translation! Thanks, @SWaggDuck, for providing the translation! To gain this translation after updating, simply place "nl" as the Locale setting in your settings.yml file, and reload the plugin/reboot the server.
  • Removed | The menu size options for gradient chat and name selection menus. These options were removed because since these two menus are paged, the size is configured automatically based on the number of items needed to fit in the menu. Simply remove lines ~608 and ~615 in your messages file, so they aren't in the way.
  • Improved | Updated main library and some code cleanup.
  • Improved | The default gradient format prompt message has been modified to include all enabled formats instead of just all formats (including disabled ones). Inside your messages file, just make sure the "Format_Prompt" value under "Custom_Gradient" has the {format_options} placeholder to display this.
  • Fixed | The gradient format prompt still appeared, even with all formats disabled. Thanks, @Antrox, for reporting this bug!
I hope everyone is doing well! If you need any assistance, feel free to open an issue on our GitHub or DM me here.

Enjoy the update! :)
----------, Jul 21, 2022

IMPORTANT: This plugin was upgraded to a revamped version of the main library, so lots of improvements were made in code! You are encouraged to take a backup BEFORE updating!

Also, a note to point out: When you do update, there is one manual modification you need to do in your message file. Simply go in there, find Player_Reset_Color_Command_Success (~line 695), and add %type% in the text string. This placeholder tells which type of color has been reset (chat or name). It can be anywhere in the message but place it where it makes the most sense.

  • Major | Updated main library to a revamped version which has improvements in code.
  • Added | 1.19 Support! Thanks, @hrdu for helping test the plugin on 1.19 before today!
  • Improved | Removed Metrics class to use main library's bStats integration instead to avoid duplication.
  • Improved | You can now specify to reset a specific color type with the /ucolor resetcolor command. Thanks, @flavioope for the suggestion!
  • Fixed | Gradients were removed from display names when rainbow color was set.
Enjoy the update! :)
----------, Jun 26, 2022

Hello all!

I'm aware of 1.19 being released back last Tuesday, June 7th. As always with new major releases, some bugs make them not quite ready for production use.

So as a safety precaution, there is no exact date for when UltraColor will support 1.19 (hopefully in ~2-4 weeks, but no guarantees).

Please do not private message me asking when I'll provide 1.19 support or ask/tell me to provide it. Because the answer is that I'm already planning on it, but time is needed for 1.19 to become more stable.

Plus, I'm waiting for the developer of the main library the plugin uses to update to 1.19 and that may be later this month due to him being on an annual break.

I would appreciate everyone's patience and understanding as I try to provide support for stable versions.

Thanks, everyone and I'll speak with you again soon! :)
----------, Jun 10, 2022

  • Improved | Now you can use custom heads for menu items! Just specify "PLAYER_HEAD:texture link goes here" for your materials. The texture link MUST be a textures.minecraft.net link. You can pick heads from minecraft-heads.com which has over 43k heads to choose from! However, I must mention that the only menu item that can't have heads is the return button due to how the menu system with the plugin works.
  • Improved | Updated the library again to the latest stable version.
The release is also on GitHub like last time! Hope you all are doing well and enjoy the update! :)
----------, May 24, 2022

  • Fixed | Regardless of what Notify_Updates is set to, the update check still occurs. Thanks, @NoneFLP, for reporting this!
  • Improved | Updated the library to the latest version.
You may also download this update on GitHub by clicking here! Enjoy!
----------, Apr 20, 2022

MAJOR: As of now, the plugin is officially deprecated. Now only the following will be provided in once-in-a-while updates unless an emergency update is required:
  • Critical or Minor Fixes/Improvements
    • This means fixes or improvements that are minor or very important for plugin functionality and everyone. Support for software other than Spigot/Paper (like Forge, BeerSpigot, etc) isn't considered major. If you experience issues and you use this plugin on a server that isn't Spigot or Paper, please test the plugin on a Spigot/Paper first before requesting support. Otherwise, support won't be provided. This is explained more in the changelog.
  • Updates to newer Minecraft versions when able to be provided without major bugs.
  • Features that are critical or minor AND that benefits everyone. No major systems will be implemented, so please don't make those suggestions.
  • Anything else I deem that's considered essential.
The code is now also live on a new GitHub page, which can be found on the main plugin page here on Spigot. The old GitHub has been deleted and everything, excluding issues posted there, has been moved over to the new GitHub. Going forward, please use that, Spigot DMs, or the discussion page for support. The Discord is now archived and will be deleted sometime on March 16th/17th.

Thanks for everything everyone! I'll now be stepping back from this plugin for a while, meaning support will be provided when I'm able to provide it. But I won't officially leave everyone in the complete dark until the plugin reaches an end-of-life point, which is still undecided.

Thanks again, enjoy the update, and I hope to see you again one day!

Changelog:
  • Improved | On server startup, a check is now done to see if you aren't using Spigot or Paper, and Console warns you if that's the case. If that applies to you, you should test plugin issues on Spigot/Paper first before requesting support. Third-party forks other than Spigot/Paper are known to alter the plugin's behavior, which is why I'm now officially enforcing this. These forks should still allow the plugin to startup, but no promises of them working. You may/may not have to alter your server software if it stops working and you want to continue using the plugin. So you have been warned.
  • Improved | Some last code optimizations.
----------, Mar 15, 2022

1.18.2 should now be able to be fully used for this plugin! I got a response back and the NBTAPI update has been added for the current version of the library I use!

With that said, after you update to this version, you should be able to allow players to use the plugin's GUI menus again!

This should have been the only major issue on 1.18.2 for this plugin, but if there are any others, please let me know.

Enjoy the new version! :)
----------, Mar 11, 2022

NOTE: NBTAPI has been updated to include 1.18.2 support. HOWEVER, just updating/adding NBTAPI doesn't fix the current menu bugs with 1.18.2 for this plugin. An update for NBTAPI is required for the library I use. It's been done for the new version of the library, but that version is unadvised for me to use due to its groundbreaking changes still being a work-in-progress.

I would update the library, but doing so also means I'll have to change quite (and I really mean quite) a lot and I just don't have the time right now to do that. So for now, we must continue waiting. Full support for 1.18.2 may come after March 15th, but when it's able to happen, I'll get it out ASAP! I've sent an email to request the NBTAPI update be done for the current version of the library I use.

Thank you for being patient so far! At this time, I still anticipate dropping most plugin updates on March 15th at midnight central time. Please join the Discord as I'll be announcing there within 1-3 days about the plugin being open-sourced on March 15th, how you can continue supporting me, and what support will look like starting on March 15th.

Anyway, enjoy the update! :)

v1.5.3 Changelog:
  • Added | When a player chats and they no longer have permission for a chat/name color or format, the color/format gets removed from them. Thanks, MoG Gaming, for making this suggestion! I've done at least a fairly decent job of testing this, but please test this in case something is missing.
  • Fixed | Chat rainbow wasn't being displayed in chat in at least some cases.
  • Fixed | Converting name to rainbow doesn't always take into account of nicknames.
  • Fixed | %hex_color% was being shown in the hex color success message in the hex color prompt.
  • Fixed | Permission checking was incorrect for chat and name formats. Thanks, MoG Gaming for reporting this bug on the discord!
----------, Mar 11, 2022

MAJOR: If you must use this plugin on 1.18.2, please see this post as a major bug has been spotted with that MC version for this plugin that requires action from you: https://www.spigotmc.org/resources/ultracolor.85332/update?update=447644. Otherwise, I highly encourage going back to 1.18.1 until 1.18.2 is proven to be more stable. Everyone else staying on 1.18.1 and older, you're safe to disregard this note.
  • Added | ultracolor.command.gradientcolor permission for /gradientcolor command.
  • Improved | Using the hex color button in the menu now requires the ultracolor.command.hexcolor permission. The same is also for gradients, the only difference being its permission requirement is ultracolor.command.gradientcolor.
  • Fixed | %ucolor_colored_nickname% was returning none if the player didn't have a nick stored. The default player data values for nicks and colored nicks have been added back to this version! Thanks, Laust for reporting this on the discord!
  • Fixed | The colored nickname doesn't get updated when using /ucolor setgradient command.
----------, Mar 5, 2022

It came to my attention that the menus don't work when updating to 1.18.2. This is because of NBT-API errors that generate. To my understanding, these errors generate because of NBT changes the library I use isn't caught up.

I don't know when an update will be pushed to fix it. It may even be after March 15th. But until then, if you MUST use 1.18.2, please deny players from using the plugin's menus. Otherwise, if you're fine with going back to 1.18.1, please do so instead.

By denying players from using the plugin's menus, this means denying the following permissions for them:
  • ultracolor.gui
  • ultracolor.chatcolor
  • ultracolor.namecolor
  • ultracolor.command.gradientcolor (which will come out in the next update).
Players would then need to have permission for commands like /ucolor setchatcolor, which you can find in /ucolor perms. A new jar should hopefully be released within the next 2-3 days. Sorry for any inconvenience!
----------, Mar 5, 2022

NOTE: In case you didn't know, UltraColor will most likely no longer actively receive updates starting on March 15th at midnight central time. For more details, please see the Overview page.

Added | 1.18.2 Compatibility! The plugin enables fine, but please test before placing it on your server!
Added | Field in messages file to modify the unable to select format message in commands like /ucolor setgradient.
Improved | Some minor code improvements.
----------, Mar 4, 2022

Hello all!

So as said in the last update, there's an important announcement that would be posted here. This announcement is MAJOR as it relates to the foreseeable future of this plugin, hopefully in at least in some way positive.

This announcement is so big that I've typed it up in a google document because I can't fit it in this message. Plus, it needed some organization.

I highly (and yes, I really mean highly) encourage everyone to read the announcement in its entirety and ask questions if unsure about something. Because I've thought about this for at least a month or two now and I think it's time to officially announce it.

You can see the announcement by clicking here!
----------, Mar 2, 2022

IMPORTANT (PLEASE READ ALL CAREFULLY!): The new player data iteration/loading was causing issues with saving player names for 1.18 servers by adding an org.bukkit.configuration path instead of a clean string.

Until a patch is found (the duration is unknown), the old expiry map system has been brought back. While the bug doesn't exist for versions older than 1.18 (tested with 1.17.1 and 1.16.5), I have to bring this system back for all versions because it doesn't make sense to have two different systems for this. It's better and more efficient to have one system of this for all supported versions.

If you don't know what I'm talking about, or you're confused about what I mean by the expiry map system, please refer to this update here.

If you have any players that have the org.bukkit path as their display name, use the command: /ucolor forcecolor name <player> "none" (replace <player> with the username of the player). This should reset their display name to just either their username or nickname with no coloring.

Also, in about the next 1-2 days, stay tuned for an important announcement that will be posted here on the spigot page and our Discord. This will probably be one of the most important announcements for this plugin's history, so please keep an eye out!

  • Fixed | Default message_en file had a YML syntax error with its newest line addition (apologizes!).
  • Fixed | /ucolor forcecolor command wasn't showing any output to the command sender when forcing no name color on a player.
----------, Feb 27, 2022

IMPORTANT: A more permanent solution to iterate all player data has been implemented and been performance tested (the slowest response time was around 400-500ms with over 2k players stored)! As a result, the expiry map system will no longer be used to iterate player data. It's still in the plugin, but you don't need to worry about it much anymore.

Also, at midnight central time tonight (about 32 minutes from the time I'm writing this), will be my 18th birthday (February 24th)! If you want to wish me a happy birthday, feel free to!

Enjoy the update!
  • Major | A more permanent solution to iterate all player data as explained above.
  • Experimental | NashornPlus is no longer required if you're using 1.16 and newer instead of just 1.16.5 and newer. This hasn't been tested with 1.16.0-1.16.4 (only 1.16.5+ has been tested), so please test this feature before using it.
  • Improved | An optional format parameter has been added to the /ucolor setgradient command!
  • Improved | Made gradient and hex format messages in custom gradient and hex prompts customizable. Thanks, @RAPHAEL599, for bringing this to me on the discord!
  • Improved | Some code cleaning here and there.
----------, Feb 24, 2022

IMPORTANT: Inside your messages file, you'll need to make a manual change due to a new button being added to the name color selection menu that overrides the back button. Please do this AFTER you update!
- Navigate to the Back_Button section under "Name_Color_Selection_Customization" (line 572).
- Then, change the "Slot" to a number that doesn't override the Slot for the new button, "Reset_Format_Button". Make sure that the new slot entered doesn't override any other button in your menu and it fits your menu.
- Save the file and reload the plugin.
- The back button should now be back!

I hope everyone enjoys the update! Due to how big this update is, there is a Pastebin that explains the rest of this update further. There is also a chance I missed or overlooked something. So if you notice bugs in this update, please open a ticket on the Discord and/or GitHub!

https://pastebin.com/Sdnub23x
----------, Feb 3, 2022

  • Major | This update introduces an improved method of iterating all player data sections for the nickname system. This system is needed at least temporarily due to multiple servers having a large number of players stored that would cause them to crash.
    • This new system uses an expiring map that expires entries (which in this case, is player data for this plugin) created after 30 minutes to keep it fresh for those online (the duration may be configurable in a future update).
    • Therefore, this means fewer things to iterate, and less likelihood of your server crashing due to large iterations.
    • However, this does mean it won't support all players stored due to it only storing things up to 30 minutes before the entry is created again when needed.
      • It's an annoying con to some, I know, but it's what has to be done for now until I can find a better way to iterate large amounts of player data.
    • THIS DOES NOT PURGE DATA IN YOUR DATA.DB FILE AND NOTHING IS CHANGED TO IT WHEN UPDATING! ALL DATA IN THE FILE IS SAFE! This map is like an addon to the file.
    • Hopefully, this helps some of the larger servers using this plugin!
  • Improved | Added SpigotMC hub link for EventPriority in Chat_Listener_Priority settings option comments. This can help explain what the supported priority values are and what order they occur in!
  • Fixed | Some lore messages in /ucolor setnamecolor weren't being displayed correctly.
As always, feel free to reach out with questions and/or issues on our discord (preferred) and/or GitHub! :)
----------, Jan 19, 2022

  • Improved | /ucolor listnicknames command now only shows players with a nickname instead of all stored players. Thanks, ItzRonaldMLG for making this suggestion!
  • Improved | When iterating through stored players to find the player name to subsitute in for the nick in commands, players that don't have a nick are now skipped, along with not having a username stored like before when iterated on.
  • Improved | When not using a database when a player joins, the display name setting occurs asyncrously as similar to when using a database.
  • Fixed | Nickname was duplicated in /ucolor listnicknames if the player didn't have both a name color and format. Now it should tell you the nicked players along with their real names regardless of their selected colors.
----------, Jan 12, 2022

NOTE: I did say in the last update the next one may be big for 1.16+ (a major improvement for the gradient system suggested by a user back in November). However, some issues came with trying to implement it, which caused it to be delayed. No exact version for when this is planned to be released, but it will be kept a surprise until it's released or something else happens! Happy New Year's Eve everyone!

  • Added | Nickname toggle and purge options in settings.yml file! Please note that the first new option requires a server reboot when changed.
  • Improved | Updated main library.
  • Improved | You can now set a character limit for nicknames in your settings.yml file! Thanks, @JCJC for bringing this up!
  • Fixed | The command substitution for nicked players wasn't running on 1.8 because of it being ran asynchronously.
----------, Dec 31, 2021

NOTE: While I may have now been out of quarantine, support may still be limited through the Christmas holidays due to preparing for finals and spending time with family. Just a heads up, the next update may be a big one for 1.16+, but you didn't hear it from me! (xD)

  • Added | 1.18.1 Compatibility! This plugin seems to be pretty stable with this version, but do test on your servers in case I missed something.
  • Improved | Updated console filter to hide logging strings from the Log4j exploit thanks to main library update. Keep in mind, this plugin does its best, but it cannot offer you complete protection unless you update your server and Minecraft client. So you are advised to update your server if you haven't already! Your Minecraft client should update automatically unless you are using a hacked/modified client.
----------, Dec 16, 2021

NOTE: I decided to release the next update early due to the recent security advisory. If you have not heard the news, a security issue was found in log4j2, the logging library used by Minecraft. All servers (1.8.8-1.18 and maybe servers as low as 1.7/1.6) are advised to update their server jars.

If you use Spigot, please see https://www.spigotmc.org/threads/spigot-security-releases-—-1-8-8–1-18.537204/ for info on how to update.
If you use a different platform, please check their platform for information on this issue and whether or not they have a patch for your server version.

You are also advised to update your client as clients can be vulnerable to this exploit as well! If you use vanilla, just make sure you have your launcher/game closed and a patch should automatically be applied for you. Those that use third-party/modded clients or custom launchers should check for news about that cilent.

Support is still closed until December 10th @ 5 pm Central time. This is considered an urgent update that could not wait until after the pause.

Also, in case some people ask when this plugin will support 1.18: The main library I use for this plugin has updated to support 1.18, but I'm still waiting for 1.18 to be at least a little more stable before testing this plugin on that version (about 1-2 weeks at least).

Enjoy the update! All users are encouraged to update!

  • Improved | Removed plugin startup task of setting stored player names in data.db if they weren't already stored as server dumps were created when many users are stored. I forgot to mention this task was in the last update. This task was made to save convenience for both you and players. Now player name storage setting is done when a player joins your server to hopefully help prevent server dumps (meaning, when the player joins your server, we'll check if their current username is stored in their data section, and if not, update/set it in their data section). Thanks, tdvne for bringing this to my attention on the discord!
  • Improved | Some more code cleanup.
  • Improved | Updated Log4j Spring Cloud dependency due to recent exploit related to Log4j. Figured I would update the dependency related to it to be on the safe side.
----------, Dec 10, 2021

Hello all!

As many of you know, 1.18 is being released tomorrow, November 30th. With that being said, I have no estimate on when this plugin would support 1.18, but it will probably be once the version is proven to be reasonably stable and the main library this plugin uses is tested successfully on 1.18. So please be patient during this time.

In addition, my folks at home have been exposed to COVID, and I believe I've probably been exposed as well. In case I get an official order to quarantine, support nor updates will not be provided during that time (about 9-10 days) to allow for me to rest and recover.

Thanks for all your support and I hope to make it out of this soon!

- Ultimate
----------, Nov 30, 2021

NOTE: As the Thanksgiving holidays happen this week here in America, support may be delayed (definitely on Thursday). If you require support for this plugin, please use the Discord listed on the main page or open an issue on GitHub.

Going forward, you must be using the latest version of the plugin to gain support. This is because a lot of things have changed since versions like 1.1.2 (the oldest version I see being used currently) and I do not wish to continue supporting older plugin versions. Plus, this may probably make support a lot easier for all parties involved.

I'm also still looking for people to help with support in cases where I'm not able to give support to those who need it. If you're interested, please DM me on here or on Discord at Ultimation#1600.

Thank you and enjoy the update!
  • Added | /ucolor listnicknames command. You can get all the nicknames from either the server you're currently on or from all servers connected to your MySQL database! Thanks, ItzRonaldMLG, for making this suggestion!
  • Improved | Player nickname replacing in other commands now runs async to help reduce server lag. Thanks, tdvne for reporting this on the discord!
  • Improved | Code cleanup in /ucolor setnamecolor and setchatcolor commands.
  • Fixed | /ucolor forcegradient wasn't taking nicknames into account. Thanks, PapaWulf for reporting this bug on the discord!
----------, Nov 23, 2021

  • Improved | Made /ucolor forcecolor format parameter optional to match the format for other commands like /ucolor forcegradient.
  • Improved | Code cleanup in /ucolor forcecolor command.
  • Fixed | /ucolor forcecolor command was removing a player's displayed nickname.
  • Fixed | /ucolor forcegradient command gave invalid gradient message when including # in hex color parameters. Thanks CupKate for reporting this bug on our discord!
  • Fixed | /nickname command was returning NullPointerException in success message. Thanks CupKate for reporting this bug on the discord!
----------, Nov 9, 2021

Today at the time I'm writing this (October 30th, 2021 at 4:29 pm CDT) is UltraColor's 1st anniversary! At the time of this update (according to bStats page of this plugin),123 servers are using this plugin, with a variety of Minecraft versions (1.8, 1.12, 1.16, & 1.17), and the plugin has been downloaded over 2,400 times! I just want to thank each of you for using this plugin!

When I first released this plugin, I didn't think it would be this big. So thank you for all the servers that are using it, all the kind feedback given, all the suggestions made, all the bugs reported, and the donations made by a few of you!

In celebration of this anniversary, I've added some useful in-game commands to help server admins use this plugin better along with some other minor things! Changelog below here:
  • Added | /ucolor perms command. Useful to show all permissions for the plugin in-game without having to look at the Wiki!
  • Added | /ucolor debug command. This creates a zip file of your UltraColor folder which you can use to report bugs or provide more information about your setup (removes MySQL Database Details and other sensitive details)!
  • Fixed | Console errors were occurring when a player or nickname is used in commands (not too sure why this was occurring). Thanks, @Merlyn for reporting this bug!
  • Improved | Changed permission for /hexcolor, /nickname, /realname, /ucolor addallowedhexcolor, & /ucolor resetcolor commands to ultracolor.command.(command) for consistency for the rest of the command permissions.
Thank you again and happy early Halloween!
- UltimateGamer200
----------, Oct 30, 2021

  • Fixed | No permission message wasn't customizable for /chatcolor, /namecolor, /color, /hexcolor, /nickname, and /realname commands. Thanks, @LimitedGames for reporting this bug!
  • Fixed | Sender display name was reset accidentally if they were using the player argument in /nickname reset.
  • Fixed | If the player specified in other commands has a nickname, but they use their real user instead of their nickname, the command didn't use their real username. Thanks, @Merlyn for reporting this on GitHub!
  • Fixed | Bold lore was the same as italic lore inside the name color menu. Thanks, @IceSweets for reporting this bug!
As always, if you need support, our Discord is still open or you can make an issue ticket on GitHub!

You can join our Discord here: https://discord.gg/EuVaBkasbU

Enjoy the update!
----------, Oct 13, 2021

NOTE: I encourage all users to update to this version!
  • Fixed | NullPointerException was occurring on player join when applying a name gradient without format. Thanks to @Merlyn for reporting the bug!
  • Fixed | Formats weren't being applied when selected in custom name gradient prompt.
  • Fixed | Wrong type of gradient was being reset when using the /ucolor setgradient command.
  • Fixed | Nickname success message part, "successfully for %player%," was formatted with the set nickname. You can apply this fix by regenerating your messages file or adding a "&7" at the beginning of that part.
  • Fixed | Nicknames were purged when resetting name gradients.
  • Fixed | Database saving is also now done asynchronously to all online players when the plugin stops (eg. server reboot). Thanks, @LimitedGames for mentioning this!
  • Fixed | Nickname isn't used when using /hexcolor name command successfully.
  • Removed | Tabbing of nicknames in other commands besides /realname. This is because of extreme lag that's been brought to my attention and the tabbing couldn't be done asynchronously.
  • Improved | NashornPlus should no longer be needed if you're running on 1.17.1 on Java 15+. This has been thanks to the spigot native library mechanism I used in a previous update (didn't know this would also work for 1.17.1 too). For those running 1.17.0 or other versions on Java 15+, please do testing of this before putting it on a production server if you plan to take advantage of this. Those using a version older than Java 15 can continue doing what they have been doing. Thanks, @LimitedGames for helping test this!
  • Improved | The # is now optional inside gradient prompts inside /gradientcolor and /hexcolor. So now you can use the # if you wish without an error message!
  • Improved | Removed now unneeded data options for data.db file (this was the old chat and name gradient value options used before the 1.2.5 update).
----------, Oct 6, 2021

  • Added | Nickname system. This allows players to set their nickname with their stored name color to go along with it! PlaceholderAPI Placeholders for this system can be found on the main plugin page (same thing for permissions too). This can be done via the new /nickname command.
  • Fixed | Forgot to remove un-needed debug messages.
  • Fixed | NullPointerException was happening on player join while loading name gradients if the player didn't have a format for the gradient.
  • Improved | /ucolor forcegradient command now has format support!

And thanks to @Merlyn for reporting the following on GitHub!:
  • Fixed | Format wasn't being applied to gradient names when using /ucolor forcegradient command.
  • Fixed | Rainbow chat color wasn't being applied when having a different chatcolor via the /ucolor setchatcolor command.
  • Fixed | Gradients were not displaying on relog if you had another name color selected.
Hopefully, everyone enjoys the update! If you need support, our Discord is still open (we're still needing at least a person or two to join our support team, so I'm not the only one managing support)!

You can join our Discord here: https://discord.gg/EuVaBkasbU
----------, Sep 29, 2021

Hello all!

I'm currently at work with the next update (1.3.7) and one of the new things planned to be added to this update is nickname support (meaning, you can set nicknames while still keeping the name color you set). However, instead of just providing support for nicknames in plugins like Essentials and CMI, I have a different approach that I would like to get feedback on and see if it's something people would use.

With that said, it's another survey time (xD)! You can take part in this by clicking the Google Form below this update. This survey closes on September 14th at 7 pm CDT.

Thanks for now over 2,000 downloads! Hope you have a great day!

- UltimateGamer200

Survey: https://docs.google.com/forms/d/e/1FAIpQLSe4mnbXGBJQAei2vR8hTE3Q9xgUBz1rMQEF3owdRcZQPhqlbw/viewform
----------, Sep 8, 2021

NOTE: I'm back and feeling better now! With that said, hopefully, everyone enjoys the new update! A reminder that the discord created back 3 weeks ago is still open and I'm having thoughts of maybe keeping it. However, to do that, I'm still in need of staff members to help with support and moderation, and that is a big need going forward with this discord (not much of a staff team = not so good discord). So if you have interest in helping with it, join the discord below this update, and please visit the staff application channel for more information! Thank you!

  • Fixed | Placeholders in our PlaceholderAPI Expansion were just displaying the placeholders themselves on reload (eg. When reloading the plugin, a scoreboard just shows "%ucolor_chat_color_name%" instead of the chat color name itself).
  • Improved | Hex color whitelist system now has some translatable messages inside of your messages file under the Hex_Colors section!
  • Improved | NashornPlus is no longer required for 1.16.5 servers that have Java 15+! This is thanks to Spigot's native support for external libraries on MC 1.16.5. If you run your server on an older MC version with Java 15+ (such as 1.16.4 or 1.12.2), then you still need to use NashornPlus (download it from here: https://bitbucket.org/kangarko/nashornplus/downloads/).
  • Misc | Removed old pre-gradient converter made back from version 1.2.5 when our custom pre-defined gradients feature was released. Since about 75% of servers use a version that's at least 1.2.5, I see this converter no longer be necessary. For anyone that wants the custom pre-defined gradients feature going forward and hasn't upgraded to at least 1.2.5 yet, you would need to update to that version first, and then update to the latest version.
UltraColor Discord: https://discord.gg/EuVaBkasbU
----------, Sep 1, 2021

NOTE: Due to a family member of mine passing last Wednesday, I'm taking from now until this next Thursday off work on this plugin. Support will also be closed/delayed on both our discord and GitHub for this duration. I'm also taking this time off to get back into the swing of things with school as I returned last Thursday. Thanks for now almost 1.9k downloads! You guys are awesome!
  • Improved | Gradients now have format support!
  • Improved | Minor optimization applied to chat listener.
  • Improved | Updated main library by multiple versions.
  • Improved | Menu Information title on Menu info buttons can now be translated and modified! Thanks, Zz-886 for mentioning this suggestion on GitHub!
----------, Aug 21, 2021

NOTE: I didn't get any applications from the application mentioned in the last update, however, the discord I believe is ready for public use and I still want to give it a try. So I'll be seeing how this discord does for 1-4 weeks. If things go well (including getting staff members to help run the place in case I'm not around, which is a big need), this discord may most likely stay! So if you have a Discord account and have interest in joining our new discord, please feel free to do so with the Discord invite link below this update!

If things go well with the discord, it may also be the only way to get support for the plugin in the future to ease things a bit. Thanks to all who suggested this idea and I hope everyone who joins the discord enjoys it and has an interest in helping it out!

Also, thanks for now over 1,800 downloads! Enjoy the update!

Improved | Rainbow name and chat colors now have format support!
Improved | Code optimizations in /ucolor forcecolor command class.
Improved | Main library updated.
Fixed | NullPointerException in some cases was occurring when using color name placeholders with PlaceholderAPI.

UltraColor Discord Link: https://discord.gg/EuVaBkasbU
----------, Aug 11, 2021

NOTE: After receiving only one result from Part 2 of the UltraColor Discord Survey (which was pretty convincing), a construction for discord is under away! Not many things are left, so I'm hoping to release this discord sometime next month! However, before I do release the discord, a public discord does need its staff team to help keep it afloat. So there is an application, where you can apply to be a Moderator or a member of the Support Team. As a reminder, this discord is not only for plugin support for UltraColor, but also a nice community to talk and make suggestions about the plugin, meet others who also use the plugin, and more!

You may view the application here! Requirements and tips are also included! Hope to see some interest and as always, enjoy the update! Thanks for 1,700 downloads! Ya'll are awesome!

  • Improved | {color_preview} now supports pre-defined gradients inside the chat and name gradient menus. To do this, use this placeholder in any of your gradient yml file's lore section inside your pre-defined-gradients folder. Example here.
  • Fixed | Italic name format preview used bold formatting instead of italic.
----------, Jul 30, 2021

NOTE: This update changes the allow certain hex colors feature by being able to specify a required permission for the allowed hex and what type of hex (chat, name, or both) it applies for. To add certain hex colors to be allowed, use the /ucolor addallowedhexcolor command to add that certain hex code to the list of whitelisted hexcodes. When used successfully, the settings file will automatically update the "Allow_Only_Certain_Hex_Colors" option to true and reload the plugin if that option was false before the command was used.

If you're using the allow certain hex colors feature, you are highly encouraged to backup your settings file BEFORE UPDATING as updating will remove the old section that lists the allowed hexes.

If you're not using the above feature or hex colors, nothing is needed from you, and you should be able to update to this version safely!

Hope everyone enjoys the update!

  • Improved | "Allowed_Hex_Colors" option has been moved to its own data section outside the settings file. For more information, read above. Thanks, @Felixx61 for this suggestion!
  • Improved | Updated main library.
----------, Jul 27, 2021

  • Added | {color_preview} placeholder is now available to be used in the main chat/name color menus. You can add this placeholder to each of your color customization sections in your messages file. This only supports regular chat and name colors (including rainbow) at the moment! Example attached below this update message. Thanks, @ColdSight, for providing this idea!
  • Improved | Compatibility for 1.17.1 has been added.

{color_preview} Example with one of the message files
----------, Jul 17, 2021

Shout out to Zz-886 for reporting these two bugs on GitHub!:
  • Fixed | Name gradients weren't able to be reset.
  • Fixed | ArrayIndexOutOfBoundsException was given when trying to open any of the sub-gradient menus. To fully fix this bug, you need to go into your messages file and make sure all the buttons (except for next/previous buttons) are in slots that don't go over your size. For instance, if your name gradient menu size is 9, you need to make sure your menu items (you can leave page buttons where they are) have a slot between 0-8 and don't have the same slot number (for instance, if the return button in the chat gradient menu has a slot of 0, don't change any other button slot to 0 in that same menu, otherwise it'll override the return button).
Bug found by me:
  • Fixed | A player's name gradient was still displaying after reset.

Also, the Discord survey from my last announcement is still open until July 10th at midnight central time. I encourage everyone to give their thoughts on it because I'm planning to make this Discord a thing if I get interest from at least a couple of people (either general interest or interest in being a support member or staff)! Plus, I haven't seen any responses at all, and I want to make sure support can still be provided if it comes to a point where I need people to help with plugin support. You can find it here!

Enjoy the update!
----------, Jul 7, 2021

NOTE: If some of you remember, back in February, I asked for thoughts about having a Discord server for UltraColor. I originally started work on it back a while ago, but then backed out because fewer people asked for support to make it feel needed. However, recent inspiration came to tell me to come back and make one for UltraColor. Plus, as a co-owner and lead developer of a soon-to-be-released minecraft network (and as someone a part of student leadership at my high school), I may eventually not have time to manage support just by myself.

That's why I'm making a part 2 survey to the survey made last February. To make this happen, I'll need people to volunteer to be support team members and people to help moderate the discord to make sure things are clean and everything is safe and fun!

I invite everyone to take the survey here! The survey closes on July 10th at midnight central time.

Thanks for now over 1,400+ downloads and enjoy the update!

The below are thanks to @ColdSight:
  • Improved | You can now modify the size of the /color GUI menu in your messages file.
  • Improved | You can now disable the name and chat formats in the settings.yml file.
  • Improved | You can now modify the slot of the Menu Information item in the main menu in your messages file.
  • Improved | You can now disable each name or chat color in your settings file.

  • Improved | The next and previous page button slots and menu size in the subgradient menus can now be customized inside your messages file. Please note that the next and previous page buttons will only show if a subgradient menu can't fit all the gradients on one page automatically and if the slots are valid! Thanks once again to @Antrox for making this suggestion!
----------, Jul 2, 2021

NOTE: This update primarily restores UltraColor's code to Java 8 due to issues using the latest version on Java 8 with UltraColor being coded for Java 11. The idea of updating UltraColor to Java 11 was my bad due to the fact the majority of servers still use Java 8. I do apologize for these issues. I originally did this to be prepared for support for 1.17 but didn't realize what the majority of servers still use. So now I plan to keep UltraColor's code to Java 8 until the majority of servers go to a newer version of Java or something else happens. Those using Java 8 should now be able to use this version of the plugin and newer versions in the future!

If you're using 1.17 with the plugin, please still stay with Java 16 because as far as I'm aware, that's still a requirement for 1.17 servers. For everyone else (1.8-1.16.5 servers), feel free to use this plugin on Java 8 once again if you wish to!

  • Major | Reverted UltraColor's code to Java 8 due to issues with the majority of servers not being able to use the latest version. For more information, read the note above.
  • Improved | In the sub-gradient menus, the custom and reset gradient button slots can now be customized by going to your message file and finding the slot options inside the Gradient_Color_Selection_Customization. Thanks, @Antrox for this customization suggestion!
----------, Jun 26, 2021

  • Added | 1.17 Compatibility! Testing has seemed to prove this plugin is stable on 1.17, so full support for 1.17 is now here, starting with this version!
  • Improved | Code cleanup in the normal name and chat color GUI menus.
  • Improved | The return button in the main gradient menu can now be customized by modifying its material type, name, lore, position, and whether or not it's enabled! Thanks, @Antrox for making this suggestion!
  • Fixed | Info button in main gradient menu was still showing when set to be disabled. Thanks, @Antrox for reporting this bug!
  • Fixed | The name placeholders were sometimes inaccurate when telling the player they didn't have that type of color. They also had a hard time showing that a player had rainbow colors.
  • Fixed | /hexcolor command wasn't removing gradients and rainbow colors the player previously had.
----------, Jun 24, 2021

  • Major | Updated code to Java 11. If you use Java 8 on this version and your Java version causes issues to this plugin version, you may want to stay on 1.2.5 until you update to at least Java 11.
  • Improved | Updated the main library.
  • Improved | Changed the gradient generation to the one used in the main library to make things easier code-wise.
  • Improved | The name and chat gradient menu items in the main gradient menu can now be customized in your messages file. Thanks, @Antrox for making this suggestion!
  • Fixed | Info button in the main gradient menu did not change (just in case some servers had this bug). Possible bug reported by @Antrox.
----------, Jun 23, 2021

As we are all aware, part one of the Cave and Cliffs update (1.17) has been released last Tuesday. Don't worry, I have not forgotten about this plugin and plan to make another update soon.

In terms of when this plugin will be 1.17 compatible is not an exact day at the moment. I'm currently waiting for the developer of the main library the plugin uses to update to 1.17 and that may be till after the 4th of July holidays due to him being on an annual break. Testing will also be needed to make sure everything works on 1.17 and that will likely occur once the library mentioned previously is updated and 1.17 becomes stable to use. So the 1.17 update for this plugin may come sometime next month (1.17 also still requires to use Java 16, so this is also another notice to update to Java 16 if you plan to use 1.17).

In the meantime, if you remember back in March, I gave advanced notice about updating UltraColor's code to Java 11. I'm now planning to update UltraColor's code to Java 11 in the next update. That means if you're using Java 8, you might want to consider updating to at least Java 11 because I can't guarantee the next update will be compatible with Java 8.

That's all for now! Hope everyone is doing great and I look forward to speaking to ya'll again soon!

- UltimateGamer200
----------, Jun 15, 2021

NOTE: A decent amount has changed with the gradient system, so if you are using the gradient system, I highly encourage you to backup your UltraColor plugin folder/s BEFORE updating. The major change with gradients is that pre-defined gradients can be created by admins and the ones offered before this version are removed unless you manually add them in (zip file download is below this update).

In addition, when updating at least this version for the first time (up until maybe 5-10 versions down the road), those using a pre-defined gradient offered in previous versions will have their gradients converted to a stored custom gradient to save some time for both players and admins. This will be done on plugin startup for everyone stored in the player cache if they have the old pre-defined gradient color data type.

With that all said, enjoy the update!

  • Added | Ability to create your own pre-defined gradients for players to use. See more information about this feature from here.
  • Added | "Debug" option in settings.yml. You can use this to debug certain parts of the plugin (currently, only mysql) and that can help determine issues to potential bugs (note that when changing this option, a server reboot may be required).
  • Improved | Added specific rainbow color disable options in settings.yml. Instead of just having one global disable option, there are now 2 disable options: one for rainbow chat color and another for rainbow name color.
  • Improved | Add format support for hex colors. To add format to hexes, just specify the format to use in the /hexcolor command! Format support for gradients and rainbow colors may be added in the future!
  • Improved | Chat color name placeholders now display the format of non-hex/gradient chat colors if applicable instead of just plainly displaying the name.
  • Fixed | "/#flip" was displaying in the console.
  • Fixed | Color name placeholders weren't displaying the format the player has while he has a color as well (eg. chat color was displayed instead of chat color and chat format).
Previous Pre-Defined Gradients Download (just download the zip and put the folder inside the zip file into your UltraColor plugin folder and then reboot your server)
----------, May 25, 2021

Development of v1.2.5 has begun for UltraColor and the version is planning one of UltraColor's next possible intermediate features: the ability to add your own pre-defined gradients for players to use! This has been a suggestion a while back from a fellow user and now I've had thoughts of adding this into the plugin.

Before this gets released and more gets added to it, I need to see an estimate of how many people would be interested in using it. You may find a survey here to give your feedback on this feature being a possibility! The survey will be open until Saturday, May 22nd at 8 pm Central time, so make your response while you can!
----------, May 19, 2021

It's been brought to my attention that Mojang has upgraded Minecraft to Java 16 in its latest snapshot this morning. Due to this, it's now my plan that when 1.17 is out, UltraColor's code would be upgraded to Java 16. This means not only you may have to update to Java 16 to continue using UltraColor, but you would also have to update to that Java version if you plan to update to 1.17 when it officially releases.

Fortunately, UltraColor already secretly supports Java 16, thanks to the NashornPlus plugin and library it uses. Just make sure you're using at least version 1.2.2 of UltraColor and get the NashornPlus plugin installed from here and you should be able to use UltraColor on Java 16!

Hope all is well!

- UltimateGamer200
----------, May 12, 2021

NOTE: So some news about compatibility with InteractiveChat ( https://www.spigotmc.org/resources/...-chat-keywords-bungee-velocity-support.75870/) and ProtocolLib v4.6.1. I did some testing before releasing this update with InteractiveChat v3.3.0.11 and ProtocolLib v4.6.1, and while testing with chat gradients, I no longer noticed the weird <> code by the chat messages. I don't know what exactly I did if ever I did anything, but if you are still facing this issue, try updating to this version of UltraColor and update InteractiveChat to v3.3.0.11. You also might try updating your server software version as well (not like the mc version, but updating to the latest version of Spigot or Paper for your mc server's version for instance).

If the above doesn't fix the issue, then, unfortunately, you may have to change InteractiveChat with something else, because it's the only chat plugin I've seen to have issues with this, and I have no other ideas on how this could be fixed.

Thanks for 1k downloads! Enjoy the update!

  • Improved | Updated main library to the latest version.
  • Improved | Removed unnecessary code on startup.
  • Improved | %ucolor_chat_color_name% and %ucolor_name_color_name% placeholders now show a pre-defined selected gradient like how we do with custom gradients (basically, just showing "this" colored with the selected gradient).
  • Fixed | %ucolor_chat_color_name% placeholder wasn't showing the correct gradient when changed.
----------, May 2, 2021

  • Fixed | The %ucolor_name_color_name% and %ucolor_chat_color_name% placeholders displayed what custom gradient the player had in a weird format.
  • Fixed | Default "Hex_Color_Error_Message" messages in message files were inaccurate.
  • Fixed | %ucolor_name_color_name% and %ucolor_chat_color_name% placeholders weren't showing "Rainbow" if the player has rainbow color.
  • Fixed | Chat rainbow color wasn't being removed when selecting pre-defined gradients.
  • Improved | Reduced success message delay from 0.65 seconds to 0.5 seconds in /ucolor forcecolor command.
  • Improved | Update notifier now notifies you or those with op or "ultracolor.notify.update" permission if there's a plugin update in-game.
----------, Apr 28, 2021

NOTE: This version brings support for Java 15 and newer! However, to use this plugin on Java 15+, you must install another plugin called NashornPlus. This is because, in Java 15, Java stopped shipping the Nashorn engine by default. This engine is used for JavaScript code in the plugin and NashornPlus simply provides that same engine for those using Java 15+. You may find the link here to download the jar file! The link is also on our main page and wiki!

If you're running your server on Java 14 or lower, then you can continue using the plugin as you have been.

Enjoy the update! :)

  • Improved | Reduced the database loading delay from 2 seconds to about 1.25 seconds. Unfortunately, this cannot be much lower in case joining is quicker. Thanks, @IceSweets, for making this enhancement suggestion!
  • Fixed | Most of the localization messages were incorrect in the in /ucolor setnamecolor command.
  • Fixed | /ucolor setnamecolor was resetting chat rainbow colors instead of name rainbow colors.
  • Fixed | Chat format permissions were being checked in the /ucolor setnamecolor command.
----------, Apr 13, 2021

NOTE: It was brought to my attention by @Antrox that there's a rather annoying bug with gradients when using ProtcolLib v4.6.1 and InteractiveChat ( https://www.spigotmc.org/resources/...-chat-keywords-bungee-velocity-support.75870/). The bug is that a chat message is being displayed with a <chat=some weird code> after the message (and we've been trying to come to a fix for this for a couple of weeks now, which is the reason why I delayed this update). We believe the bug is caused by Paper's fairly new Adventure library. For the time being, I ask that if you encounter this bug (or something very similar to this), please DO NOT report it to us as we don't know a fix to this at this time. We already notified ProtocolLib's team and we hope to bring a fix soon!

  • Improved | If a player has no chat/name color, the %ucolor% color name placeholders will now display them as "None" instead of being blank.
  • Fixed | Name formats weren't being displayed for the name color placeholders. Thanks, @LimitedGames for reporting it!
  • Fixed | Wrong message section was used for error messages and menu size in the Name Color Selection GUI.
  • Fixed | Name color lore for the main GUI was merged onto one line. Thanks, @IceSweets for reporting it!
----------, Apr 10, 2021

  • Added | PlaceholderAPI Intergration. Avaliable Placeholders:
    • %ucolor_chat_color% - Displays the player's selected chat color (This placeholder is intended for chat formatting for those who need it).​
    • %ucolor_name_color% - Displays the player's selected name color (This placeholder is intended for chat formatting for those who need it).​
    • %ucolor_chat_color_name% - Returns the player's selected chat color name (Use this placeholder to show what chat color a player has, for example, in a scoreboard or tab).​
    • %ucolor_name_color_name% - Returns the player's selected name color name (Use this placeholder to show what name color a player has, for example, in a scoreboard or tab).​
  • Added | Option to modify the error message prefix in the settings.yml file.
  • Added | Option to disable Rainbow colors if your use of PlaceholderAPI Intergration doesn't work well with them.

The below items are thanks to @IceSweets for suggesting and reporting!
  • Added | Option to disable the info button in the GUI menus. You can find this option in each of the GUI customization sections in the message files.
  • Added | Option to modify the success message prefix in the settings.yml file.
  • Improved | You can now use multiline text on the chat and name color items in the main color selection GUI.
  • Improved | You can now set the material type of info buttons for GUI menus in the settings.yml file.
  • Fixed | Bold chat format lore wasn't displaying in the GUI menu.
  • Fixed | NullPointerException occuring when specifying the "none" format argument for names in /ucolor forcecolor.

Hope everyone enjoys the 1.2 update! Thanks for 800 downloads! Ya'll are awesome!
----------, Mar 23, 2021

Howdy, everyone! Development of the 1.2.0 update has begun and one of the new features planned is PlaceholderAPI Integration. However, there is one issue I'm stumbled on (not displaying rainbow colors if the player has selected it) that's caused me to reach out to ya'll to help decide how PlaceholderAPI Integration would work for UltraColor. I'll leave this survey open through March 20th. If you want to give your thoughts (especially those who want to use the integration and those who suggested this feature), then you may fill out the survey here!

As always, you have the option to submit your responses anonymously if you wish to do so!

Hope everyone is doing well!
----------, Mar 12, 2021

NOTE: This is a little advanced notice that starting when MC version 1.17 is supported for UltraColor, I'm planning to upgrade UltraColor's code to Java 11. This means those using Java versions below Java 11 may not be able to use the plugin unless they update. This is because of Paper's plan to depreciate Java 8 once MC 1.17 is released due to finding Java 8 as a legacy version. If you're currently using Java 11 or newer, nothing is needed from you, but I'll be posting another announcement once 1.17 is out about when this version bump would take place. If you're not using Java 11+ at the moment, don't panic, because this isn't final and I've seen Java 11 servers handle UltraColor decently (FYI, UltraColor is currently coded with Java 8). However, do keep a lookout in the next 2-4 or so months for more information.

  • Added | /ucolor forcecolor command where you can force any solid color (even hex's) to a player's name or chat, regardless if they are online or not!
  • Added | /chatcolor and /namecolor commands for those who want more control over what types of colors players can have. If you still want players to access both name and chat colors, then make sure they have "ultracolor.gui" permission. If you want players to access either chat or name colors, then use "ultracolor.chatcolor" or "ultracolor.namecolor" depending on your needs. Thanks, @IceSweets for suggesting this feature!
  • Improved | /ucolor forcegradient now works for players who are both online and offline.
  • Fixed | Name formats weren't being displayed if the player didn't have any name color.
  • Fixed | IllegalArgumentException occurring when a player tries to set their chat/name color to a hex.
  • Fixed | Display names weren't being reset for online players with /ucolor resetcolor command.
----------, Mar 12, 2021

NOTE: I've looked at the latest survey about having a discord server for UltraColor, and it looks like only one person has responded to it. I've decided to extend the close date to now this upcoming Thursday at 8 pm CDT to possibly get some more responses. You may access it here and it's completely optional!

Enjoy the update!
  • Improved | When someone enters an invalid custom gradient, we now tell the player that the entered gradient was invalid.
  • Improved | When using the /ucolor forcegradient and /hexcolor commands, as well as the gradient prompts, you are no longer required to put a # at the start of each hex color you want to use. This should finally at least reduce the number of times the console displays weird hex colors.
  • Improved | With the /ucolor setchatcolor and setnamecolor commands, a solid color is no longer required. You just need to put "none" for the color argument and then supply the format after that!
  • Fixed | Some color picking doesn't get changed (for example, changing from a gradient to a solid color).
  • Fixed | MySQL sometimes wasn't loading all data accross synchronized servers. Thanks, @IceSweets, for reporting this!
  • Fixed | When assigning just a chat format via the Chat Color GUI, the chat format doesn't display.
  • Fixed | When trying to reset gradients via the /ucolor setgradient command, the player display name doesn't change.
----------, Feb 23, 2021

NOTE: This update contains a fix to a bug that was on the last update due to the code improvement I did. This bug has been reported by a fellow plugin user of UltraColor, who has wished to be anonymous. Thanks again for your help!

If you are using the 1.1.6 version of the plugin, I strongly recommend updating to this version!
  • Fixed | NullPointerException occurred when someone did /color and /gradientcolor.
----------, Feb 17, 2021

NOTE: Over the next few updates, I'll be working on making improvements to this plugin to make the use of this plugin better than it already is! If you have any suggestions on any improvements you want to see, feel free to reach out to me either on my spigot profile or on Discord via Ultimation#1600.

Speaking of Discord, I've been having some thoughts of having a discord server for this plugin, not only for support purposes but also for those who use the plugin to have a place to talk to with other plugin users, in a toxic-free, friendly environment. I am collecting thoughts on those who may or may not be interested in something like this, so if you do want to give your thoughts about this, please visit this to do so! I'll be leaving this open for the rest of this week to give everyone enough time to participate if they wish!

Anyways, enjoy the update!
  • Added | Option to modify display items for the Chat and Name Color buttons in the main color GUI menu. This can be found in the settings.yml file.
  • Added | Option to modify display items for the Chat and Name Color buttons in the gradient color GUI menu. This can be found in the settings.yml file.
  • Improved | Removed over 50 lines of unneeded code.
----------, Feb 16, 2021

NOTE: I can now confirm this plugin works fine in 1.16.5, just as I expected. So feel free to use this plugin on 1.16.5 if you haven't already!
  • Added | MySQL Support (This one is for you, networks!). You may configure the database settings via the settings.yml file. You can read more about this feature in the new MySQL section of the Wiki.
  • Added | /ucolor forcegradient (name|chat) (player) (color1) (color2) command for admins to force custom gradients on other users. Thanks, @xScriN_ for suggesting this feature!
  • Improved | Non-custom gradients have been recoded again to show about the full gradient effect if the username or message length is greater than two characters.
  • Fixed | When setting new chat colors via the /ucolor setchatcolor command, they don't change.
  • Fixed | When setting name colors via the /ucolor setnamecolor command, it tells the chat color changed instead of name color.
  • Fixed | When setting new chat gradients via the /ucolor setgradient command, they do not show.
  • Fixed | Gray chat color sometimes being applied when not intended via /ucolor setchatcolor command.
  • Fixed | Name colors sometimes do not get reapplied when rejoining.
As always, feel free to report any bugs you encounter either through the Spigot Discussion Page, Spigot PMs, or GitHub! Enjoy!
----------, Jan 30, 2021

  • Added | Bypass permission (ultracolor.bypass.hexlimits) for players to bypass the hex color limits if enabled.
  • Fixed | Hex colors do not get added to the player at all unless the only allow certain hex colors option is enabled.
I'm also aware of the new 1.16.5 update that came out recently. You should be able to use this plugin with 1.16.5 since it is a minor update only fixing crash exploits in vanilla, but just to be safe, be sure to back up your UltraColor data folder so you can safely restore data if something goes wrong! I'll make another announcement if this plugin is for sure clear to be used on 1.16.5, so stay tuned!

I'm also planning for the next intermediate features in the next release: PlaceholderAPI Integration & MySQL Support! MySQL Support may be useful for those using the plugin on their network and this can always be disabled or enabled in the settings file. PlaceholderAPI support may allow users to see more easily what chat/name colors they have, for example, in a scoreboard or tab. To see how many people would use these things, I've attached another survey which will help to see if these would be worth implementing. I'll leave it open for 3-4 days to allow everyone the chance to take it!

Anyway, enjoy the update!

Survey Link (click-me)
----------, Jan 16, 2021

  • Added | If the CMI plugin and name colors are enabled on your server, we can now look in your CMI config file and check if the Change value in DisplayName is true, just like we do with EssentialsX.
  • Fixed | When selecting the rainbow color in the Name Color GUI menu, it also selects it as the player's chat color.
NOTE: If players have selected rainbow colors, they may have to reselect them when updating to this version. Sorry for the inconvenience!

Thanks for 400 downloads! Happy New Year!
----------, Jan 5, 2021

  • Added | Fill buttons in the main color, name, and chat GUI menus and the option to set what item they are like in the Gradient Menu in the settings.yml.
  • Improved | You can now customize the info message in the main color selection GUI menu in your messages file.
  • Improved | You can customize the slot numbers in the main color selection GUI menu in your messages file.
  • Improved | Moved the slot option help to the top of each message file to reduce the lines involved in each file (about 90 or so lines removed from each file!)

Just replace the old jar with the new jar and the settings.yml and your message files should update automatically!

Have a safe a n d happy Christmas holiday!
----------, Dec 24, 2020

  • Added | You may now select to have your username or chat be in rainbow colors via the color menu and command!
  • Added | Gradients can now be used in chat!
  • Added | You can now also select name, chat, and gradient colors via a command instead of just their GUI menus! This feature is very useful for players who use apps such as MineChat and cannot use the GUI menus to set their colors. You may find these commands on the Wiki or the main page. Thanks, @tigertmjv for the idea!
  • Added | Option to set what hex colors can be used via settings.yml. The idea is also provided by @tigertmjv!
  • Fixed | Gradient menu title, info, and size options do not change when modified in messages.yml file.
  • Fixed | Strikethrough chat format success message does not change when modified in messages.yml file.
  • Fixed | Chat and name formats, as well as custom gradients, weren't able to be reset with /ucolor resetcolor.
  • Fixed | Pink-Purple and Orange-Yellow gradients weren't being applied on player join to those who selected them.

Permission nodes for rainbow colors, gradient chat, and name, chat, and gradient set commands can be found on the main page or the Wiki. Hope ya'll enjoy this update as this took quite some time to put together!
----------, Dec 12, 2020

Hello everyone! I've started the development of the 1.1.1 update, which is planned to be the biggest update since UltraColor's first launch! This update may include things such as commands to select colors, rainbow colors, and some sneaky bug fixes as well. Progress is going great so far and I'm looking forward to everyone seeing it!

However, I need to hear from ya'll about one addition I may add to the upcoming release, and who all may be interested in testing or translating the update. To do that, I've attached a survey everyone can take that'll be open for the next 2-3 days. You may find the link below this post. You may choose to submit your responses anonymously if you wish to!

Hope everyone is doing well!

Talk soon,
UltimateGamer200

SURVEY LINK: https://docs.google.com/forms/d/e/1FAIpQLSfU9YKW-X7XTGpC6Mfda1Jhpo65h7U9RxjKZIEdOz1iWnqKuw/viewform
----------, Dec 1, 2020

NOTE: This is a bug fix update for those using version 1.0.9! So if you use this version of the plugin, you are strongly encouraged to update to this version!

  • Fixed | JavaScript error on startup caused the plugin to disable. Please read below for more information. Thanks, @Antrox for reporting the bug!
MORE INFO:
If your messages file was changed when updating to 1.0.9, for example, a new section was added, and you notice any {hex_color} or {player} parts in the messages file, this section is for you. When you add the new jar file, you'll need to go into your messages file and change all of the {hex_color} to %hex_color% and all of the {player} to %player%. When you've done that, and you got the new jar added to your server, reboot the server, and the bug should be fixed.

Also, this update was originally going to be a big update with quite some additions, but that will now be saved for the 1.1.1 update! So please expect more time to be given on this upcoming update. Also, thanks so much for 200 downloads! Ya'll are awesome!
----------, Nov 27, 2020

  • Fixed | Gradient color reset did not support custom gradients. This is fixed in this update!
  • Improved | You can now modify the messages that appear when a hex color is officially set, when hex color has less than 7 characters when colors reset, and more in the messages file!
  • Improved | Made hex color messages it's own section in the messages file (read below).

You may see an error in the console telling you it failed to create a new file unused/plugins\UltraColor\localization\message file.yml. This happens because of the Hex_Color_Unsupported_Message setting being moved to a new section in the messages.yml file. I want to assure you that the plugin still enables and is still stable, and the messages file still updates for you. This error should also only occur once when updating to this version. After updating is successful, you can delete the unused folder if you wish to.

Enjoy the update!
----------, Nov 27, 2020

  • Improved | Updated the main library we use for the plugin to the new latest version.
  • Improved | Custom gradients now show as TRUE gradients! Thanks, @Antrox for pointing this out!
A demo image is shown below creating a red to orange gradient username gradient! Enjoy!
[​IMG]
----------, Nov 24, 2020

  • Added | Ability to customize the messages that display when gradient and hex colors aren't supported in message files.
  • Added | Option to modify the priority of the chat event we use to format the chat in settings.yml.
  • Improved | Recoded non-custom gradients to have fewer lines of code involved (over 500 lines of code removed!). This may help with making features like chat gradients possible (not guaranteed, however!).
I've also added a section on the plugin home page for servers that use the plugin! If you use UltraColor on your server and want it to be featured, contact me. You may need to show proof you have the plugin before I add it to the list. Have a great weekend!
----------, Nov 21, 2020

NOTE: This is an update that benefits those using the plugin on ALL Minecraft versions that are supported! Therefore, I recommend updating to this version!
  • Added | Ability to have custom gradients with two hex colors. Option selectable in the Gradient GUI menu via /gradientcolor! Thanks, @Antrox for making this suggestion!
  • Added | Option to disable Hex and Gradient colors in settings.yml. If you change these, you'll need to reboot your server for them to take effect!
  • Major Improvement | An attempt is now made to save # comments in settings.yml and message files as of this version when these flies update!
  • Improved | Added starting customization for the gradient GUI menu and messages.
  • Improved | Clarified the # comment for Notify_Updates in settings.yml.

Because the # comments can now save, and testing has proven this, you are no longer required to make manual changes to your settings.yml and message file. Just add the new plugin jar and let the plugin update the files for you automatically! Enjoy the update!
----------, Nov 14, 2020

I know I don't normally post stuff like this, and this has nothing to do with UltraColor, but this is important.

Yesterday, November 6th, 2020, a developer I've known for about 2 years, named Paul, also known as TechsCode, has passed away. He was the developer of plugins such as UltraPermissions, UltraCustomizer, and UltraRegions, and was one of the best-known developers in the Spigot community. I've been using his plugins for about 2 years now and they were truly unique from any other I've seen.

I may not know him in real life, but he has served a great purpose in the community and I will truly remember all the work he's done.

One of his real-life friends has created a fundraiser to collect the funds for his family to hold a funeral. Please join me in sending funds if you can. Any amount can help and would mean the world to us all.

He may not live in-person anymore but will live in our hearts.

The link to support Paul's family: https://paypal.me/pools/c/8u7FuUISz3
The link to the newspaper article: https://bit.ly/36cHNHD
----------, Nov 7, 2020

  • Fixed | Slot and Size keys in default messages_it.yml, messages_fr.yml, messages_es.yml, and messages_de.yml files reported as malfunctioned due to the default value not being a number. This has been fixed in this update (thanks @_xXAndre50Xx_ for reporting the bug).
  • Fixed | Missing Info_Message key in default messages_it.yml, messages_fr.yml, messages_es.yml, and messages_de.yml files in sections Chat_Color_Selection and Name_Color_Selection.

If you do not use the English locale/messages_en.yml file and are on 1.0.4, you are strongly encouraged to update. I've uploaded the default message files for Italian, German, French, and Spanish below if you need an example of what these files should look like structure-wise. I apologize for the inconvenience!

----------, Nov 5, 2020

Note: This plugin is now fully stable to use on 1.16.4 as of this version! I appreciate your patience as I go through the process of making sure the plugin runs smoothly! Older versions are still supported as well!

  • Added | Orange to Yellow and Pink to Purple Gradients (Suggestion made by @Antrox). Permission nodes for these new gradients can be found on the GitHub and Overview page on Spigot.
  • Improved | Added all gradient permission node to ease permission setup (ultracolor.gradient.*).
  • Improved | Allowed customization of menu slots and sizes and translation of menu info in the localization files (see new changes of the file below). Thanks to @reussy for the improvement suggestions!

Localization File Changes (ONLY DO THIS IF YOU DON'T WANT # COMMENTS REMOVED FROM THIS FILE):
For this update, you need to add the Size option to Chat_Color_Selection and Name_Color_Selection in your messages file:
Code (Text):
# The size of the GUI menu (max value is 54).
Size: 54
Then, you need to add the Slot option to each of the Chat and Name colors and formats in the messages file. Example below:
Code (Text):
# The slot where the item will be in the menu (ranges from 0 - 53)
# Also make sure this value isn't the same as any other slot option for this menu.
Slot: 10
If you need an example of what the file should look like now, I've provided the updated default messages_en.yml here.
----------, Nov 5, 2020

Fixed | There was a period after a quotation mark in 2 lines of the default messages_es.yml file, which are removed in this update.

Thanks to @reussy for reporting the bug!
----------, Nov 4, 2020

I've tested the latest version with 1.16.4 and you may see an error on server startup notifying you the library that the plugin uses hasn't been tested on this version and the plugin may not function. You may also see some warning messages in the console saying "Method null not loaded!" such as when using /color. Both these messages are being sent because of the NMS changes Mojang made in the new version.

However, the plugin still enables and features continue to work as intended, minus the console messages. If you don't mind these messages in the console, feel free to use UltraColor on 1.16.4, otherwise, please remain on 1.16.3, until I give another update on when UltraColor is fully stable to be on 1.16.4. If you have questions, feel free to ask in the discussion section, or on the GitHub page, or private PM me on Spigot! Thanks for 50 downloads and I hope all of you are doing well!

- UltimateGamer200
----------, Nov 4, 2020

  • Added | Purple Gradient via /gradientcolor (permission node for this gradient is ultracolor.gradient.purple).
  • Added | French localization. You can use this localization by changing the Locale key in settings.yml to fr and then reloading the plugin.
  • Added | Reset Button added to Gradient Color Menu to allow players to reset their gradient.
  • Improved | Removed Gradient field from data.db file as we also store the gradient color to apply the player's gradient.
  • Improved | Made red gradient more noticeable.
No config changes are required! :)
----------, Nov 1, 2020

NOTE: This update contains settings.yml and messages.yml changes. If you want to keep # comments in these files, scroll down to see what changes you need to make to keep these comments. If not, feel free to install the new version and let the plugin update the files automatically!
  • Added | Update Notifier to notify you of any future updates in-game (can be disabled in settings.yml).
  • Added | bStats Integration (simply there to see data of plugin use and it's anonymous of which server is which)
  • Added | Gradient Name Support for 1.16+ versions (via command /gradientcolor or /gc). Thanks to @tigertmjv for making the suggestion! Permissions for this system can be found on the Overview page and the Wikipedia.
  • Improved | Moved Error_Message from Chat_Color_Selection_Customization sections to Chat_Color_Selection under Main_GUI_Customization to keep things easy to customize.
  • Improved | Moved Error_Message from Name_Color_Selection_Customization sections to Name_Color_Selection under Main_GUI_Customization to keep things easy to customize.
SETTINGS.YML CHANGES:
You just need to add Notify_Updates to your settings.yml file as displayed below:
Code (Text):
# Enable or disable plugin update notifications in-game.
Notify_Updates: true
MESSAGES.YML CHANGES:
For this file, you just need to remove Error_Message from the Color and Format sections in both Name_Color_Selection_Customization and Chat_Color_Selection_Customization. Then, add Error_Message to Name_Color_Selection and Chat_Color_Selection in Main_GUI_Customization. Here's an example with messages_en.yml here.

Enjoy your Halloween and stay safe! Wear a mask when outdoors, especially tonight!
----------, Oct 31, 2020

Resource Information
Author:
----------
Total Downloads: 13,899
First Release: Oct 31, 2020
Last Update: Jun 16, 2023
Category: ---------------
All-Time Rating:
21 ratings
Version -----
Released: --------------------
Downloads: ------
Version Rating:
----------------------
-- ratings