PwnFilter
Update: 2023-04-20 - PwnFilter EOL Statement
Major changes to chat from Mojang that include chat reporting and signed messages may render PwnFilter no longer usable. The developers of PwnFiilter have not maintained the plugin since 2016, and it has continued to work up until now. We don't see a new version coming out anytime soon and urge server owners to find an alternative. We hear good things about VentureChat - https://www.spigotmc.org/resources/venturechat.771/
-tremor.
About PwnFilter
PwnFilter is way more than just your average word-blocking plugin, PwnFilter uses the power of Regular-Expressions ("RegEx") to give you a highly effective and highly configurable plugin to filter anything you want from chat! Matching words can be rewritten, logged, blocked, and managed, depending on the rules you define. Use PwnFilter for:
- Extremely effective chat/command filtering: Filter anything you want with RegEx!
- Extremely effective curse/swear word filtering, warn users who use bad language, turn their profanities into harmless language, or just deny their message entirely!
- Assign appropriate punishment levels based on severity.
- Anti-Advertisement: IP/URL filtering
- Make fun chat replacements for your server's inside-jokes.
- Single line spam filtering: Remove repetitive characters like hiiiiiiiiiiiii to hi.
- CAPS Blocking capability
- Typo correction: Replace common and annoying typos like "teh" to "the" or "u" or "you"
- Customizable warning messages
- Command aliases: Automatically recognize a !command and change to /longer command, Stop yourself from accidentally sending those embarrassing .commands to chat for everyone to see.
- A few built-in punishments like burn, kill, fine (charge money!), warn, kick, and ban. Or simply utilize the "then console" action to make your server console execute almost any command from any other plugin as if you typed it yourself in the console window, especially if you use a plugin that adds a plethora of punishments, like PunishMental, or use it to make PwnFilter send the appropriate commands to your favorite ban-management system to let it handle what to do!
Think of this plugin as a platform for the power of RegEx, the matching rules are 100% entirely up to you, and there are a hundred ways to do something. The possibilities are endless, the power is as dynamic as you want it to be depending on how much effort you put into having the best RegEx rules.
PwnFilter is a revival and complete rewrite of the RegexFilter plugin by FloydATC. Thanks to DreamPhreak for helping with this Bukkit page, to Sage905 for taking over the latest branch of development making PwnFilter even better than ever, and to EpicAtrain for developing comprehensive regex rules for server owners to use.
Features:
- Filter Chat! (of course)
- Filter Item Names! (Anvil)
- Filter Signs!
- Filter Commands!
- Filter Console!
- Filter Books! (Coming in next version!)
- Filter Nametags!
- Built-in anti-spam feature can be enabled in config.
- Commands for OP or by permission node.
- Supports color message replacement.
- Globally clear all player's chat windows with "/pfcls".
- Global mute with "/pfmute" - stops all server chat and commands for making admin announcements.
- Command typos beginning with certain characters can be stopped (like . and 7, accidentally instead of / and &).
- Optionally recover those typos and execute the command as intended.
- Define your own macros or command aliases.
- Simple but powerful configuration with built-in debugging.
- Each regular expression is compiled only once => very fast.
- Able to reload all your PwnFilter rules & config files without needing to restart the server with "/pfreload".
- Optionally kick or warn players on rule matches AND/OR:
- Execute commands from console or other plugins.
- Use randrep action to replace swears with a random multiple option.
- Use lower action to replace text to all lowercase (great for those CAPS chatters).
- True command aliases, link faux commands like /wave to /me waves at you.
- Customizable 'permission denied' messages
Issues & Conflicts
Plugin Conflicts: If you notice that PwnFilter conflicts/interferes with another chat-related plugin, edit your config.yml, go to the "ADVANCED" section at the bottom, unhide the priority you want to change (by removing the # in front of the line), and change the priority from the default setting "Lowest" to another setting like "Highest". This can sometimes resolve conflicts, otherwise ask on our forum or create a ticket.
Permission Bypass: The permission node pwnfilter.bypass is automatically granted to OP and players with * permission nodes. If you do not want these players bypassing the filter at all, you must negate this permission node for them in your Permissions Plugin's files.
Plugin Metrics
This plugin utilizes Hidendra's plugin metrics system, which means that some information is collected and sent to mcstats.org. If you wish to disable this feature, you can do so by opting out, which you can do in the PluginMetrics' config file under /YourServer/plugins/PluginMetrics/
Links & Info
- PwnPlantGrowth - Customize, modify, block all plant growth with varying configurations, including biome based and light level based farming.
- PwnChickenLay - Configure or block how fast chickens can lay eggs, or replace eggs with other items like diamonds, bricks, anything you can think of.
- ResPwn - Configure useful and fun player respawn options like temporary forcefields, armor and weapons.
- PwnPvpBalance - Balance the tide of uneven game mechanics with options to help players with poor PvP skills be more competitive, and give good players a better challenge.
- PwnFilter Regex Forum - Have questions about using RegEx or want to show your rules.txt off? Visit our RegEx forum here on DBO!
- Pwn9.com - Visit the Pwn9 Gaming Community, the place we call home. Check out our Minecraft servers, other game servers and fun gaming community.
- Discord Server: Join us @ https://discord.gg/qde6rVn - feel free to ask PwnFilter or RegEx questions on the channel or just come hang out with us.
- Development builds of this project can be acquired at the provided continuous integration server. These builds have not been approved by the BukkitDev staff. Use them at your own risk. ci.sagely.ca
Donate
All of our "Pwn-" plugins are completely free of charge. We work hard to bring you the best, powerful, and up-to-date plugins. If we have helped you in any way, please consider a donation of any amount (Using the "Donate" button on the top-right of this page, or clicking HERE). All donations are GREATLY appreciated for all of the time that goes into this plugin and support.
EpicATrain's version 10.0 filter has been temporarily removed, due to a few issues. The classic language filter is still available here: http://pastebin.com/u/EpicATrain
-
View User Profile
-
Send Message
Posted Apr 12, 2013@Kami675
Its a regex rule, and to prevent regex from recognizing a rule, simply put a slash before it like:
-
View User Profile
-
Send Message
Posted Apr 12, 2013is there any way to block the (dot)?
-
View User Profile
-
Send Message
Posted Apr 12, 2013@Helionixdesti
I second this.
-
View User Profile
-
Send Message
Posted Apr 12, 2013Hi there, i was wondering if you could add an exception for player name.
Example i want to deny servernamecraft in the chat, problem is if a player name is mistercraft for example, people won't be able to pm him ect ...
Thanks for reading and very nice plugin !
Helio
-
View User Profile
-
Send Message
Posted Apr 12, 2013@DreamPhreak
Spent ages working on my delay plugin then read your post lol easy fix. Just nearly exploded my head before I found out it was the filter not booscooldowns lol
-
View User Profile
-
Send Message
Posted Apr 10, 2013@monstercat101
The default config.yml has some command samples: http://dev.bukkit.org/server-mods/pwnfilter/pages/configuration/
-
View User Profile
-
Send Message
Posted Apr 10, 2013@tremor77
That part with the client not being able to connect back isnt our fault, nor any plugin or server. Its from minecraft. If you try to join a server, and then cancel, and then try to join it again, all as fast as you can, it wouldnt be able to ping the server and would say in red letters something about the server connection. I see that issue all the time with my unmodded minecraft client, I suspect its just to prevent ping spam, or there is a time limit before it can be pinged again to get the server details to connect to it.
But, this isnt the place for discussion on that. Just basically, its built-into minecraft, cant fix it, thats all.
-
View User Profile
-
Send Message
Posted Apr 10, 2013Is there anyway to disable to command whitelist/blacklist?
-
View User Profile
-
Send Message
Posted Apr 10, 2013@DreamPhreak
@tremor77
Ok, thanks a lot :)
-
View User Profile
-
Send Message
Posted Apr 10, 2013@monstercat101 commandspamfilter blocks any immediate duplication of commands.. it's only designed to be an "if no other" feature of this plugin.. meaning NoCheatPlus or other anti-spam plugins are preferred, but if you don't have them, feel free to use PwnFilter. If someone does /tp joe then the next command that they do is again /tp joe - the second gets blocked. As far as getting stopped from making commands and having to restart, I've not seen this issue with a default minecraft client and am going to assume that mods of some kind on the client are having problems with this.
-
View User Profile
-
Send Message
Posted Apr 10, 2013@monstercat101
For right now, in your config, change
So your players wont get upset, and waiting for what tremor has to say about this.
-
View User Profile
-
Send Message
Posted Apr 10, 2013This plugin seems to be attatched to a command issue, players get stopped from making commands after a short spam, and have to restart their launcher, latest version.
-
View User Profile
-
Send Message
Posted Apr 10, 2013@Marium0505 There already is "warning" messages. By warning system though do you mean a system where warnings are kept track of in some way?
@Marium0505 Good idea, if Global mute is on and players login they should be informed of the mute status. Adding to my to-do list.
@jakelauer Right now handling colors and the special character chat is going to have to undergo some work.. better options right now for disabling those elements is to set the appropriate permissions on your favorite chat managing plugin. Or the pwnfilter config.yml set decolor: true and it disables all colors/characters in chat.
-
View User Profile
-
Send Message
Posted Apr 9, 2013Any way to match &k and similar to disable them?
-
View User Profile
-
Send Message
Posted Apr 9, 2013Could you also make the mute feature inform new players on login about the mute, with the message if one has been specified?
-
View User Profile
-
Send Message
Posted Apr 9, 2013Can you add a warning system?
-
View User Profile
-
Send Message
Posted Apr 9, 2013@mrchasez For 2.4.0+ the permission has changed to pwnfilter.bypass.color maybe that will work.
-
View User Profile
-
Send Message
Posted Apr 9, 2013@tremor77
pwnfilter.color does not enable select users to use color. Plugin was fine until we updated to 2.3.5 from an older version. decolor is true in the config, but users with the permission still can't use any color.
-
View User Profile
-
Send Message
Posted Apr 9, 2013@x_cluckyMake decolor: false - that might be doing it.
@DreamPhreak Awesome stuff there and I just discovered this:
Try this as a rule in your rules.txt
This may work in the latest version 2.4.0 - and it will definitely work in 2.4.1 which I will upload later today after some testing.
Users with the permission essentials.tpa will be able to use /tpa like normal. Users without it will get that warning message (which, you can format or colorize how you like)
I think server admins are about to be really excited about the possibility of editing no permission messages.. which is what this effectively does.
-
View User Profile
-
Send Message
Posted Apr 9, 2013@tremor77
No, I do not have pwnfilter.color permission node; however, I have also noticed that the command filter does not work with my Herochat channels, could this be the same reason as to why the color isn't working?