Further Server Optimization

EmanonEmanon Join Date: 2003-05-13 Member: 16254Members, Constellation
edited October 2003 in General Server Discussion
<div class="IPBDescription">Amx Plug that Helps a Bunch.</div> Ok, Here is a little plugin for AMX which has totaly saved a server that I have been helping out with. I believe this plugin will allow A server to gain probably another 2-8 players. Depending on you system.


Here is a post I made from another forum:

Ok because we were talking about our server and ping issues, I went out and found and AMX plugin that lets us limit many client variables that can lower bandwidth/cpu usage. I know bandwidth isnt our problem but by limiting the incoming/outgoing we can effectivly lower the cpu usage and pings.

Basicly this prevents players from thinking they Need there cl_updaterate at 100. (which will lag a server to hell)

Download : <a href='http://amxmod.net/forums/download.php?id=1994' target='_blank'>http://amxmod.net/forums/download.php?id=1994</a>

Forum all about the plugin : <a href='http://amxmod.net/forums/viewtopic.php?p=105223' target='_blank'>http://amxmod.net/forums/viewtopic.php?p=105223</a>

This looks very promising!


The setting that I have on a server goes at follows:
rm_delay 60
rm_maxupdr 30
rm_minupdr 15
rm_maxrate 9120
rm_minrate 3000
rm_deadratio 1 (This plug was made for CS. And because CS and NS round ending and death/respawn are kinda different I decieded to deable this option.)


PS this plug hasnt fully been tested with NS but from what i have seen this plug is a savior.

Comments

  • romanoromano Join Date: 2002-11-02 Member: 4296Members
    <!--QuoteBegin--Emanon+Oct 6 2003, 01:26 AM--></span><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td><b>QUOTE</b> (Emanon @ Oct 6 2003, 01:26 AM)</td></tr><tr><td id='QUOTE'><!--QuoteEBegin--> ...
    rm_maxupdr 30
    ...
    rm_maxrate 9120
    ... <!--QuoteEnd--> </td></tr></table><span class='postcolor'> <!--QuoteEEnd-->
    Remind me to never play on that server ever.
  • cracker_jackmaccracker_jackmac Join Date: 2002-11-04 Member: 6891Members, Constellation, Reinforced - Shadow
    Trying it out on my server.
  • cracker_jackmaccracker_jackmac Join Date: 2002-11-04 Member: 6891Members, Constellation, Reinforced - Shadow
    <!--QuoteBegin--romano^_^+Oct 6 2003, 12:00 PM--></span><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td><b>QUOTE</b> (romano^_^ @ Oct 6 2003, 12:00 PM)</td></tr><tr><td id='QUOTE'><!--QuoteEBegin--> <!--QuoteBegin--Emanon+Oct 6 2003, 01:26 AM--></span><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td><b>QUOTE</b> (Emanon @ Oct 6 2003, 01:26 AM)</td></tr><tr><td id='QUOTE'><!--QuoteEBegin--> ...
    rm_maxupdr 30
    ...
    rm_maxrate 9120
    ... <!--QuoteEnd--></td></tr></table><span class='postcolor'><!--QuoteEEnd-->
    Remind me to never play on that server ever. <!--QuoteEnd--> </td></tr></table><span class='postcolor'> <!--QuoteEEnd-->
    Thanks for contributing absolutly nothing to this forum!
  • EmanonEmanon Join Date: 2003-05-13 Member: 16254Members, Constellation
    edited October 2003
    <!--QuoteBegin--romano^_^+Oct 6 2003, 12:00 PM--></span><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td><b>QUOTE</b> (romano^_^ @ Oct 6 2003, 12:00 PM)</td></tr><tr><td id='QUOTE'><!--QuoteEBegin--> <!--QuoteBegin--Emanon+Oct 6 2003, 01:26 AM--></span><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td><b>QUOTE</b> (Emanon @ Oct 6 2003, 01:26 AM)</td></tr><tr><td id='QUOTE'><!--QuoteEBegin--> ...
    rm_maxupdr 30
    ...
    rm_maxrate 9120
    ... <!--QuoteEnd--></td></tr></table><span class='postcolor'><!--QuoteEEnd-->
    Remind me to never play on that server ever. <!--QuoteEnd--></td></tr></table><span class='postcolor'><!--QuoteEEnd-->
    Note that this isnt for clan play its purely to enjoy the game. And if you havent noticed dingleberrys who like their cl_updaterate so high usually hurt themselves more because their choke becomes so high nevermind the performance hit that the server is taking.

    The default settings are all you need to play fun public games.

    which are:

    cl_updaterate 20
    cl_cmdrate 30
    rate of 8000 (cable/dsl)

    Also Just FYI i had an problem with this plug once. What happend was that somewhere during a server restart the plug started to lower everyone's connection settings to the min instead of the max. I dont know what caused this but if i find out ill forward the info.

    Edit: It was fixed with a fresh reinstall of the plug and everything was back to normal.
  • EvilGrinEvilGrin Join Date: 2002-11-04 Member: 6851Members
    Disabling Voicecoms will save you x5 the bandwidth and CPU this plugin will. <!--emo&:)--><img src='http://www.unknownworlds.com/forums/html/emoticons/smile.gif' border='0' style='vertical-align:middle' alt='smile.gif'><!--endemo-->
  • eagleceaglec Join Date: 2002-11-25 Member: 9948Members, Constellation
    <!--QuoteBegin--EvilGrin+Oct 6 2003, 10:13 PM--></span><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td><b>QUOTE</b> (EvilGrin @ Oct 6 2003, 10:13 PM)</td></tr><tr><td id='QUOTE'><!--QuoteEBegin--> Disabling Voicecoms will save you x5 the bandwidth and CPU this plugin will. <!--emo&:)--><img src='http://www.unknownworlds.com/forums/html/emoticons/smile.gif' border='0' style='vertical-align:middle' alt='smile.gif'><!--endemo--> <!--QuoteEnd--> </td></tr></table><span class='postcolor'> <!--QuoteEEnd-->
    and while your at it only allow 1 player at a time.... voice coms are gooood. When used reponsibly

    And this plugin can be made use of by many admins. It might even allow us to see more servers convert from 12 player CS to 16 player NS - you know they want to.
  • romanoromano Join Date: 2002-11-02 Member: 4296Members
    <!--QuoteBegin--cracker jackmac+Oct 6 2003, 02:07 PM--></span><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td><b>QUOTE</b> (cracker jackmac @ Oct 6 2003, 02:07 PM)</td></tr><tr><td id='QUOTE'><!--QuoteEBegin--> <!--QuoteBegin--romano^_^+Oct 6 2003, 12:00 PM--></span><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td><b>QUOTE</b> (romano^_^ @ Oct 6 2003, 12:00 PM)</td></tr><tr><td id='QUOTE'><!--QuoteEBegin--> <!--QuoteBegin--Emanon+Oct 6 2003, 01:26 AM--></span><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td><b>QUOTE</b> (Emanon @ Oct 6 2003, 01:26 AM)</td></tr><tr><td id='QUOTE'><!--QuoteEBegin--> ...
    rm_maxupdr 30
    ...
    rm_maxrate 9120
    ... <!--QuoteEnd--></td></tr></table><span class='postcolor'><!--QuoteEEnd-->
    Remind me to never play on that server ever. <!--QuoteEnd--></td></tr></table><span class='postcolor'><!--QuoteEEnd-->
    Thanks for contributing absolutly nothing to this forum! <!--QuoteEnd--> </td></tr></table><span class='postcolor'> <!--QuoteEEnd-->
    hrm, nothing? I was stating that those rates are horribly low.

    limiting 30 updaterate? Are we all on 56k modems? Playing with 100 choke is fun, YAYA!
  • verboseverbose Join Date: 2002-11-25 Member: 9968Members, Constellation
    edited October 2003
    <!--QuoteBegin--romano^_^+Oct 6 2003, 07:59 PM--></span><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td><b>QUOTE</b> (romano^_^ @ Oct 6 2003, 07:59 PM)</td></tr><tr><td id='QUOTE'><!--QuoteEBegin--> <!--QuoteBegin--cracker jackmac+Oct 6 2003, 02:07 PM--></span><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td><b>QUOTE</b> (cracker jackmac @ Oct 6 2003, 02:07 PM)</td></tr><tr><td id='QUOTE'><!--QuoteEBegin--> <!--QuoteBegin--romano^_^+Oct 6 2003, 12:00 PM--></span><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td><b>QUOTE</b> (romano^_^ @ Oct 6 2003, 12:00 PM)</td></tr><tr><td id='QUOTE'><!--QuoteEBegin--> <!--QuoteBegin--Emanon+Oct 6 2003, 01:26 AM--></span><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td><b>QUOTE</b> (Emanon @ Oct 6 2003, 01:26 AM)</td></tr><tr><td id='QUOTE'><!--QuoteEBegin--> ...
    rm_maxupdr 30
    ...
    rm_maxrate 9120
    ... <!--QuoteEnd--></td></tr></table><span class='postcolor'><!--QuoteEEnd-->
    Remind me to never play on that server ever. <!--QuoteEnd--></td></tr></table><span class='postcolor'><!--QuoteEEnd-->
    Thanks for contributing absolutly nothing to this forum! <!--QuoteEnd--></td></tr></table><span class='postcolor'><!--QuoteEEnd-->
    hrm, nothing? I was stating that those rates are horribly low.

    limiting 30 updaterate? Are we all on 56k modems? Playing with 100 choke is fun, YAYA! <!--QuoteEnd--></td></tr></table><span class='postcolor'><!--QuoteEEnd-->
    Please explain why it is desirable to have these values higher. If at all possible, provide detailed discussions of trials where increasing these values has improved the client experience.

    I will not simply take your word that the example values are too low. I want to know *why*, and I want to know in detail. "A little bird told me that a cl_updaterate of less than 100 is bad!" just doesn't cut it here. This is a board for server administrators, who are very much interested in reducing bandwidth usage without decreasing playability (as it directly affects cost of operation).
  • cracker_jackmaccracker_jackmac Join Date: 2002-11-04 Member: 6891Members, Constellation, Reinforced - Shadow
    Yes, I'd like to know why as well and not some elitist remark "i'll never play there" as if you are too good for it.


    My understanding is that maxrate is the bps a player is alotted. Thus the server can only allocate XKB/s to the player. The server expects and accepts 30 updates/s with updaterate cvar. Since the client is position of other players is "guestimated" then the updaterate of the client needs to be fairly close to that of the server. 30 updates from the client will be more accurate when the server returns 30. players will expereince less choke. The maxrate plays into how much infor you can squeeze into 30 updates...


    thats my understanding anyway...not sure if its right
  • WyzcrakWyzcrak Pot Pie Aficionado Join Date: 2002-12-04 Member: 10447Forum Moderators, Constellation, NS2 Playtester, Squad Five Blue
    <!--QuoteBegin--verbose+Oct 6 2003, 10:47 PM--></span><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td><b>QUOTE</b> (verbose @ Oct 6 2003, 10:47 PM)</td></tr><tr><td id='QUOTE'><!--QuoteEBegin-->This is a board for server administrators, who are very much interested in reducing bandwidth usage without decreasing playability<!--QuoteEnd--></td></tr></table><span class='postcolor'><!--QuoteEEnd-->
    I find your choice of words noteworthy, considering that they describe exactly the benefit we have realized from Emanon's introduction of this plugin (and its specified configuration) on our 18 player server. If anything, playability has increased. And we pretty much make one change at a time on that server, so I'd say this plugin gets all the credit.

    Congratulations to those of you who take the time to add value when you post.

    Wyzcrak
  • StuStu Join Date: 2003-03-19 Member: 14705Members
    Well, I've just installed this on Skulkrush's 20 player server ... if it makes a real difference, I'll be able to up the player limit to 24 later <!--emo&:)--><img src='http://www.unknownworlds.com/forums/html/emoticons/smile.gif' border='0' style='vertical-align:middle' alt='smile.gif'><!--endemo-->

    Stu
  • EmanonEmanon Join Date: 2003-05-13 Member: 16254Members, Constellation
    Nice to hear, You got a very popular server aswell congrats!
  • SuicideDogSuicideDog Join Date: 2002-11-10 Member: 8104Members
    edited October 2003
    I don't think this will work with the steam beta version of NS until you change a couple lines of code... I posted on the amxforums. I don't know if any of you are running the steam beta version or not.. but it will eventually come up.. quote from my post on the amx forums:

    If you change

    AMX Code:

    wonid=get_user_wonid(id)

    to

    AMX Code:

    wonid=get_user_userid(id)


    and recompile it, it should work with SteamID's / wonID's and amx9.6j. (I haven't fully tested .. but it compiles and runs now)

    BTW.. HEY GUYS!! long time no see .. for those that know me.. I was in a motorcycle accident.. and I'm just getting back into the swing of things.
  • EmanonEmanon Join Date: 2003-05-13 Member: 16254Members, Constellation
    edited October 2003
    <!--QuoteBegin--></span><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td><b>QUOTE</b> </td></tr><tr><td id='QUOTE'><!--QuoteEBegin-->Also Just FYI i had an problem with this plug once. What happend was that somewhere during a server restart the plug started to lower everyone's connection settings to the min instead of the max. I dont know what caused this but if i find out ill forward the info.
    <!--QuoteEnd--></td></tr></table><span class='postcolor'><!--QuoteEEnd-->

    Ok i have found what causes this problem, When you restart the server it seems to mess up the code or something like that and cuases everyone's connection speeds lowered to unplayable rate.

    Just reinstall the 2 files and you will be all set.


    Edit: Also what caused this problem was the fact that the command line was in the amx.plugins config TWICE. So check that first then try reinstalling
  • DrekDrek Join Date: 2002-12-19 Member: 11165Members
    edited October 2003
    <!--QuoteBegin--romano^_^+Oct 6 2003, 07:59 PM--></span><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td><b>QUOTE</b> (romano^_^ @ Oct 6 2003, 07:59 PM)</td></tr><tr><td id='QUOTE'><!--QuoteEBegin--> <!--QuoteBegin--cracker jackmac+Oct 6 2003, 02:07 PM--></span><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td><b>QUOTE</b> (cracker jackmac @ Oct 6 2003, 02:07 PM)</td></tr><tr><td id='QUOTE'><!--QuoteEBegin--> <!--QuoteBegin--romano^_^+Oct 6 2003, 12:00 PM--></span><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td><b>QUOTE</b> (romano^_^ @ Oct 6 2003, 12:00 PM)</td></tr><tr><td id='QUOTE'><!--QuoteEBegin--> <!--QuoteBegin--Emanon+Oct 6 2003, 01:26 AM--></span><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td><b>QUOTE</b> (Emanon @ Oct 6 2003, 01:26 AM)</td></tr><tr><td id='QUOTE'><!--QuoteEBegin--> ...
    rm_maxupdr 30
    ...
    rm_maxrate 9120
    ... <!--QuoteEnd--></td></tr></table><span class='postcolor'><!--QuoteEEnd-->
    Remind me to never play on that server ever. <!--QuoteEnd--></td></tr></table><span class='postcolor'><!--QuoteEEnd-->
    Thanks for contributing absolutly nothing to this forum! <!--QuoteEnd--></td></tr></table><span class='postcolor'><!--QuoteEEnd-->
    hrm, nothing? I was stating that those rates are horribly low.

    limiting 30 updaterate? Are we all on 56k modems? Playing with 100 choke is fun, YAYA! <!--QuoteEnd--></td></tr></table><span class='postcolor'><!--QuoteEEnd-->
    Anybody that tells you you need your server maxupdaterate higher than 30 is on crack. I have extremely limited bandwidth and I regularly run my server at maxupdaterate 12. That one little setting has allowed me to increase my server size 25%, my pings are great, and I have had 0 complaints about it.

    In fact, I was still having a problem with that blasted HLDS 4.1.1.1 making a mockery of my bandwidth, so I lowered the maxupdaterate on the two servers that I have to run 4.1.1.1 on, to 8. I played a game tonight, and it was perfectly playable, and a ton of fun.

    I play my dedicated server from the same machine, so my pings are under 20, but I am still limited to exactly the same update rate as everyone else when I set the server maxupdaterate that low. I didn't notice <u><i>any</i></u> difference in the game play, no lag when I hit mouse 1 to fire (that is where you should notice it for sure), nothing. I also didn't get any complaints from anyone in the game, a few of whom were good enough players to notice problems with lag that don't show up in your ping.

    I'm not exactly sure what this AMX plugin does for you, but I set my maxupdaterate at 12 and 8, depending on the version of HLDS I am running, and I use Blatt Rate (Admin Mod plugin) which regulates my rate. Blatt Rate and my low maxupdaterate settings are what make the difference between having a playable, fun server, and not.

    With the above combination I am able to run a 10 person server with only 192kbps upload. When the server has 10 people on it my sv_maxrate is at 2458. CS players get spoiled with the T3 servers they get to play on where there is no maxupdaterate, and sv_maxrate is set to 9999. Any Half-Life mod is playable, and fun, at a fraction of the bandwidth that that kind of server setup devours.
  • SuicideDogSuicideDog Join Date: 2002-11-10 Member: 8104Members
    Just to let you know, if you want to run it on steam servers you will have to make the change I posted earlier about. I have also confirmed that it works perfectly on steam servers, with that change, otherwise you get a load error. Thanks to this post, I'm now using it on all my servers and it's made a big difference in the lag (for the better!). BTW I also am using the new speec codec.. and it's killer!
  • EmanonEmanon Join Date: 2003-05-13 Member: 16254Members, Constellation
    edited October 2003
    <!--QuoteBegin--Emanon+Oct 6 2003, 12:26 AM--></span><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td><b>QUOTE</b> (Emanon @ Oct 6 2003, 12:26 AM)</td></tr><tr><td id='QUOTE'><!--QuoteEBegin-->
    rm_deadratio 1                           (This plug was made for CS. And because CS and NS round ending and death/respawn are kinda different I decieded to deable this option.)


    <!--QuoteEnd--></td></tr></table><span class='postcolor'><!--QuoteEEnd-->
    FYI, I found out why you should change this to 1 and it is very important. During a server reboot i had to input all the commands again that was listed in the first post and i forgot the deadratio. What happen was that eventually everyone died and they were running on 40% of their conntion rate. Voice comms became distorted and it became a bit laggy. After this setting was changed, everything went back to normal.

    Oh, and btw just add the commands to your server.cfg so that you wont have to input them everytime you reboot the server and you will avoid problems like the one I had.
  • StuStu Join Date: 2003-03-19 Member: 14705Members
    <!--QuoteBegin--Emanon+Oct 10 2003, 04:14 AM--></span><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td><b>QUOTE</b> (Emanon @ Oct 10 2003, 04:14 AM)</td></tr><tr><td id='QUOTE'><!--QuoteEBegin--> Nice to hear, You got a very popular server aswell congrats! <!--QuoteEnd--> </td></tr></table><span class='postcolor'> <!--QuoteEEnd-->
    Thank you - we've worked very hard to do so!

    I've had a lot of complaints from my modem users about the recommended settings for the rate manager. I'm currently trying to figure out whether the settings really are the problem or not. Otherwise, it's lowered CPU usage a fair bit, and improved the quality of the game most of the time.

    Stu
  • EmanonEmanon Join Date: 2003-05-13 Member: 16254Members, Constellation
    ^bump^

    I know there are more servers that need this.
  • billcatbillcat Join Date: 2002-11-02 Member: 4903Members, Constellation
    I put this on my server and it seems to really help. I've had nobody complain about it adjusting settings at all.

    I did have to fuddle with the code abit to get it to work with steam but after replacing those above lines it works great.

    Also, if you're going to get amx working and install this you may as well check out the fix overflow plugin as well. That keeps newbie people who can't find the beta patch from flooding the server and dropping all the time.

    You're right, more NS servers need this mod, why this code isn't part of the HL engine is beyond me.
  • EmanonEmanon Join Date: 2003-05-13 Member: 16254Members, Constellation
    *Add the settings that you changed to your server config "server.cfg"*

    This will Avoid any odd behaviors that you may get when using this plug. like i mentioned above.
  • DrekDrek Join Date: 2002-12-19 Member: 11165Members
    <!--QuoteBegin--Stu+Oct 13 2003, 03:41 PM--></span><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td><b>QUOTE</b> (Stu @ Oct 13 2003, 03:41 PM)</td></tr><tr><td id='QUOTE'><!--QuoteEBegin--> I've had a lot of complaints from my modem users about the recommended settings for the rate manager. I'm currently trying to figure out whether the settings really are the problem or not. Otherwise, it's lowered CPU usage a fair bit, and improved the quality of the game most of the time. <!--QuoteEnd--> </td></tr></table><span class='postcolor'> <!--QuoteEEnd-->
    It looks to me as though this plugin adjusts rates in a similar way to Blatt Rate. This is generally a terrific thing, but it can cause problems for players on dial-up by adjusting their rates too high. I would suggest that you make a point of excluding your dial-up clients from the calculations. They aren't going to be using up too much bandwidth anyway, and it looks as though this option is built into the plugin.

    I had to hack Blatt Rate so that it would exclude my buddy on dial up from the calculations, precisely for the reason I gave above.
Sign In or Register to comment.