AdminChat
Administration v1.0.1Multi-channel staff chat with per-channel permissions, formatting, sounds, cooldowns, and visibility toggles.
AdminChat
AdminChat provides a secure, permission-based chat system for staff with multiple channels, per-channel formatting, sounds, cooldowns, and visibility toggles.
Features
- Multiple configurable channels:
mod,admin,trialby default. - Per-channel permission, format, prefix, sound type, volume, and pitch.
- Default channel and global cooldown.
- Channel toggling:
/achat <channel>enters/exits a channel, then/achat <message>sends to it. /achat offexits the toggled channel./achat toggle [player]toggles admin-chat visibility.- Join/quit notifications for staff with
adminchat.use. - Reload command for configuration.
Commands
| Command | Description | Permission |
|---|---|---|
/achat |
Show usage or current toggled channel | adminchat.use |
/achat help |
Show help | adminchat.use |
/achat <message> |
Send to default or toggled channel | adminchat.use + channel permission |
/achat <channel> <message> |
Send to a specific channel | adminchat.use + channel permission |
/achat <channel> |
Toggle a channel on/off | adminchat.use + channel permission |
/achat off |
Exit the toggled channel | adminchat.use |
/achat toggle [player] |
Toggle visibility for self or another player | adminchat.use; other player requires adminchat.admin |
/achat reload |
Reload configuration | adminchat.use + adminchat.admin |
/adminchat ... |
Same executor as /achat |
adminchat.admin at Bukkit level, plus adminchat.use in code |
Permissions
| Permission | Description | Default |
|---|---|---|
adminchat.* |
All AdminChat permissions | op |
adminchat.use |
Allows using admin chat | op |
adminchat.admin |
Access to admin management commands | op |
adminchat.channel.mod |
Access to mod channel | op |
adminchat.channel.admin |
Access to admin channel | op |
adminchat.channel.trial |
Access to trial channel | op |
Configuration
Top-level
config-version: schema version for migration.default_channel: default channel when none is toggled. Default:admin.cooldown: message cooldown in seconds. Default:2.
Channels
Each channel supports:
permission: permission node required to use the channel.format: message format with{sender},{channel},{message}.prefix: channel prefix.sound.enabled: whether to play a sound.sound.type: Bukkit sound enum name.sound.volume: sound volume.sound.pitch: sound pitch.
Default channels:
mod:adminchat.channel.modadmin:adminchat.channel.admintrial:adminchat.channel.trial
Messages
Includes: no_permission, no_channel, toggled_on, toggled_off, toggled_for, cooldown, reloaded, usage, usage_toggled, channel_on, channel_off, player_not_found, players_only, no_toggled_channel, unknown_command, visibility_enabled_by, visibility_disabled_by.
Notifications
notifications.join_notification: enable/disable join notification.notifications.join_message: message with{player}.notifications.quit_notification: enable/disable quit notification.notifications.quit_message: message with{player}.
Dependencies
Bundles Adventure (adventure-platform-bukkit) inside its JAR,
relocated to com.chalwk.libs.adventure. No external dependencies.
Changelog
1.0.1
Changed
- Adventure (
adventure-platform-bukkit) is now shaded into the plugin JAR and relocated tocom.chalwk.libs.adventure. Runs on Spigot, Paper, and Purpur. - Help text moved out of the Java source into
config.ymlundermessages.help, so it can be customised without rebuilding.
Internal
MessageHelperis now an instance class wrappingBukkitAudiences, created inonEnableand closed inonDisable.AdminChatCommand,AdminChatListener, andAdminChatManagernow receive theMessageHelperinstance via constructor.getCommand("achat")andgetCommand("adminchat")are null-checked inonEnable.ConfigManagerno longer rewritesconfig.ymlon reload. Comments and formatting are preserved.plugin.ymlnow uses'${version}'so the version is set from the build tag.
1.0.0
- Initial release.