Jump to content

Insane Limits: BF4 !lead command, take squad lead position


ImportBot

Recommended Posts

Originally Posted by PapaCharlie9*:

 

Another question: A limit to take the squad leader role, so f.eks @(!)lead would make you a squad leader of the current squad you are in.

 

To do this in the console, you have to type "squad.leader 1 1 PlayerName" where 1 1 is team/squad number.

 

Is this possible? :smile:

Is it possible to do @lead PlayerName, so you can assign squad leader to a player in your squad?

 

So @lead would assign yourself, and @lead PlayerName another player. :smile:

EDIT: I also added the !lead PlayerName support to this version. The player typing in the command (Admin) is checked against the custom list (name and/or tag), and if there is a match, the squad that PlayerName is in (not necessarily the same squad as Admin) is changed so that PlayerName is the squad leader for that squad. This works regardless of which team Admin or PlayerName are in. For example, say Admin is in US Alpha and ProBoy is in RU Bravo but not its squad leader. If Admin types !lead ProBoy, ProBoy will become squad leader of RU Bravo. PlayerName must be a case insensitive substring of an actual player's name, or the command will report an error and do nothing. If more than one name matches, the command will report an error and do nothing. For example, if the actual player's name is ProBoy and the command used is !lead pro, as long as no other name has "pro" in it, ProBoy will be selected. If both ProBoy and killerpro are in the game, the command will report: "Multiple matches, try again: ProBoy, killerpro". You have to use a longer substring or the full name to match ProBoy.

 

Create a new list, Enabled, name it admins, set CaseSensitive, fill in with a comma separated list of player names OR clan tags.

 

Create a limit to evaluate OnAnyChat, name it "Admin List Take Squad Lead", leave Action set to None.

 

Set first_check to this Code:

 

Code:

/* R4 */
bool isSelf = true;
Match selfie = Regex.Match(player.LastChat, @"^\s*[@!]lead");
Match other = Regex.Match(player.LastChat, @"^\s*[@!]lead\s+([^\s]+)");
PlayerInfoInterface target = null;
if (other.Success) {
    List<PlayerInfoInterface> all = new List<PlayerInfoInterface>();
    all.AddRange(team1.players);
    all.AddRange(team2.players);
    String pattern = other.Groups[1].Value;
    if (String.IsNullOrEmpty(pattern)) return false;
    List<PlayerInfoInterface> matches = new List<PlayerInfoInterface>();
    foreach (PlayerInfoInterface p in all) {
        if (Regex.Match(p.Name, pattern, RegexOptions.IgnoreCase).Success) {
            matches.Add(p);
        }
    }
    if (matches.Count == 0) {
        plugin.SendPlayerMessage(player.Name, "No player name matches: " + pattern);
        return false;
    } else if (matches.Count > 1) {
        List<String> names = new List<String>();
        foreach (PlayerInfoInterface m in matches) {
            names.Add(m.Name);
        }
        String tmp = String.Join(", ", names.ToArray());
        if (tmp.Length > 90) tmp = tmp.Substring(0,90);
        plugin.SendPlayerMessage(player.Name, "Multiple matches, try again: " + tmp + "...");
        return false;
    }
    target = matches[0];
    isSelf = false;
} else if (selfie.Success) {
    target = player;
} else {
    return false;
}


if (plugin.isInList(player.Name, "admins") || plugin.isInList(player.Tag, "admins")) {

    plugin.ServerCommand("squad.leader", target.TeamId.ToString(), target.SquadId.ToString(), target.Name);

    String[] SQUAD_NAMES = new String[] { "None",
      "Alpha", "Bravo", "Charlie", "Delta", "Echo", "Foxtrot", "Golf", "Hotel",
      "India", "Juliet", "Kilo", "Lima", "Mike", "November", "Oscar", "Papa",
      "Quebec", "Romeo", "Sierra", "Tango", "Uniform", "Victor", "Whiskey", "Xray",
      "Yankee", "Zulu", "Haggard", "Sweetwater", "Preston", "Redford", "Faith", "Celeste"
    };
    String msg = target.Name + " is now squad leader of " + SQUAD_NAMES[target.SquadId] + " squad";
    plugin.ConsoleWrite(msg);
    plugin.SendPlayerMessage(player.Name, msg);
    if (!isSelf) plugin.SendPlayerMessage(target.Name, msg);
} else {
    plugin.SendPlayerMessage(player.Name, "You don't have permission to use the " + player.LastChat + " command");
}
return false;
A variation that uses Procon accounts instead of a custom list is in post #3.
* Restored post. It could be that the author is no longer active.
Link to comment

Originally Posted by TMiland*:

 

Thank you for this Papa!

 

The previous squad leader will just become a squad member, and the procon accounts is okay, maybe add an option to choose from a list of "admins" maybe, have seen that in other limits. :smile:

 

I just got another idea, to expand this limit. What about when you're done leading the squad?

 

Is it possible to do @lead PlayerName, so you can assign squad leader to a player in your squad?

 

So @lead would assign yourself, and @lead PlayerName another player. :smile:

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

Originally Posted by PapaCharlie9*:

 

This version uses Procon accounts instead of a custom list.

 

I'll assume only players with a Procon account that have privileges to move players.

 

Create a limit to evaluate OnAnyChat, call it "Take Squad Lead", leave Action set to None.

 

Set first_check to this Code:

 

Code:

bool isSelf = true;
Match selfie = Regex.Match(player.LastChat, @"^\s*[@!]lead");
Match other = Regex.Match(player.LastChat, @"^\s*[@!]lead\s+([^\s]+)");
PlayerInfoInterface target = null;
if (other.Success) {
    List<PlayerInfoInterface> all = new List<PlayerInfoInterface>();
    all.AddRange(team1.players);
    all.AddRange(team2.players);
    String pattern = other.Groups[1].Value;
    if (String.IsNullOrEmpty(pattern)) return false;
    List<PlayerInfoInterface> matches = new List<PlayerInfoInterface>();
    foreach (PlayerInfoInterface p in all) {
        if (Regex.Match(p.Name, pattern, RegexOptions.IgnoreCase).Success) {
            matches.Add(p);
        }
    }
    if (matches.Count == 0) {
        plugin.SendPlayerMessage(player.Name, "No player name matches: " + pattern);
        return false;
    } else if (matches.Count > 1) {
        List<String> names = new List<String>();
        foreach (PlayerInfoInterface m in matches) {
            names.Add(m.Name);
        }
        String tmp = String.Join(", ", names.ToArray());
        if (tmp.Length > 90) tmp = tmp.Substring(0,90);
        plugin.SendPlayerMessage(player.Name, "Multiple matches, try again: " + tmp + "...");
        return false;
    }
    target = matches[0];
    isSelf = false;
} else if (selfie.Success) {
    target = player;
} else {
    return false;
}

bool canKill = false;
bool canKick = false;
bool canBan = false;
bool canMove = false;
bool canChangeLevel = false;

if (plugin.CheckAccount(player.Name, out canKill, out canKick, out canBan, out canMove, out canChangeLevel) && canMove) {
    plugin.ServerCommand("squad.leader", target.TeamId.ToString(), target.SquadId.ToString(), target.Name);

    String[] SQUAD_NAMES = new String[] { "None",
      "Alpha", "Bravo", "Charlie", "Delta", "Echo", "Foxtrot", "Golf", "Hotel",
      "India", "Juliet", "Kilo", "Lima", "Mike", "November", "Oscar", "Papa",
      "Quebec", "Romeo", "Sierra", "Tango", "Uniform", "Victor", "Whiskey", "Xray",
      "Yankee", "Zulu", "Haggard", "Sweetwater", "Preston", "Redford", "Faith", "Celeste"
    };
    String msg = target.Name + " is now squad leader of " + SQUAD_NAMES[target.SquadId] + " squad";
    plugin.ConsoleWrite(msg);
    plugin.SendPlayerMessage(player.Name, msg);
    if (!isSelf) plugin.SendPlayerMessage(target.Name, msg);
} else {
    plugin.SendPlayerMessage(player.Name, "You don't have permission to use the " + player.LastChat + " command");
}
return false;
* Restored post. It could be that the author is no longer active.
Link to comment

Originally Posted by TMiland*:

 

What if the player is in a different squad? Or a different team? What should happen?

I was talking about one of the players already in your squad. :ohmy:

If not in your squad, do nothing.

 

Thanks for the updated code! This is really good! :smile:

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

Originally Posted by jking54*:

 

Boy, I'm really loving this concept since there have been so many times it irritates the hell out of me when squad leaders do not issue any orders and we are a team play oriented server. So, with this we have a total of two limits then?

 

what is the exact command again for this?

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

Originally Posted by TMiland*:

 

Boy, I'm really loving this concept since there have been so many times it irritates the hell out of me when squad leaders do not issue any orders and we are a team play oriented server. So, with this we have a total of two limits then?

 

what is the exact command again for this?

There is really just one limit, but two different. One that uses the procon accounts, and one that uses a list of "admins" as access to the command "@(!)lead". :smile:

 

You would want to use the "admins" list, if you use other admin tools like AdKats webadmin, where only you have an account in procon. At least that's how i do it. :smile:

 

So when you are in the squad you want to lead, type @lead or !lead, and you will be assigned as squad leader in the current squad. :biggrin:

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

Originally Posted by Ralphvd*:

 

!lead Playername gives me still lead to myself. Is it working for you?

 

Great idea, have too many times leaving squad and still not the member that wants lead, is the squad leader -.-.

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

Originally Posted by jking54*:

 

There is really just one limit, but two different. One that uses the procon accounts, and one that uses a list of "admins" as access to the command "@(!)lead". :smile:

 

You would want to use the "admins" list, if you use other admin tools like AdKats webadmin, where only you have an account in procon. At least that's how i do it. :smile:

 

So when you are in the squad you want to lead, type @lead or !lead, and you will be assigned as squad leader in the current squad. :biggrin:

TMiland, thanks a bunch, I'm still a Regex n00b :smile:
* Restored post. It could be that the author is no longer active.
Link to comment

Originally Posted by TMiland*:

 

!lead Playername gives me still lead to myself. Is it working for you?

 

Great idea, have too many times leaving squad and still not the member that wants lead, is the squad leader -.-.

Not sure if he implemented the "!lead PlayerName", but at least you can assign your self as SL. :smile:

 

TMiland, thanks a bunch, I'm still a Regex n00b :smile:

No problem, thank Papa for the code! :biggrin:
* Restored post. It could be that the author is no longer active.
Link to comment

Originally Posted by Tomgun*:

 

heres a question, does the game report squad leader points gained. What Im thinking is if say the squad leader does not get any squad leader points in say a period of 60 seconds it will chose someone else in the squad.

 

Also does any of these stop you if the person who is squad leader is wearing the same tags as you?

 

and

 

Could this be edited so anybody in the server can do it and it will check the squad leaders squad score on battlelog, if the ratio is worked out and your squad score is higher divided by how long you have been playing compare to their ratio then this shows your a better squad leader and it will change you automatically or if you try to do it manually it will either let you or not let you depending on the outcome. A whitelist could stop this aswell.

 

btw great idea on this :ohmy:

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

Originally Posted by MorpheusX(AUT)*:

 

heres a question, does the game report squad leader points gained. What Im thinking is if say the squad leader does not get any squad leader points in say a period of 60 seconds it will chose someone else in the squad.

Not possible. SL score is not reported separately.
* Restored post. It could be that the author is no longer active.
Link to comment

Originally Posted by TMiland*:

 

heres a question, does the game report squad leader points gained. What Im thinking is if say the squad leader does not get any squad leader points in say a period of 60 seconds it will chose someone else in the squad.

Yes it is: Posted Image

 

*Edit

MorpheusX is right, squad score is not SL score. :P

 

Also does any of these stop you if the person who is squad leader is wearing the same tags as you?

Not with the current code no, but i see it all the time, players with the same tag don't do anything as SL.

 

Could this be edited so anybody in the server can do it and it will check the squad leaders squad score on battlelog, if the ratio is worked out and your squad score is higher divided by how long you have been playing compare to their ratio then this shows your a better squad leader and it will change you automatically or if you try to do it manually it will either let you or not let you depending on the outcome. A whitelist could stop this aswell.

Everything is possible i guess, but that's up to Papa to decide if he wants to expand this code any further. :smile:

 

 

btw great idea on this :ohmy:

The idea came from a discussion in the AdKats thread. :smile:
* Restored post. It could be that the author is no longer active.
Link to comment

Originally Posted by MorpheusX(AUT)*:

 

Yes it is: Posted Image

Squad score might be displayed separately in Battlelog, however the GAME doesn't report it separately (everything is just "score"). Since that was what Tomgun asked (and Battlelog doesn't update this value every 60 seconds like he suggested), you definitely CANNOT add a mechanism that checks for "SL inactivity" by checking the SL score every 60 seconds. Conclusion: no, it's not reported separately in a way that's usable for this case (I did just quote the part about the ingame-check, not the last paragraph).
* Restored post. It could be that the author is no longer active.
Link to comment

Originally Posted by PapaCharlie9*:

 

Guys, pick a version, Procon account or admin list, and I'll modify that one to enable !lead PlayerName. I don't want to do it for both, too much busywork. Someone else can do the merge to produce the other version, it should be completely mechanical.

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

Originally Posted by jking54*:

 

Guys, pick a version, Procon account or admin list, and I'll modify that one to enable !lead PlayerName. I don't want to do it for both, too much busywork. Someone else can do the merge to produce the other version, it should be completely mechanical.

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

Originally Posted by TMiland*:

 

Squad score might be displayed separately in Battlelog, however the GAME doesn't report it separately (everything is just "score"). Since that was what Tomgun asked (and Battlelog doesn't update this value every 60 seconds like he suggested), you definitely CANNOT add a mechanism that checks for "SL inactivity" by checking the SL score every 60 seconds. Conclusion: no, it's not reported separately in a way that's usable for this case (I did just quote the part about the ingame-check, not the last paragraph).

That's great! I am currently using the admin list version, i vote for that one. :smile:
* Restored post. It could be that the author is no longer active.
Link to comment

Originally Posted by Tomgun*:

 

thanks for the replies guys, I think having both options like it is is fine btw, im currently using the procon accounts version but if its abused will use the admin version, keep them both as an option :smile:

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

Originally Posted by Ralphvd*:

 

Guys, pick a version, Procon account or admin list, and I'll modify that one to enable !lead PlayerName. I don't want to do it for both, too much busywork. Someone else can do the merge to produce the other version, it should be completely mechanical.

I vote for admin list too.
* Restored post. It could be that the author is no longer active.
Link to comment

Originally Posted by PapaCharlie9*:

 

Done, post #3 updated. Make sure you read the rather long paragraph of rules and regulations. This is significantly more complicated now with lots of ways to do the wrong thing. Someone should test this thoroughly before trusting it.

 

EDIT: After you guys have tested it and are sure it works okay, I'll swap post #3 for post #1 and the admin list variant will become the official one. The Procon accounts variant will still be available as post #3 and if someone does the mechanical merge, it will also have the PlayerName feature.

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

Originally Posted by Tomgun*:

 

its not ment for you to give squad leader position away, but then might be helpful if it could, could this be written in to the code?

 

say if you just type !lead it gives you the sl position but if you type a member of your squad after it to give it to them and you dont have to be sl to do that, that would be real handy when in the heat of the battle and you gotta go take a dump, quickly give it to someone and then take it back when ya all done :P

 

also is the admin list version look at full names or can you just put clan tags in there?

 

still think this is a genius idea, can believe no one ever thought of it before :biggrin:

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

Originally Posted by TMiland*:

 

its not ment for you to give squad leader position away, but then might be helpful if it could, could this be written in to the code?

 

say if you just type !lead it gives you the sl position but if you type a member of your squad after it to give it to them and you dont have to be sl to do that, that would be real handy when in the heat of the battle and you gotta go take a dump, quickly give it to someone and then take it back when ya all done :P

 

also is the admin list version look at full names or can you just put clan tags in there?

 

still think this is a genius idea, can believe no one ever thought of it before :biggrin:

Take a look at this post: myrcon.net/...insane-limits-bf4-lead-command-take-squad-lead-position#entry48976

My second idea was just that, give someone else SL when you are done SL'ing. :ohmy:

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

Originally Posted by PapaCharlie9*:

 

Hmm, okay, i entered a squad, and wrote !lead, that made me the SL, now, when i wrote !lead PlayerName (previous SL)

 

See image: Posted Image

 

Is this supposed to happen? :P

Oops, my bad. I made a mistake in the order of the command processing. Try R4, post #3, that should fix it.

 

See, I told you all testing was needed!

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

Originally Posted by PapaCharlie9*:

 

its not ment for you to give squad leader position away, but then might be helpful if it could, could this be written in to the code?

 

say if you just type !lead it gives you the sl position but if you type a member of your squad after it to give it to them and you dont have to be sl to do that, that would be real handy when in the heat of the battle and you gotta go take a dump, quickly give it to someone and then take it back when ya all done :P

I don't see how that is different from the !lead PlayerName version? Am I missing something?

 

If you had said it had to be the sl that typed the command, I would understand, but you said anyone, which is what !lead PlayerName is, as long as anyone is an admin.

 

BTW, it's not currently possible to determine who is the current squad leader with Insane Limits, so you couldn't make the command also available to squad leaders, even if they are not admins. That would be nice, but not currently possible.

 

Of course, all the player has to do is switch to an empty squad then rejoin the original squad, right?

 

also is the admin list version look at full names or can you just put clan tags in there?

 

still think this is a genius idea, can believe no one ever thought of it before :biggrin:

I'm pretty sure it says name or tags in the instructions. :smile:
* Restored post. It could be that the author is no longer active.
Link to comment

Originally Posted by TMiland*:

 

Oops, my bad. I made a mistake in the order of the command processing. Try R4, post #3, that should fix it.

 

See, I told you all testing was needed!

I trust you! :biggrin:

 

I'll test it tomorrow, and let you know what the results are. :smile:

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

Originally Posted by wihadmin*:

 

Thanks for this code, PC9! I have a question. The "admin list", is that the ProCon admin list? Or do I need to create a new one? If so, where do I create that list?

 

Edit: Nvm. I figured it out. :smile:

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

Originally Posted by TMiland*:

 

Okay, the R4 works as intended! Great! :biggrin:

 

I have edited the code to work for Procon accounts:

 

Code:

bool canKill = false;
bool canKick = false;
bool canBan = false;
bool canMove = false;
bool canChangeLevel = false;
bool isSelf = true;
Match selfie = Regex.Match(player.LastChat, @"^\s*[@!]lead");
Match other = Regex.Match(player.LastChat, @"^\s*[@!]lead\s+([^\s]+)");
PlayerInfoInterface target = null;
if (other.Success) {
    List<PlayerInfoInterface> all = new List<PlayerInfoInterface>();
    all.AddRange(team1.players);
    all.AddRange(team2.players);
    String pattern = other.Groups[1].Value;
    if (String.IsNullOrEmpty(pattern)) return false;
    List<PlayerInfoInterface> matches = new List<PlayerInfoInterface>();
    foreach (PlayerInfoInterface p in all) {
        if (Regex.Match(p.Name, pattern, RegexOptions.IgnoreCase).Success) {
            matches.Add(p);
        }
    }
    if (matches.Count == 0) {
        plugin.SendPlayerMessage(player.Name, "No player name matches: " + pattern);
        return false;
    } else if (matches.Count > 1) {
        List<String> names = new List<String>();
        foreach (PlayerInfoInterface m in matches) {
            names.Add(m.Name);
        }
        String tmp = String.Join(", ", names.ToArray());
        if (tmp.Length > 90) tmp = tmp.Substring(0,90);
        plugin.SendPlayerMessage(player.Name, "Multiple matches, try again: " + tmp + "...");
        return false;
    }
    target = matches[0];
    isSelf = false;
} else if (selfie.Success) {
    target = player;
} else {
    return false;
}

if (plugin.CheckAccount(player.Name, out canKill, out canKick, out canBan, out canMove, out canChangeLevel)) {
    if (!canMove) return false;

    plugin.ServerCommand("squad.leader", target.TeamId.ToString(), target.SquadId.ToString(), target.Name);

    String[] SQUAD_NAMES = new String[] { "None",
      "Alpha", "Bravo", "Charlie", "Delta", "Echo", "Foxtrot", "Golf", "Hotel",
      "India", "Juliet", "Kilo", "Lima", "Mike", "November", "Oscar", "Papa",
      "Quebec", "Romeo", "Sierra", "Tango", "Uniform", "Victor", "Whiskey", "Xray",
      "Yankee", "Zulu", "Haggard", "Sweetwater", "Preston", "Redford", "Faith", "Celeste"
    };
    String msg = target.Name + " is now squad leader of " + SQUAD_NAMES[target.SquadId] + " squad";
    plugin.ConsoleWrite(msg);
    plugin.SendPlayerMessage(player.Name, msg);
    if (!isSelf) plugin.SendPlayerMessage(target.Name, msg);
} else {
    plugin.SendPlayerMessage(player.Name, "You don't have permission to use the " + player.LastChat + " command");
}
return false;
Does it look okay Papa? :smile:
* Restored post. It could be that the author is no longer active.
Link to comment

Originally Posted by PapaCharlie9*:

 

Okay, the R4 works as intended! Great! :biggrin:

 

I have edited the code to work for Procon accounts:

 

Code:

bool canKill = false;
bool canKick = false;
bool canBan = false;
bool canMove = false;
bool canChangeLevel = false;
bool isSelf = true;
Match selfie = Regex.Match(player.LastChat, @"^\s*[@!]lead");
Match other = Regex.Match(player.LastChat, @"^\s*[@!]lead\s+([^\s]+)");
PlayerInfoInterface target = null;
if (other.Success) {
    List<PlayerInfoInterface> all = new List<PlayerInfoInterface>();
    all.AddRange(team1.players);
    all.AddRange(team2.players);
    String pattern = other.Groups[1].Value;
    if (String.IsNullOrEmpty(pattern)) return false;
    List<PlayerInfoInterface> matches = new List<PlayerInfoInterface>();
    foreach (PlayerInfoInterface p in all) {
        if (Regex.Match(p.Name, pattern, RegexOptions.IgnoreCase).Success) {
            matches.Add(p);
        }
    }
    if (matches.Count == 0) {
        plugin.SendPlayerMessage(player.Name, "No player name matches: " + pattern);
        return false;
    } else if (matches.Count > 1) {
        List<String> names = new List<String>();
        foreach (PlayerInfoInterface m in matches) {
            names.Add(m.Name);
        }
        String tmp = String.Join(", ", names.ToArray());
        if (tmp.Length > 90) tmp = tmp.Substring(0,90);
        plugin.SendPlayerMessage(player.Name, "Multiple matches, try again: " + tmp + "...");
        return false;
    }
    target = matches[0];
    isSelf = false;
} else if (selfie.Success) {
    target = player;
} else {
    return false;
}

if (plugin.CheckAccount(player.Name, out canKill, out canKick, out canBan, out canMove, out canChangeLevel)) {
    if (!canMove) return false;

    plugin.ServerCommand("squad.leader", target.TeamId.ToString(), target.SquadId.ToString(), target.Name);

    String[] SQUAD_NAMES = new String[] { "None",
      "Alpha", "Bravo", "Charlie", "Delta", "Echo", "Foxtrot", "Golf", "Hotel",
      "India", "Juliet", "Kilo", "Lima", "Mike", "November", "Oscar", "Papa",
      "Quebec", "Romeo", "Sierra", "Tango", "Uniform", "Victor", "Whiskey", "Xray",
      "Yankee", "Zulu", "Haggard", "Sweetwater", "Preston", "Redford", "Faith", "Celeste"
    };
    String msg = target.Name + " is now squad leader of " + SQUAD_NAMES[target.SquadId] + " squad";
    plugin.ConsoleWrite(msg);
    plugin.SendPlayerMessage(player.Name, msg);
    if (!isSelf) plugin.SendPlayerMessage(target.Name, msg);
} else {
    plugin.SendPlayerMessage(player.Name, "You don't have permission to use the " + player.LastChat + " command");
}
return false;
Does it look okay Papa? :smile:
Indeed, very good. I'll fix up post #1 and #3 to include this, thanks.
* 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.