Chat
Bridge public chat across server groups, network alerts, mute chat, slow chat, clear chat and the Catalyst chat filter.
Public chat
Bridge handles public chat on every Paper server. A message reaches players on the same server and on every other server in the same group, set by group in Kernel's kernel.yml.
Each line shows the player's tag, rank prefix, name in their rank colour and suffix. The format is chat.format in plugins/Bridge/messages..
- Muted players can't send public chat. They see their mute's reason and time left.
- Players with
bridge.can usechat. color &colour codes. - If you've switched to another channel, such as Sentry's staff chat, start a message with
!to send it to public chat.
Network alerts
/alert <message> (also /broadcast or /bc) sends a message to every Paper server running Bridge. It accepts MiniMessage. It needs bridge..
Chat controls
| Command | Permission | What it does |
|---|---|---|
/mutechat | bridge. | Turns public chat off or on for everyone without bridge.. |
/slowchat <duration> | bridge. | Makes players wait between messages, like 5s. off or 0 turns it off. |
/clearchat | bridge. | Clears chat for players without bridge.. Staff get a notice. |
Chat filter
The filter checks every public chat message against rules stored in Catalyst. Each rule has:
| Field | Values |
|---|---|
phrase | The text or pattern to look for. |
matching | contains (anywhere in the message), exact (the whole message) or regex. |
action | allow, block or punish. |
case_sensitive | false by default. |
punishment | With punish: warn, kick, mute, ban or blacklist. |
duration | With punish: length in milliseconds. Leave it out for permanent. |
enabled | true by default. |
allow rules are checked first, so they can let through a message a block rule would stop. A blocked message is never sent and the sender gets a notice. A punish rule also issues the punishment with the reason "chat filter:" followed by the phrase.
Bridge has no in-game filter editor. Add rules through Catalyst's API with a key that has filter rights, such as your bootstrap key:
curl -X POST http://127.0.0.1:8080/v1/filters \
-H "Authorization: Bearer cat_mynet_replace-with-your-key" \
-H "Content-Type: application/json" \
-d '{"phrase": "discord.gg/", "matching": "contains", "action": "block"}'GET /v1/filters lists rules, and PATCH or DELETE on /v1/filters/<id> changes or removes one. The full reference is at /docs on Catalyst's address, which also needs a key. Servers load the rules on start and every five minutes after that.