RexChat
A modern chat management plugin with formatting, colors, mentions, item previews, and more.
RexChat


An chat management plugin, with lots of useful features.
🔧 Requirements
The plugin does work on 1.8, but only if you use Java 21. (FlamePaper or some fork that supports it.)
✨ Features
- Folia Support - ClearChat, /cc, /clearchat - MuteChat, /mc, /mutechat - Custom Join/Leave messages - Per-group Chat Formatting - Chat Reporting Disabler - Chat Emojis - Chat Colors - And more customizable commands! (You can add more in the config if needed)
🔒 Permissions
- rexchat.admin - Acces to all commands. (reloading,muting,clearing) - rexchat.mutechat Players with this permission will be able to mute the chat. - rexchat.clearchat - Players with this permission will be able to clear the chat. - rexchat.bypass - Players with this permission will be able to write while the chat is disabled. - rexchat.chatcolor - Players with this permission will be able to use colors in their messages.
⚙️ Placeholders
- %rexchat_muted% — Returns true or false if chat is muted. - %rexchat_chatcolor% — Returns the display name of the color. (ex: "Red", "Gold", "Green", "Rainbow") - %rexchat_chatcolor_raw% — Returns the raw name of the color. (ex: "red", "gold", "green") - %rexchat_chatcolor_format% — Returns the format of the color. (ex: "&c", "<rainbow>")
⚙️ Config
config.yml
```yaml
RexChat Configuration
Update checker
update-checker: enabled: true notify-ops-on-join: false permission: "rexchat.admin" message: "%rc_prefix%&fA new version of &cRexChat &fis available: &c{latest}&7 (current: &f{current}&7). &fDownload: &chttps://www.spigotmc.org/resources/rexchat.122562/"
Message Settings
messages: prefix: "&7[&6RexChat&7] " no-permission: "%rc_prefix%&fYou don't have permission to use this command." reload-success: "%rc_prefix%&fReloaded successfully!" command-not-found: "%rc_prefix%&fCommand not found." reload-usage: "%rc_prefix%&fUsage: /%cmd% reload" player-only: "%rc_prefix%&fThis command can only be used by players!" mention: sender: "%rc_prefix%&aYou mentioned &6{targets}" target: "%rc_prefix%&eYou were mentioned by &6{sender}"
Prevent self-mention triggers (sounds/titles/notifications) while keeping highlight
prevent-self: true preview: target-not-found: "%rc_prefix%&cPlayer not found." item: title: "&6Item: &f{player}" none: "%rc_prefix%&7You are not holding any item." hover: "&7Click to view {player}'s item" text: "&f[&f{Item} &bx{Amount}&f]" singular-text: "&f[&f{Item}&f]" empty-label: "&7[&eHold an item to show it&7]" token-empty-error: "%rc_prefix%&cYou need to hold an item to show it." open: "%rc_prefix%&7Opening item preview for &6{player}" inventory: title: "&6Inventory: &f{player}" hover: "&7Click to view {player}'s inventory" label-template: "&7[&fInventory&7]" open: "%rc_prefix%&7Opening inventory preview for &6{player}"
mention: enabled: true color: "&6" by-name: true sound: enabled: true name: "ENTITY_EXPERIENCE_ORB_PICKUP" volume: 0.8 pitch: 1.2 notify: sender: false target: true title: enabled: true title: "&6Mention!" subtitle: "&eYou were mentioned by &6{sender}" fade-in: 5 stay: 40 fade-out: 10
Join/Leave Messages (leave blank to disable)
join-leave: join-message: "" leave-message: ""
Chat reporting (1.19+). When enabled, RexChat converts player chat into
system messages to avoid signed chat reporting and validation issues.
chat-reporting: disable: true
Chat Color Presets - Players can select from these using /chatcolor
Remove or add colors as you wish - they won't regenerate automatically
chatcolor: enabled: true colors: red: format: "&c" permission: "rexchat.chatcolor.red" display-name: "Red" gold: format: "&6" permission: "rexchat.chatcolor.gold" display-name: "Gold" green: format: "&a" permission: "rexchat.chatcolor.green" display-name: "Green" aqua: format: "&b" permission: "rexchat.chatcolor.aqua" display-name: "Aqua" pink: format: "&d" permission: "rexchat.chatcolor.pink" display-name: "Pink" rainbow: format: '<rainbow>' permission: "rexchat.chatcolor.rainbow" display-name: "&cR&6a&ei&an&bb&do&5w" sunset: format: '<gradient:#FF6B6B:#FFE66D>' permission: "rexchat.chatcolor.sunset" display-name: "Sunset" ocean: format: '<gradient:#00B4DB:#0083B0>' permission: "rexchat.chatcolor.ocean" display-name: "Ocean"
Chat Formatting
chat-format: enabled: true
Base format. Available placeholders:
{player}, {display_name}, {message}, {world}, {health}, {max_health}, {x}, {y}, {z}, {ping}
{prefix} resolves via LuckPerms/Vault directly (no PAPI required)
format: "{prefix}&7{player} {tag}: &f{message}" player: hover: enabled: true
Lines shown on hover over the player's name. Supports same placeholders and colors.
lines: - "&7Health: &c{health}&7/&c{max_health}" - "&7World: &f{world}" - "&7Location: &f{x}&7, &f{y}&7, &f{z}" - "&7Ping: &f{ping}ms"
Group-specific overrides (first matching group wins)
Uses LuckPerms/Vault primary group via PlaceholderAPI if available,
or matches by permission (e.g., group.<name>) or explicit permission below.
groups: helper:
permission: "group.helper" # optional, if not using the primary group
format: "{prefix}&7{player}: &a{message}" hover: enabled: true lines: - "&aHelper &7• &fPing: {ping}ms" moderator:
Optional explicit permission to match this group
permission: "group.moderator"
format: "{prefix}&7{player}: &b{message}" hover: enabled: true lines: - "&bModerator &7• &fPing: {ping}ms" admin:
permission: "group.admin"
format: "{prefix}&7{player}: &c{message}" hover: enabled: true lines: - "&cAdmin &7• &fPing: {ping}ms"
Chat Emojis (enabled by default). Users can add more in the list below.
chat-emoji: enabled: true emojis: - name: "smile" aliases: [":)", ":smile:"] replacement: "☺" - name: "heart" aliases: ["<3", ":heart:"] replacement: "❤"
Chat Previews
chat-previews: enabled: true tokens: item: ["[item]", "[i]", "{item}", "{i}"] inventory: ["[inventory]", "[inv]", "{inventory}", "{inv}"]
Chat Management Settings
chat-management: mute: enabled: true permission: "rexchat.mute" muted-message: "%rc_prefix%&fThe chat is currently muted." mute-announcement: "%rc_prefix%&fThe chat has been muted by {player}" unmute-announcement: "%rc_prefix%&fThe chat has been unmuted by {player}" clear: enabled: true permission: "rexchat.clear" clear-message: "%rc_prefix%&fThe chat has been cleared by {player}" lines: 100
Commands Configuration
commands: discord: enabled: true command: "discord" aliases: ["dc"] permission: "" message-list: - "%rc_prefix%&6Discord Server" - "&7• &fJoin our community: &6https://discord.gg/yourserver" - "&7• &fOnline Members: &61,234+"
rules: enabled: true command: "rules" aliases: ["rule"] permission: "" message-list: - "%rc_prefix%&6Server Rules" - "&7• &fBe respectful to all players" - "&7• &fNo spamming or excessive caps" - "&7• &fNo advertising or self-promotion" - "&7• &fNo griefing or stealing" - "&7• &fUse appropriate language"
store: enabled: true command: "store" aliases: ["shop"] permission: "" message: "%rc_prefix%&6Store &7• &fVisit our store: &6https://store.yourserver.com"
help: enabled: true command: "help" aliases: ["?"] permission: "" message-list: - "%rc_prefix%&6Available Commands" - "&7• &#ffa500/discord &7- &fJoin our Discord community" - "&7• &#ffa500/rules &7- &fView server rules" - "&7• &#ffa500/store &7- &fVisit our store" - "&7• &#ffa500/help &7- &fShow this help message" ```
📥 Installation
1. Download RexChat.jar 2. Place it in your server's 'plugins' folder 3. Restart your server 4. Edit the configuration (optional) 5. Use `/rc reload` to apply changes
💬 Support
📊 Statistics
<div align="center">
Made with ❤️ by RexSystems
</div>