ChatFilter
Chat Filter
Running a family server? Fed up of griefers not only griefing your world - but your chat too? Then you need new ChatFilter!
ChatFilter lets you set up a list of trigger words that, when matched in chat will cancel the message and send the player a custom message, be it a warning or just a friendly nudge. It can even kick offenders if required.
ChatFilter offers both part and whole word matching options, so you can block messages very intelligently.
You can also set up a list of words to trigger a custom server broadcast.
And, from v2.0.0 it now screens commands of your choice - e.g. /msg
Just download - run once - and then edit lang.yml to setup your filter words and trigger phrases.
ChatFilter is a lightweight plugin for when you want a simple solution for controlling swearing on your server.
You can see the default settings here . Warning contains the swear words that trigger warnings.
Current Version: 2.0.0
Config
kick: [true|false] Set to true to kick players who swear.
showInConsole: [true|false] Show player's name and the offending message in console.
censor: [true|false] Censor messages instead of blocking entire message.
agressiveMatching: [true|false] Attempts to match more words by looking for 3=e 0=o etc.
Edit lang.yml (created on first run) to change the trigger words, commands to filter and notification text.
Commands
/ChatFilter reload Reload settings from lang.yml
Permissions
chatfilter.reload
Allows user to reload.
chatfilter.canswear
Allows users with this node to bypass filters.
chatfilter.blockchat
Users with this node cannot chat.
chatfilter.canchat
Users with this node can chat.
Changelog
1.7.2: Changed permissions node for chat to chatfilter.canchat
1.7.1: Fixed config typo
1.7.0: Aggressive matching option. Permissions node to block chat completely.
1.6.0: Permissions node for reload. Colour support.
1.5.0: Permissions node to allow select users to swear.
1.4: Optional censorship mode. Replaced words with configurable text.
1.3: Config options to enable whole word matching.
1.2: Option to display information about blocked messages in console.
1.1: Added kick option.
1.0: First release.
Source Code
https://github.com/Sablednah/ChatFilter
Donations
Donations of any amount are, of course appreciated :)
Contributions go towards maintaining my development server to encourage continued development. ChatFilter is solo coded by me so if you think that time is worth something then hit the button in the top right! ;)
@Krevex
Yeah - chatfilter grew out of an easter egg in MobHealth till it got its own plugin.
Plugin works great with towny. Nice work, something i found in the plugin.yml though made me laugh =)
chatfilter.*: description: Gives access to all MobHealth commands/functions. children:
This plugin no longer seams to filter herochat for me. Luckily HeroChat has its own filter, even if it is a bit different to use. Thanks for this plugin!
I would like to make it where even operators cant swear, including me. Anyone know how?
Works great, also with PEX, all permissions are working.
My members can swear, but not my guests.
Request:
Option to block Shit, s h i t, s.h.i.t. etc...
Possible?
And . (dot) doesn't work, so I couldn't block or censor .to (address.something.to)
Format: UTF8-Without BOM
Question:
profanityMessage <- Only the swearer could see this message, possible to make a permission.node, who can see the text?
blockMessage: <- Who could see this message? no one? Never seen.... Possible to show this only to the swearer?
@awesomebilly
Always had trouble with pex. I'll investigate and let you know how it goes.
- chatfilter.canswear
does not work with pex
thank you :3
<<reply 717329="">>
Having problems replicating your issue.
I've raised a ticket - http://dev.bukkit.org/server-mods/chatfilter/tickets/1-at-the-beginning-of-a-message/ if you could add more info there that'd be great.
@SableDnah
Thanks for the quick response. Adding ` to the censor didn't work, so I look forward to your fix.
@tmad40blue I can definitely fix that. Will get in touch if I need more info. Meanwhile i'll get a fix out soon.
btw - try adding ` to the profanity filter. Not sure if it'll work - but it might do.
@srmorris2
Yeah work on command text filtering is underway.
If you put ` at the beginning of a message, the entire message goes uncensored. This is unacceptable – several of my members have figured out how to completely bypass this plugin by typing one character in their messages.
If this isn't fixed then I'll be exploring other options =(
messages using /me are not filtered.
Would love to see a way via commands for people to add words to the watch/match list
<<reply 692013="">>
I stand corrected - looks like there is an event
public void onPlayerCommandPreprocess(PlayerCommandPreprocessEvent event)
That i can lock onto... will look into it...
<<reply 700134="">>
If the &0-&f colour codes aren't working - I'll add the next release.
As dor OPS, the default is to allow then to swear... if you want to do otherwise you'll need to set up so in permissions.
<<reply 700108="">>
I'll tweak the next release to not show any message if its blank in config ;)
There is a chatfilter.* ;) I'll add it to the docs.
There's a bug in the censoring text where accents aren't always being decoded. I'll work on it and get a fix in the next release.
<<reply 692013="">>
Tells?
You mean like whispers and other such inter player messages?
If so 'fraid not - they aren't process as chat - but as commands within each plugin :/
Is their any way to use colored text to change the censor color in the chat? If their isnt could you add it? I also have a bug where, if i am OP and i swear, it doesnt censor my words. How do i set it to CENSOR words for OP's? Thanks