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 Jun 13, 2013@LiLChris06
Good call...
When I was a Sysadmin, we had a saying: Man who makes a change on Friday wants to work the weekend. :)
-Sage
-
View User Profile
-
Send Message
Posted Jun 13, 2013Yes I am on Spigot, will give it a try next week as I don't like updating so close to the weekend.
Using an earlier build for the time being, will add your Jenkins to my favs. :)
-
View User Profile
-
Send Message
Posted Jun 13, 2013@LiLChris06
I think you're running a Spigot server, is that correct?
I have made a change to the way metrics is included. Can you try the most recent build from my CI server? Please note that builds on the CI server have not gone through bukkit review and are provided for use at your own risk.
http://ci.toal.ca/job/PwnFilter/
-Sage
-
View User Profile
-
Send Message
Posted Jun 13, 2013@LiLChris06
Hi LilChris06: What version of PwnFilter are you using, please? I don't see that error.
-Sage
-
View User Profile
-
Send Message
Posted Jun 12, 201301:42:28 [WARNING] Plugin from file: file:/plugins/PwnFilter.jar has embedded Metrics in the default package. This is not advisable, go nag them!
It yelled at me to tell you. :p
-
View User Profile
-
Send Message
Posted Jun 12, 2013@TheMuffinMon
The more I put into this plugin, the more things people find to add. :)
I'll put it on the "to investigate" list. I'm actually looking into some changes that would make configuration easier, and multiverse support might be easier after that.
No guarantees, mind you. :)
-Sage
-
View User Profile
-
Send Message
Posted Jun 12, 2013@Sage905
Yes I meant different filters for different worlds :/
Are you guys able to implement this in a future update? I would really appreciate that, and so would many other people :D
-
View User Profile
-
Send Message
Posted Jun 12, 2013@TheMuffinMon
PwnFilter should be multiverse agnostic.
Do you mean you want different filters for different worlds? It doesn't have support for that.
-Sage
-
View User Profile
-
Send Message
Posted Jun 12, 2013@DreamPhreak
Thank you, and one more thing:
Does PwnFilter have multiverse support?
-
View User Profile
-
Send Message
Posted Jun 12, 2013@TheMuffinMon
Adding word-boundaries (\b) around the specific word you want would make it so it would only match if the word is a word by itself, not part of another word. So you could do:
-
View User Profile
-
Send Message
Posted Jun 12, 2013@keruseya
Can you tell us which version of the software you are using? How many online players does your server typically handle?
In the most recent (3.1.0-rc) builds, we've implemented a data cache to be threadsafe. On large servers, it might take a few seconds to get all of the data cached. We process 20 players per second at the moment. I've been thinking about making that a configurable option, but if you only have 100 or so players, the most it should take is 5 seconds for the cache to populate.
-Sage
-
View User Profile
-
Send Message
Posted Jun 12, 2013Hi all,
Having an issue where some players seem to be randomly muted and whatnot when they log-in, which is only being fixed with a restart or reload. Any idea what's going on here? :S
-
View User Profile
-
Send Message
Posted Jun 12, 2013Hi,
I am having a problem with this:
Basically, in my regex config, I have it to where the word "lag" is filtered to "oac" and when someone says something like flag or villager, it says something like foac or viloacer.
Not sure how to configure this replace word configuration to where it ignores the "lag" in words like villager or flag.
-
View User Profile
-
Send Message
Posted Jun 11, 2013@tremor77
Thanks for that. Is it just me or its the way bukkit does it is a bit counterintuitive? Also thanks for the fix you mentioned I will try and let you know asap.
edit: The build you linked me works fine. I have staff with the perm for colours so they can still have their coloured chat and players can't use the colours. :)
-
View User Profile
-
Send Message
Posted Jun 11, 2013@Sage905
Thank you Sage!
That did the trick!
-
View User Profile
-
Send Message
Posted Jun 11, 2013@TheMuffinMon
Hey Mon,
There are two ways to avoid this:
PwnFilter should only affect formatting if there's a match / action on the text. If the filter doesn't change any of the text, it doesn't mess with it at all.
The reason it's implemented this way is that when we replace the text, we might change the amount of text that can fit on a line. So we take all 4 lines, put them together as one, run the rules, replace text, and then re-split the text over the 4 lines. If we don't replace any text, we also don't change the formatting. If you see different behaviour, please let us know!
-Sage
-
View User Profile
-
Send Message
Posted Jun 11, 2013@CaznowlSMPJust so everyone knows a little something about bukkit priority settings, highest is actually lowest and lowest is highest.. to make pwnfilter act 1st over plugin conflicts the setting should be moved to "lowest".
@TheMuffinMonDon't signs naturally center align their text? I don't think pwnfilter has anything to do with alignment.
-
View User Profile
-
Send Message
Posted Jun 11, 2013Hello,
When people are trying to use lockette to lock their doors, pwnfilter decides to center EVERYTHING, rendering lockette useless.
How can I disable the sign centering feature in pwnfilter?
Thanks.
-
View User Profile
-
Send Message
Posted Jun 11, 2013@CaznowlSMP
Looking back through the code, I realize that I broke the decolor option by moving things around. Sorry about that.
There's a new build which should fix this on my Jenkins server: http://ci.toal.ca/ (Build 19) Grab the PwnFilter.jar artifact and let me know how it goes?
-Sage
-
View User Profile
-
Send Message
Posted Jun 10, 2013@Sage905
Thanks for the info. I don't think a then decolour would be needed. I wil ldo as you said and report back asap. Thanks for the reply
edit: I put the permission in and when I went to change decolor to true I noticed it already was set to true.
So Somehow Fancytext is overwritting your plugin even with pwnfilter set to highest.