Dead Men Walking

Forum Archive 2023 => Games of old that no longer float our boat........ => dMw Gaming => Gaming Archive => Counter-Strike 1.6 => Topic started by: marsvolta on August 09, 2004, 10:05:52 PM

Title: BB rates
Post by: marsvolta on August 09, 2004, 10:05:52 PM
i'm getting Broadband tomorrow :) (finally)

was wandering what rates i shud have for 1 meg ?, or shud i just do trial and error for my best ping/loss/choke?
Title: BB rates
Post by: TeaLeaf on August 09, 2004, 10:48:56 PM
Try these and work from them after tracking your loss/choke figures:

rate 25000
cl_cmdrate 101
cl_updaterate 101

GL & HF!

TL.
Title: BB rates
Post by: Moment on August 10, 2004, 12:36:07 AM
i like 20000, 70 , 70
Title: BB rates
Post by: marsvolta on August 10, 2004, 08:35:05 AM
i always thought they were lan rates ?, but will try them anyway
Title: BB rates
Post by: Moment on August 10, 2004, 08:57:27 AM
nah lan rates are 25000 101 101 :P there max
Title: BB rates
Post by: smite on August 10, 2004, 11:38:54 AM
25000
101
101

I am on 512..... doesn't seem to effect my play.
Title: BB rates
Post by: Dr Sadako on August 12, 2004, 09:51:17 AM
From ED

QuoteRates

A lot of people always ask what rates are, what values to use, etc. I thought it would benefit a lot of people if a guide was written explaining what everything means. This is so people are not simply just told what values to use without understanding what they actually mean.

 

Definitions

Lets start with some definitions:

rate is the maximum limit of bytes per second the server can send to the client.

cl_rate sets a maxiumum limit of bytes per second the client can send the server. (You don't need to worry about this value)

cl_cmdrate is the number of times per second the client informs the server of its actions.

cl_updaterate is the number of times per second the server tells the client what's been going on in the map.

 

I?m assuming most people have ADSL or cable here I will use ADSL as an example and so I will assume everyone has a downstream of 512kb/s and an upstream of 256kb/s but you can do all this maths with cable and lower connection speeds as well (just need to sub in different values). I am going to tell you now that it is best to set the values for rate, cl_updaterate and cl_cmdrate as high as possible because this allows for a fairer game and more importantly it makes your bullets more likely to register on the other players. I?ll now show you why!

 

rate

In theory an ADSL connection should easily be able to support a rate of 25000. You can work this out my taking the value for rate, which is measured in bytes per second. This then needs to be converted in to kilobytes per second.

25000 /1024 = 24.4140625kB/s

 

In theory your connection runs at 512 kilobits per second (in reality it will actually run slower than this). I'll convert this in to kilobytes per second:

512 / 8 = 64kB/s

 

Now you can see that your connection could have 2.62 people running off it using a rate of 25000 (64 / 24.414 = 2.62). You can use the same calculations for cl_rate but there's no point, the default value of 9999 is good enough.

 

cl_updaterate

Next you want to set values for cl_updaterate and cl_cmdrate. updaterate defines how many updates per second you can get from the server. It is obviously best to get as many updates from the server as possible because this gives you a more accurate picture of where everyone one is and where their bullets are going. However, if you have a high updaterate and a low rate then you will not be able to send much data per update and any benefit of having a high updaterate will be minimised. Lets use an example to make it more clear.

 

If I set my cl_updaterate to 100 and my rate to 25000 in theory each update can contain up to 250bytes of data (25000 / 100 = 250). Again, the more data you get per update the more accurate your view of the gaming world (not that this will particularly affect what you see much but it will have some affect on where your bullets end up hitting). In version 1.3 it was estimated that when you have a lot of action on screen you can use as much as 175bytes per update. So if you have a high updaterate you need a high rate to match it.

 

Using the data from 1.3, if you have an updaterate of 100 you should have a rate of at least 17500 but it?s better to be safe than sorry and set this value a bit higher. I recommend 20000 as a minimum (to work out what value to use for you rate take your cl_updaterate and multiply it by 175 and then add at least another 2000 to it to be safe).

 

cl_cmdrate

cl_cmdrate works the same as cl_updaterate. Basically, it defines how many updates per second you send to the server. So again you want this value to be as high as possible. The more updates you send to the server the better information it has about what you are doing and where your bullets are going. This value is even more important than cl_updaterate in my eyes.

 

As with cl_updaterate and rate you can work out the maximum amount of data which each update can contain. So if you have a cl_cmdrate of 100 and your cl_rate is 9999 then each update can contain 99.99bytes of data (9999 / 100 = 99.99). This should be enough for your needs because you send less data to the server than it sends you.

 

Choke and loss

Now we will look at choke and lose. Choke tells you the number of updates not sent in either direction because the communication link is saturated. Loss tells you the number of updates which were sent but never reached their destination. Choke is more important than loss because you are flooding the connection and it can?t cope with all the data. This means that it is best to reduce the values of your rates. Loss is not so important and if you?re getting lots of loss then the connection between you and the server isn?t very good. Both choke and loss can be caused by using rates which are too high or too low.

 

I recommend you try using values of:

rate 25000

cl_updaterate 100

cl_cmdrate 100

 

If these values are causing you choke or a loss of loss then start to reduce the values. I would not venture below:

rate 14000

cl_updaterate 70

cl_cmdrate 70

 

You can check choke and lose with net_graph 3. Each server is different so if you?re really concerned about choke and loss just bring up net_graph and adjust your rates a bit if you?re suffering from either of these.

 

ex_interp

Another values which needs setting in 1.6 is ex_interp. I won?t bother explaining interp to you because I?ve written enough about rates. They have fixed interp in 1.6 and as a result it is wrong to use the default value of 0.1. You work out the correct value for ex_interp by dividing 1 by your cl_updaterate. Some examples:

 

cl_updaterate 100

1 / 100 = 0.01

ex_interp 0.01

 

cl_updaterate 70

1 / 70 = 0.014

ex_interp 0.014

 

You might find with using a lower value for ex_interp makes people appear to be a little jerky. To counter this affect raise your value of ex_interp but try and keep it as close to the correct value as possible.

 

I hope that?s cleared things up for most of you if not all of you :)

 

Thanks for reading,

McClane.

 

Credits

I used the following website just to make sure I didn't make a fool of myself by using incorrect definitions but it is all my own work otherwise - http://www.summerblue.net/games/cs_report/...ion_config.html (http://www.summerblue.net/games/cs_report/2_4_communication_config.html)