SuperChat
Real-time cross-server chat, formatting, and protection.
Inspired by DonutSMP
SuperChat runs your whole network's chat as one. Someone types on the one server and every other server sees it instantly, with the same hover profile and click-to-TPA as if they were on the same server. On a single server it works fine too, with no extra setup.
Features
- Cross-server chat - one shared chat across your entire network, in real time.
- Hover profiles - hover a name to see money, kills, playtime, deaths and more.
- Click-to-TPA - click a name to start a teleport request to them.
- Rank formatting - per-rank chat colors and prefixes using your LuckPerms groups.
- Anti-spam - stops players sending messages too fast.
- Anti-advertise - blocks IPs and website links in chat.
- Anti-curse - hides words you pick behind ****.
- Clear chat - wipe chat network-wide with one command.
- Fully configurable - every message, color, and filter is editable in the config.
How cross-server works
Messages pass between servers through Redis, so they show up instantly with no polling and no lag. Each server formats the message once and every other server shows the exact same thing, hover box and click-to-TPA included.
If you turn cross-server on and the server can't reach Redis, the plugin stops on startup and prints a clear red message in console instead of quietly breaking your chat. Running one server? Leave it off and you don't need Redis at all.
Server 1
Server 2
Server 2
Commands
- /clearchat (alias /cc) - clear the chat
- /superchat (alias /sc) - show plugin info
- /superchat reload - reload the config
- /superchat status - check if cross-server is on
Permissions
- superchat.clearchat - use /clearchat
- superchat.reload - use /superchat reload
- superchat.bypass.antispam - skip the anti-spam check
Requirements
Paper 1.20+ and Java 17.
Needed only for cross-server mode:
- A Redis server (any recent version), reachable by all your backend servers
- PlaceholderAPI - stats shown in the hover box
- LuckPerms - per-rank chat formats
- Vault - the money placeholder
Setup
Single server:
- Drop SuperChat.jar in your plugins folder.
- Restart. Done.
- Put SuperChat.jar on every backend server.
- Have one Redis server that all of them can reach.
- In each config, set cross-server.enabled to true, give every server its own server-id, and use the same channel and Redis details on all of them.
- Restart all servers. A green LINKED message shows in console once it connects.
Questions or issues? Leave a message in the discussion tab.
