Jump to content

Language Enforcer [1.0.3.0] (Apr 11.)


ImportBot

Recommended Posts

Originally Posted by PacmanTRT*:

 

Since IAF SDS just called my attention to the "Successive Countermeasure" setting:

If your last entry is NOT "Ban": Thats no problem! The last entry will be repeated endlessly if someone takes it that far.

* Restored post. It could be that the author is no longer active.
Link to comment
  • Replies 228
  • Created
  • Last Reply

Top Posters In This Topic

Top Posters In This Topic

Posted Images

Originally Posted by Blackis*:

 

FYI: "arschloch" is unnecessary since "arsch" will also match that.

Keep you Wordlist clean! :ohmy:

 

EDIT: I just saw "hh"... that will also match "hitchhiker"!

use Regex "\bhh\b" to avoid that!!!

 

You can have a look at the if you want to understand/use them. You can use NotePad++ to try them out.

 

EDIT2: "heil" (= hail) will also match "heilung" (= healing) --> Regex "\bheil\b"

Players are warned and kicked by the word closer
* Restored post. It could be that the author is no longer active.
Link to comment

Originally Posted by PacmanTRT*:

 

Unfortunately that's right. This is because CLOSER contains the word LOSER.

Replace the Regex entry "lo+s+er" with "lo+s+e+r(_"

 

EDIT: Release.zip now contains the updated wordlist

* Restored post. It could be that the author is no longer active.
Link to comment

Originally Posted by PacmanTRT*:

 

I just wanted to notify you guys about a small update!

 

0.9.8.0 --> 0.9.8.2

  • Fixed Bug where the "4 - Messages" settings were overwritten
  • Fixed Bug where !rules could be triggered if ext. functions were disabled
  • Message settings for ext. functions now disappear if ext. functions are disabled
  • Added warning if the wordlist contains unnecessary entries
  • Added option to ignore the Squad Chat

Next release is currently planned for Apr. 20th and will include:

  • Rewrite of the successive cuntermeasures setting to allow detailed configuration (thanks to IAF?SDS)
  • Multiple wordlists with measure/counter overrides (thanks to Doom69)
  • Update notifications like in the LatencyManager (Need to talk to Zaeed first)
It also may include th ability to save and load the counters from/to the disk (for those who restart their layer daily) and there also might be an admin-command for querying the counter of a given player.

 

Last but not least: Has someone tested this plugin with other games yet? It should work flawlessly, but I can't test it!

* Restored post. It could be that the author is no longer active.
Link to comment

Originally Posted by PacmanTRT*:

 

Have you tried to reproduce that with another plugin?

Many layer-servers currently have a problem with saving settings and will reset them to a certain point.

 

EDIT: Sorry! There was a bug noone found until now. New version is available by now!

For all interested people: Procon may or may not include the category in the variable name depending on how you use it. My variable setter assumed that it does not include the category and therefore dropped the setting.

This bug might occur depending on if you use a layer-server or not

* Restored post. It could be that the author is no longer active.
Link to comment

Originally Posted by PacmanTRT*:

 

There's a new version available, which takes the plugin to a new level of customizability.

Large parts of the plugin were re-written to give you very detailed control of the measures while always showing only useful options.

 

Sorry Doom69, I couldn't figure out a way to configure multiple wordlists (that can keep up with the new successive countermeasure settings) in time. But I have a handy concept for that now and it definitely is a feature I'm looking forward to use on my own servers. Nevertheless I already included you in the new "special thanks" section of the plugin description.

 

0.9.8.4 --> 1.0.0.0

  • Fixed Bug where regex completely messed up due to encoding (Thanks, PapaCharlie9, for your help!)
  • Successive countermeasures completely rewritten as a bunch of settings (adaptive to what is selected) to allow individual messages and tban/yell time settings
  • Added message placeholder functionality
  • Added option to write the counters to a file to load after layer restart (done when the server is empty, with option to write after every punish)
  • Added separate cooldown for admin-users
  • Regex Lines may now be empty or contain only a comment
  • Added in-game command for reading/writing a player's counter
  • Added configurable update-checks
  • Moved Commands to the top of the settings for faster access
  • Now puts the matched word into the logfile
  • Added timestamps to the logfile
  • Added "special thanks" section to the plugin description.
  • Licence: Now using LGPL v3 instead of no licence
* Restored post. It could be that the author is no longer active.
Link to comment

Originally Posted by IAF-SDS*:

 

There's a new version available, which takes the plugin to a new level of customizability.

Large parts of the plugin were re-written to give you very detailed control of the measures while always showing only useful options.

 

Sorry Doom69, I couldn't figure out a way to configure multiple wordlists (that can keep up with the new successive countermeasure settings) in time. But I have a handy concept for that now and it definitely is a feature I'm looking forward to use on my own servers. Nevertheless I already included you in the new "special thanks" section of the plugin description.

 

0.9.8.4 --> 1.0.0.0

  • Fixed Bug where regex completely messed up due to encoding (Thanks, PapaCharlie9, for your help!)
  • Successive countermeasures completely rewritten as a bunch of settings (adaptive to what is selected) to allow individual messages and tban/yell time settings
  • Added message placeholder functionality
  • Added option to write the counters to a file to load after layer restart (done when the server is empty, with option to write after every punish)
  • Added separate cooldown for admin-users
  • Regex Lines may now be empty or contain only a comment
  • Added in-game command for reading/writing a player's counter
  • Added configurable update-checks
  • Moved Commands to the top of the settings for faster access
  • Now puts the matched word into the logfile
  • Added timestamps to the logfile
  • Added "special thanks" section to the plugin description.
  • Licence: Now using LGPL v3 instead of no licence
I can confirm that this Language Enforcer plugin is awesome with a multitude of customization options.

 

It has changed dramatically since it was first released.

 

Great job Pacman!

* Restored post. It could be that the author is no longer active.
Link to comment

Originally Posted by PacmanTRT*:

 

Thank you too! Your input was very inspiring. You showed me how else the Enforcer can be used and what potential the pulgin might have when you give the user more customization options.

 

The first version had about 8-10 settings I think :-D

No comparison to the possibilites of Version 1.0!

* Restored post. It could be that the author is no longer active.
Link to comment

Originally Posted by EdgarAllan*:

 

Great plugin! Would it be possible to maybe implement the following two features in the future:

 

1) A "global" setting so any changes you make affect all of your servers. We are running 10 servers and it's kind of a pain to have to individually manually input the configuration into each of them.

 

2) Maybe a list of "red flag" words that immediately go to a TBan or Permaban. How it is right now, a player saying the N-word is penalized just as much as a guy saying "loser" or "ass." I'd think most people would say the N-word (and the ilk) should be treated differently.

 

Once again, great plugin!

* Restored post. It could be that the author is no longer active.
Link to comment

Originally Posted by PacmanTRT*:

 

2) definitely the next step on my list (actually I had promised to have that released by about now, but I had no really good idea to do it)

1) I agree... I definitely will think about that. Do you have access to the Config folder on your layer? I dont know if you can copy them 1:1, but you can at least paste it line by line in the console tab of procon.

 

Thanks for your feedback :-)

I hope more people are happy like you are

* Restored post. It could be that the author is no longer active.
Link to comment

Originally Posted by EdgarAllan*:

 

2) Do you have access to the Config folder on your layer? I dont know if you can copy them 1:1, but you can at least paste it line by line in the console tab of procon.

It appears I do have access to that Config folder. You're saying I could just copy that .cfg file from one of the servers to the others?

 

To expand on the red flag list idea: in our Twitch streams, we have a no "fun" allowed gag going on where the word "fun" is censored out. It would be pretty funny if we had it auto-kill you in the server if you typed the word "fun" in gamechat haha.

 

Thanks

* Restored post. It could be that the author is no longer active.
Link to comment

Originally Posted by PacmanTRT*:

 

2) Please ask a Procon Dev first... Pasting it into the command line should not be able to cause problems, but overwriting the files is more invasive. I can't tell waht really will happen. You have at least to shut down the layer while overwriting it.

 

1) I have planned to allow you to select a minimum measure (with the option to only use that exact measure), all possible message overrides a counter increase override (instead of always 1) and a minimum counter setting.

* Restored post. It could be that the author is no longer active.
Link to comment

Originally Posted by Slayer*:

 

It appears I do have access to that Config folder. You're saying I could just copy that .cfg file from one of the servers to the others_Thanks

If you have FTP access to your Procon on the layer, with the latest Procon version or last two updates at least you will see inside the Configs folder that each server now has it's own folder and inside that folder it has all the configs (.cfg) for that server sitting in them.

 

Once you setup how you want it on the one of your servers you can then copy the LanguageEnforcer.cfg into the other servers and when you have done all the changes reboot your layer and then it's done and ready to go, it's how I do changes to our 77 servers, much much easier than doing each server individually.

 

p.s Still keeping an eye on your plugin PacmanTRT going to load it up and check out the new changes when I get time.

 

Edit: hmmm just loaded LanguageEnforcer - 1.0.0.0 up onto the layer (not runining in sandbox fyi) and rebooted the layer and the plugin didn't seem to load fully.

I added the LanguageEnforcer.cs into the Plugins directory into the BF4 folder.

 

In Procon on my Parent Layer Control tab I see the Details tab with all the text but the Plugin Settings tab is empty.

 

I placed a tick in the enable box to se what it threw at me here is the message if it helps, going to read through the thread to see if you mentioned this problem already.

Code:

[19:46:58 22] Language Enforcer Enabled!
[19:46:58 22] Language Enforcer: Using folder "Plugins\BF4\" for File operations
[19:46:58 22] Language Enforcer: Couldn't load counters. Please make sure filesystem access is granted
[19:47:12 67] Language Enforcer Disabled!
* Restored post. It could be that the author is no longer active.
Link to comment

Originally Posted by PacmanTRT*:

 

Thanks, Doom69!

 

I will try to fix the empty settings today in the evening. Must be an exception in the "GetVariables" method.

This Bug might be hard to find actually :-/

Did you change any settings? Can you send me your Config file?

 

Thanks in advance

* Restored post. It could be that the author is no longer active.
Link to comment

Originally Posted by Slayer*:

 

Thanks, Doom69!

 

I will try to fix the empty settings today in the evening. Must be an exception in the "GetVariables" method.

This Bug might be hard to find actually :-/

Did you change any settings? Can you send me your Config file?

 

Thanks in advance

Not able to set any settings as the Plugin Settings tab is empty, this is all that shows in the LanguageEnforcer.cfg file on the server box after ticking and unticking the plugin.

 

Code:

/////////////////////////////////////////////
// This config will be overwritten by procon.
/////////////////////////////////////////////
procon.protected.plugins.enable "LanguageEnforcer" False
This is what scrolls in my parent layer console tab if I leave it ticked for a bit longer than a flick on and off a repeating message.

 

Code:

[20:32:37 56] Language Enforcer Enabled!
[20:32:37 56] Language Enforcer: Using folder "Plugins\BF4\" for File operations
[20:32:39 46] System.ArgumentNullException: Value cannot be null.
Parameter name: source
   at System.Linq.Enumerable.FirstOrDefault[TSource](IEnumerable`1 source, Func`2 predicate)
   at PRoConEvents.LanguageEnforcer.OnChat(String speaker, String message)
[20:32:47 56] System.ArgumentNullException: Value cannot be null.
Parameter name: source
   at System.Linq.Enumerable.FirstOrDefault[TSource](IEnumerable`1 source, Func`2 predicate)
   at PRoConEvents.LanguageEnforcer.OnChat(String speaker, String message)
[20:32:50 40] System.ArgumentNullException: Value cannot be null.
Parameter name: source
   at System.Linq.Enumerable.FirstOrDefault[TSource](IEnumerable`1 source, Func`2 predicate)
   at PRoConEvents.LanguageEnforcer.OnChat(String speaker, String message)
[20:32:57 90] System.ArgumentNullException: Value cannot be null.
Parameter name: source
   at System.Linq.Enumerable.FirstOrDefault[TSource](IEnumerable`1 source, Func`2 predicate)
   at PRoConEvents.LanguageEnforcer.OnChat(String speaker, String message)
[20:33:07 74] Language Enforcer Disabled!
Hope this helps.
* Restored post. It could be that the author is no longer active.
Link to comment

Originally Posted by EdgarAllan*:

 

If you have FTP access to your Procon on the layer, with the latest Procon version or last two updates at least you will see inside the Configs folder that each server now has it's own folder and inside that folder it has all the configs (.cfg) for that server sitting in them.

 

Once you setup how you want it on the one of your servers you can then copy the LanguageEnforcer.cfg into the other servers and when you have done all the changes reboot your layer and then it's done and ready to go...

Thanks for the tip! This is my exact situation, I'll make a "Master Copy" sometime next week and copy it over to our other servers.

 

Code:

Language Enforcer: Couldn't load counters. Please make sure filesystem access is granted
I'm randomly getting this showing up in the console too. The plugin still works though in regards to taking action against foul language.
* Restored post. It could be that the author is no longer active.
Link to comment

Originally Posted by PacmanTRT*:

 

The Bug is fixed. The Bugfix is included in the newest Release.zip

 

WORKAROUND: Paste following 2 lines in your Procon console:

procon.protected.plugins.setVariable "LanguageEnforcer" "Badwords" ""

procon.protected.plugins.setVariable "LanguageEnforcer" "Regex Badwords" ""

 

I did not change the version number since this will only affect you if you don't have both wordlist TXTs in the folder.

Due to the update notifier this would mean everybody gets a message to update. Even if it works for him.

I actually was carrying this bug around since the very beginning, but due to changes in settings processing it became visible.


Code:

Language Enforcer: Couldn't load counters. Please make sure filesystem access is granted
I'm randomly getting this showing up in the console too. The plugin still works though in regards to taking action against foul language.
It also might mean that there just is nothing to load. Anyways: if the counters cannot be loaded everybody just is treated as if he never did swear. Also the counters will not be loaded while the plugin is running. They are just loaded at startup. So there is no need to pay attention to this message ^^
* Restored post. It could be that the author is no longer active.
Link to comment

Originally Posted by Slayer*:

 

Yep all fixed now PacmanTRT the new file did the trick thanks.

 

I can see the settings now and I've got to say holy crap there is a lot more settings to look through now from the original one well done it's coming along.

 

Now I've got to read through all the settings and get familiar with them and see what to use in them and try and find the time to take it out of the garage for a spin. :smile:

* Restored post. It could be that the author is no longer active.
Link to comment

Originally Posted by PacmanTRT*:

 

On some words like falcon

falcon only gets punished if i put an uppercase i instead of an L. (because of "fac" and "fic" in combination)

If you have "some words" that make a false positive, please give them ALL to me.

 

EDIT: Additionaly you get info on what triggered the plugin. It would be of great help if you sent me that too. This will look like the following ("fotze" is German for "cunt"):

[14:15:01] Tommy > fotze

[14:15:07] Tommy warned for Language violation.

[14:15:07] (PlayerSay Tommy) Type "!langinfo" for more information

[14:15:07] (PlayerYell Tommy) Watch your Language!

[14:15:07] LanguageEnforcer: Player Tommy triggered the word 'fotz'

* Restored post. It could be that the author is no longer active.
Link to comment

Originally Posted by PacmanTRT*:

 

False positive report: "psychomotor" (he was talking about his epilepsy)

trigger: "homo" listed in the "regular" badwords.txt. My regex text file is empty.

I can't make an exception for "psychomotor". It is way too uncommon. You can do it via regex if you have to make that an exception.
* Restored post. It could be that the author is no longer active.
Link to comment

Originally Posted by EdgarAllan*:

 

A sophomore is a student in their second year of high school/university.

 

Code:

(_>![z])homo
If I add that to regex, would that ignore words that contain "homoz" ? I'm a newbie to Regex. :smile:
* Restored post. It could be that the author is no longer active.
Link to comment

Originally Posted by PacmanTRT*:

 

No.

There is no such thing as "_>!" in regex. You do that via positioning.

 

What you are looking for is "homo(_!z)". The [] brackets define a few possible characters.

So "(_

 

In the end "(_

 

EDIT: This means it could also be done via the regex "homo(_

* Restored post. It could be that the author is no longer active.
Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.




  • Our picks

    • Game Server Hosting:

      We're happy to announce that EZRCON will branch out into the game server provider scene. This is a big step for us so please having patience if something doesn't go right in this area. Now, what makes us different compared to other providers? Well, we're going with the idea of having a scaleable server hosting and providing more control in how you set up your server. For example, in Minecraft, you have the ability to control how many CPU cores you wish your server to have access to, how much RAM you want to use, how much disk space you want to use. This type of control can't be offered in a single service package so you're able to configure a custom package the way you want it.

      You can see all the available games here. Currently, we have the following games available.

      Valheim (From $1.50 USD)


      Rust (From $3.20 USD)


      Minecraft (Basic) (From $4.00 USD)


      Call of Duty 4X (From $7.00 USD)


      OpenTTD (From $4.00 USD)


      Squad (From $9.00 USD)


      Insurgency: Sandstorm (From $6.40 USD)


      Changes to US-East:

      Starting in January 2022, we will be moving to a different provider that has better support, better infrastructure, and better connectivity. We've noticed that the connection/routes to this location are not ideal and it's been hard getting support to correct this. Our contract for our two servers ends in March/April respectively. If you currently have servers in this location you will be migrated over to the new provider. We'll have more details when the time comes closer to January. The new location for this change will be based out of Atlanta, GA. If you have any questions/concerns please open a ticket and we'll do our best to answer them.
      • 5 replies
    • Hello All,

      I wanted to give an update to how EZRCON is doing. As of today we have 56 active customers using the services offered. I'm glad its doing so well and it hasn't been 1 year yet. To those that have services with EZRCON, I hope the service is doing well and if not please let us know so that we can improve it where possible. We've done quite a few changes behind the scenes to improve the performance hopefully. 

      We'll be launching a new location for hosting procon layers in either Los Angeles, USA or Chicago, IL. Still being decided on where the placement should be but these two locations are not set in stone yet. We would like to get feedback on where we should have a new location for hosting the Procon Layers, which you can do by replying to this topic. A poll will be created where people can vote on which location they would like to see.

      We're also looking for some suggestions on what else you would like to see for hosting provider options. So please let us know your thoughts on this matter.
      • 4 replies
    • Added ability to disable the new API check for player country info


      Updated GeoIP database file


      Removed usage sending stats


      Added EZRCON ad banner



      If you are upgrading then you may need to add these two lines to your existing installation in the file procon.cfg. To enable these options just change False to True.

      procon.private.options.UseGeoIpFileOnly False
      procon.private.options.BlockRssFeedNews False



       
      • 2 replies
    • I wanted I let you know that I am starting to build out the foundation for the hosting services that I talked about here. The pricing model I was originally going for wasn't going to be suitable for how I want to build it. So instead I decided to offer each service as it's own product instead of a package deal. In the future, hopefully, I will be able to do this and offer discounts to those that choose it.

      Here is how the pricing is laid out for each service as well as information about each. This is as of 7/12/2020.

      Single MySQL database (up to 30 GB) is $10 USD per month.



      If you go over the 30 GB usage for the database then each additional gigabyte is charged at $0.10 USD each billing cycle. If you're under 30GB you don't need to worry about this.


      Databases are replicated across 3 zones (regions) for redundancy. One (1) on the east coast of the USA, One (1) in Frankfurt, and One (1) in Singapore. Depending on the demand, this would grow to more regions.


      Databases will also be backed up daily and retained for 7 days.




      Procon Layer will be $2 USD per month.


      Each layer will only allow one (1) game server connection. The reason behind this is for performance.


      Each layer will also come with all available plugins installed by default. This is to help facilitate faster deployments and get you up and running quickly.


      Each layer will automatically restart if Procon crashes. 


      Each layer will also automatically restart daily at midnight to make sure it stays in tip-top shape.


      Custom plugins can be installed by submitting a support ticket.




      Battlefield Admin Control Panel (BFACP) will be $5 USD per month


      As I am still working on building version 3 of the software, I will be installing the last version I did. Once I complete version 3 it will automatically be upgraded for you.





      All these services will be managed by me so you don't have to worry about the technical side of things to get up and going.

      If you would like to see how much it would cost for the services, I made a calculator that you can use. It can be found here https://ezrcon.com/calculator.html

       
      • 11 replies
    • I have pushed out a new minor release which updates the geodata pull (flags in the playerlisting). This should be way more accurate now. As always, please let me know if any problems show up.

       
      • 9 replies
×
×
  • Create New...

Important Information

Please review our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.