One of the most important features of gameplay is the overall smoothness of the game. Lots of times people notice their connections to certain servers become choppy; even to the point of un-playability. Its also noticeable that this choppiness varies from server to server; and will inherently lead you to believe that something is wrong with one of the servers.
Now I wont say always, but 99% of the time, this is false.
The problem of choppiness or "choke" as its known, is almost always related directly to the client side rates. specifically, "rate", "cl_updaterate", and "cl_cmdrate".
Let me explain:
- cl_updaterate (Counter-Strike default is 20; most players use 75-100)
The updaterate is basically the rate at which the client (you), requests information from the server. Typically, the HLDS (
Half-
Life
Dedicated
Server) doesnt send all that much data per second, so the cl_updaterate command isnt devestatingly crucial. However, the instant you have a server hooked up to a large amount of bandwidth, or you have a server that is "accelerated" it starts sending gobs and gobs of data, often
too much data for the clients to handle. Generally, this is the cause of choke. The server senses that it will soon max the clients allotted dataflow (based somewhat on the "rate" setting) and holds back a certain amount of data (which is then displayed as choke and choppiness). One of the best things about this game we call counter-strike is the ability to limit the updaterate! Of course, this is using the cl_updaterate command. A typical "optimal" updaterate is ~45. This can always be adjusted up or down a few at a time untill you either start getting too much choke, or untill the choke goes away. Notice that most players use updaterates of 75-100; this is really unfortunate since these rates will actually decrease the quality of their game, as long as the server is even capable of sending them that much data
.
- cl_cmdrate (Counter-Strike default is 30; most players use 80-100)
The cmdrate can be described as the rate at which the client sends data to the server. As you can tell, this is most closely dependent on the upload speed of your internet connection. A typical broadband connection (~1.5mpbs and up) can handle cl_cmdrates in the 80-100 range, assuming all other internet traffic is kept to a minimum. Obviously, if you are on a dialup or longrange DSL connection, you might have to lower this rate inorder to
lower your ping. Have you ever noticed that while either you or someone on your home network is uploading a file to the web, your CS lags absolutely horribly? Well, the same type of thing applies here. If you are noticing higher-than-norm latencies, try lowering your cmdrate a bit to compensate. On the flipside, if cmdrate is too low for your connection, you might notice choppiness in other aspects of the game, such as voicecomm.
- rate (Counter-Strike default varies)
The "rate" command is the the actual speed of dataflow between the client and server. You can find charts for this all over the place, such as the one in the STEAM client settings window (accessable through your steam main menu). Typically, a fast broadband connection can be set all the way up to 20000, which is a standard max that most servers allow. Now as I mentioned before, the cl_updaterate command simply controls the volume of data requested by the client. So, it makes sense that having a high "rate" along with a high "cl_updaterate" is potentially very problematic.
Now, there's one other rate that you may have heard of called "ex_interp".
ex_interp by itself really doesnt do anything, but is good to adjust depending on your settings for your other rates. Generally, the higher your updaterate/cmdrate values, the lower your ex_interp should be.
For example, if you're one of the lucky few who can handle 100, 100, 20000; your ex_interp should be around .01. If you have more conservative rates like 50, 75, 15000; try ex_interp ~.05. As a rule, interp shouldnt be set lower than .01 nor higher than .1.
[Important] To set all these rates, use your ingame CS console. Current rate settings can be viewed by entering just the command itself. See
this picture for an example.
Using the proper client rates will help you get the most out of your internet connection and improve your game. If you are having lag problems that dont appear to be rate-related, please preform a tracert and send it to us, as outlined on the "Trace" page in your control panel
and here.