ChatColor
Description:
ChatColor allows players to change the color and style of their chat to many different things! Color your chat in over 16 million different colours, with all Minecraft colors, modifiers and hex colours supported!
Plugin Support
If you need some help or support with the plugin, please join my support Discord server here: https://discord.gg/hNBtt9cDk4
Features:
- Change the color of yours or another player's chat to a huge variety of options!
- Now supporting hex colours, allowing you to use over 16 million colours!
- Choose exactly what you want to use, and type one single command to use it!
- This plugin supports all the Minecraft colors as well as the modifiers, giving a wide range of customisation!
- Choose up to four different modifiers for your color!
- New! Create customised rainbow chat colors and more to spice up the chat!
- Now also supporting console commands! Have a donor purchase? Why not add a chat color?
- Useful help commands to sort out any problems you might run in to!
- Easy to use permissions to restrict specific colors and modifiers, or allow all of them with wildcard permissions!
- A permission for every color and every modifier, as well as every command!
- This plugin is fully customisable!! What does that mean? Well:
- You can change nearly all of the messages in the plugin in the config!
- Fully customisable GUI system, allowing you to make as many GUIs as you want to display a full range of colours!
- As well as this, change cooldowns, join message, notifications and more!
- A helpful and friendly author - I am here if you need help. If you have any bugs to report, or any questions, ask away in the comments below!
Note: See below for help on commands, permissions, colors, modifiers and settings!
Commands:
Key:
- <value> = Required value.
- [value] = Optional value.
Main Command:
- /chatcolor [player] <color/default> [modifiers] - Change yours or a player's chat color!
- New! For a custom color, use: /chatcolor [player] %<name>
The name is defined in the custom-colors.yml config file. - Note: Please see here for information on hex colours! The format is like so: &#RRGGBB, where each character after the # must be a number or letter between 0-9 and a-f.
Admin Commands:
- /chatcolor permissionshelp - Shows permissions help!
- /chatcolor settingshelp - Shows settings help!
- /chatcolor reload - Reloads all configs, use if you changed them while running!
- /chatcolor reset - Use with caution, resets the config to the default!
- /chatcolor set <setting> <value> - Changes one of the many settings! (See below for details)
- /chatcolor confirm - Confirms a setting change.
- /chatcolor group <add/remove/list> [name] [color] - Adds, removes or lists group colours. You can use these to give groups a chat color through permissions (see below).
- /chatcolor custom <add/remove/list> [name] [color] - Adds, removes, or lists custom colours. The color must be a valid custom color string.
Other Commands:
- /chatcolor - Shows your current chat color!
- /chatcolor gui - Open a GUI for selecting your desired color!
- /chatcolor <add/remove> <modifier> - Adds or removes a modifier from your chat color.
- /chatcolor available - Shows your available colours and modifiers!
- /chatcolor commandshelp - Shows command help! You can also use /chatcolor help.
Customisable GUI:
- The GUI is fully customisable in the config file gui.yml.
- There are instructions for creating your own GUIs as well as three example GUIs (one for normal colours, one for hex colours and one for custom colours) ready to go in the config.
- Feel free to drop me a message if you need any help!
Settings:
- command-name - Changes the base command to whatever you want!
- color-override - Changes whether ChatColor overrides '&' color symbols in messages.
- confirm-timeout - Changes the time that players get when making a decision.
- default-color - Changes the color that all players get when joining (also one-time sets all players).
- join-message - Changes if players are told their color when joining.
- notify-others - Changes whether players are told if their chat color is changed by someone else.
- auto-save - Changes whether the plugin will auto-save to files every 5 minutes, in case of a crash
- save-interval - Sets the time interval between saves for the plugin.
- force-custom-colors - Changes whether the plugin will force custom colours to be used. Note: This is actually group colours not custom colours.
Colors & Modifiers:
Valid Colors:
- 0 or black
- 1 or dark.blue
- 2 or green
- 3 or dark.aqua
- 4 or red
- 5 or purple
- 6 or gold
- 7 or grey
- 8 or dark.grey
- 9 or blue
- a or light.green
- b or aqua
- c or light.red
- d or magenta
- e or yellow
- f or white
- All hex colours, in the format #RRGGBB
Valid Modifiers:
- k or obfuscated
- l or bold
- m or strikethrough
- n or underlined
- o or italic
Permissions:
- chatcolor.* - Grants a player all ChatColor permissions. Please note that you cannot use a custom colour if you have this permission!
- chatcolor.use - Allows a player to use /chatcolor and /chatcolor cmdhelp.
- chatcolor.use-color-codes - Allows a player to use & color codes in the chat.
- chatcolor.use-hex-codes - Allows a player to use hex codes to color their chat (allows ALL colors!).
- chatcolor.gui - Allows use of the GUI to select a color.
- chatcolor.color.* - Allows a player to use all colors.
- chatcolor.color.<color> - Allows a player to use color.
- chatcolor.modifier.* - Allows a player to use all modifiers.
- chatcolor.modifier.<modifier> - Allows a player to use a modifier.
- chatcolor.change.* - Allows a player to change everyone's chat color.
- chatcolor.change.self - Allows a player to change their own color.
- chatcolor.admin - Allows a player to use all admin commands.
- chatcolor.group.<color-name> - Sets a player/group's group colour.
- chatcolor.custom.<color-name> - Gives a player access to a custom colour.
Note: You must use either numbers or letters found above for the colors and modifiers permissions.
PlaceholderAPI
Note: Some of these are not working correctly at the moment, and will be fixed in a later update.
Here are the different placeholders you can use for this plugin:
Here are the different placeholders you can use for this plugin:
- %cc_full_color% - Returns the full color of a player. Can then be used to colorise text after it. Note: Rainbow colours will not be displayed!
- %cc_full_color_text% - Returns the full color of a player, as text. e.g. Red, Bold.
- %cc_color% - Returns the color only (no modifiers) of a player.
- %cc_color_text% - Returns the color only, as text.
- %cc_modifiers% - Returns the modifiers only (no color) of a player.
- %cc_modifers_text% - Returns the modifiers only, as text.
- %cc_<color/modifier>_available% - Returns either 'gui-available' or 'gui-unavailable' from the messages.yml, based on if the player has the necessary permission. e.g. %cc_a_available%
Translations
Thanks very much to QuestalNetwork for translating the messages into Dutch! You can find them here: https://hastebin.com/jodeligici.pl
Videos
- Plugin showcase by Barbercraft!
[MEDIA=youtube]s4tlJ4Zs2EI[/MEDIA]
Data Collection:
This plugin uses bStats to collect some statistics about usage of the plugin and sends them to https://bstats.org/. This can be disabled by changing 'stats' in the config.yml to false. The statistics sent include Version Demographics, Server/Player Statistics, Server Location, Operating System etc. The stats available to the public are Version Demographics, Server Location, Rank, Java Version and Global Statistics. These are viewable at https://bstats.org/plugin/bukkit/ChatColor2.
Planned Features:
- MySQL Database Support
Idea Contributors:
- ChillerKraft - Thank you so much for your ideas and for pointing out things I have missed
- VNMineND & SoptikHa2 - Thank you both for the idea of more modifiers!
- chaosworlds - Thank you for the idea of a GUI!
- Minecraftfan105 - Thank you for the idea of custom messages!
- iHaydennn - Thank you for the idea of customisable rainbow chatcolor!
- OrbitStorm88 - Thank you for the idea of console command support!
- HazyCraft - Thank you for the idea of MySQL Database support! (Sorry it isn't being added rn :c)
- V3rtexITA - Thank you for the idea of a command to show available colors!
Want to be on the list? Suggest something down below!
Servers Using ChatColor:
- SoulBlade.sknd.host
- NightRealm.mc-dns.com
- And 2000+ others!
Bugs:
- If you find any bugs, please report them! Reports are very helpful so that I know what I'm doing wrong and what I need to fix!
- Either post a comment below, or make a ticket if you find one. Thanks!
Hi I had a cool feature request idea. Limit hex colors by a value(hsv) threshold. Colors below a certain value are often unreadable in chat
In reply to Wooferscoots:
Hi there, sorry for the late reply and thanks for the feature suggestion! I'll take a look at adding this into a future version as an optional setting.
I'm having some issues due to trying to give people the ability to use chat colors. I did chatcolor.* in luckperms and people can't use modifiers still.
i'm not sure if you support the use of chatcolor on a forge based server such as MOHIST but there is an error on that server type:
[22:39:26] [Server thread/INFO] [Mohist]: Enabling ChatColor2 v1.12.3
[22:39:26] [Server thread/ERROR] [Mohist]: Error occurred while enabling ChatColor2 v1.12.3 (Is it up to date?)
java.lang.NumberFormatException: For input string: "12.2-307 MC: 1.12.2"
at sun.misc.FloatingDecimal.readJavaFormatString(Unknown Source) ~[?:1.8.0_321]
at sun.misc.FloatingDecimal.parseFloat(Unknown Source) ~[?:1.8.0_321]
at java.lang.Float.parseFloat(Unknown Source) ~[?:1.8.0_321]
at com.sulphate.chatcolor2.utils.CompatabilityUtils.init(CompatabilityUtils.java:26) ~[?:?]
at com.sulphate.chatcolor2.main.ChatColor.setupObjects(ChatColor.java:114) ~[?:?]
at com.sulphate.chatcolor2.main.ChatColor.onEnable(ChatColor.java:71) ~[?:?]
at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:177) ~[JavaPlugin.class:?]
at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:318) [JavaPluginLoader.class:?]
at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:399) [SimplePluginManager.class:?]
at org.bukkit.craftbukkit.v1_12_R1.CraftServer.enablePlugin(CraftServer.java:477) [CraftServer.class:?]
at org.bukkit.craftbukkit.v1_12_R1.CraftServer.enablePlugins(CraftServer.java:418) [CraftServer.class:?]
at net.minecraft.server.MinecraftServer.loadAllWorlds(MinecraftServer.java:383) [MinecraftServer.class:?]
at net.minecraft.server.dedicated.DedicatedServer.init(DedicatedServer.java:315) [nz.class:?]
at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:590) [MinecraftServer.class:?]
at java.lang.Thread.run(Unknown Source) [?:1.8.0_321]
I just recently started using MHOIST after discovering it not too long ago and am slowly discovering plugins that have errors.
In reply to InuYasha86000:
The reason for this crash is that the server version supplies a non-standard version string. I will be trying to address this in the next update. It may still not work for other reasons but at least this reason can be fixed :)
Is there a way to get rainbow chat???
In reply to oisinverkoyen:
In reply to oisinverkoyen:
Yes! You can use /chatcolor %bright-rainbow as an example :)
Hi, I've been trying to create something along the lines of the rainbow Color pattern but with the modifiers, is there any way to do this or is it simply not possible?, Ive gotten down creating a new custom colour and adding it to the GUI but I simply can't figure out how or if its even possible to get it to work.
EDIT: Ive also found that the bright rainbow doesn't work, it outputs "null" at the beginning of any chat messages and doesn't work.
In reply to xavieraiden:
You can add modifiers to a rainbow custom colour, but you can't make each character have a different modifier, for example.
Hmm.. bright rainbow should work :/ pretty sure I tested it. What version are you using (MC & plugin)?
Hi, I cant figure out how to make a custom rainbow color?
I want it to be these colors #6af8ed#a7fbf3#d6fdf9#ffffff#ffffff#fcfac3#f3f684#e5f237#e5f237#f3f684#fcfac3#ffffff#ffffff#d6fdf9#a7fbf3#6af8ed
I dont want to replace the existing rainbow color, just make a new rainbow sequence.
thanks in advance!
In reply to arcticlightning144:
Heya, please take a look at the example rainbow custom colours in the config files :)
Hi,
a user of one of my plugins ran into a compatibility issue between this plugin and mine (Shopkeepers): Shopkeepers is a plugin to create shop NPCs. Players have the option to rename their shop NPC. When naming a shop, the Shopkeepers plugin uses the player's next chat input to set the new shopkeeper name. By default, color codes are not allowed to be used in shopkeeper names (but they can be enabled inside the config).
In an attempt to extract the player's raw original chat message, the Shopkeepers plugin listens for the chat event at lowest priority.
However, this plugin seems to inject (at lowest event priority, i.e. very early of the chat processing) a chat color at the beginning of every message sent by players. Depending on the random order in which the Shopkeepers plugin extracts the chat message to apply it as new shopkeeper name, and the ChatColor plugin modifying the chat message to inject this color code, the Shopkeepers plugin might complain about the chat message not being a valid shopkeeper name, due this this additional color code at the beginning.
Would it be possible for you to not use the lowest event priority to modify the chat message? This would give other plugins a chance to read the original, unmodified chat message.
Also, something else to consider for any kind of default chat colors applied to the beginning of chat messages would be to to not actually modify the chat message for those, but inject the color code via the chat format instead. This is probably a cleaner way to implement 'default chat colors', but is probably also more tricky to implement, since you would need to analyze the chat format to figure out where to inject the color code.
In reply to blablubb:
Heya, thanks for the in depth comments.
The listener priority was changed fairly recently as people were having the opposite problem (plugins overriding chatcolor), in the next update it will be configurable. I'm not sure when I'll be releasing that at the moment, though.
For the format stuff, I could take a look into that, but currently 'default' colours just set a player's colour to a default (which gives the current behaviour, also allowing /chatcolor to display the correct 'current' colour). So, I might do this but unless there is some issues being caused by it, it will probably stay as-is for the moment.
Thanks!
In reply to sulphate_osu:
The problem with configuration options is that users first have to run into some issue, report the issue, someone has to remember the config option, and inform them about it. I don't know which other previous incompatibility your event listener priority change has resolved, so I cannot comment on how likely it is for users to run into this other incompatibility, or whether there might be an alternative to resolve it. But our plugins do fairly different things (my plugin even only reads from the chat event, not modifies it). So this incompatibility seems like it should be avoidable by default.
Also, even with this config option added, if you say there is another plugin incompatibility preventing your from changing the event priority by default, then users using this new config option to change the event priority would just reintroduce this other incompatibility. There has to be a better solution..
Hi. How can you use the & command in a command_block like:
/say lol &a [Achievement]
/say &a moang
It would say &a and not with the color lime
How work this?
In reply to the_mystery_guy_lol:
ok i fixed it with a tellraw command
and a generator with that...
In reply to the_mystery_guy_lol:
Yeah, sorry :( this plugin only supports player chat. I might add this as a feature though since it would be fairly simple.
can i use the hex color too in Scorboard,Tablist and Luckperms?
In reply to xAlphaBjarnex:
This plugin only supports the chat, you would need a different plugin to support that :)
Hello
I have a problem with this plugin, when I am OP in my server, chatcolors works fine, but when I am no longer op and just an user, it won't work, I typed chatcolor blue and it says "successfully set your color to: this (blue) but when I type whatever and click enter, it shows my default color but not blue
btw I am using essentialsx chat