Chat Module
The Chat module replaces the default Minecraft chat with a 4-channel system — local, global, staff, and report — each with configurable radius, format, and LuckPerms rank prefix integration.
Channels
| Channel |
Trigger |
Audience |
Description |
| Local |
Default (no prefix) |
Players within radius |
Standard proximity-based chat |
| Global |
!<message> or /g |
All online players |
Server-wide broadcast |
| Staff |
/staffchat or /sc |
Staff only |
Private staff communication channel |
| Report |
/report <player> <reason> |
Staff only |
Player-submitted reports, delivered to staff |
Commands
| Command |
Aliases |
Usage |
Permission |
/globalchat <message> |
/g, /gc |
Send a message to all players |
nexusprism.chat.global |
/staffchat <message> |
/sc |
Send a message to staff |
nexusprism.chat.staff |
/report <player> <reason> |
— |
Report a player to staff |
nexusprism.chat.report |
/chat reload |
— |
Reload chat configuration |
nexusprism.chat.admin |
Permissions
| Permission |
Description |
Default |
nexusprism.chat.global |
Use global chat channel |
true |
nexusprism.chat.staff |
Access staff chat channel |
OP |
nexusprism.chat.report |
Submit player reports |
true |
nexusprism.chat.admin |
Reload chat configuration |
OP |
Configuration (chat/config.yml)
chat:
local:
radius: 100 # Blocks — 0 for global local chat (same as global)
format: "{prefix}&f{name}&7: &f{message}"
global:
format: "&8[&bGlobal&8] {prefix}&f{name}&7: &f{message}"
trigger-prefix: "!" # Start a message with ! to send globally
staff:
format: "&8[&cStaff&8] &7{name}&7: &c{message}"
report:
format: "&8[&6Report&8] &e{reporter}&7 reported &c{target}&7: &f{reason}"
# Integrate LuckPerms rank prefixes into chat format
luckperms-prefix:
enabled: true
# {prefix} in format strings is replaced with the player's LuckPerms prefix
Configuration Fields
| Field |
Description |
local.radius |
Maximum distance (blocks) for local chat. Set to 0 to make local reach all players. |
local.format |
Chat format for local messages. Supports {prefix}, {name}, {message}. |
global.trigger-prefix |
Character(s) that switch a local message to global (e.g. !hello → global). |
luckperms-prefix.enabled |
When true, {prefix} in format strings is replaced with the LuckPerms rank prefix. |
LuckPerms Integration
When LuckPerms is installed and luckperms-prefix.enabled: true, each player's rank prefix is automatically injected into the {prefix} placeholder in chat format strings. No extra configuration is needed — the module reads the prefix from LuckPerms at chat time.