Tags
Creators
Details
1.16.2
Compatibility
Changes
ChatColor2 v1.16.2
Bug-fix release focused on gradient, rainbow, and hex custom colours not appearing in chat on modern Paper/Folia servers.
Verified on: Folia 1.21.2 (Build 26.1.2)
Fixed
Modern chat compatibility
- Fixed gradient, rainbow, and hex colours disappearing from chat on modern Paper/Folia servers.
- ChatColor now uses Paper's AsyncChatEvent instead of the legacy chat event.
- Prevents other chat plugins (such as EssentialsX) from stripping modern colour formatting before ChatColor processes it.
Colour restoration
- Added a final chat renderer that restores colours if another plugin removes all formatting.
- Messages that already contain formatting are left untouched to avoid double-colouring.
Synchronous chat handling
- Fixed colours being skipped when chat was fired synchronously.
- "ChatColorEvent" now correctly matches the actual thread context instead of always being marked asynchronous.
- Event dispatch failures no longer prevent colours from being applied.
Reload stability
- Fixed a "NullPointerException" after "/chatcolor reload" when selecting colours in the GUI.
- Player configuration files are now managed separately from plugin configuration.
- Player data survives reloads and is reloaded lazily when needed.
Data loading
- Fixed several crash paths caused by player data not being fully loaded.
- Saving player data, opening the GUI, and reading or writing colours now safely handle unloaded data.
- Applies to both YAML and SQL storage backends.
Storage failures
- Storage errors can no longer prevent chat colours from being applied.
- Default-colour and inaccessible-colour checks are isolated.
- Console warnings are shown only once instead of repeatedly printing stack traces.
Deleted colours
- Fixed deleted custom colours causing chat messages to be prefixed with the literal text "null".
Added
"/chatcolor debug"
Requires OP or the "chatcolor.admin" permission.
Provides a diagnostic report including:
- Stored player colour
- Resolved colour
- Colourised preview
- Legacy hex mode status
- Active chat event type
- Every plugin listening to both chat events and their priorities
Also enables per-message console logging showing:
- The colour ChatColor applies
- The final rendered chat message
Use this command first if colours are not appearing, as it identifies conflicting plugins directly.
"use-modern-chat-event"
New configuration option:
use-modern-chat-event: true
- Default: "true"
- Set to "false" to use the legacy chat event.
- Requires a server restart.
- Servers without Paper's modern chat API (such as Spigot) automatically fall back to the legacy event.
API Changes
- "ChatColorEvent#getChatEvent()" now returns "null" when the modern chat event is enabled, since there is no legacy "AsyncPlayerChatEvent".
- Plugins using "ChatColorEvent" should either:
- Null-check "getChatEvent()", or
- Set "use-modern-chat-event: false".
Notes
- No manual configuration changes are required.
- The new "use-modern-chat-event" option is automatically added to existing "config.yml" files when updating.
Projects on Modrinth are automatically available through a Maven repository for use with JVM build tools such as Gradle. To learn more about the Modrinth Maven API, click here.
Note: When available, you should use the creator's maven repo instead as it will have transitive dependency information that the Modrinth Maven API does not. You may also end up with duplicate dependencies if you use a mix of Modrinth and non-Modrinth Maven repositories for your dependencies, because the group identifier will be different when served through the Modrinth Maven API.
Maven coordinates:
Version ID:
build.gradle:
repositories {
exclusiveContent {
forRepository {
maven {
name = "Modrinth"
url = "https://api.modrinth.com/maven"
}
}
// forRepositories(fg.repository) // Uncomment when using ForgeGradle
filter {
includeGroup "maven.modrinth"
}
}
}
// Standard Gradle dependency
dependencies {
implementation "maven.modrinth:tYCQRgzB:G18AovtP"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:tYCQRgzB:G18AovtP"
}

