Jump to content

Server Kills (1.5.0.0 - 3/6/2014)


ImportBot

Recommended Posts

Originally Posted by MorpheusX(AUT)*:

 

My Error:

Code:

[Server Kills] Error! Task: sqlInsert() Index #0 - Message: [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified NativeError: 0 Source:  SQL: IM002
I do have the ODBC mysql drivers installed, version 5.1.11. They do not require "configuring" as they are a driver and this is a windows machine. Whats going on?

 

How I have my ProCon Layer setup for mysql:

 

Game server ---> ProCon Layer Server ---> Remote MySQL server

They will need configuration, even if you run them on Windows machines. See here: www.phogue.net/forumvb/showth...highlight=odbc*

Scroll to the last headline of the first post.

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

Originally Posted by darkcloud784*:

 

They will need configuration, even if you run them on Windows machines. See here: www.phogue.net/forumvb/showth...highlight=odbc*

Scroll to the last headline of the first post.

This should only need to be used if your not specifying the details outside of the driver (which we are here). Even so, I tried this and am still getting the error below. I have tested my connection to the database and it tests successfully.

 

Code:

[13:51:35 94] [Server Kills] Error! Task: createTables() Index #0 - Message: [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified NativeError: 0 Source:  SQL: IM002
* Restored post. It could be that the author is no longer active.
Link to comment

Originally Posted by elisiens*:

 

the server kill keeps failing , I get this error once I launch procon under the plugins section

 

[server Kills] Error! Task: createTables() Index #0 - Message: [MySQL][ODBC 5.1 Driver][mysqld-5.5.29-log]Incorrect table name 'bf3serverkills_kills_rpg_7_anti_tank_rocket_prope lled_grenade_launcher' NativeError: 1103 Source: myodbc5.dll SQL: HY000

 

 

I also notice that all of the weapons do not create tables in my database. The above table is not in my database, but others are missing as well.

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

Originally Posted by TimSad*:

 

@elisiens Even though you can create tables in MySQL with spaces in the name, perhaps ODBC won't allow it. Unless you accidentally added that space there, try to figure out why it added a space in between "propelled" and meanwhile I'll see if it has something to do with my code.

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

Originally Posted by IAF-SDS*:

 

Hi TimSad.

 

Where would I change how long it waits to yell as well as the yell duration for the Ace Squad message?

 

Right now, I believe it waits 15 seconds before it yells after round starts and then it yells it for 10 seconds.

 

Im looking at making the Ace Squad message wait time 25 seconds before it yells it after round start, and with an Ace Squad message yell time of 20 seconds.

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

Originally Posted by TimSad*:

 

Hi TimSad.

 

Where would I change how long it waits to yell as well as the yell duration for the Ace Squad message?

 

Right now, I believe it waits 15 seconds before it yells after round starts and then it yells it for 10 seconds.

 

Im looking at making the Ace Squad message wait time 25 seconds before it yells it after round start, and with an Ace Squad message yell time of 20 seconds.

I believe I have it hard coded but if you wanted you could go to line 1384 and change that 15 to a 25 and as for the duration, that is a bit more complicated but I can tell you that lines 1194 to 1216 have something to do with it. I just have it send the default length of 10 seconds. Try to figure out how to append a custom duration to the end of each. :smile:
* Restored post. It could be that the author is no longer active.
Link to comment

Originally Posted by IAF-SDS*:

 

I believe I have it hard coded but if you wanted you could go to line 1384 and change that 15 to a 25 and as for the duration, that is a bit more complicated but I can tell you that lines 1194 to 1216 have something to do with it. I just have it send the default length of 10 seconds. Try to figure out how to append a custom duration to the end of each. :smile:

Code:
this.ExecuteCommand("procon.protected.tasks.add", "CServerKillsResetServerMessage", "15", "1", "1", "procon.protected.plugins.call", "CServerKills", "resetServerMessage");
            else if (this.aceSquadDisplayType == "yell" || this.aceSquadDisplayType == "say")
              this.ExecuteCommand("procon.protected.tasks.add", "CServerKillsSendAceSquad", "15", "1", "1", "procon.protected.plugins.call", "CServerKills", "sendAceSquad");
Okay, I would change line 1384, but what about line 1386 which references the Ace Squad message with the second "15" delay? I should change both lines 1384 and 1386 right?

 

 

 

Where would I change the duration from default 10 in lines 1194 thru 1216 shown below?

 

Is it in this format:

admin.yell (e.g. admin.yell "This is a test" 6000 "all") where I would use milliseconds and append the number 20000 right before the two "all" instances?

 

In other words, would I append the duration by adding the red 20000 (for 20 seconds) as shown in the code below in two places?

 

Example: ... Replace("%score%", this.highestSquadScore.ToString()), 20000 "all");

 

Code:

this.ExecuteCommand("procon.protected.send", "vars.serverMessage");
      }
      else
      {
        if (this.gameMode.Contains("Conquest") || this.gameMode.Contains("TeamDeathMatch") || this.gameMode.Contains("Domination"))
        {
          if (this.aceSquadDisplayType == "yell")
            this.ExecuteCommand("procon.protected.send", "admin.yell", this.aceSquadMessage.Replace("%players%", this.aceSquadPlayersString).Replace("%squad%", GetLocalized("Squad" + this.aceSquadSquadID.ToString(), String.Format("global.Squad{0}", this.aceSquadSquadID.ToString()))).Replace("%team%", ((this.aceSquadTeamID == 1) _ "US" : "RU")).Replace("%score%", this.highestSquadScore.ToString()));
          else if (this.aceSquadDisplayType == "say")
            this.ExecuteCommand("procon.protected.send", "admin.say", this.aceSquadMessage.Replace("%players%", this.aceSquadPlayersString).Replace("%squad%", GetLocalized("Squad" + this.aceSquadSquadID.ToString(), String.Format("global.Squad{0}", this.aceSquadSquadID.ToString()))).Replace("%team%", ((this.aceSquadTeamID == 1) _ "US" : "RU")).Replace("%score%", this.highestSquadScore.ToString()), [b]20000[/b] "all");

          if (this.displayAceSquadToConsole == enumBoolYesNo.Yes)
            this.ExecuteCommand("procon.protected.pluginconsole.write", "^3^b[Server Kills] ^n^0" + this.aceSquadMessage.Replace("%players%", this.aceSquadPlayersString).Replace("%squad%", GetLocalized("Squad" + this.aceSquadSquadID.ToString(), String.Format("global.Squad{0}", this.aceSquadSquadID.ToString()))).Replace("%team%", ((this.aceSquadTeamID == 1) _ "US" : "RU")).Replace("%score%", this.highestSquadScore.ToString()));
        }
        else if (this.gameMode.Contains("RushLarge"))
        {
          if (this.aceSquadDisplayType == "yell")
            this.ExecuteCommand("procon.protected.send", "admin.yell", this.aceSquadMessage.Replace("%players%", this.aceSquadPlayersString).Replace("%squad%", GetLocalized("Squad" + this.aceSquadSquadID.ToString(), String.Format("global.Squad{0}", this.aceSquadSquadID.ToString()))).Replace("%team%", ((this.aceSquadTeamID == 1) _ "Attackers" : "Defenders")).Replace("%score%", this.highestSquadScore.ToString()));
          else if (this.aceSquadDisplayType == "say")
            this.ExecuteCommand("procon.protected.send", "admin.say", this.aceSquadMessage.Replace("%players%", this.aceSquadPlayersString).Replace("%squad%", GetLocalized("Squad" + this.aceSquadSquadID.ToString(), String.Format("global.Squad{0}", this.aceSquadSquadID.ToString()))).Replace("%team%", ((this.aceSquadTeamID == 1) _ "Attackers" : "Defenders")).Replace("%score%", this.highestSquadScore.ToString()), [b]20000[/b] "all");

          if (this.displayAceSquadToConsole == enumBoolYesNo.Yes)
            this.ExecuteCommand("procon.protected.pluginconsole.write", "^3^b[Server Kills] ^n^0" + this.aceSquadMessage.Replace("%players%", this.aceSquadPlayersString).Replace("%squad%", GetLocalized("Squad" + this.aceSquadSquadID.ToString(), String.Format("global.Squad{0}", this.aceSquadSquadID.ToString()))).Replace("%team%", ((this.aceSquadTeamID == 1) _ "Attackers" : "Defenders")).Replace("%score%", this.highestSquadScore.ToString()));
Edit: Inserting 20000 or even 20 at the two locations shown above causes the plugin to not load.

 

Im definitely stuck and need help please if you guys know.

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

Originally Posted by TimSad*:

 

Oh yeah, then it is line 1386.

 

I think you've gotta use seconds so try 20 in quotes, a comma, then all in quotes. So...

 

... "20", "all");

 

Also, make sure you apply it under the if statement that pertains to the gamemode(s) you are running.

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

Originally Posted by mc-kay*:

 

When I putt the plugin on my layer server he didn't start anymore.

Because my hoster disabled logging "for technical reasons" I don't know why (probably because of the missing MySQL ODBC driver).

However, it is possible to change the plugin to use the ADO MySQL Connector?

The "BF3 Chat, GUID, Stats and Mapstats Logger" is working for me so I think this is the reason.

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

Originally Posted by IAF-SDS*:

 

Hi TimSad.

 

I changed it to ... Replace("%score%", this.highestSquadScore.ToString()), "20", "all"); the way you suggested in both locations shown above (one covers Conquest, TDM, and Domination; and the other covers RushLarge), and with this change, the plugin loads but the yell only showed for about 10 seconds (seemed like 8 seconds when I counted and certainly not 20). Maps running are Conquest which is covered by the change in the first section.

 

Ten seconds (or what seems less than 10) is just too fast to properly read all of the player names, squad, and score by the time you get a free chance to look down the yell.

 

Any other ideas please?

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

Originally Posted by elisiens*:

 

Tim,

 

Thanks for the response, I did not create the table, this happens when I create the db and run the plugin, it creates all of the entries in the db. It doesn't seem to create all of the entries. still getting that same error after rebuilding the db.

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

Originally Posted by TimSad*:

 

@IAF SDS I think you gotta take out the "all" part and the comma before it. I can't quite recall or be sure. Try that out...

 

@elisiens I'm pretty sure the problem lies somewhere with it adding that random space in the RPG table name. I'm thinking the ODBC doesn't like that. If it really is adding that space that I see on your pasted message, then do you have any idea why it might be doing that? I don't know why your installation would be doing that while it does not do it on anyone else's that I know of...

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

Originally Posted by IAF-SDS*:

 

Hey TimSad.

 

We had it located at the wrong place, but the , "20", "all" part was correct.

 

This is where it goes to work:

 

Code:

this.ExecuteCommand("procon.protected.send", "vars.serverMessage");
      }
      else
      {
        if (this.gameMode.Contains("Conquest") || this.gameMode.Contains("TeamDeathMatch") || this.gameMode.Contains("Domination"))
        {
          if (this.aceSquadDisplayType == "yell")
            this.ExecuteCommand("procon.protected.send", "admin.yell", this.aceSquadMessage.Replace("%players%", this.aceSquadPlayersString).Replace("%squad%", GetLocalized("Squad" + this.aceSquadSquadID.ToString(), String.Format("global.Squad{0}", this.aceSquadSquadID.ToString()))).Replace("%team%", ((this.aceSquadTeamID == 1) _ "US" : "RU")).Replace("%score%", this.highestSquadScore.ToString())[b], "20", "all"[/b]);
          else if (this.aceSquadDisplayType == "say")
            this.ExecuteCommand("procon.protected.send", "admin.say", this.aceSquadMessage.Replace("%players%", this.aceSquadPlayersString).Replace("%squad%", GetLocalized("Squad" + this.aceSquadSquadID.ToString(), String.Format("global.Squad{0}", this.aceSquadSquadID.ToString()))).Replace("%team%", ((this.aceSquadTeamID == 1) _ "US" : "RU")).Replace("%score%", this.highestSquadScore.ToString()), "all");

          if (this.displayAceSquadToConsole == enumBoolYesNo.Yes)
            this.ExecuteCommand("procon.protected.pluginconsole.write", "^3^b[Server Kills] ^n^0" + this.aceSquadMessage.Replace("%players%", this.aceSquadPlayersString).Replace("%squad%", GetLocalized("Squad" + this.aceSquadSquadID.ToString(), String.Format("global.Squad{0}", this.aceSquadSquadID.ToString()))).Replace("%team%", ((this.aceSquadTeamID == 1) _ "US" : "RU")).Replace("%score%", this.highestSquadScore.ToString()));
        }
        else if (this.gameMode.Contains("RushLarge"))
        {
          if (this.aceSquadDisplayType == "yell")
            this.ExecuteCommand("procon.protected.send", "admin.yell", this.aceSquadMessage.Replace("%players%", this.aceSquadPlayersString).Replace("%squad%", GetLocalized("Squad" + this.aceSquadSquadID.ToString(), String.Format("global.Squad{0}", this.aceSquadSquadID.ToString()))).Replace("%team%", ((this.aceSquadTeamID == 1) _ "Attackers" : "Defenders")).Replace("%score%", this.highestSquadScore.ToString())[b], "20", "all"[/b]);
          else if (this.aceSquadDisplayType == "say")
            this.ExecuteCommand("procon.protected.send", "admin.say", this.aceSquadMessage.Replace("%players%", this.aceSquadPlayersString).Replace("%squad%", GetLocalized("Squad" + this.aceSquadSquadID.ToString(), String.Format("global.Squad{0}", this.aceSquadSquadID.ToString()))).Replace("%team%", ((this.aceSquadTeamID == 1) _ "Attackers" : "Defenders")).Replace("%score%", this.highestSquadScore.ToString()), "all");

          if (this.displayAceSquadToConsole == enumBoolYesNo.Yes)
            this.ExecuteCommand("procon.protected.pluginconsole.write", "^3^b[Server Kills] ^n^0" + this.aceSquadMessage.Replace("%players%", this.aceSquadPlayersString).Replace("%squad%", GetLocalized("Squad" + this.aceSquadSquadID.ToString(), String.Format("global.Squad{0}", this.aceSquadSquadID.ToString()))).Replace("%team%", ((this.aceSquadTeamID == 1) _ "Attackers" : "Defenders")).Replace("%score%", this.highestSquadScore.ToString()));
* Restored post. It could be that the author is no longer active.
Link to comment

Originally Posted by dieterpeter*:

 

Hey,

 

I have a question to this plugin. I want to yell if a special player get killed, like the admin. which code do I have to insert to the "Kill Announcement List"? ( The weapon doesnt matter).

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

Originally Posted by TimSad*:

 

Hey,

 

I have a question to this plugin. I want to yell if a special player get killed, like the admin. which code do I have to insert to the "Kill Announcement List"? ( The weapon doesnt matter).

There's no way to do this.

 

TimSad, This is a great plugin. I was curious is there anyway to incorporate as a end round stat, "The Longest shot of the round"? Keep up the great coding.

Unfortunately, BF3's RCon does not report kill coordinates so this cannot be accomplished. I had made a request for it to be implemented here http://www.fpsadmin.com/forum/showpo...1&postcount=18 but it doesn't look like it's gonna happen. :sad:
* Restored post. It could be that the author is no longer active.
Link to comment

Originally Posted by IAF-SDS*:

 

Are we able to show stats which are already produced in battlereports like the ones shown below?

 

Top Jet (Jet score)

Top Helicopter (Helicopter score)

Top Vehicle (Vehicle score)

 

Best Recon (Recon score)

Best Support (Support score)

Best Assault (Assault score)

Best Engineer (Engineer score)

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

Originally Posted by TimSad*:

 

Are we able to show stats which are already produced in battlereports like the ones shown below?

 

Top Jet (Jet score)

Top Helicopter (Helicopter score)

Top Vehicle (Vehicle score)

 

Best Recon (Recon score)

Best Support (Support score)

Best Assault (Assault score)

Best Engineer (Engineer score)

No, not with the BF3 RCon protocol. It may be achievable with Battlelog data fetching but I don't use that in this plugin and would rather not. Also, I'm not sure how the plugin would be able to find the ID of the specific Battlereport so it may not be possible at all.

 

Update for this plugin coming in hot. Please stand by...

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

Originally Posted by TimSad*:

 

Updated!

 

1.0.0.0 (02/01/2013)

  • fixed issue where the specific kill announcement wouldn't always be triggered - should now always display the message when a kill is acquired with whatever weapon(s) are in your list
  • fixed issue where server kills report didn't work when having a database name other than "bf3serverkills"
  • fixed the problem where the end kill streak number would be reset to its default of 10 any time procon was restarted
  • fixed the problem where when ace squad display type is set to vars.servermessage it would fail to revert the variable back to its original value - this would always occur when there wasn't anybody to spawn the next round therefore triggering the vars.servermessage reset
  • fixed the formatting of the ace squad display when only one person was in the ace squad
  • fixed ace squad to where it will now work on every game mode except for the squad game modes
  • added death streaks to the plugin
  • added most deaths, highest score, & highest death streak to the round stats
* Restored post. It could be that the author is no longer active.
Link to comment

Originally Posted by TimSad*:

 

Nice work.

 

Thanks TimSad.

Thanks! :smile:

 

Any other such related things that I might be able to add to this plugin? Something that you BF3 server owners/admins might think would be a cool or interesting stat to add that I may not have thought of?

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

Originally Posted by IAF-SDS*:

 

Only thing I can think of is what I posted above.

 

Just to be clear, I was referring to those Top Vehicle Score stats and Best Class Score stats on a round basis only and not an overall stat that would require a database.

 

Having clarified that, is it still not possible to show those just for the previous round?

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

Originally Posted by TimSad*:

 

It may be possible if there is a way to get the URL of the battlereport of each specific game. I think I might know of way to fetch that specific data. Then, with that I may be able to get the "Best Class Score" stat. I don't think I'll be able to get the "Top Vehicle Score" stat because I'm looking through some of my past Battlereports from today and all I'm seeing for each player under Best Vehicle is "N/A". I'm not sure if it has always been like that for these Battlereports or if it is a temporary bug.

 

I'll play around with this and tell ya what I find out...

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

Originally Posted by IAF-SDS*:

 

It may be possible if there is a way to get the URL of the battlereport of each specific game. I think I might know of way to fetch that specific data. Then, with that I may be able to get the "Best Class Score" stat. I don't think I'll be able to get the "Top Vehicle Score" stat because I'm looking through some of my past Battlereports from today and all I'm seeing for each player under Best Vehicle is "N/A". I'm not sure if it has always been like that for these Battlereports or if it is a temporary bug.

 

I'll play around with this and tell ya what I find out...

I think it's a bug for you, and hopefully temporary to not see the Top Vehicle Score (and Top Jet Score with Top Helicopter Score). Or perhaps you're not seeing it since map and game modes affect what is shown (jets on one map and game mode, but not on another for example).

 

Here's an example that shows it for me: http://battlelog.battlefield.com/bf3...9/1/723949147/

 

Thanks TimSad for playing with it to see what you find out.

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

Originally Posted by ronald32*:

 

Hey there, i run my procon as a service and this stops me from connecting Mysql and gives me error is there a way i can still use this feature even if it runs as service! Battlestats for xp-killer plugin works even if its run in service mode can you let me know if there is a way to it! Thanks for the great plugin :smile:

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

Originally Posted by TimSad*:

 

Hey there, i run my procon as a service and this stops me from connecting Mysql and gives me error is there a way i can still use this feature even if it runs as service! Battlestats for xp-killer plugin works even if its run in service mode can you let me know if there is a way to it! Thanks for the great plugin :smile:

Hey there! I wasn't aware that there was some sort of limitation with ODBC and running Procon as a service. I'll have to check this out and get back to you...
* 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.