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 Mar 30, 2013Have we found any ways to make pwnfilter - avoid - certain channels, such as towny chat channels?
-
View User Profile
-
Send Message
Posted Mar 29, 2013@add5tar Colors have been a persistent issue. I've so far found it impossible to both get color support just right, and also make sure filters run and work when people try to use color codes to hide their curses. Thats why replace rules remove color, and rewrite rules allow it. The decolor option btw gets bypassed by OP/* with pwnfilter.bypass.
-
View User Profile
-
Send Message
Posted Mar 28, 2013@tremor77
Ahh.. OK thanks that worked :) But now I have the opposite problem where it's always removing the colour codes even when "decolor" is disabled:
I also tried various event priorities without success. Any ideas?
-
View User Profile
-
Send Message
Posted Mar 28, 2013@add5tar Rewrite was developed to handle the allowance of colors, generally designed for "fun" or less naughty words. For the bad words "replace" will generally be the one you'd want to use. It can still be buggy, and color still very much depends on priority setting, vs. any other chat plugin that handles colors in chat as well. I've tried to cast a wide net with it, but keep finding cases where there are workarounds or funny bugs..
-
View User Profile
-
Send Message
Posted Mar 28, 2013Hey tremor77, Loving the latest improvements as always, but I think I might have found a bug regarding colours. On my server we don't want some people to use chat colour but any time PwnFilter performs a "then rewrite" action, chat colours work. I have tried toggling the "decolor" option but it made no difference.
For example:
-
View User Profile
-
Send Message
Posted Mar 28, 2013Version 9.0 of my language filter for Pwnfilter is out! This requires Minecraft Server Version 1.5.1 and Pwnfilter Version 2.3.5.
Go here to get it today!
https://www.facebook.com/LanguageFilter
-
View User Profile
-
Send Message
Posted Mar 28, 2013@x_clucky Still trying to figure out *how* on the sign thing. Might require a separate rules file like signs.txt or something. I don't see how I can possible run it through the existing filter.
@gumgumpuntnl I'll look into it, have you tried changing the PwnFilter config.yml priority settings?
-
View User Profile
-
Send Message
Posted Mar 28, 2013Is it possible to filter messages from Dynmap?
Now chat messages from Dynmap are not filterd by Pwnfilter.
-
View User Profile
-
Send Message
Posted Mar 27, 2013:'( So I take it you will not be adding anvil/sign censoring before 1.6 :'(
-
View User Profile
-
Send Message
Posted Mar 27, 2013@Min3Cr0ft3r So like a config.yml setting of disable-bypass: true or something like that? That could be doable.. I could also create subperms of bypass, so bypass.filter, bypass.command, bypass.mute - that way * could still bypass the global mute by default.. thanks for the idea... I'll see if I can get it to work!
-
View User Profile
-
Send Message
Posted Mar 27, 2013@tremor77 I had an idea... Could the override node (pwnfilter.bypass) be an option? Like, could you enable/disable it? It seems like people having the * permission node is a problem on any server with permissions.... I know I could do without the bypass and just use console during a global mute, so it seems like making that node optional would save a lot of people a lot of trouble. Thanks for making this amazing plugin, Min3Cr0ft3r.
-
View User Profile
-
Send Message
Posted Mar 26, 2013<<reply 1363810>>
Thanks
<reply 1363793>>
Rofl.
-
View User Profile
-
Send Message
Posted Mar 26, 2013-
View User Profile
-
Send Message
Posted Mar 26, 2013@mrchasez
Don't use an illegal copy of server and clients and you won't have that problem.
-
View User Profile
-
Send Message
Posted Mar 26, 2013@tremor77
After updating to version 2.3.3 some users can't /login anymore because they have blocked words in there password like "Fuck". Which we have blocked. This wasn't an issue and passwords were fine until that update, so can you fix this?
-
View User Profile
-
Send Message
Posted Mar 25, 2013@x_clucky
What do you mean they left? Why did they leave and where did they go?
-
View User Profile
-
Send Message
Posted Mar 24, 2013Just a note there may be a bug with 2.3.4 when trying the command aliases as i laid them out.. going to have to look into it but it doesn't appear to actually require a command.
fixed for 2.3.5
try a rule like this one
When a place types /danc (if they have the /me command) it will write - tremor dances and if they add /dance like the wind, it will emote - tremor dances like the wind
Sorry for the 2.3.4 bug and then the delay in getting the fix out. I've thoroughly tested this time so everything should be cool. Also added command blacklist list to the config.yml - so if there are commands you NEVER want filtered no matter what, add them to the blacklist.
-
View User Profile
-
Send Message
Posted Mar 24, 2013@kangarko Well, the new alias feature in 2.3.4 was just an unexpected surprise by adding a feature requests for have a "require command" or "ignore command" option for the rules.txt as opposed to using the config.yml's command filter list.
I'll make a quick explanation here.
1. Leave your config.yml entry for command list empty so you can monitor all commands: cmdlist: []
2. Create a rule in rules.txt like the one below.
3. When player types "/dance" it will alias to"/me busts out some moves, some sweet moves." *note, player needs to have permission to use /me also.
A more practical application would be to shorter longer commands like /clan clanchat join to just /cc join.
Also, the ignore/require command can be applied to any rules where you want freedom from the rule.. in my case "/at" is the admin chat channel.. which we would want to be free from filtering.
-
View User Profile
-
Send Message
Posted Mar 24, 2013@tremor77
Yeah, they've been being a royal pain in the ass recently. It's a no wonder Towny and Stargate left DBO :/ Can't wait for Minecraft API to be released so that DBO goes underground... :/ They approve Orebfuscator's new builds within 4-5 hours... It's just not right...
Also, perhaps in the config create a default setting for not including a filter, so players can set the plugin. This way admins can set if not including the "ignore command" or "require command," will either censor commands for all unspecified filters, or not censor commands for unspecified filters.
-
View User Profile
-
Send Message
Posted Mar 24, 2013@Minecraftian_Servers you can prevent or manipulate pretty much any single chat or even command text, and apply behaviors upon that check. It does not protect against message flooding however, there are other plugins that are more appropriate fir that, This is not your average install and go Bukkit plugin though,.. it is very powerful and flexible, thus requires quite a bit of configuration. There are a number of published rules that people have submitted however that you can use/edit to your liking