Jump to content

Insane Limits Requests


ImportBot

Recommended Posts

Originally Posted by Sorry*:

 

No problem. You need the Weapon codes first. Look in your PRoCon installation in the Configs folder. You should see a file called BF3.def, look at it in Notepad or whatever and look for the codes you want. It turns out that the codes you want are exactly as you spelled them.

 

Here's the rest of it:

 

Set limit to evaluate OnKill, set action to Kick,

 

Set first_check to this Code:

 

Code:

if (!Regex.Match(kill.Weapon, @"(_:F2000|FAMAS|PP-19)", RegexOptions.IgnoreCase).Success) return false;

double kills = player[kill.Weapon].KillsTotal;
if (kills < 1.0) return false;
double headshots = player[kill.Weapon].HeadshotsTotal;
double headshots_percent = Math.Round((headshots / kills)*100.0, 2);

if (headshots_percent > 90 && kills > 30)
{
    plugin.ConsoleWrite(plugin.R("%p_n% has " + headshots_percent + " headshots percent with "+ kill.Weapon + " after " + kills + " kills"));
    return true;
}

return false;
Set these action specific parameters:

 

 

Code:

kick_message = %p_n%, you were kicked for suspicious headshots percentage with %w_n%
This feature (per-weapon stats) is not extensively tested. You should adjust the conditions to test, and see if it works as you expect it.

 

In fact, it's known not to work in certain cases, so your mileage may vary.

Awesome! Thanks! :smile:
* Restored post. It could be that the author is no longer active.
Link to comment
  • Replies 3.2k
  • Created
  • Last Reply

Originally Posted by Kugelfaenger*:

 

plugin.EABanPlayerWithMessage(EABanType.Name, EABanDuration.Permanent, target.Name, 0);

 

need a code to ban the player by his EA_GUID, the reason is: player can join the server after changing his nickname.

 

or is it better to ban play by his PBI_GUD? what is the code for?

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

Originally Posted by Singh400*:

 

plugin.EABanPlayerWithMessage(EABanType.Name, EABanDuration.Permanent, target.Name, 0);

 

need a code to ban the player by his EA_GUID, the reason is: player can join the server after changing his nickname.

 

or is it better to ban play by his PBI_GUD? what is the code for?

Yes your first example would ban by name.

 

If you want to ban by EA_GUID it would be EABanType.EA_GUID:-

Code:

plugin.EABanPlayerWithMessage(EABanType.EA_GUID, EABanDuration.Permanent, target.Name, 0, reason);
If you want to ban by PB_GUID I think it is:-

Code:

plugin.PBBanPlayerWithMessage(PBBanDuration.Permanent, target.Name, 0, reason);
Hope that helps.

 

Personally I always ban by EABanType.Name.

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

Originally Posted by Learning-Curve*:

 

{ plugin.ConsoleWrite(plugin.R("" + ""));

silly me thought some variation of this would work but it doesnt

{ plugin.procon_chat_txtWrite(plugin.R("" + ""));

 

how do you write it as code to send info to procon chat window? Thanks in advance for any help...peace

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

Originally Posted by Singh400*:

 

{ plugin.ConsoleWrite(plugin.R("" + ""));

silly me thought some variation of this would work but it doesnt

{ plugin.procon_chat_txtWrite(plugin.R("" + ""));

 

how do you write it as code to send info to procon chat window? Thanks in advance for any help...peace

Try:-

Code:

plugin.PRoConChat("ADMIN  > " + msg);
* Restored post. It could be that the author is no longer active.
Link to comment

Originally Posted by Learning-Curve*:

 

Try:-

Code:

plugin.PRoConChat("ADMIN  > " + msg);
Thanks but I am not trying to send an admin message to room. I am trying to send information that Console has to procon chat window so I can see it.

 

I tried tons of variations and Your answer help me try again and got it!!! FREAKEN LOVERLY - Thanks Singh for your two cents it ended out helping me...peace

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

Originally Posted by PapaCharlie9*:

 

Yes your first example would ban by name.

 

If you want to ban by EA_GUID it would be EABanType.EA_GUID:-

Code:

plugin.EABanPlayerWithMessage(EABanType.EA_GUID, EABanDuration.Permanent, target.Name, 0, reason);
If you want to ban by PB_GUID I think it is:-

Code:

plugin.PBBanPlayerWithMessage(PBBanDuration.Permanent, target.Name, 0, reason);
Hope that helps.

 

Personally I always ban by EABanType.Name.

Slight correction: in both cases, the "name" value has to in fact be a GUID string. So don't use target.Name, use player.EAGuid or player.PBGuid, respectively.

 

Which you use depends on whether you want your banlist.txt on your server to be updated and reflected in the Bans tab on PRoCon. EA by name puts stuff in the banlist.txt and can be seen in PRoCon, either of the GUID methods do not (I think). Also, PB GUID makes sense if you are using PB tools to identify or track cheaters, like with PB screenshots.

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

Originally Posted by utopiate*:

 

Hey PapaCharlie9, many thanks for your kind offer. I'm looking for the ability to limit the use of sniper rifles to 2-3 players per team. I don't want to limit the recon class however. Many thanks for your offer of help, much appreciated.

 

regards utopiate

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

Originally Posted by PapaCharlie9*:

 

Hey PapaCharlie9, many thanks for your kind offer. I'm looking for the ability to limit the use of sniper rifles to 2-3 players per team. I don't want to limit the recon class however. Many thanks for your offer of help, much appreciated.

 

regards utopiate

Keep in mind that the only time PRoCon knows when someone uses a type of weapon is when they kill someone with it. So what you can track is who is killing with sniper rifles and how many times they do it. Given that information, you can control the number of players in one of three ways:

 

Option 1) First-come, first-served. In my opinion, this approach sucks, but I've seen it used. Basically, whoever the first three players are to kill someone with a sniper rifle are the only ones that can continue to use it for the rest of the round. Everyone else gets killed or kicked, whatever.

 

Option 2) Pre-defined list. You have a list of player names and only they can use sniper rifles. Everyone else gets killed/kicked.

 

Option 3) Lottery. You have @iwannasnipe command. No one can use sniper rifles in the beginning of the round, if they do, they are killed/kicked. Everyone who wants to use one types in the @iwannasnipe (or whatever) command for a set period of time. At the end of the time limit, the plugin picks 2 or 3 randomly (per team or regardless of teams_) and announces in a yell. They are the only ones that can kill with a sniper rifle, everyone else is killed/kicked. This is the least bad option, but it's still not good, in my opinion.

 

So what do you want?

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

Originally Posted by CBG*:

 

Hi,

 

I have another request:

 

When the player get to 40 kills in that round, they get a warning, maybe yell, to the player

Then when they get to 45 kills they are kicked and banned.

 

It is for a noobs, server that why the limits are low

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

Originally Posted by Singh400*:

 

Hi,

 

I have another request:

 

When the player get to 40 kills in that round, they get a warning, maybe yell, to the player

Then when they get to 45 kills they are kicked and banned.

 

It is for a noobs, server that why the limits are low

What a weird request!

 

Set limit evaluation to OnKill.

 

Set first_check to this expression:-

 

Code:

( true )
Set first_check to this code:-

 

Code:

double count = limit.Activations ( player.Name ) ;

if ( count == 40  )
	{
		string msg = "WARNING! " + player.Name + " this server has a max kills limit of 45. Any higher & you will be kicked & banned!";
		plugin.ServerCommand("admin.yell", msg, "10", "player", player.Name);
		plugin.ServerCommand("admin.say", msg, "player", player.Name);
	}

if ( count == 46  )
	{
		plugin.EABanPlayerWithMessage(EABanType.Name, EABanDuration.Permanent, player.Name, 0, "Max Kills of 45 exceeded!");
	}

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

Originally Posted by CBG*:

 

Sorry to be a pain, but could the above be changed to do the following:

 

On 40 warning

On 45 kick

 

Then if they come back and do it again, either same game or next round

On 40 Warning

On 45 temp ban

 

I am aware this is reliant on the Procon layer, not being restarted.

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

Originally Posted by CBG*:

 

Hi,

 

I actually have a clan member who has a plug in / limit in the works for this kind of hack detection.. I don't want to go into detail, but it will have ways to see what guns are being used and what hit/kill % for that weapon. It will also take into account whether they are using snipers or shoty's etc etc..*His first test failed, but he's working on it* So be patient, things are in the works :P

 

note: I started using that check method since that vid, and have found a few players that were 100% hit/kill ratio with multiple guns in their inventory..Needless to say they were banned off my server.

Will this be released, on the forum and will be be free or paid?

When do you expect it to be ready?

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

Originally Posted by CBG*:

 

Sorry to be a pain, but could the above be changed to do the following:

 

On 40 warning

On 45 kick

 

Then if they come back and do it again, either same game or next round

On 40 Warning

On 45 temp ban

 

I am aware this is reliant on the Procon layer, not being restarted.

Would this do it.

Found most of the code at: www.phogue.net/forumvb/showth...nd-kick-banner*

 

Code:

/* Version 0.8/R1 */
int maxKills = 45; // CUSTOMIZE, maximum number of kills per round


String kCounter = killer.Name + "_TreatAsOne_Count";
if (limit.Activations(killer.Name) <= maxKills) return false;

String key = "MaxKills_" + killer.Name;
String msg = null;

if (plugin.Data.issetBool(key + killer.Name)) {
	// Second time, ban this sucker!
	plugin.ConsoleWrite("^b[MAX KILLS]^n ^8BANNING^0 " + killer.FullName + " for exceeding max kills of " + maxKills + " for a second time!");
	msg = "*** Banning " + killer.FullName + " for exceeding max kills!";
	plugin.SendGlobalMessage(msg);
	plugin.PRoConChat(msg);
	plugin.EABanPlayerWithMessage(EABanType.EA_GUID, EABanDuration.Permanent, killer.Name, 0, "ignoring warning about max kills, appeal at xxx.clan.com");
	return false;
}

// Otherwise, warn and kick

plugin.Data.setBool(key + killer.Name, true);


if ( warnings == 40 )
	{
		string msg = "WARNING! " + player.Name + " this server has a max kills limit of 45. Any higher & you will be kicked!";
		plugin.ServerCommand("admin.yell", msg, "10", "player", player.Name);
	}

server.RoundData.setInt(kCounter, warnings+1);


plugin.ConsoleWrite("^b[MAX KILLS]^n WARNING " + killer.FullName + " for exceeding max kills of " + maxKills + " for the first time!");
plugin.PRoConChat(msg);
plugin.KickPlayerWithMessage(killer.Name, "Final warning! Do not exceed max kills of " + maxKills + " or be banned!");
return false;
* Restored post. It could be that the author is no longer active.
Link to comment

Originally Posted by Cheezis_Chrust*:

 

Yeah figured it after I messed about - thanks. Here is what I came up with:-

 

First_Check as Code:Code:

if ( Regex.Match ( player.LastChat, @"(_:admin|kick|ban)", RegexOptions.IgnoreCase ).Success ) 
	{
		string msg1 = "Is someone claiming to be an admin_ Type @check to verify!" ;
		plugin.ServerCommand ( "admin.say" , msg1, "player" , player.Name ) ;
		plugin.ServerCommand ( "admin.yell" , msg1 , "8" , "player" , player.Name ) ;
	}
	
return true ;
Second_Check as Code:Code:
if ( Regex.Match ( player.LastChat, @"^\s*[@](_:check)", RegexOptions.IgnoreCase).Success )
	{
		PlayerInfoInterface singhToTheRescue = plugin.GetPlayer ( "Singh400" , false ) ;




		if ( singhToTheRescue != null )
			{
				string msg1 = "An admin is present in-game" ;
				plugin.ServerCommand ( "admin.say" , msg1 , "player" , player.Name ) ;
				plugin.ServerCommand ( "admin.yell" , msg1 , "8" , "player" , player.Name ) ;
			}




		if ( singhToTheRescue == null )
			{
				string msg2 = "An admin isn't present in-game" ;
				plugin.ServerCommand ( "admin.say" , msg2 , "player" , player.Name ) ;
				plugin.ServerCommand ( "admin.yell" , msg2 , "8" , "player" , player.Name ) ;
			}
	
	}




return false;
I want to go one further and do @check and then it returns "player is admin" or "player isn't admin". I know I could just easily solve it by saying I'm admin. But I'd rather not do that, and it's a nice way to learn some additional stuff.

 

I guess I would define an admin list, and then have it look through the list and see if a match is found.

I love the concept of this, and I'm currently playing around with it now. But I have a question:

 

Have you found a way to have it query the admin_list instead of checking if that one player is in the game? I'm referring to the section below:

 

Code:

PlayerInfoInterface singhToTheRescue = [b]<query admin_list here>[/b] , false ) ;
* Restored post. It could be that the author is no longer active.
Link to comment

Originally Posted by hozerdude*:

 

I have a request for insane limits. I need to see if it is possiable to have 2 logs only.

 

#1 for bans

#2 for kicks

 

Thats it!

 

Thanks

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

Originally Posted by HexaCanon*:

 

is it possible to have idle kicker ? other plugins do not have whitelist for idle kicker, i have admin_list so that i want to have idle kicks players who are idle for 4 minutes but it does not kick admins for being idle, usually my admins try to look up players mid round to see if they are cheating ...

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

Originally Posted by Phil_K*:

 

is it possible to have idle kicker ?

You first need to define what is "idling".

Remember rcon does not send any information about idle times of a player.

A plugin can only measure the time between two events (e.g. onSpawn, onKill).

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

Originally Posted by bigdogdman*:

 

So i posted in the ...* this question, because it was relevant to that thread, as I have been trying to get that code to work, but I was told to post here instead, so....

 

I don't seem to be able to output to a twitter account the *value* of the *expression* of (player.Kills/Player.Deaths) or anything else for that matter. Are advanced expressions still valid here? Or might I be able to add a property to the player object(like player.newKDR) in the code, and then just use that in the expression? What the output of the above formula looks like is this:

TheWeeder87 + " exceeded KDR Limits: " + (12246/3773) + " > 12"

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

Originally Posted by Singh400*:

 

I don't use the Tweet action.

 

But I can imagine it would need to look something like this:-

Code:

double p_newkdr = ( player.Kills /  player.Deaths ) ;

string t_msg = "" + player.Name + " exceed our server limit of 5 KDR with a KDR of " + p_newkdr + "" ;

plugin.Tweet( t_msg ) ;

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

Originally Posted by PapaCharlie9*:

 

I love the concept of this, and I'm currently playing around with it now. But I have a question:

 

Have you found a way to have it query the admin_list instead of checking if that one player is in the game? I'm referring to the section below:

 

Code:

PlayerInfoInterface singhToTheRescue = [b]<query admin_list here>[/b] , false ) ;
It's Singh's limit so I'll let him modify it, but the basic code necessary to intersect the admin_list of names with the list of current player names is as follows:

 

Code:

// We have to do this backwards, for every player in the server, check against the admin_list
List<String> adminsPlaying = new List<String>();
foreach (PlayerInfoInterface p in team1.players) {
    if (plugin.isInList(p.Name, "admin_list")) adminsPlaying.Add(p.Name);
}
foreach (PlayerInfoInterface p in team2.players) {
    if (plugin.isInList(p.Name, "admin_list")) adminsPlaying.Add(p.Name);
}
if (team3.players.Count > 0) foreach (PlayerInfoInterface p in team3.players) {
    if (plugin.isInList(p.Name, "admin_list")) adminsPlaying.Add(p.Name);
}
if (team4.players.Count > 0) foreach (PlayerInfoInterface p in team4.players) {
    if (plugin.isInList(p.Name, "admin_list")) adminsPlaying.Add(p.Name);
}

// Example of how to use the adminsPlaying list
String adminMsg = "List of admins: ";
bool needsComma = false;
if (adminsPlaying.Count == 0) {
    adminMsg = adminMsg + "none at the moment";
} else foreach (String name in adminsPlaying) {
    if (needsComma) adminMsg = adminMsg + ", ";
    adminMsg = adminMsg + name;
    needsComma = true;
}
* Restored post. It could be that the author is no longer active.
Link to comment

Originally Posted by PapaCharlie9*:

 

I have a request for insane limits. I need to see if it is possiable to have 2 logs only.

 

#1 for bans

#2 for kicks

 

Thats it!

 

Thanks

What do you mean by "2 logs"? Do you mean two separate custom log files? Or do you mean you only want bans and kicks to appear in one of the existing logs, like the plugin log or the event log?
* Restored post. It could be that the author is no longer active.
Link to comment

Originally Posted by PapaCharlie9*:

 

I don't use the Tweet action.

 

But I can imagine it would need to look something like this:-

Code:

double p_newkdr = ( player.Kills /  player.Deaths ) ;

string t_msg = "" + player.Name + " exceed our server limit of 5 KDR with a KDR of " + p_newkdr + "" ;

plugin.Tweeet( t_msg ) ;

return false ;
That will work (after Tweeet gets spelt correctly), but the p_newkdr might print as 3.245693082427776, which would be ugly. To make it pretty, do this:

 

Code:

string t_msg = player.Name + " exceeded our server limit of 5 KDR with a KDR of " + p_newkdr.ToString("F1");
The "F1" means a floating point number rounded to one fractional digit, so the above number would be 3.2.
* Restored post. It could be that the author is no longer active.
Link to comment

Originally Posted by Singh400*:

 

That will work (after Tweeet gets spelt correctly), but the p_newkdr might print as 3.245693082427776, which would be ugly. To make it pretty, do this:

 

Code:

string t_msg = player.Name + " exceeded our server limit of 5 KDR with a KDR of " + p_newkdr.ToString("F1");
The "F1" means a floating point number rounded to one fractional digit, so the above number would be 3.2.
Would MathRound work too? I prefer Tweeet over Tweet :biggrin:
* Restored post. It could be that the author is no longer active.
Link to comment

Originally Posted by HexaCanon*:

 

You first need to define what is "idling".

Remember rcon does not send any information about idle times of a player.

A plugin can only measure the time between two events (e.g. onSpawn, onKill).

well adaptive server size does it well.. it just does not have a whitelist for it.
* Restored post. It could be that the author is no longer active.
Link to comment

Originally Posted by HexaCanon*:

 

a good idea that requires some time to develop is a command similar to !m320 and !m26 idea, but this command is !medic, when a player types it, it will look up at the next (or previous) kill with an assault weapon on your team, and then the limit will send that player a message/yell that tells him that player XYZ wants a med pack.

 

same can be applied to support weapons with !resupply command.

 

also it can register what comes after the command and send it as a hint of location, example "!medic locker room" or "!medic B" and then it sends a message to the assault rifle player with a message "player XYZ wants a medpack at (B/locker room/etc..)"..

 

sounds like a silly idea but it is nice to have in metro -.-...

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

Originally Posted by PapaCharlie9*:

 

The last option sounds best, thanks for taking the time to help out. :smile:

 

many thanks

Okay, I wrote it up. It is here, don't worry, it is for snipers:

 

Insane Limits V0.8/R1: Player Permission Lottery*

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

Originally Posted by PapaCharlie9*:

 

Would MathRound work too?

If all you want is the integer, sure, but if you want any fractions, it's easier to use ToString.

 

For example, to get the equivalent of F1, you have to do:

 

(Math.Round(p_newkdr * 10)/10)

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

Originally Posted by hozerdude*:

 

What do you mean by "2 logs"? Do you mean two separate custom log files? Or do you mean you only want bans and kicks to appear in one of the existing logs, like the plugin log or the event log?

Yes I would like to see if it is possible to have 2 separate logs.............

 

one for bans only! ................. and one for kicks only!

 

I hope this can be done.

 

Thanks in advance :ohmy:

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

Archived

This topic is now archived and is closed to further replies.




  • 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.