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 Oct 30, 2013@EpicATrain - I think the new filter broke the chat on my server, I made a new section with my custom commands and pasted them from old rules.txt, and now all bad language goes through. Do you know why? I'm using both latest Pwnfilter and latest of your filter.
-
View User Profile
-
Send Message
Posted Oct 28, 2013Attention Server Owners! A New Version Of My CLASSIC Language Filter Has Been Released! Version 9.3 Supports Minecraft 1.6.4 And Pwnfilter Version 3.1.2! http://pastebin.com/u/EpicATrain
Also finished is my new version of my language filter which has over 1000 rules and will be released with the next release of Pwnfilter! Keep an eye out for that because that will be a multi-file system for easier editing!
On a positive note, I am going to Minecon! Keep an eye and ear out for me! I will be handing out business cards to promote my language filter and the server I'm being sponsored by. I will also have a Neat-o shirt on which was designed by me which I will upload here shortly!
-
View User Profile
-
Send Message
Posted Oct 24, 2013@DreamPhreak
Perfect. Thank you very much!
-
View User Profile
-
Send Message
Posted Oct 23, 2013Colors still don't work for my user messages. They don't have essentials permission for colored chat but that didn't used to matter. I remember speaking to one of the devs about it but we never found out why. Users can use color with the essentials.chat.color permission but that didn't used to matter.
match -+t+e+s+t
then rewrite &aTest Message
That message used to show up in color for them even without permission to use color in chat normally. I still wish this could be fixed.
-
View User Profile
-
Send Message
Posted Oct 23, 2013@Chalkie19
\s means any whitespace character (spaces, tabs). The asterisk * means '0 or more times', and it's a greedy match so it will try to get as many as possible before hitting the next character, which could get f___uck, or fu_c_k, or simply fuck.
-
View User Profile
-
Send Message
Posted Oct 22, 2013Is there a regex argument to stop people bypassing it with f u c k instead of fuck? (besides adding the word.
-
View User Profile
-
Send Message
Posted Oct 22, 2013@abcdstfu
"I thought that it may be a bit rude to do so, as it is full of swears that we have accumulated over time."
It's totally fine. We are all in understanding that swear words posted here aren't against anyone in particular, it's just what this plugin is mainly about; All of us here are server admins with the same goal filtering out these swear words. Putting the actual filters you have on here instead of censoring it helps us to understand/read it better rather than trying to figure out the problems through the censors.
And also if you didn't feel totally comfortable posting it directly on here, you can always post it to pastebin.com or pastie.org and just us link to the page. :)
What Sage905 is saying is that instead of having just the 'basic' words like ass and try to match that, you would be better off adding some regex to it like \bass\b so it only matches that specific word and NOT as part of another word like ass in grass.
We could give you a lot more support on this subject if you post on the forum, cause I could easily fill up this front page with examples/explanations. There is so much regex you can apply to every single word, which makes PwnFilter so powerful because it's only limited by how much work you want to put into it.
-
View User Profile
-
Send Message
Posted Oct 21, 2013Thanks for the quick reply, always a great sign of a great developer :) Sorry for not posting the filter, I thought that it may be a bit rude to do so, as it is full of swears that we have accumulated over time. I will post it below, it is just a modified version of the one in the rules file.
Could you explain your previous suggestion a little more? I am new to all of this :D Again, thanks!
-
View User Profile
-
Send Message
Posted Oct 21, 2013@YiveMe
You should be able to disable that by setting:
in your config.yml
-
View User Profile
-
Send Message
Posted Oct 21, 2013@abcdstfu
You didn't post a link to your filter, but I'm presuming you have something like:
If so, then what you need is to build better regular expressions. There are some tips in the forums and in the "samples", but here's a quick fix:
match \bass\b (the \b matches a "word boundary", so the beginning or end of a line, or a non-word character)
@abcdstfu
-
View User Profile
-
Send Message
Posted Oct 21, 2013Hey there. I am having an interesting issue with the plugin. I am using a list of swears that are fed into a randrep list. It uses 'Frick' and 'frack' as replacements. My players have been running into chat issues though even when not swearing, but saying words like 'glass' and 'title'. I see that the filter is picking up on swears within the words too. Is there a way to disable that? Thanks :-)
-
View User Profile
-
Send Message
Posted Oct 17, 2013This may be obvious to some, but is there a way to cancel the /pfmute from in game?
I've only been able to do pfmute from the console to turn it off. I'd like to give this perm to my staff for when chat gets out of hand, but they need to be able to re-enable chat afterwards.
Thanks!
Edit - nvm - Figured it out. I'll leave the comment if anyone else is looking for how to turn off the global mute: give the pwnfilter.bypass.mute permission to the staff and then they can turn it off.
-
View User Profile
-
Send Message
Posted Oct 13, 2013How do I block out this from the logs?
http://pastebin.com/ZzQ8Zaax
-
View User Profile
-
Send Message
Posted Oct 12, 2013Awesome :3
-
View User Profile
-
Send Message
Posted Sep 30, 2013@mrchasez
don't forget the then before replace then replace not replace . you are doing it wrong.
-
View User Profile
-
Send Message
Posted Sep 30, 2013Okay, i tried to search but i didint understand anything... I prefer waiting until the new update to be released :D
-
View User Profile
-
Send Message
Posted Sep 27, 2013@Sage905
yes i have '*' and iam OP... is perhaps due to the new PermissionsEx v1.20.2 ?!
i used pex 1.19.6
-
View User Profile
-
Send Message
Posted Sep 27, 2013@NoHoPeLess
Are you sure that you have the pwnfilter.bypass.chat and/or pwnfilter.bypass.commands permissions?
@mrchasez
I'm not sure how this could be happening. Are you sure that you don't have a rule somewhere later in your rules file that is matching Fish! ?
You could set debug: high in your config file, then check the pwnfilter.log file to see what we're actually matching / executing.
@zaino60
This is a rough one. There's only so much you can catch with regex rules, before you hit a false positive. There are a couple of options:
@LeakCraft Yes. This is a PwnFilter bug that I forgot about. If you add a colour code to the end of the replace string, it is currently ignored by the PwnFilter logic. I will try to fix this in the 3.2 release.
@zaino60 You will need to edit the regex rules to take these extra characters into account. I'm afraid I don't have the time to go into details right now, but if you search through the comments and/or the Forum, you will find examples of how to accomplish this.
-Sage
-
View User Profile
-
Send Message
Posted Sep 27, 2013All,
Just to let you know that we're still active, and still working on things, but we're very busy right now, so responses are going to be delayed.
I'm working on a number of big changes for PwnFilter 3.2, which are taking up most of my "spare" time, and tremor, DreamPhreak and I are also very busy IRL right now.
So, sorry for the delays in responses. We'll try to get around to everything as quickly as we can.
-Sage
-
View User Profile
-
Send Message
Posted Sep 26, 2013With the new pwfilter when i write a ip or something i got banned oO iam op with '*' whats going on?