Configuration
ChatColor uses multiple YAML files to keep settings, colors, patterns, and messages organized and easy to customize.
config.yml
This file controls general settings and core behavior of the plugin.
settings:
apply-to-message: true # Whether to apply colors to chat messages
apply-to-name: false # Whether to apply colors to the player's display name
default-color: "NONE" # The default color for new players (Key from colors.yml/patterns.yml)
group-defaults: # Group-based default colors
admin: "<gradient:red:gold>"
vip: "<aqua>"
event-priority: "DEFAULT" # The listener priority for the chat event (LOWEST to MONITOR)
late-bind: false # Use if you use %chatcolor_message_mm% in other plugin formats
clean-console: true # Strips color codes from console output
Settings Detailed
| Setting | Description |
|---|---|
apply-to-message |
Whether to apply the player's selected color to their chat messages. |
apply-to-name |
Whether to apply the color to the player's display name in chat. |
default-color |
The key of the color/gradient/pattern applied to players who haven't picked one. Set to NONE to disable. |
group-defaults |
Map of permission-node-suffix: color-tag. Players with chatcolor.group.<suffix> get that color. |
event-priority |
Set to DEFAULT to auto-detect based on your chat plugin, or manually set (e.g., HIGHEST). |
late-bind |
Enable this if you use the PlaceholderAPI %chatcolor_message_mm% in other plugins and want to avoid double-processing or "raw" tags showing up. |
clean-console |
If true, the plugin will attempt to strip color codes from its own console output to keep logs readable. |
Automatic Configuration Updates
ChatColor features an intelligent configuration migrator. When you update the plugin, it will:
- Detect Missing Keys: Automatically add any new configuration options to your existing files while preserving your settings.
- Back Up Old Configs: Create a timestamped backup in a
backups/folder before making changes. - Log Changes: Detailed summaries of added or removed keys will be displayed in the console during startup.
This ensures you always have access to the latest features without having to manually reset your configuration files.
configs/gui.yml
This file allows for deep customization of the GUI, including all titles, items, layouts, and status messages.
See the GUI Customization Guide for more details.
| Section | Description |
|---|---|
titles |
MiniMessage formatted titles for each menu page. |
layouts |
Define inventory size and slot positions for items. |
status |
Text shown in item lore based on player access/state. |
items |
Material, name, and lore for navigational/button items. |
configs/colors.yml
This file defines all your solid colors and gradients.
Solid Colors
Solid colors use a single MiniMessage tag or a hex code.
colors:
red:
display-name: "Red"
tag: "<red>"
permission: "chatcolor.color.red"
icon: "RED_WOOL"
hot-pink:
display-name: "Hot Pink"
tag: "<#FF69B4>"
permission: "chatcolor.color.hot_pink"
icon: "PINK_WOOL"
Gradients
Gradients use the <gradient:color1:color2:...> tag.
gradients:
sunset:
display-name: "Sunset"
tag: "<gradient:#FF4500:#FF8C00:#FFD700>"
permission: "chatcolor.gradient.sunset"
icon: "ORANGE_WOOL"
configs/patterns.yml
Patterns cycle colors character-by-character throughout the message.
patterns:
rainbow:
display-name: "Rainbow"
permission: "chatcolor.pattern.rainbow"
icon: "YELLOW_WOOL"
colors:
- "<red>"
- "<gold>"
- "<yellow>"
- "<green>"
- "<aqua>"
- "<blue>"
- "<light_purple>"
messages.yml
All plugin messages can be fully customized with MiniMessage formatting. Use <prefix> to include the defined prefix.
prefix: "<dark_gray>[<gradient:blue:aqua>ChatColor<dark_gray>] "
color-applied: "<prefix><green>Color <reset><color> <gray>has been applied!"
color-created: "<prefix><green>Custom color '<gray><name><green>' has been created!"
color-reset: "<prefix><gray>Your chat color has been <red>reset<gray>."
no-permission: "<prefix><red>You don't have permission to use that color."
config-reloaded: "<prefix><green>Configuration reloaded successfully."