Day of Defeat Plugins Community
This site is an archive — everything is readable and downloadable, nothing can be posted. Admin
Archive › Old Forum Threads › Help › Tutorials › Client Rates - How to set 'em right
7 posts, 4 people · 8,536 views Thread Rating: ★★★★★
closedClient Rates - How to set 'em right
Started by Tank on 08-18-2008, 05:24 PM
Tank
started this thread
Posts: 581
Threads: 59
Joined: Jan 2007
08-18-2008, 05:24 PM #1

Rates - a mystery revealedrn rnAuthor: |B.A.M| The Tank and SyntheticrnDifficulty: Averagern!!!Warning!!!rnIf you start working on your rates, make sure your internet is completely dedicated to your day of defeat game. make sure programs like skype, teamspeak, ventrillo are off. Also any auto-updating program or browser. No media players which download music information from the internet!rn rnTable of Contentsrn rn1. Introductionrn2. What are ratesrn3. Net_graphrn- 3.1 Setting net_graph onrn- 3.2 Net_graph colours explanedrn- 3.3 Different levels of net_graphrn- 3.3.1 net_graph 3rn- 3.3.2 net_graph 2 & 1rn4. Config.cfg/userconfig.cfg and autoexec.cfgrn5. Setting your rates straightrn- 5.1 Basic settingsrn- 5.2 Changes of rates - 1rn- 5.3 Changes of rates - 2rn- 5.4 Changes of rates - 3rn- 5.5 Improving registry with cl_updateratern6. Ex_interp and cl_smoothtimern- 6.1 ex_interprn- 6.2 cl_smoothtimern7. Creditsrn rn1. IntroductionrnRates, a true mystery in the Day of Defeat 1.3 community. All the information you may have read about rates is either incorrect or outdated. This tutorial is written by Synthetic and I and provides updated information on rates. Before I begin I would like to ask you to clear anything from your mind what you know about rates. Myths like "cl_cmdratecl_updaterate is maxed out at 101 because that's a LAN setting" are not true.rn rn2. What are ratesrnWith setting your rates straight you want to remove the difference between what you see and what the server sees. A small explanation on that;rnIf the server sees a player at position X, you want to see him also at X or as close as possible to X. Rates which are not set straight will show weird events which only you see, like "getting shot around the corner".rn rn3. Net_graphrnThe Net_Graph tool that is built into the Half-Life Client is one of the best tools to understand and tweak your performance and game settings. It's also is a wonderful tool to help diagnose connection problems and distinguish if they are Network related, Client related or Server related.rn rn3.1 Turning net_graph onrnThe net_graph options can be accessed through the console as I will try to explain here:rnby typing the following in console:rnnet_graph 3rnyou enable the net_graph. To turn it off type: net_graph 0rn rn3.2 Net_graph colours explanedrnred: player specific data for you only rnyellow: other player data rnpurple: other entity data rnlight blue: event data rndark blue: temporary entity data rngreen: sound data rngray: user defined message data rnwhite dots at top: signifies packet size (only if net_graph is set to 2)rn rn3.3 Different levels on net_graphrnWith net_graph 3 you enabled the net_graph but there are different levels of net_graph. The following chapters will show you the diffences in the net_graph levels.rn rn3.3.1 net_graph 3rnWhat we see here is net_graph 3. I will try to explain what it all means. I hope you will be able to follow it though as this is more then just basic knowledge about Day of Defeat. Net_graph 3 basically lets you see the numeric information about the performance of your computer and its net connection. The screenshots are taken from my own computer, therefore I will refer to the client - you, as "my computer".rn rnFrom top to bottomrnFirst line:rnMy computer is is rendering frames at 85.9 frames per second and my computer believes that it has a 78 millisecond round trip message time to the server (this is a latency reading, rather than a pure ping, since it includes processing overhead on both ends).rnSecond line:rnThe last packet my computer received ("in") from the server was 37 bytes long. The average data rate over the last second or so from the server has been 2.51 kilobytes/second.rnThird line:rnThe last command issued by my computer was only 21 bytes long and my computer is generating 4.83 kilobytes/second of upstream data.rnFourth line:rnAt the moment my computer has no loss or choke. Loss is data that isn't making it to the server and choke is when the connection/server is receiving more data than it can handle.rn rnrnnet_graph 3rn rn3.3.2 net_graph 2 & net_graph 1rnAgain you see the information provided as in net_graph 3 only now we have a graph along with it. We will put our focus on net_graph 1. Net_graph 2 only gives you a rough estimation of the size of each packet your client is receiving from the server. The scale defaults to 5 bytes of data per pixel. You can change the size of the upper part by typing the following in console: net_scale xx (with xx standing for the number, the lower the number, the bigger and more stretched out the graph will look).rn rnNow for net_graph 1, we will go deeper into this later as we set our rates straight.rnrnnet_graph 2 and net_graph 1 (net_graph 1 doesn't have the graph above the text but needed to delete one picture since I can only post 4 images in one post.rn rn4. Config.cfg/userconfig.cfg and autoexec.cfgrnI won't go in-debt on this topic as I already created a tutorial for them over here:Will be added later on.rn rnI will explain however how to set your rates and where. First you want to create the files if you don't have them (read the tutorial linked a few lines above to learn how to create those files).rn rnBasically all the commands like the following:rnnet_graph 1rnnet_graphpos 2rnnet_graphwidth 150rncl_cmdrate 50rncl_updaterate 50rncl_rate 9999rngo into your (user)config.cfg. The following commands can go into your autoexec.cfg (if you use config.cfg instead of userconfig.cfg) or your userconfig.cfg:rnex_interp 0rnrate 20000rn rn5. Setting your rates straightrn5.1 Basic settingsrnYou will need the following settings so you can clearly see everything:rnnet_graph:rnnet_graph 1rnnet_graphpos 2rnnet_graphwidth 150rn rnratesrncl_cmdrate 50rncl_updaterate 50rnex_interp 0rncl_rate 9999rnrate 20000rn rnOk, now you will see this in the middle bottom of your screen:rnrnnet_graph 1, graphpos 2, net_graphwidth 150rn rnWhat we are aiming in here in this picture are all the colours in this picture below the numbers. So the bottom graph (for an explanation about the colours in this graph, check "3.2 Net_graph colours explaned".rn rnSet the following settings in your console to start with. This will be our basic setting in which we will start changing stuff (remember, if you have your config.cfg on read-only access or you us your userconfig.cfg you will have to set the final settings in your config file).rn rncl_cmdrate 50rncl_updaterate 50rnex_interp 0rncl_rate 9999rnrate 20000rn rnSetting and finetuning your rates can be a lenghty process but you will benifit so much from it that it's worth going through with it. Perhaps you get lucky and get your rates perfect at the first attempt.rn rn!!!Remember!!!rnThat raising cl_cmdrate and cl_updaterate are not maxed out at 101!!!rn rn5.2 Changes of rates - 1rnNow open you console again and slowly start raising your cl_cmdrate with 5 or 10 by choise (to finetune your connection, the lower the increments, the better the rates are finetuned, it only takes longer) until the red dots at the bottom are gone. At first you will see that the line gets broken, go until you can't find any red, yellow or orange dots at the bottom anymore. (can't see right, make a screenshot and magnify that). If the red, orange and yellow dots are gone, then you can read on at "5.5 Improving registry with cl_updaterate". However if this didn't work, you should read on.rn rn5.3 Changes of rates - 2rnIf you can't get rid of the red, yellow or orange dots then try it this way. Lower your cl_updaterate by 10, make sure your ex_interp is still set at 0. So see it like this:rncl_updaterate 50: raise cl_cmdraterncl_updarerate 40: raise cl_cmdraterncl_updarerate 30: raise cl_cmdratern...rnIf this works, read on at "5.5 Improving registry with cl_updaterate". However, if this still didn't work, then keep reading on.rn rn5.4 Changes of rates - 3rnMake sure you still have the basic settings set. Now lower your rate with a 1000 to start with. So rate is now set on 19000, now try the changes at "5.3 Changes of rates - 2". If this didn't work then keep changing the rate by a 1000 while doing the changes decribed at chapter 5.3.rn rn5.5 Improving registry with cl_updateraternThe red, orange and yellow dots are now gone. You will have a graph like the following:rnrnA net_graph with perfectly set rates,this is how it should look likern rnYou will still have to set your registry straight. This is done by cl_updaterate. This is basically not measureable and should be done on "feeling". Start playing the game and while playing really notice on the shots you are making. If you have the feeling registry is off, raise your cl_updaterate with 10. Keep continueing doing that until you are satisfied with your registry.rn rn6. Ex_interp and cl_smoothtimern6.1 ex_interprnEx_interp allows the hitboxes to be in phase with the servers, making the models seem to "skip" around, but showing the client a more accurate demonstration of the real models location in the server. In other words the models are in the right spot for registration, with your ex_interp set too high the hitboxes can be behind the model.rnWhat you want is as less interpolaration as possible, with ex_interp 0.001 you can "force" it as low as possible, with ex_interp 0 you let the client set the best ex_interp for you.rn rn6.2 cl_smoothtimernI think Valve said it best when they said:rn

Valve writes that "corrections of prediction errors can be quite noticeable and will cause your view to jump a bit. To visually smooth that effect, the prediction error is corrected gradually over a short amount of time ( cl_smoothtime )." If cl_smoothtime is set to 0(or cl_nosmooth to 1), the interpolation won't be "smoothed" or "corrected" and the actual position of the player player models will be shown. Note that a setting of 0 this will cause "jerking" of the player models, however the position of the models will be correct.
rn rn7. CreditsrnIn these credits I would like to thank Synthetic from Weak-Sauce for all his knowledge and insight on this huge problem in the Day of Defeat 1.3 community. He is the first who taught me exactly how the rates work nowadays as all the information I gathered through the years was outdated stuff. If you see him around the community and you set your connection straight with the help of this tutorial, then thank him.

meathead
posted here
Posts: 337
Threads: 23
Joined: Aug 2007
08-19-2008, 01:27 AM #2

Excellent work guys. You know how many years I I researched and hunted to find that stuff. Very nice tut!

Tank
started this thread
Posts: 581
Threads: 59
Joined: Jan 2007
08-19-2008, 06:47 AM #3

I have to forward all the credits to Synthetic from Weak-Sauce. After writing this tutorial I've been searching for backup for this, all there is to find is outdated stuff. Our community is growing by the day and more and more people have been using this, nothing but good results.rnrnI'll add some more tutorials pretty soon. Got some on my forums but they need to be cleaned up a bit.rnrn@ administrators: granting the ability to post more images then 4 would be cool. Cause images allow people to check the images with their own situation. Therefor I think images are the best way to explain something. They say so much more then just words.

Sohood
posted here
Posts: 92
Threads: 33
Joined: Sep 2008
12-27-2008, 01:54 AM #4

Thanks Tank, I guess now I can set it properly instead of guessing or going with the norm. Thanks again for your help. Just out of curiousity, what is cl_bob 0? I see random players talking about it from time to time.

Tank
started this thread
Posts: 581
Threads: 59
Joined: Jan 2007
12-29-2008, 12:54 AM #5

If I remember right it's weapon idle movement sway...but im not sure. Might want to google on this one.

Dr.G
posted here
Posts: 776
Threads: 75
Joined: Nov 2007
12-29-2008, 11:41 AM #6

So just setrn

cl_cmdrate 50rncl_updaterate 50rnex_interp 0rncl_rate 9999rnrate 20000
rnrnAnd everything should be fine?

Tank
started this thread
Posts: 581
Threads: 59
Joined: Jan 2007
12-29-2008, 11:50 AM #7

No, you are not reading it properly or I didn't write it properly. That are your starting settings, from there you look at your netgraph and try to remove any red dots. You will do this by slowly raising the settings and reconnecting after every change.rnrnFirst you set cmdrate, then you set updaterate to fix your shot registration.

Archive › Old Forum Threads › Help › Tutorials › Client Rates - How to set 'em right
DoD Plugins Archive · Repository · Old Forum Threads · Maps · Admin · built 14 Sep 2026 00:34 UTC