Jump to content

Insane Limits Requests


ImportBot

Recommended Posts

  • Replies 3.2k
  • Created
  • Last Reply

Originally Posted by Singh400*:

 

hey all

 

question:

 

is thare a code to let insane limits tweet a full end of round stats to twitter?

or can it be made?

Yes it could be done. But what stats do you want?
* Restored post. It could be that the author is no longer active.
Link to comment

Originally Posted by HexaCanon*:

 

I don't think you need the 'all'. The all is only when you want to search the entire player list or do some commant, other than global chat/yell, to every player. You are just sending the shame to the killer and victim, right? If so, you should remove the foreach and change all the p to killer and victim, e.g., instead of p.Data, use killer.Data AND victim.Data. Also, instead of player.Name, use killer.Name and victim.Name. This is all OnKill or OnDeath, right? This means you have to do your language check for each of killer and victim separately, since they might use different languages. So instead of

 

Code:

if (p.Data.getBool("ENG")) {
                    String knifemessage = plugin.R(shameENG[next]);
                    plugin.ServerCommand("admin.yell", knifemessage, "player", player.Name);
                } else if (p.Data.getBool("FR")) {
You want first:

 

Code:

if (killer.Data.getBool("ENG")) {
                    String knifemessage = plugin.R(shameENG[next]);
                    plugin.ServerCommand("admin.yell", knifemessage, "player", killer.Name);
                } else if (killer.Data.getBool("FR")) { ...
then copy that whole block of if/else if/else and do it again, only with victim:

 

Code:

if (victim.Data.getBool("ENG")) {
                    String knifemessage = plugin.R(shameENG[next]);
                    plugin.ServerCommand("admin.yell", knifemessage, "player", victim.Name);
                } else if (victim.Data.getBool("FR")) { ...
The 'shame' has to be moved into each of your if statements, since you have language specific ones. Like for ENG, you need this:

 

This line:

Code:

next = next % shame.Count; // Ensure rotation of messages
Has to be moved into each of your if statements, for example, for ENG:

 

Code:

if (killer.Data.getBool("ENG")) {
                    next = next % shameENG.Count; // Ensure rotation of messages
                    String knifemessage = plugin.R(shameENG[next]);
                    plugin.ServerCommand("admin.yell", knifemessage, "player", killer.Name);
Or better yet, if all the phrase Lists are all the same length, then keep it outside and just use one of them as a representative.

 

Code:

int next = Convert.ToInt32(limit.ActivationsTotal());
            next = next % shameENG.Count; // shameENG.Count is the same as all other shame Lists
            
            if ( Regex.Match(kill.Weapon, @"(ACB-90|Knife|Melee)", RegexOptions.IgnoreCase).Success ) {
                if (killer.Data.getBool("ENG")) {
                    String knifemessage = plugin.R(shameENG[next]);
                    plugin.ServerCommand("admin.yell", knifemessage, "player", killer.Name);
can all be used for this kind of messages ? instead of victim and killer
* Restored post. It could be that the author is no longer active.
Link to comment

Originally Posted by PapaCharlie9*:

 

can all be used for this kind of messages ? instead of victim and killer

No. The all variable is a list of players. The player, killer and victim variables are just one player.
* Restored post. It could be that the author is no longer active.
Link to comment

Originally Posted by PapaCharlie9*:

 

Per your request from my other thread, I'm looking for a competitive BF3 plugin/plugin mod.

 

At the end of the round a CSV file would be generated and stored in an easily accessible location that would simply include the following information (revives = revives applied if posssible):

 

Playername1,GUID,Team,Kills,Deaths,Headshots,Score ,Revives

Playername2,GUID,Team,Kills,Deaths,Headshots,Score ,Revives

etc

etc

 

Thanks!

I wasn't sure which GUID you wanted, so I used the EA GUID. The #2 post in the thread shows how to change it to the PB GUID.

 

The Revives is only going to be a guess and probably won't work in any case.

 

It only works for two-team modes, so no Squad Deathmatch.

 

Here you go: Insane Limits V0.8/R1: End of round player stats loggiong (not SQDM)*

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

Originally Posted by HexaCanon*:

 

No. The all variable is a list of players. The player, killer and victim variables are just one player.

i was referring to the use of (foreach p in all). there is no way to implement it at all ?
* Restored post. It could be that the author is no longer active.
Link to comment

Originally Posted by Master_Pain*:

 

I have been trying to find a way to display a server's rank in game. I found this thread:

www.phogue.net/forumvb/showth...3-plugin-I-saw*

 

Can someone finish off that limit?

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

Originally Posted by PapaCharlie9*:

 

players score wat you see at te and of the round

You know that Tweets are limited to 140 characters, right? There's no way you can fit the entire scoreboard into one tweet. Well, not legibly anyway.

 

You could do the team scores, though, like ": Oman/CQ, 1/2, 62 players: US 16344 (52) vs RU 12008 (0)". The number in parens is remaining tickets.

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

Originally Posted by PapaCharlie9*:

 

i was referring to the use of (foreach p in all). there is no way to implement it at all ?

What do you mean by "it"? Your original question was about sending a message to a player. Do you want to send messages to all players?

 

EDIT: Wait, I think I figured out what you want. You want the equivalent of SendGlobalMessage, BUT, you want to localize the message to each players language.

 

Yes, there is a way to implement "it".

 

Code:

List<PlayerInfoInterface> all = new List<PlayerInfoInterface>();
all.AddRange(team1.players);
all.AddRange(team2.players);
if (team3.players.Count > 0) all.AddRange(team3.players);
it (team4.players.Count > 0) all.AddRange(team4.players);

foreach (PlayerInfoInterface p in all) {
    /*
    Inside this loop, the p variable is exactly the same as the player variable,
    so you can do things like p.Data.getBool, p.Name, etc.
    */
    .... put your code here ....
}
* Restored post. It could be that the author is no longer active.
Link to comment

Originally Posted by PapaCharlie9*:

 

I have been trying to find a way to display a server's rank in game. I found this thread:

www.phogue.net/forumvb/showth...3-plugin-I-saw*

 

Can someone finish off that limit?

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

Originally Posted by glenn82*:

 

You know that Tweets are limited to 140 characters, right? There's no way you can fit the entire scoreboard into one tweet. Well, not legibly anyway.

 

You could do the team scores, though, like ": Oman/CQ, 1/2, 62 players: US 16344 (52) vs RU 12008 (0)". The number in parens is remaining tickets.

lol papa im a noob at this

 

but can it be done like:

 

On the top 3 on are:

1.

2.

3.

 

in one tweet.

 

and also can a limite tweet the playername and his or hers kick/ban reason?

this is more for mee to check my admins if thay behave them selfs as admin

 

if this 2 things can be tweet to twitter i will almost kiss you

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

Originally Posted by Singh400*:

 

lol papa im a noob at this

 

but can it be done like:

 

On the top 3 on are:

1.

2.

3.

 

in one tweet.

Not in one tweet. Best middle ground would be to display mapmane and average score.

 

and also can a limite tweet the playername and his or hers kick/ban reason?

this is more for mee to check my admins if thay behave them selfs as admin

 

if this 2 things can be tweet to twitter i will almost kiss you

As long as the banning action is done by Insane Limits, and not via any other plugin, yes.
* Restored post. It could be that the author is no longer active.
Link to comment

Originally Posted by glenn82*:

 

Not in one tweet. Best middle ground would be to display mapmane and average score.

 

As long as the banning action is done by Insane Limits, and not via any other plugin, yes.

for the first one can some one write it for me ( all on phogue )

 

and for the second si it wil not tweet ONLY what happens in insane limits not what the admin kick or ban in procon and or ingame?

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

Originally Posted by purebattlefield*:

 

Awesome! Pretty sure I have it all set up now. Thanks to both of you!

 

I don't suppose there is a way to check server population within a time span, is there?

 

I need to alter the code again to make it not send the tweet if the server's population has not dropped below the threshold since the last tweet.

 

So if the server population is >11 and it has been 6 hours and the server population has dropped below 11 since the last tweet, then tweet.

Anyone have a chance to look at this and see if it's possible to add the ability to check server population over a time period? Singh and Papa have helped so much already, I don't want to become a nuisance, hopefully I haven't already. :smile: Figured I'd check in though in case it was missed.
* Restored post. It could be that the author is no longer active.
Link to comment

Originally Posted by PapaCharlie9*:

 

CORRECTED

 

Not in one tweet.

It could be done in one tweet with less formatting, like this:

 

Top 3 on for /

 

Something like this (I haven't compiled or tested this):

 

OnRoundOver, Action to None

 

first_check Code:

 

Code:

List<PlayerInfoInterface> all = new List<PlayerInfoInterface>();
all.AddRange(team1.players);
all.AddRange(team2.players);
if (team3.players.Count > 0) all.AddRange(team3.players);
if (team4.players.Count > 0) all.AddRange(team4. players);

all.Sort(
	delegate(PlayerInfoInterface first, PlayerInfoInterface second) {
		double a = first.ScoreRound;
		double b = second.ScoreRound;

		// Sort highest to lowest
		if (a > B) return -1;
		if (a < B) return 1;
		return 0; // equal
	}
);

String name1 = "[none]";
String score1 = "0";
String name2 = "[none]";
String score2 = "0";
String name3 = "[none]";
String score3 = "0";

if (all.Count > 1) {
        name1 = all[0].FullName;
        score1 = all[0].ScoreRound.ToString("F0");
}

if (all.Count >= 2) {
        name2 = all[1].FullName;
        score2 = all[1].ScoreRound.ToString("F0");
}

if (all.Count >= 3) {
        name3 = all[2].FullName;
        score3 = all[2].ScoreRound.ToString("F0");
}

/* BF3 friendly map names, including B2K and CQ post R25 */
Dictionary<String, String> maps = new Dictionary<String, String>();
maps.Add("MP_001", "Bazaar");
maps.Add("MP_003", "Teheran");
maps.Add("MP_007", "Caspian");
maps.Add("MP_011", "Seine");
maps.Add("MP_012", "Firestorm");
maps.Add("MP_013", "Damavand");
maps.Add("MP_017", "Canals");
maps.Add("MP_018", "Kharg");
maps.Add("MP_Subway", "Metro");
maps.Add("XP1_001", "Karkand");
maps.Add("XP1_002", "Oman");
maps.Add("XP1_003", "Sharqi");
maps.Add("XP1_004", "Wake");
maps.Add("XP2_Factory", "Factory");
maps.Add("XP2_Skybar", "Skybar");
maps.Add("XP2_Palace", "Palace");
maps.Add("XP2_Office", "Office");

String mapName = (maps.ContainsKey(server.MapFileName)) _ maps[server.MapFileName] : server.MapFileName;

String tweet = "Top 3 on '" + server.Name.Substring(0,24) + "' for " + mapName + " " + DateTime.Now.ToString("M/d/yyyy h:mm:ss") + "! 1) " + name1 + " " + score1 + ", 2) " + name2 + " " + score2 + ", 3) " + name3 + " " + score3;

plugin.ConsoleWrite("^b[Tweet]^n " + tweet);
plugin.Tweet(tweet);
* Restored post. It could be that the author is no longer active.
Link to comment

Originally Posted by PapaCharlie9*:

 

Anyone have a chance to look at this and see if it's possible to add the ability to check server population over a time period? Singh and Papa have helped so much already, I don't want to become a nuisance, hopefully I haven't already. :smile: Figured I'd check in though in case it was missed.

I didn't understand that to be a request, I thought you were telling us how you changed it.

 

I've lost track of exactly what you have. Can you post the code you are using and then explain what you want to be different?

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

Originally Posted by purebattlefield*:

 

I didn't understand that to be a request, I thought you were telling us how you changed it.

 

I've lost track of exactly what you have. Can you post the code you are using and then explain what you want to be different?

Surely. :smile:

 

Evaluation, OnJoin

First Check, Expression

Code:

(server.PlayerCount >12)
Second Check, Code

Code:

String kLastTime = "TheLastTweetTime";

DateTime since = DateTime.Now;
bool firstTime = false;
if (plugin.Data.issetObject(kLastTime)) {
    since = (DateTime)plugin.Data.getObject(kLastTime);
} else {
    firstTime = true;
}

double minutes = DateTime.Now.Subtract(since).TotalMinutes;

if (!firstTime && minutes < 6*60) return false;


// Set the clock
plugin.Data.setObject(kLastTime, (Object)DateTime.Now);

//Run the Tweet
string msg = "Pure Battlefield is heating up NOW -- " + server.PlayerCount + " players and growing! Join the action, soldier: bit.ly/RrP23G #rally";
plugin.Tweet(msg);
return false;
So currently it sends a tweet out once the server reaches 13 people. Additionally it will set a clock to make sure the tweet is not sent more than every 6 hours. What we're concerned about is if our server stays full for over 6 hours, there will be another tweet sent out because the server will be 13 or more still. I was wondering if there was a way to add a check into the clock code to check and see if within that 6 hours period if the server has dropped below 13 people and then send a tweet, but if it has not dropped below the tweet would be unnecessary so don't send it. I'm not sure if this is possible. But, I suppose it could be a little spam like if the server stays full for a while and it sends out a tweet every 6 hours when it's full.

 

So when the population is 13, it sends a tweet. If the server stays above 13 it doesn't send a tweet 6 hours later. If the server drops back below 13 during that 6 hour period and then rises again, it sends a new tweet.

 

Hopefully I was able to articulate the request clearly enough.

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

Originally Posted by HexaCanon*:

 

Code:

List<PlayerInfoInterface> all = new List<PlayerInfoInterface>();
all.AddRange(team1.players);
all.AddRange(team2.players);
if (team3.players.Count > 0) all.AddRange(team3.players);
it (team4.players.Count > 0) all.AddRange(team4.players);

foreach (PlayerInfoInterface p in all) {
    /*
    Inside this loop, the p variable is exactly the same as the player variable,
    so you can do things like p.Data.getBool, p.Name, etc.
    */
    .... put your code here ....
}
was trying to apply this to the all warnings in 5 seconds counted as one limit.

 

i get this error

 

Code:

[05:30:02 31] [Insane Limits] EXCEPTION: : System.UriFormatException: Invalid URI: The Uri string is too long.
[05:30:02 32] [Insane Limits] Extra information dumped in file InsaneLimits.dump
[05:30:02 51] [Insane Limits] EXCEPTION: : System.UriFormatException: Invalid URI: The Uri string is too long.
[05:30:02 51] [Insane Limits] Extra information dumped in file InsaneLimits.dump
insanelimits dump

 

Code:

Version: InsaneLimits 0.0.0.8-patch-3-R24-mod
Date: 8/14/2012 3:30:02 AM
Data: 
System.UriFormatException: Invalid URI: The Uri string is too long.

Stack Trace: 
   at System.Uri.EscapeString(String input, Int32 start, Int32 end, Char[] dest, Int32& destPos, Boolean isUriString, Char force1, Char force2, Char rsvd)
   at System.Uri.EscapeDataString(String stringToEscape)
   at PRoConEvents.InsaneLimits.GetDisplayPluginVariables()

MSIL Stack Trace:
    Char[] EscapeString(System.String, Int32, Int32, Char[], Int32 ByRef, Boolean, Char, Char, Char), IL: 0xA
    System.String EscapeDataString(System.String), IL: 0x1E
    System.Collections.Generic.List`1[PRoCon.Core.CPluginVariable] GetDisplayPluginVariables(), IL: 0xA78
the limit itself.

 

http://www.codesend.com/view/1f2d06b...657885538a469/

 

the fix you gave me is working on some other limits. but not this one. i will recheck the code as well.

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

Originally Posted by glenn82*:

 

It could be done in one tweet with less formatting, like this:

 

Top 3 on for /

 

Something like this (I haven't compiled or tested this):

 

OnRoundOver, Action to None

 

first_check Code:

 

Code:

List<PlayerInfoInterface> all = new List<PlayerInfoInterface>();
all.AddRange(team1.players);
all.AddRange(team2.players);
if (team3.players.Count > 0) all.AddRange(team3.players);
if (team4.players.Count > 0) all.AddRange(team4. players);

all.Sort(
	delegate(PlayerInfoInterface first, PlayerInfoInterface second) {
		double a = first.ScoreRound;
		double b = second.ScoreRound;

		// Sort highest to lowest
		if (a > B) return -1;
		if (a < B) return 1;
		return 0; // equal
	}
);

String name1 = "[none]";
String score1 = "0";
String name2 = "[none]";
String score2 = "0";
String name3 = "[none]";
String score3 = "0";

if (all.Count > 1) {
        name1 = all[0].FullName;
        score1 = all[0].ScoreRound.ToString("F0");
}

if (all.Count >= 2) {
        name2 = all[1].FullName;
        score2 = all[1].ScoreRound.ToString("F0");
}

if (all.Count >= 3) {
        name2 = all[1].FullName;
        score2 = all[1].ScoreRound.ToString("F0");
}

/* BF3 friendly map names, including B2K and CQ post R25 */
Dictionary<String, String> maps = new Dictionary<String, String>();
maps.Add("MP_001", "Bazaar");
maps.Add("MP_003", "Teheran");
maps.Add("MP_007", "Caspian");
maps.Add("MP_011", "Seine");
maps.Add("MP_012", "Firestorm");
maps.Add("MP_013", "Damavand");
maps.Add("MP_017", "Canals");
maps.Add("MP_018", "Kharg");
maps.Add("MP_Subway", "Metro");
maps.Add("XP1_001", "Karkand");
maps.Add("XP1_002", "Oman");
maps.Add("XP1_003", "Sharqi");
maps.Add("XP1_004", "Wake");
maps.Add("XP2_Factory", "Factory");
maps.Add("XP2_Skybar", "Skybar");
maps.Add("XP2_Palace", "Palace");
maps.Add("XP2_Office", "Office");

String mapName = (maps.ContainsKey(server.MapFileName)) _ maps[server.MapFileName] : server.MapFileName;

String tweet = "Top 3 on " + server.Name + " for " + mapName + "/" + DateTime.Now.ToString("M/d/yyyy h:mm:ss") + "! 1) " + name1 + " " + score1 + ", 2) " + name2 + " " + score2 + ", 3) " + name3 + " " + score3;

plugin.ConsoleWrite("^b[Tweet]^n " + tweet);
plugin.Tweet(tweet);
papa i test it on one of my servers

put my self in get some points and set in procon to win the round

the result on the tweet is this

 

 

Tweets

31s GamingFunClan ‏@GamingFunClan1

Top 3 on [GFC] | 24/7 RUSH | NO WAPON LIMITS | 1P START for Metro/8/13/2012 6:47:21! 1) [none] 0, 2) [none] 0, 3) [none] 0

Openen

Beantwoorden Verwijderen Toevoegen aan favorieten

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

Originally Posted by Singh400*:

 

...

Code:

...

String name1 = "[none]";
String score1 = "0";
String name2 = "[none]";
String score2 = "0";
String name3 = "[none]";
String score3 = "0";

if (all.Count > 1) {
        name1 = all[0].FullName;
        score1 = all[0].ScoreRound.ToString("F0");
}

[b]if (all.Count >= 2) {
        name2 = all[1].FullName;
        score2 = all[1].ScoreRound.ToString("F0");
}

if (all.Count >= 3) {
        [u]name2[/u] = all[1].FullName;
        [u]score2[/u] = all[1].ScoreRound.ToString("F0");
}[/b]

....

String mapName = (maps.ContainsKey(server.MapFileName)) _ maps[server.MapFileName] : server.MapFileName;

String tweet = "Top 3 on " + server.Name + " for " + mapName + "/" + DateTime.Now.ToString("M/d/yyyy h:mm:ss") + "! 1) " + name1 + " " + score1 + ", 2) " + name2 + " " + score2 + ", 3) " + name3 + " " + score3;

plugin.ConsoleWrite("^b[Tweet]^n " + tweet);
plugin.Tweet(tweet);
Should be name3, no? And if the tweet is longer than 140 characters what happens then? Does the limit fail or will it send the tweet but only the first 140 characters out of x amount?
* Restored post. It could be that the author is no longer active.
Link to comment

Originally Posted by glenn82*:

 

Should be name3, no? And if the tweet is longer than 140 characters what happens then? Does the limit fail or will it send the tweet but only the first 140 characters out of x amount?

true it changed it and now all is working!

 

TWEET:

Top 3 on [GFC] | 24/7 RUSH | NO WAPON LIMITS | 1P START for Metro/8/14/2012 2:42:27! 1) Thingyy--- 4357, 2) moaghorn 3344, 3) moaghorn 3344

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

Originally Posted by glenn82*:

 

Surely. :smile:

 

// Set the clock

plugin.Data.setObject(kLastTime, (Object)DateTime.Now);

 

//Run the Tweet

string msg = "Pure Battlefield is heating up NOW -- " + server.PlayerCount + " players and growing! Join the action, soldier: bit.ly/RrP23G #rally";

plugin.Tweet(msg);

return false;[/code]

how kan i set this: soldier: bit.ly/RrP23G #rally"; to my servers?
* Restored post. It could be that the author is no longer active.
Link to comment

Originally Posted by glenn82*:

 

this is the tweet what i get from it:

 

GamingFunClan ?@GamingFunClan1

Pure Battlefield is heating up NOW -- 13 players and growing! Join the action, soldier: http://bit.ly/RrP23G #rally

 

and if you press the link you get this:

 

http://battlelog.battlefield.com/bf3...-c3655604c452/

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

Originally Posted by PapaCharlie9*:

 

true it changed it and now all is working!

 

TWEET:

Top 3 on [GFC] | 24/7 RUSH | NO WAPON LIMITS | 1P START for Metro/8/14/2012 2:42:27! 1) Thingyy--- 4357, 2) moaghorn 3344, 3) moaghorn 3344

Sorry, my bad. It's still not right, 2) and 3) are the same and should be different. Dumb copy & paste error on my part. I have corrected post #406 (link below). Use the corrected code.

 

myrcon.net/...insane-limits-requests#entry25788

 

I've also limited the length of the server name to 24 characters, just to be on the safe side.

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

Originally Posted by PapaCharlie9*:

 

And if the tweet is longer than 140 characters what happens then? Does the limit fail or will it send the tweet but only the first 140 characters out of x amount?

About time you learned to read InsaneLimits.cs to answer questions like that for yourself, eh mate? I searched for "Tweet" and, after tracing a couple of function calls, figured out that Insane Limits truncates the message to 140 before sending it. Actually, less than that, since some kind of suffix gets added also.
* Restored post. It could be that the author is no longer active.
Link to comment

Originally Posted by Singh400*:

 

About time you learned to read InsaneLimits.cs to answer questions like that for yourself, eh mate? I searched for "Tweet" and, after tracing a couple of function calls, figured out that Insane Limits truncates the message to 140 before sending it. Actually, less than that, since some kind of suffix gets added also.

:huh: I was only asking...
* Restored post. It could be that the author is no longer active.
Link to comment

Originally Posted by PapaCharlie9*:

 

So when the population is 13, it sends a tweet. If the server stays above 13 it doesn't send a tweet 6 hours later. If the server drops back below 13 during that 6 hour period and then rises again, it sends a new tweet.

Which constraint has higher priority, the 6 hour period or dropping below 13?

 

If the server drops below 13 within 6 hours, do you want a tweet immediately (dropping below 13 is higher priority), or do you want it to remember that it dropped below 13 and send a tweet later, after 6 hours (6 hours is higher priority)?

 

This is turning into a state machine. Does this match what you want?

 


State 0: Check player count

 

If number of players is more than or equal to 13, go to State 0.

If number of players is less than 13, go to State 1.

 

State 1: Check time

 

If number of players is more than or equal to 13, go to State 0.

If last tweet was less than 6 hours ago, go to State 1.

If last tweet was more than or equal to 6 hours ago, go to State 2.

 

State 2: Send Tweet

 

If number of players is more than or equal to 13, go to State 0.

Send Tweet, go to State 0.


 

That state machine makes the 6 hours higher priority than falling below 13 and it doesn't remember, i.e., if it goes below and then goes back above 13 during the 6 hour period, it is the same as being above 13 for the whole time, it forgets that it fell below.

 

That's just one possible state machine. If that all makes sense to you, alter the state machine to reflect what you really want it to do. If it doesn't make sense, just describe in your own words what you want, but cover all the bases: above/below 13 vs. before/after 6 hours vs remember/forget.

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