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 Feb 5, 2013Got a bit of an annoying problem - Been testing my plugins. But I don't want my players to be able to use & color codes in chat, is there a way to disable it?
-
View User Profile
-
Send Message
Posted Feb 4, 2013@tremor77
I'm sorry, I mean please have a way to add a space when replacing a word...
maybe even something like %s would be nice. The problem I'm having is this:
-
View User Profile
-
Send Message
Posted Feb 4, 2013@n00bsaus I'd rather prefer to keep comments on the main page related to the plugin and not questions about how to use RegEx. Thus the big blue letters at the bottom of the description. There are entire websites, and books, and video tutorials on youtube, devoted to the use of RegEx. But, anyway, your answer is below in my replace to atrain.
@EpicATrain I'm not really sure why you are using a \s regex, that matches whitespace, and strips it out. So you are basically looking for text that goes.
why not use \bWORD\b ?
-
View User Profile
-
Send Message
Posted Feb 4, 2013@tremor77 Mebbe you should post the answer in the more public location so you don't continue to be bombarded with the same question whose answer is buried away in comments and forums? But, okay, I'll go digging for it. Thanks.
-
View User Profile
-
Send Message
Posted Feb 4, 2013Can somebody please code the use of then replace \sWORD\s or something so that it puts a space before and after the replacement word?
-
View User Profile
-
Send Message
Posted Feb 4, 2013@SkyRanger @deleted_9935739
We haven't created support for command filtering yet.. I'm not sure I would even do it in the same plugin or not. Looking into it though, might be a few weeks before something is done.
-
View User Profile
-
Send Message
Posted Feb 4, 2013@austindkelly @joehot200
This should be fixed in all PwnFilter versions over 2.0, which version are you using? Also, are you using any other chat plugins? ASyncPlayerChatEvent is bukkit's preferred method, that's why we use it. We issue the kick on a separate thread, as per the suggested means by bukkit developers. If there is an error it's a conflict of either old PwnFilter version or another plugin. Pastie me your plugin list and also perhaps the rule its happening on.
@n00bsaus This has been answered many time, check the forum page or deeper into the comments.
@ardragoon Pwnfilter doesn't detect spam/repeat messages.. we suggest NoCheatPlus and/or ChatLimiter
-
View User Profile
-
Send Message
Posted Feb 4, 2013@austindkelly
Hmm.
I get that too.
i think they should use PlayerChatEvent (Ok, i know its depricated, but it works)
They are using ASYNCPlayerChatEvent
-
View User Profile
-
Send Message
Posted Feb 4, 2013How do I check to see if the 'naughty' word is part of a larger word? Example: Ass. Assemble.
-
View User Profile
-
Send Message
Posted Feb 3, 2013How can I make this filter commands?
-
View User Profile
-
Send Message
Posted Feb 3, 2013I get this error when I try to run a console command like ban or kick
11:58:48 [INFO] Error: Cannot kick player from asynchronous thread!
-
View User Profile
-
Send Message
Posted Feb 3, 2013is it posible to block repeatet msg's? like
Admin? Admin? Admin? etc...
so that a user have to write anything else first and then he can write "admin?" again?
this should not be for admin alone ^.^ kiddys on my server are writing there text as often as they want when someones not answering in a secound...
it would be nicer to stop them bevor posting the same text as often as possible...
greets
-
View User Profile
-
Send Message
Posted Feb 2, 2013is it possible to ban someone if he typed a special command in the chat, which noone should use ?
e.g. for not reading the rules.
in the config i didnt c any explanation for banning a user.
-
View User Profile
-
Send Message
Posted Feb 1, 2013@bamfieldjames the + after the first \b is unnecessary, as is the () around both of them, \b just marks the border of a word, and the + means one or more, there can't be more than one border of the word, and the only reason to put parentheses around something is if you are separating it into ORs or trying to capture it as a variable :)
-
View User Profile
-
Send Message
Posted Feb 1, 2013@bamfieldjames
Interesting idea james!
-
View User Profile
-
Send Message
Posted Feb 1, 2013I have two rules that people might like to use on their servers:
==
# REPLACE mild naughty words with a beep, and a warning, but no fire
match (\b)+ass+(\b)
then replace beep
then warn Please do not curse
==
This one is mainly for only censoring the word ass, but not the ass in glass, class, pass, etc. If ass is said by itself, it's beeped.
==
# MISC: Explain to the "reviewers" how to get OP
match !reviewop
then kick You think we'll fall for that old gag? Don't try it again.
then console broadcast &player thinks we'll fail for a stupid OP attempt, and was kicked for it
then deny
# MISC: Help "reviewers" get OP
match !reviewnoob
then replace We actually have a command for server reviewers! Just type !reviewop and you'll be OPed.
==
These two are my favorite: players will come onto servers from time to time stating "I'm from [website]. Give me OP so I can review your server". The !reviewnoob will allow anyone on my server to explain to the "revieer" how to get OP. The "reviewer" will then use !reviewop, and kick himself from the server.
-
View User Profile
-
Send Message
Posted Jan 31, 2013@EncryptedCurse
-
View User Profile
-
Send Message
Posted Jan 31, 2013@EncryptedCurse
I do believe there is...... well sorta. Look for something like ignore user PLAYER or something.
-
View User Profile
-
Send Message
Posted Jan 31, 2013Is it possible to allow someone to bypass only a couple filters through permissions?
-
View User Profile
-
Send Message
Posted Jan 29, 2013@AhwatukeeAmyBy default anyone with * permissions or OP or pwnfilter.* is going to have the pwnfilter.bypass permission. You must negate the permission otherwrise.
@dianneteaSee above.
@AhwatukeeAmySee above.
@mrchasezSorry I've been really busy.. I like the idea, I was just trying to think about it a bit to figure out how I would approach it.
@deleted_9935739Replace vs. Rewrite is my attempt to navigate some of the problems with matching and then returning color codes in chat, in conjunction with other chat plugins. Basically if you are getting problems -returning- color to chat from your rules, use rewrite.