ForcedGrammar
ForcedGrammar modifies chat messages as they are sent to correct spelling and basic grammatical errors. It is capable of changing any words in a find and replace style customisable by you, as well as performing automatic grammatical corrections. The idea for this plugin came from Sabinno, here.
Features
This is a quick run down of the plugin's abilities.
The spelling correction relies on a list of corrections that is compiled by you. A list of common misspellings is included to get you started, provided by Bradgillap.
- Capitalise sentences
- Ensure sentences end with full-stops
- Correct spelling
- Update notification
- Enable/disable features via configuration file
- Escape individual messages from alteration
- Edit spelling correction list directly or with in-game commands.
- Restrict usage with permission nodes
An example
A message like i cant do grammar. sorry about that
could become I can't do grammar. Sorry about that.
In this example the plugin capitalised the first letter of each sentence, appended a full-stop onto the end of the message and corrected "cant" to "can't". However, you'll notice that the first sentence still doesn't make sense. Although ForcedGrammar can handle formal errors, it will not improve eloquence or style!
Questions? Problems?
Please visit the documentation if you want to know anything about ForcedGrammar that can't be found on this page. While this page is a summary, the documentation goes into a lot more depth.
If you would like to report an issue with the plugin then please do so using either the BukkitDev or GitHub issue trackers.
Also, if you've given yourself every permission node then you will have ForcedGrammar's fg.exempt
. Make sure that you negate this if you want your chat to be corrected!
Change log
version | level | date | changes |
---|---|---|---|
1.8.4 | patch | 7 July 2014 | fixes a bug which caused regular expressions to be output into the chat |
1.8.3 | patch | 24 May 2014 | several bug fixes, see file notes. Removes wildcard feature, sorry. |
1.8.2 | patch | 6 May 2014 | this-is-still-alive update! Sorry, mostly boring things. |
1.8.1 | patch | 12 July 2013 | include missing class file |
Contributing
This is really just a note to say that I am open to contributions if ever anyone has any to give. The project's source is available on GitHub.
Okay thank you much ;)
Im from Czech, so my english is not very good.
I mean, when somebody say "This is a sh*t server", so it say "Sorry ... iam very stupid... dont listen me! "
Only one dirty word in sentence and and write this sentence.
If you understand me :)
Thanks for the write-off :)
@ocasek3232
Hi oscasek,
Don't worry, I understand, your English is better than some native speakers!
Yes, this would work.
You can do it when someone writes a dirty word in a sentence to write it straight the whole sentence for him? Example: F*ck you! And fix it: I'm really handicapped.
It would not do something like this? I do not know if it does not happen.
Sorry for my bad English.
@luigi_vampa
Maybe not - I don't want to be shouted at for people misusing the system and having lightning constantly being cast. ;)
I fully agree not to ruin the purpose of the plugin with unnecessary rubbish but I was hoping for a little pavlovian conditioning with fees and /strikes for over the top language. :)
@luigi_vampa
Heya luigi_vampa,
Thank you for all of your many - many - comments, and I'm glad that you like the plugin!
I'm afraid that I'm not very keen on the actions idea. It could certainly be done - and could be useful - but it doesn't really fit into ForcedGrammar's purpose, namely to correct messages.
As for the error you are getting, it was because of me leaving a file out of the jar. Again. I am beginning to make a habit out of this! A fix has been uploaded and a working jar should be available to download very soon (under the guise of v1.8.1). Thank you for pointing this out!
ReddChicken.
Got this using /fg reload. It reloads ok though
http://pastebin.com/DXVcPyKD
I've a suggestion. Is it possible to have actions happen when a word is replaced?
Something along the lines of:-
ur:
replace: your
command: /strike
cost: 1000 - charge them for it!
Your mum! hahahaha
This is so sweet. Redd, I think I love you!
@user_238412
Hi user,
Thank you! I'm glad that you like it. I couldn't strip out all 's, purely because there are legitimate uses of it. However, removing excessive symbols could be good - I'd just need some from-the-wild examples to look at, in order to see what should be stopped.
Thanks again, ReddChicken.
@Mre30
Yes? :)
wow.....
ReddChicken, Thanks for this plugin. My players already hate it haha. But, Hey better grammar is key. Another thing you should add is an option to strip #'s out of chat as well as excessive symbols. :D
@FireBreath15
Thank you, FireBreath!
really nice plugin ;) gives your server a bit more class
@Iversen123
Thank you Iversen123, I appreciate it.
Really nice plugin! Good job.
@netherfoam
Hi netherfoam,
You are correct on both counts, thank you! I had inquired about SuperMonis' Java version, and was already pretty sure that it was the cause of the issue. Yes, I have been naughty and compiled with JDK 7 - I shall start compiling with JDK 6 again with the next release. I have recently changed the way in which I build my plugins, and neglected to check which version it was compiling to.
As to the missing spellings file, I have nothing to blame but my own carelessness!
Thank you for your help, ReddChicken.
@SuperMonis
@ReddChicken
That error is probably caused because the plugin is compiled using JDK 7, when SuperMonis's server is running JRE 6 (Solution, compile with JDK 6)
I have my own problem: http://privatepaste.com/e4015758a9
I've set config.yml -> default_list: true and started receiving this error. I've checked the jar and I have no bradiligap.yml file inside it... Looking at the source code, I should have this file in the jar.
Downloading the bradiligap file manually into the ForcedGrammar directory fixed this issue.
(TLDR; v1.7.1 is missing bradiligap.yml)
@SuperMonis
Hi SuperMonis, I have sent you a private message. Thank you for the report.