Advanced chat management plugin for Minecraft servers with comprehensive filtering, formatting, and moderation features.
- Custom Chat Formats: Fully customizable chat format with prefix, name, suffix, and message components
- Interactive Hover Text: Display player statistics, balance, and playtime on hover
- Click Actions: Click player names to message or execute commands
- Color & Formatting Support: RGB hex colors, legacy color codes, and native MiniMessage support (gradients, rainbows)
- Chat Colors GUI: Interactive paginated menu for selecting chat colors and gradients
- Permission-Based Formatting: Control who can use colors and formatting codes
- PlaceholderAPI Integration: Full support for PAPI placeholders in chat formats, tags, and colors
- LuckPerms Integration: Display ranks, prefixes, and suffixes from LuckPerms
- Vault Integration: Show economy balance in hover text
- Tag System: Custom player tags with GUI selection
- Chat Channels: Multi-channel support (Global, Staff, Local) with easy switching
-
Multiple Filter Types:
- Blocked Words: Block specific words and phrases
- Regex Patterns: Advanced pattern matching for advertising detection
- Spam Detection: Prevent message repetition
- Character Spam: Limit repeated characters
- Caps Lock: Prevent excessive uppercase messages
-
Pre-configured Filters:
- Profanity filter
- Slurs and hate speech (auto-mute via LiteBans)
- Self-harm encouragement (auto-mute via LiteBans)
- Sexual content (auto-mute via LiteBans)
- Drug references
- Advertising (auto-ban via LiteBans)
- Spam and character spam
- Caps lock abuse
- Doxxing attempts
- Threats and DDoS mentions
-
Filter Actions:
- Cancel message
- Notify staff members
- Send message to player
- Discord webhook notifications
- Execute custom commands (LiteBans integration)
- Warning system with tracking
- Warning System: Track player violations with persistent storage
- Staff Alerts: Real-time notifications for staff when filters are triggered
- Discord Integration: Send violation reports to Discord via webhooks with customizable embeds
- LiteBans Integration: Automatic mutes and bans for severe violations
- Alert Toggle: Staff can enable/disable filter alerts per-session
- Mentions: Tag players in chat with customizable mention format and sound
- Chat Cooldown: Configurable cooldown between messages
- Tag Selection GUI: Interactive menu to select and manage custom tags
- Chat MOTD: Welcome messages displayed on join
- Automated Announcements: Scheduled messages with customizable intervals
- Multiple Announcement Types: Discord, Store, Teams, Auction House, Buy/Sell, Unlockables, Events
- Random or Sequential Order: Choose announcement display order
- Optional Sound Effects: Play sounds with announcements
- Rich Formatting: Full color and formatting support in announcements
| Command | Aliases | Description | Permission |
|---|---|---|---|
/solaritychat |
/schat |
Main plugin command | - |
/solaritychat reload |
- | Reload configuration files | solaritychat.reload |
/solaritychat test <msg> |
- | Test message against filters | solaritychat.test |
/solaritychat toggle-alerts |
- | Toggle staff filter alerts | solaritychat.toggle-alerts |
/solaritychat warnings <p> |
- | View player warnings | solaritychat.warnings.view |
/solaritychat setwarnings <p> <n> |
- | Set player warnings | solaritychat.warnings.manage |
/solaritychat clearwarnings <p> |
- | Clear player warnings | solaritychat.warnings.manage |
/tags |
/sctags |
Open tag selection GUI | solaritychat.tags |
/colors |
/chatcolors |
Open chat color selection GUI | solaritychat.colors |
/channel <name> |
/ch |
Switch chat channels | solaritychat.channel.<name> |
/msg <p> <msg> |
/whisper |
Send a private message | - |
/reply <msg> |
/r |
Reply to last private message | - |
/clearchat |
/cc |
Clear chat for all players | solaritychat.clearchat |
solaritychat.reload- Reload plugin configurationsolaritychat.test- Test filter systemsolaritychat.toggle-alerts- Toggle filter alertssolaritychat.warnings.view- View player warningssolaritychat.warnings.manage- Manage player warningssolaritychat.clearchat- Clear chat for all players
solaritychat.format.color- Use legacy color codessolaritychat.format.hex- Use RGB hex colorssolaritychat.format.bold- Use bold formattingsolaritychat.format.italic- Use italic formattingsolaritychat.format.underline- Use underline formattingsolaritychat.format.strikethrough- Use strikethrough formattingsolaritychat.format.magic- Use magic/obfuscated formattingsolaritychat.format.minimessage- Use raw MiniMessage tags in chat
solaritychat.tags- Access tag commandssolaritychat.tags.use- Use the tag systemsolaritychat.colors- Access the /colors commandsolaritychat.color.<id>- Access to a specific color definitionsolaritychat.color.*- Access to all colorssolaritychat.channel.<name>- Access to join a specific channel
| Placeholder | Description |
|---|---|
%solaritychat_tag% |
Player's equipped tag display name |
%solaritychat_warnings% |
Player's total warnings |
%solaritychat_color% |
Player's selected color code |
%solaritychat_color_id% |
Player's selected color ID |
%solaritychat_color_display% |
Player's selected color display name |
%solaritychat_vault_balance% |
Player's economy balance |
%solaritychat_vault_prefix% |
Player's Vault/LuckPerms prefix |
%solaritychat_vault_suffix% |
Player's Vault/LuckPerms suffix |
chat:
cooldown: 0
mention:
enabled: true
char: ""
replacement: "<yellow>@%player_name%</yellow>"
sound:
name: "block.note_block.pling"
volume: 1.0
pitch: 1.0
discord:
webhook-url: "your-webhook-url"
embed:
title: "%action_type%"
color: "#3498db"
description: "%player% has been %action_verb% because they said `%message%`"
footer: "If this is false, un%action_verb% them."
timestamp-format: "M/d/yy, h:mm a"Define custom chat formats with hover text and click actions. Supports multiple formats with priority and permission-based selection.
Configure all chat filters including blocked words, regex patterns, spam detection, and actions to take when triggered.
Configure the colors GUI layout, item templates, and define unlimited custom colors, gradients, and rainbows using MiniMessage format.
Define chat channels with custom formats, ranges (local chat), and join/leave permissions.
Customize all plugin messages and notifications.
- Spigot/Paper: 1.20.1 or higher
- Java: 17 or higher
- PlaceholderAPI: For placeholder support in chat formats
- LuckPerms: For rank prefixes and suffixes
- Vault: For economy integration
- LiteBans: For automatic punishment integration
- Create a webhook in your Discord server
- Copy the webhook URL
- Paste it in
config.ymlunderdiscord.webhook-url - Customize the embed format as desired
- Reload the plugin
Each filter supports the following actions:
CANCEL_MESSAGE- Prevent the message from being sentNOTIFY_STAFF- Alert online staff membersTELL_PLAYER- Send a message to the playerDISCORD_WEBHOOK- Send notification to DiscordRUN_COMMANDS: [command1, command2]- Execute commands (use %player% placeholder)
Example:
slurs:
enabled: true
type: BLOCKED_WORDS
words:
- "badword"
actions:
- "CANCEL_MESSAGE"
- "NOTIFY_STAFF"
- "DISCORD_WEBHOOK"
- "RUN_COMMANDS: [litebans:mute %player% 1d Hate Speech]"Players can select custom tags that appear in chat after their name. Tags are configured per-player and persist across restarts. Use /tags to open the selection GUI.
The plugin features a robust, ID-based chat color system. Admins can define colors in colors.yml using modern MiniMessage tags.
- Live Previews: Players see a preview of how their text will look directly in the GUI.
- State-Aware GUI: The menu automatically shows which colors are locked, available, or currently selected.
- Admin-Friendly: If you change a color's code in the config, it updates for all players who have it selected without them needing to re-open the menu.
- Pagination: Supports infinite colors with automatic pagination.
SolarityChat supports multiple chat channels. By default, it includes:
- Global: Default channel for all players.
- Staff: Private channel for staff members (
solaritychat.channel.staff). - Local: Range-based chat for players near each other.
Use /channel <name> to switch your active channel.
Copyright (c) 2026 Busy Bee Development. All Rights Reserved.
Author: BusyBee
Version: 1.0
API Version: 1.20.1