Install Steam
login
|
language
简体中文 (Simplified Chinese)
繁體中文 (Traditional Chinese)
日本語 (Japanese)
한국어 (Korean)
ไทย (Thai)
Български (Bulgarian)
Čeština (Czech)
Dansk (Danish)
Deutsch (German)
Español - España (Spanish - Spain)
Español - Latinoamérica (Spanish - Latin America)
Ελληνικά (Greek)
Français (French)
Italiano (Italian)
Bahasa Indonesia (Indonesian)
Magyar (Hungarian)
Nederlands (Dutch)
Norsk (Norwegian)
Polski (Polish)
Português (Portuguese - Portugal)
Português - Brasil (Portuguese - Brazil)
Română (Romanian)
Русский (Russian)
Suomi (Finnish)
Svenska (Swedish)
Türkçe (Turkish)
Tiếng Việt (Vietnamese)
Українська (Ukrainian)
Report a translation problem
the official servers run so many instances of game servers that during hordes you can expect this number to go down to 3-5 ticks per second as their machines struggle to allocate resources, which is going to feel really laggy.
all this means that in the best case scenario, you'll have a latency of 30ms + distance to server, as the game has to wait 30ms anyways for the next tick with gameinfo.. in worst case scenario, 3 ticks/sec is a latency of 333ms + distance to the server.. :(
you can see all of this by enabling your developer console (right click in steam -> properties -> add -toggleconsole to launch options) and typing net_graph 2 in it. the numbers you wanna look out for will be in the bottom right corner of your screen when playing on a server.
this is why most modded servers (including mine) utilize a tickrate unlocker so that the server and clients can exchange more info faster (usually 100-tick, mine are upto 256 ticks/sec to help out players with bad wifi)
if you wanna give it a go, here's a link to the tickrate unlocker's github:
https://github.com/accelerator74/Tickrate-Enabler/releases/tag/build
beware that this mod only helps serverside when i.e. hosting a local game, it does not give magical performance when playing on someone else's server.
You can have 1 tick and 5ping with no big deal, the real problem is the tick also limits how much processing the server can do..
https://steamcommunity.com/sharedfiles/filedetails/?id=1151702553
https://steamcommunity.com/sharedfiles/filedetails/?id=1151702642
So.. while server thread usage (cpu usage on stats) is less than 100% the game was smooth with 5 ping, after a while the cpu usage reaches 100% and then the game starts to lag like hell..
On the second pic i was using 125tick, but if you notice the net graph the server was struggling to keep 50updates/s..
Tested on a virtual machine with linux on it.
91 ticks/sec, 27ms average latency: https://i.imgur.com/p1AGC0S.png
5 ticks/sec, 268ms average latency: https://i.imgur.com/w6EUuf7.png
You can test this yourself by using Sourcemod's sm_cvar setting, and restricting fps_max. I did sm_cvar fps_max 5, which restricts my server to just 5 ticks/sec, and the latency completely dies despite nothing else going on.
Granted net_graph shows each individual package is still fast (~35ms all the time), the average latency shown in the playerlist is what represents how I will really feel the gameplay, and at 5 ticks/sec I can't even stand still and jump without it feeling laggy and weird.
If I remember right it has to do with the lerp time.. a big lerp time will allow a big difference between player and server info, which can help with stuff like movement.. but also means that you can shoot players without aiming at them. Most prefer a low lerp time for the accuracy, I have mine set to 100ms which I think is considered average or high.. still, if my latency goes above my lerp time (100ms) the server will constantly try to correct me, making my game also feel laggy.
Tickrate is how many game stages the server produces per second, the default fps is not 33, but 300, you can have two different frames playing along on the same tick, thats why the default updaterate is 60, much more than the 33 default tickrate.
"A multiplayer client will typically need to render three or more frames with each server update it receives (assuming 60fps+ and cl_updaterate 20)."
Tickrate > Server update > Frames
Restricting the dedicated server's fps was the easiest way to restrict the server's tickrate without restarting it with new launch options.. :(
It was on a dedicated server so it doesn't generate "frames" per seconds anyways as it doesn't have a graphical output besides just console text, so 1 fps = 1 tick sent to clients basically.
In my screenshots you can validate that setting fps_max 5 results in exactly a 5.0 tick/sec inbound speed.
The server's fps can be higher than the tickrate (i.e. bad client connection) but the tickrate can never be higher than the server's fps, which makes it an effective way of testing what happens when the server doesn't send enough ticks per second.
By default the fps_max is set to whatever default refresh rate the operation system runs at, so usually 60hz or 60. This is perfect for a game like CSS that doesn't limit tickrate, and where the default tickrate is also 60 I think?.. but on Left4Dead with the 33tick/sec restriction, almost half of those server fps are wasted by only listening to clients and not sending out new info.
This means that even if you do like some CS 1.6 servers do, and modify a linux kernel to run at smth like 1000 fps.. Left4Dead servers would perform as bad as always until they got unlocked.
https://steamcommunity.com/sharedfiles/filedetails/?id=2804949805
The server wont allow less than 30 tick, however you can "emulate" less than that using less updaterate, as show on my screenshoot (which shows both cmdrate and update at 5 and 10, the low as it can get)
Lerp was automatically set at 200, cant be set lower either, because as mentioned above, the game needs to render few frames for each update, with less updates it needs more time to interpolate those extra frames..
Anyway, it does not mean lag, as you can see.
This custom map for example, its unplayable on 33 tick, no matter what you do, many things happening at once, highly overwhelm the server tickrate.
Even the "good" ping pic, you can notice the server struggling to keep 50tick. (125 tick set on server)
I recommend playing single player, because then you have no latency at all.