Tags
Creators
Details
4.0.0
Compatibility
Required content
Changes
Changelog
4.0.0
Released: 2026-06-15
Minecraft: 26.1.2 · Java: 25 · API version: 26.1.2
Major rewrite release with a new MiniMessage chat formatter, an integrated moderation toolkit, and a much more flexible configuration.
Added
- New MiniMessage chat formatter with a clear separation between trusted format strings and player messages.
- Group & track formats per LuckPerms group or track (
group-formats,track-formats). [item]placeholder – shows the held item in chat (hover tooltip on Paper).- Placeholder support:
{prefix},{suffix},{prefixes},{suffixes},{world},{displayname},{username-color},{message-color}, and{gradient-name}. - Optional PlaceholderAPI integration for formats.
- @Mentions with highlighting, sound + action-bar ping on Paper (Spigot gets highlighting only).
- Emoji replacement via configurable shortcuts like
:heart:→ ❤. - Clickable links in chat (
openUrl, clickable on Paper, colored/underlined on Spigot). - Per-rank message styles – groups/tracks can get their own message coloring without needing MiniMessage permissions.
- Gradient names via LuckPerms meta or per group (
{gradient-name}). - Join / quit / first-join / death messages in MiniMessage format, individually toggleable.
- Integrated moderation toolkit (all toggleable):
- Anti-spam cooldown
- Repeat-message filter
- Caps filter (BLOCK or LOWERCASE)
- Profanity filter (BLOCK or MASK)
- Anti-advertising / anti-IP (BLOCK or REDACT)
- Mute system with
/lpc mute <player> [duration]and/lpc unmute <player>, plus support for external mute permission nodes. - Modrinth update checker with in-game notification for players with
lpc.update. - Paper & Spigot compatibility with automatic fallback to legacy rendering.
- Unit tests for emoji replacement, legacy colors, mentions, player messages, URL linkification, moderation text checks, and version comparison.
Changed
- Complete rewrite of chat rendering: player messages are inserted as pre-built components and are never re-parsed.
- Interactive tags (
click,hover,insertion, …) in player messages are always stripped. - Default config bumped to
config-version: 3.
Security
- Player messages cannot inject MiniMessage tags or PlaceholderAPI placeholders.
- Prefix/suffix values and format strings are parsed in a trusted context.
- Gradient specifications are validated against an allowed character set.
Permissions
lpc.reload,lpc.chatcolor,lpc.itemplaceholder,lpc.updatelpc.emoji,lpc.chatlinks,lpc.mention.exemptlpc.mute,lpc.mutedlpc.bypass.spam,lpc.bypass.repeat,lpc.bypass.caps,lpc.bypass.profanity,lpc.bypass.advert
Known Limitations
- Legacy color codes (
&a,§b) in prefixes/suffixes are not supported – use MiniMessage.
Optional dependencies
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:LOlAU5yB:RFswn1dx"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:LOlAU5yB:RFswn1dx"
}

