NoSwearing
![]()
Overview
This plugin prevents swearing on bukkit minecraft servers. It monitors chat messages, signs, /me commands, private messages, custom made items using anvil, books, and nicknames for restricted words in the config file. Offenders are stored in the config file. You can configure the plugin to kick or ban on the final warning.
This plugin uses regular expressions for words.
Features
Monitors
- Player chats
- Signs
- Private messages
- Items named with the Anvil
- Book text and titles
- Manual warnings
- Mute players for a configured time frame after swearing.
Flags
- Ignore OPs from any checks.
- Censor messages by replacing the restricted word with another, including player name (%name%).
- Words that are abused are also logged to show frequency.
- Block words like "d$%n", "d a m n", and "@$$" with the advanced option.
- Block single character words and check for swears using a queue for players who like to swear using separate lines.
- Additionally you can remove vowels from words to compare what players are writing.
- Numbers are removed during checks to thwart things like "da1mn".
- Patterns are checked for words like "dddaaaammmnnnnn". This would be flagged.
- Can censor using a random replacement word.
- Can run custom commands instead of kicking a player.
Allowances
- Standard word conventions such as apostrophes are permitted within certain restraints. "I'm", "don't", "you're" will not be flagged, while "cr'ap" would be flagged.
- Websites are allowed.
- & colors are not flagged.
- Symbols "-" and "_" are allowed in specific patterns.
- Online usernames are not flagged.
- Allow list is used to enable words with symbols like "o_O".
History
The reason that I wrote this was because I have been finding signs all over my server with restricted words and couldn't find a plugin that checked signs. I decided not to stop there and that is why this plugin restricts swearing in more than just chat.
Usage
Example:
- To block hell but not hello, the plugin understands hell!o as matching hell but not hello.
- Word borders are understood as /b. borders can only be at the beginning or end of a word.
- /i is used to ignore words for the removeVowels option.
Commands
- /ns warnings - View your current warnings
- /ns report - Report the last flagged word for owners review
- /ns info - View plugin info
- /ns add <word> - Add a word to the banned list
- /ns allow <word> - Add a word containing symbols to the symbols allowed list.
- /ns exempt <player> - Stop issuing warnings to specified player
- /ns notexempt <player> - Remove player for exempt list and continue issuing warnings
- /ns review - View all the words users flagged for review
- /ns remove <word> - Remove players request to review word
- /ns removeall - Remove all player requests for reviewing words
- /ns clear <player> - Remove warnings player has received
- /ns delete <word> - Remove a word from the banned words list
Permissions
- - ns.add
- - ns.allow
- - ns.exempt
- - ns.notexempt
- - ns.review
- - ns.remove
- - ns.remove
- - ns.clear
- - ns.delete
Configuration
Configuration file information Youtube review
Source Code
Source Download
Comments
Please give me input, thank you.
My website: http://www.graphicport.net
My server: http://minecraft.graphicport.net
-
View User Profile
-
Send Message
Posted Apr 12, 2013Could you add the feature to run a console command when someone swears? Eg /jail
-
View User Profile
-
Send Message
Posted Apr 11, 2013If you support regex, please correct your regex to correctly allow the proper input, IE \b instead of /b, otherwise my filter will never be compatible with your plugin.
-
View User Profile
-
Send Message
Posted Apr 11, 2013Scott, great talking to you today on your server. My email is myncraft1@gmail.com and I'd love to discuss the external REGEX support with you.
Best, Joseph (JAG100)
-
View User Profile
-
Send Message
Posted Apr 11, 2013@xavierarmadillo - I'd love to test 1.0.0.9 to determine if it fixes the sign issue. Typing all of the variations of upper/lower case for the naughty words is exhausting. LOL
Where can I download 1.0.0.9???
-
View User Profile
-
Send Message
Posted Apr 11, 2013@JAG100
Try 1.0.0.9 and see if that fixes the sign issue.
-
View User Profile
-
Send Message
Posted Apr 10, 2013@xavierarmadillo I just realized that using ANY capitalization in a bad word causes it to bypass your filter for signs. Epic & I were experimenting and found this out so the following variations slip right past your filter:
Fuck, fUck, fuCk, fucK - basically the filter is only blocking "fuck" on signs (as an example)
I was really hoping your filter would be the answer for blocking bad words on signs so this is a very disappointing thing to discover. Is there anyway you can fix the case sensitive nature of your plugin so it will block all variations regardless of capitalization?
Lastly, any possible way we could use Epic's REGex script with your plugin as an alternative to running? Could his REGEX script be used for language on the signs too?
Warmest Regards, JAG100
-
View User Profile
-
Send Message
Posted Mar 29, 2013@x_clucky
You can filter ass and not grass with the plugin currently.
-
View User Profile
-
Send Message
Posted Mar 21, 2013Could you make a language.yml file so we can configure the prefix and msg for each msg the plugin does
-
View User Profile
-
Send Message
Posted Mar 18, 2013@xavierarmadillo
I feel we should be allowed to create custom Regular Expressions. EpicATrain's filter is great, I currently use it alongside PwnFilter and it works great, but there are a few things that I find in it that I do not find needed on my server, so I remove them. Hence why I say we should be allowed to use customization.
One thing that I did find missing in Pwnfilter was the ability to use ignore regex, which would ignore something that was censored if it matched that regex. It would work similarly to ignore string, with the exception that it would be a regular expression.
Ignore string works like this, say you have the regex a+s+s filtered out, you could set "ignore string grass" to prevent the censoring of "ass" in "grass".
-
View User Profile
-
Send Message
Posted Mar 14, 2013@xavierarmadillo
Yes sir! Allow us to use EpicATrain's external REGex script please!
-
View User Profile
-
Send Message
Posted Mar 14, 2013@xavierarmadillo
If you could allow the integration of my language filter into your plugin, EVERYTHING in minecraft can be filtered simply by using my script... you wouldn't ever need to add words or anything since I'm constantly updating the filter with new words.
-
View User Profile
-
Send Message
Posted Mar 14, 2013I must have missed the fact that you have item name blocking! That's fantastic.
EpicATrain - Not sure where in Xavieramadillo's config file one can use external REGex files like yours but that would certainly be the finishing touch on an otherwise incredible plugin.
I run Pwnfilter with Epic's REGex script at the same time as Xavierarmadillo's plugin and they seem to work pretty well together. I'd love to forego the Pwnfilter and use Epic's REGex script for signs, item names, and generel chat. It would make Xaviermadillo's plugin incredibly comprehensive if support for external Regex scripts was offered.
-
View User Profile
-
Send Message
Posted Mar 14, 2013@JAG100
Item block? As in with anvil? It has been there for a few releases now.
-
View User Profile
-
Send Message
Posted Mar 14, 2013Hello. I will have to see what I can do. I am working a lot of overtime at work now. This has always used regular expressions internally. Are you saying allow custom ones?
-
View User Profile
-
Send Message
Posted Mar 14, 2013Whoa! This now supports regex! Read the main page!
"This plugin prevents swearing on bukkit minecraft servers. It monitors chat messages, signs, /me commands, private messages, custom made items using anvil, books, and nicknames for restricted words in the config file. Offenders are stored in the config file. You can configure the plugin to kick or ban on the final warning.
This plugin uses regular expressions for words."
-
View User Profile
-
Send Message
Posted Mar 14, 2013Mr Developer, are you around?
-
View User Profile
-
Send Message
Posted Mar 13, 2013@JAG100
I agree, this needs RegEx support, and in addition to an "ignore string" option, an "ignore RegEx" option.
-
View User Profile
-
Send Message
Posted Mar 8, 2013xavierarmadillo this is a really fantastic plugin and I especially appreciate the sign censoring! Is there any possibility you'd consider incorporating REGEX script the way Pwnfilter does? Pwnfilter is open source so it wouldn't be very hard to do. Currently, I'm combining your filter with Pwnfilter and the following very comprehensive REGEX script: http://pastebin.com/u/EpicATrain
If we could use a script like this with your plugin and also have it use that level of filtering for the signs, we'd be in heaven!
When do you think the item block solution will be in place? That will really be great!
Also, any plans to provide a solution to filter essentials MAIL in the future?
Best, JAG100
-
View User Profile
-
Send Message
Posted Feb 22, 2013@nicknds
Hello.
I did a quick test and the variations you showed were caught just fine on my server. Can you send me a copy of your settings so I can test. Thanks.
-
View User Profile
-
Send Message
Posted Feb 21, 2013I made a ticket trying to leave a comment, I never needed to.
Say "fuck" is blocked FUCK Fuck fUck fuCk fucK FucK These will all appear normally. Please make the plugin: Un-capitalize the message, then check for blocked words. Have the option to block capitals altogether or recurring capitals. Make it save the settings each time they're changed, it only saves when someone cusses or the server stops. Add a command to load the settings from file ie. /ns reload. '/ns info' does absolutely nothing.
Although I must say this is a great plugin.