

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", "")
⚙️ Config
config.yml
# 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
- Download RexChat.jar
- Place it in your server's 'plugins' folder
- Restart your server
- Edit the configuration (optional)
- Use
/rc reloadto apply changes
💬 Support
📊 Statistics
Made with ❤️ by RexSystems
Ченджлог
1.6.6Релиз26.1, 26.1.1, 26.1.2 · 14 июня 2026 г.
Changelog
All notable changes to RexChat will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
Unreleased
1.6.6 - 2026-06-14
Added
[coords]/[here]location token. Share your current position as a clickable label in chat. Anyone can click to copy coordinates; staff withrexchat.coords.teleportcan run/rexchat tpcoords <id>to teleport to the shared location.- Custom chat token API. Other plugins (and
chat-previews.custom-tokensin config) can register clickable tokens with custom labels, hovers, and click actions (open_url,run_command,suggest_command,copy_to_clipboard). SeeRexChatAPI#registerCustomToken. - In-game container previews. Shulker boxes, barrels, bundles, and decorated pots inside inventory/item preview GUIs can be clicked to inspect their stored contents (read-only). Discord
[item]previews now include container contents for all supported container types. - In-game shulker box contents preview. When viewing a player's inventory or held item via
[inventory]/[item], clicking a shulker box inside the read-only preview GUI opens a second GUI showing what's inside. The window title is the shulker's custom name, or its default material name if unnamed. Nested shulkers (a shulker inside another shulker) can be clicked through as well. - DiscordSRV — shulker contents for
[item]. When the held item is a shulker box, Discord now receives a second embed alongside the usual item card: a rendered PNG of the shulker GUI with its contents, titled with the shulker's name. Toggle withchat-discord.previews.item-shulker-contents(default:true); embed accent color viachat-discord.embeds.item.shulker.color. - DiscordSRV — rendered inventory & ender chest images. When a chat message contains
[inv]or[ec], RexChat now renders an actual PNG that looks like the in-game GUI (light grey panel, recessed slots, real item textures, Monocraft font for stack counts) and posts it as a Discord attachment. Item textures are downloaded once from the configurable CDN (defaults to InventiveTalent's mirror) and cached under<plugin folder>/textures/. - Bundled the Monocraft font (v4.2.1) under
resources/fonts/Monocraft.ttfso counts render with the Minecraft typeface even on servers that don't have a Minecraft-style font installed. chat-discord.images.texture-base-urlconfig option to point the renderer at a different texture mirror.- DiscordSRV soft-dependency integration: when DiscordSRV is installed, chat messages containing
[item],[inv],[ec]or[bal]tokens are forwarded to the linked Discord channel as the regular chat line plus rich embeds for the previews. Items get a thumbnail (configurable URL template, defaults to InventiveTalent's Minecraft asset mirror), durability, enchantments and lore. Balances are inlined directly in the relayed line via Vault Economy. chat-discordconfig section with toggles per preview type, channel selection (DSRV game-channel name, empty = main channel), embed colors and titles.
1.6.5 - 2026-05-10
Added
- New
[bal]/[balance]/[money]chat preview tokens (and{bal},{balance},{money}variants) that show the sender's economy balance via Vault, with hover tooltip showing the full amount. messages.preview.balanceconfig section withlabel-template,hoverandunavailable-label(placeholders:{balance},{amount},{currency},{player}).- Dedicated ender chest preview support:
[ec]/[enderchest]/[echest]tokens (and curly variants) open a preview of the sender's ender chest on click. - Nightly build GitHub Actions workflow that publishes a rolling
nightlypre-release with the latest jar on every push tomain. - Release GitHub Actions workflow that, on every
v*tag, builds the jar, creates a GitHub Release, and publishes the version to Modrinth (paper, purpur, folia, bukkit, spigot — Minecraft 1.20.4+).
Fixed
[ec]/[enderchest]tokens were not being replaced when the sender had a chatcolor preset selected — the color code was being prepended to the token, breaking literal matching. Balance and ender chest tokens are now also excluded from chatcolor application.- Emoji aliases like
:)and<3were also matching when used inside longer sequences (e.g.:)),<33). Aliases now only match as standalone tokens (surrounded by whitespace, start, or end of the message). rexchat.preview.enderchestpermission was missing fromplugin.yml.- Mention highlighting could break message colors and was sometimes missing the
@symbol. - Player chat color is now restored after a mention highlight instead of being reset to white.
Older versions
For changes prior to 1.6.5, see the GitHub Releases page.
1.6.4Релиз26.1, 26.1.1, 26.1.2 · 27 апреля 2026 г.
🐛 Bug Fixes
- Fixed
/rexchat globaland/rexchat localworking when proximity chat is disabled - These subcommands now properly check ifchat-management.proximity.enabledistruebefore executing. - Fixed
/rexchat viewinvand/rexchat viewitemworking when chat previews are disabled - These subcommands now checkchat-previews.enabledbefore opening preview GUIs. - Fixed double permission prefix bug -
/rexchat globaland/rexchat localwere checkingrexchat.rexchat.proximity.toggleinstead ofrexchat.proximity.toggle, making them unusable for non-op players. - Fixed proximity message config paths - Global/local toggle messages were reading from a non-existent
messages.proximity.*path instead of the correctchat-management.proximity.*.
🔧 Improvements
- Removed dead
/rexchat invand/rexchat itemsubcommands - These were leftover handlers that did nothing. Preview functionality is handled byviewinv/viewitem(triggered via chat clicks). - Smarter tab completion - Subcommands
global/localare now hidden from tab complete when proximity chat is disabled. - Cleaner help menu -
/rexchat helpnow only shows proximity commands when the feature is enabled. - Added missing permissions to
plugin.yml-rexchat.chat.minimessage,rexchat.chat.placeholders,rexchat.proximity.bypass, andrexchat.proximity.toggleare now properly defined. - Proximity config validation -
ConfigValidatornow validates proximity chat settings (enabled,radius,bypass-permission) and reports errors on misconfiguration.
1.6.3Релиз1.21.11, 26.1, 26.1.1 · 7 апреля 2026 г.
🛡️ Security Fixes
- Patched MiniMessage bypass exploit - Implemented a secure tag-escaping method using the native Adventure
escapeTagslibrary. This fixes a vulnerability where players could use backslashes to bypass permission checks and use unauthorized MiniMessage tags (like<click>or<hover>) in chat.
🔧 Improvements
- Code Hardening - Minor internal logic improvements to formatting handlers to prevent edge-case parsing errors.
🔧 Requirements
- Minecraft: 1.20.4+ (Paper/Purpur/Folia)
- Java: 21 (required)
📚 Documentation
Full documentation available at: https://rexsystems.github.io/rexchat
1.6.2Релиз1.21.9, 1.21.10, 1.21.11 · 9 марта 2026 г.
🐛 Bug Fixes
- Fixed standalone hex colors - Hex colors like
#A96EEEnow work correctly when followed by text without space - Fixed MiniMessage hex color format - Hex colors in
<#hex>format are now properly treated as MiniMessage tags instead of showing angle brackets literally - Fixed color bleeding in hover previews - Colors and formatting no longer bleed across multiple lines in hover text - each line now properly resets formatting
- Fixed chat preview tokens with chat colors - Preview tokens like
[item],[i],[inv], and[inventory]now work correctly even when players have a chat color preset selected
✨ Features
- Proximity/Local Chat System - Added global proximity chat with configurable radius - messages only visible to players within X blocks in the same world
- Proximity bypass permission - Staff can use
rexchat.proximity.bypassto see all messages regardless of distance - PlaceholderAPI support expanded - All message strings throughout the plugin now support PlaceholderAPI placeholders
🔧 Improvements
- Cleaner command output - Removed redundant prefix spam from
/chatcolorand other command outputs for better readability - New API methods - Added
isProximityChatEnabled(),getProximityChatRadius(),setProximityChatEnabled(), andsetProximityChatRadius()for developers
1.6.1Релиз1.21.9, 1.21.10, 1.21.11 · 3 февраля 2026 г.
🐛 Bug Fixes
- Fixed chat preview tokens not working with chat colors - Preview tokens like
[item],[i],[inv], and[inventory]now work correctly even when players have a chat color preset selected - Improved command output formatting - Removed redundant prefix spam from
/chatcolor&/helpcommand output for cleaner display
🔧 Requirements
- Minecraft: 1.20.4 - 1.21.11 (officially supported)
- Java: 21 (required)
📚 Documentation
Full documentation available at: https://rexsystems.github.io/rexchat
1.6.0Релиз1.21.9, 1.21.10, 1.21.11 · 3 февраля 2026 г.
🎉 What's New
Developer API
- Added complete Developer API for plugin integrations
- New
RexChatAPIclass with methods for chat management, colors, and formatting - Events:
ChatMuteEventandChatClearEvent - Full API documentation available at https://rexsystems.github.io/api
Bug Fixes
- Fixed chat color presets not reloading on
/rc reload
📚 Documentation
1.5.5Релиз1.21.9, 1.21.10, 1.21.11 · 26 января 2026 г.
- Fixed a few minimal bugs.
- Fixed a problem with colors not being cancelled correctly.
1.0.1Релиз1.21.2, 1.21.3, 1.21.4 · 13 февраля 2025 г.
Fixed color formatting issue where bold/formatting would carry over to the entire message
Fixed command visibility issues on newer versions
Added clickable links in chat (you dont need to put https:// in front of your link.)
Improved color handling compatibility across all versions
Code cleanup and optimization
Комментарии
Загружаем…