Compatibility
Minecraft: Java Edition
Platforms
Links
Tags
Creators
Details
ChatSystem
A plugin that includes staff chat, private messaging and chat filtering in one.
By default ChatSystem will blur and block ads and spam from your server. It will also star any words you specify. It will also account for the common methods of attempting to bypass a filter (common misspellings). Mutes and bans will pass through your current punishment plugin.
Overview
- Custom chat filter with actions for each filter category. Also supports stretched characters, l33t, accents and normalization
- Allowlisting means words such as 'assassin' will not be filtered
- Support for colored chat based on rank
- Mentioning players will make a sound
- Clickable links and a few other clickables
- Private messaging via
/msg,/ignore,/block,/reply - Staff chat, announcement, slowmode, shadow mute, clear, lock, pause and announcements
- Cross server message relaying (off by default, but can be enabled)
- Command protection (off by default, but can be enabled)
Features
- Filter. Exact, wildcard or regex text per category, for signs, books, anvils and all other text. Can cancel, warn, notify staff, log, send webhook or use punishment command e.g.
PUNISH:tempmute:10m. Can censor. - Format. MiniMessage, hex or legacy colors depending on permission. @ mentions that display a tool tip in the action bar and play a sound. Trusted ranks can have clickable links. PlaceholderAPI support. Named or radius chat. Both are optional.
- Private messages. Ignore and block lists. Privacy setting to set who can send you private messages. Optional sounds. Offline mail and message history. Staff social spying can be enabled or disabled.
- Staff. Staff chat using
/scor#prefix in front of messages./chatlock,/chatclear,/chatpause,/cs shadowmute,/cs slowmode - Command protection. Hide
/versionand/pl. Block or allow commands per group. Blocked commands won't appear in tab complete. Oversized commands will be dropped and the user will be kicked. - Anti spam. 15 seconds between repeats and 750 ms between messages. Optional and can be enabled/disabled.
- Extras. Leaderboards, trivia, reactions, chat tags, group chat, auto-translate using your own LibreTranslate instance and sync muting with Simple Voice Chat. Default: All off. Some features require
advanced-mode: trueand a server restart.
Supports 14 languages. Simply drop in your own language file in language/<code>.yml to support another language.
Extra Information
- ChatSystem does not handle any mutes or bans itself. When using
/cs muteit will pass the action onto the active punishment plugin. Supported plugins: AdvancedBan, BanManager, CMI, EssentialsX, HuskBans, LibertyBans or LiteBans. - If a chat formatting plugin is in use then disable ChatSystem's chat functionality from
config.ymlto prevent conflicting chat formatting. - The Sponge build is missing a few features. Command protection, group chats, reactions, chat games, leader boards, tags and translation are only available on Bukkit builds.
- Searchable chat logs are disabled by default and no logs are saved. Simply turn them on to start saving.
- To disable player reporting (also known as chat signing)
advanced-mode: truemust be set, and the config option must also be enabled.
Information
Commands
All commands can be inputted via /cs, /chatsystem or /chat.
| Command | What it does |
|---|---|
/cs check <text> |
Checks text against filters |
/cs add <category> <entry>, /cs remove <category> <entry> |
Modify the block list |
/cs history <player> [page] |
View history of filter violations |
/cs stats |
View filter statistics |
/cs search <text> [time] [page] |
Search chat log |
/cs slowmode <seconds|off> |
Slowmode on chat |
/cs mute <player> [duration] [reason], /cs unmute <player> |
Requires a third party punishment system |
/cs shadowmute <player>, /cs unshadowmute <player> |
Only visible to the sender but still recorded |
/cs doctor, /cs debug |
Self test |
/cs reload or /csreload |
Reload |
/chatpause [reason], /chatlock [reason], /chatunlock, /chatclear |
Chat control |
/announce [chat|actionbar|title|bossbar] <message> |
Announcement |
/sc <message> or /staffchat |
Staff chat |
/msg <player> <message>, /reply <message> |
Private messages also includes /tell and /w |
/ignore, /unignore, /block, /unblock <player> |
Chat protection (can be circumvented with certain permissions) |
/chatsettings |
Focus mode, mention alerts, privacy on PMs, join messages |
/channel <name> |
Change channels |
/tag <name>, /react <name> [player], /groupchat <create|invite|leave|toggle|send|list>, /chatlanguage <code> |
Additional commands |
Permissions
OP has all. Normal users have tags, translations, reactions, mentions, channels, chat settings, group chats by default.
| Node | Covers |
|---|---|
chatsystem.command |
Admin commands |
chatsystem.staff.command |
Lock, unlock, slow mode, announce, clear, pause |
chatsystem.staffchat.use, chatsystem.staffchat.see |
Use and view staff chat |
chatsystem.filter.alerts, chatsystem.filter.bypass |
See filter alerts and bypass filter |
chatsystem.chat.color, .color.hex, .color.minimessage |
Color chat, same nodes as chatsystem.pm. for PMs |
chatsystem.chat.links |
Clickable links in chat |
chatsystem.chat.mention |
Mentioning users |
chatsystem.pm.socialspy, chatsystem.pm.socialspy.vanished |
Social spy including vanished users |
chatsystem.ignore.exempt, chatsystem.block.exempt |
Ignore/exempt from blocking |
chatsystem.antispam.bypass |
Bypass antispam |
chatsystem.commands.group.<name>, chatsystem.commands.bypass |
Command protection |
chatsystem.bypass |
Bypass all |
Configuration
The module update checker, multi server support, data storage, integrations and module switches are managed in config.yml. Modules are stored individually in their own folder with an enabled setting.
plugins/ChatSystem/
├── config.yml
├── messages.yml
├── chat/config.yml
├── chat-filter/config.yml, allowlist.yml, actions.yml, block-list.yml
├── anti-spam/config.yml
├── command-protection/config.yml
├── private-messages/config.yml, messages.yml
├── staff-chat/config.yml
├── join-messages/config.yml
├── group-chat/config.yml
├── translation/config.yml
├── simple-voice-chat/config.yml
├── language/en.yml, 13 more
└── advanced-settings/ (only if advanced-mode is true and a restart occurs)
chat-games/
tags/
leaderboard/
player-settings/
reactions/
brand.yml
chat-reports.yml
Integrations
Automatically discovered when installed. None are necessary.
- Vault, LuckPerms, PlaceholderAPI
- Punishment plugins for filter escalation and
/cs mute: BanManager, CMI, EssentialsX, AdvancedBan, LibertyBans, LiteBans, HuskBans - Vanish plugins are used to allow social spy and private messaging while a staff member is invisible: PremiumVanish, SuperVanish, VanishSystem
- Simple Voice Chat integration that syncs mutes, off by default
- Discord filter notification via webhook, off by default










