Taking Charge of Your Server Chat with MessageFilter
Running a Minecraft server is a blast, but the chat can quickly become a chaotic stream of automated messages, plugin spam, and untranslated gibberish. You want your players to see only what matters, and you might even need to turn that messy plugin output into something clean and readable. That is exactly where MessageFilter steps in — a powerful, lightweight tool that puts you in full control of every line that appears in your server chat, no matter which plugin sends it.
Whether you are tired of seeing the same warning every few seconds, want to hide join/leave messages from a specific add-on, or need to translate a plugin that lacks language support, MessageFilter gives you the flexibility to rewrite, suppress, or delay any message in real time. It works silently in the background, intercepting messages before they reach players and applying your custom rules.
Why Server Admins Love MessageFilter
Imagine a scenario: you run a protection plugin that constantly reminds players “This area is protected.” It is helpful once, but after the tenth time in a minute, it becomes noise. With MessageFilter, you can set a cooldown so that identical messages appear only once every 30 seconds. Or you can replace the text entirely with a friendlier version. The plugin even supports regex patterns, giving you surgical precision when dealing with complex message formats.
Another standout use case is translation. Many older or niche plugins do not offer editable language files. MessageFilter lets you catch those hardcoded English strings and swap them for your local language — essentially turning any plugin into a multilingual one without touching its source code.
Key Features at a Glance
- Message Hiding: Completely block annoying or redundant messages from ever appearing.
- Message Replacement: Change any text to your own custom output, including color codes.
- Cooldown Control: Limit how often a specific message can be displayed, preventing spam.
- Flexible Matching: Use exact, case-insensitive, starts-with, ends-with, or regex comparisons.
- Dynamic Placeholders: Capture words from the original message with %word1%, %word2% and reuse them in the replacement.
- Rule File Management: All rules are stored as YAML files, easy to edit manually or via in-game commands.
- Incoming Message Capture: Save live chat messages directly into a rule file for quick configuration.
How the Magic Happens
MessageFilter acts as a chat interceptor. Every time a plugin or the server itself sends a message, the filter checks it against your defined rules. Each rule consists of a type, a message mask, an optional replacement, and a cooldown time. The type tells the plugin how to compare the incoming text. For example, EQUAL matches the whole message ignoring case, while REGEX uses regular expressions for advanced pattern matching.
If a rule fires and a replacement is set, the original message is swapped out. If the replacement is left empty, the message is simply hidden. Cooldown time works like a throttle: you can set “5s” to see a message only once every five seconds, or “1m” for once a minute. This way, vital alerts still get through but without flooding the chat.
One clever detail is the placeholder system. If your original message is “Player Steve has earned 50 coins” and you want to translate it, you can set the replacement to “&6%word1% &ehat &6%word4% &eMünzen verdient.” The placeholders %word1% and %word4% will automatically pull “Player” and “50” from the original, keeping the dynamic parts intact.
Commands and Rule Creation
Managing rules is straightforward with the /msgfilter command (aliases: /mfilter, /filter). You can add a new rule, set its type, input mask, output, cooldown, and group — all from the console or in-game. For example:
/msgfilter add myrule
/msgfilter set myrule type EQUAL
/msgfilter set myrule input This is spam
/msgfilter set myrule output &aMuch better text
If you prefer a hands-off approach, you can use the save command to capture incoming messages directly. Type /msgfilter save test1 and the very next chat message will be written into a rule file. You can even specify a number of messages or a time window, like /msgfilter save test2 10m to record everything for ten minutes. This makes building a translation library incredibly fast.
For those who enjoy tinkering with files, all rules live in the MessageFilter/rules folder as YAML. A typical rule file looks like this:
roadprotector: type: EQUAL message-mask: '&3[RP] &cThis place is protected!' replace-to: '&6You cannot break or build here!' cooldown-time: '' use-formating: true
Editing YAML by hand gives you complete control and the ability to share rule packs with other admins. The plugin also includes a self-test command (/msgfilter test) to confirm everything is working correctly. If the test fails, you will usually need to install or update ProtocolLib, the only hard dependency.
Real-World Scenarios and Pro Tips
Let us say you run a minigame server and a scoreboard plugin spams “+1 Kill” every second. With a regex rule and a 3-second cooldown, you can reduce that to a clean, periodic update. Or maybe you host an international community and want to localize a quest plugin that only speaks English. By capturing a few messages and setting up EQUAL rules with translated replacements, your players will feel right at home.
Server-side tools like MessageFilter can be quickly added to your setup using the foxygame.net launcher, a modern and flexible launcher that lets you download mods and plugins directly from its menu, streamlining the whole installation process. Once installed, remember that MessageFilter includes an update checker that pings dev.bukkit.org hourly. If you prefer to disable it, just set version-check to false in config.yml.
Final Thoughts
MessageFilter is one of those plugins that quietly solves a dozen problems you did not even realize you had. It tames chat clutter, bridges language gaps, and gives you a level of message customization that most server software lacks out of the box. The combination of command-based and file-based configuration makes it accessible to beginners while powerful enough for seasoned server owners. Whether you are hiding a single spammy line or building a complete translation layer, MessageFilter delivers exactly what it promises — total chat control, without the bloat.