Jump to content

Network performance update


Recommended Posts

  • Developer
Over the past few weeks, we've fixed countless bugs in our server code that resulted in clients experiencing false (not caused by lag) rubberbanding.  We feel that we have this under control in our current update.  A huge thanks to everyone continuing to report bugs, post feedback, or stream.
 
This means that we can finally address specific latency issues.  You may have already noticed a new server performance indicator in the score board.  This basically tells you if the host's game is running fast enough to be a good server or not.  We have plans to expose more detailed views of server health in the future.  We also completely retuned combat controls to be much more responsive on clients.
 
The server performance indicator is currently tuned as follows:
50 FPS or higher -> Good Host
30 FPS or higher -> OK Host
    Below 30 FPS -> Bad Host
 
A general issue we had was that the game just felt laggier than your actual ping should be.  This was mainly due to a low default server tick rate of 10, as well as how our clients handled incoming packets.  We've made several optimizations to improve client responsiveness, even at low tick rates, and raised the default value to 15.
 
In settings.ini, you can set a custom tick rate that will be used whenever you host a server.
...
[network]
tick_rate = 15  <-- Add this line (Try 30 if you have a good server setup!)
...
 
Increasing the tick rate beyond 15 will improve your server's responsiveness at the cost of higher bandwidth.  However, if your connection cannot handle it, then it may actually degrade your server!  In the meantime, we are continuing to work on reducing the amount of data our game sends over the network in order to make higher tick rates viable for everyone.
Link to comment
Share on other sites

I can tell it's been a colossal amount of work. Great work pushing through, and it's awesome to see these issues being resolved!

 

Being able to play with the tick rate will be interesting. Is it possible that lowering it could actually improve performance in some respects? Some clients connected to me report that they get way more lag when taking on a spider den, for example, than when they're out chopping trees or something.

 

Edit: I tried lowering the tick rate to 5. It apparently didn't cause any consistent lag for the clients, which is what I would've expected if it were going to backfire, but it didn't seem to do much for the "too many entities" lag (e.g. approaching several spider dens at dusk), either. 

Link to comment
Share on other sites

Sounds like you guys have been way hard at work! I don't know the fancier inner workings of networking for multiplayer environments, (or at all really) but I can't wait to jump back in with the new fixes to our past latency issues. Thanks for your ongoing goodness in working on these issues and keeping us up to date on the game's progress! :)

Link to comment
Share on other sites

It sounds amazing already! you did a really nice job and i bet we all appreciate it, if all the updates would be as awesome like this just 3 or 4 more updates and it is almost a playable game, (well not really, but just an example)

Link to comment
Share on other sites

Hi just letting you know that I'm having a few problems with my connection to my friend's hosted server and it shows that he is a good host and I'm getting 30 to 40 ping. Once I join his game, I play for a little bit and I get disconnected. I am thinking the connection issue has to do with my brother playing Call of Duty® which is using most of our internet.

Link to comment
Share on other sites

Any idea how much tick_rate relates to your ISP's upstream and downstream?

I got a 25Mbps downstream and 10Mbps upstream, so with a default of 10 or 15 it gets laggy up to 10 people on a typical map.

The 'lag' is never even related to my networking bandwidth and becomes bottlenecked at the tick_rate setting.

 

So doubling that to 20-25 might enable smoother playability at 10+ player caps? At least until 100 spiders spawns.

Link to comment
Share on other sites

Any idea how much tick_rate relates to your ISP's upstream and downstream?

I got a 25Mbps downstream and 10Mbps upstream, so with a default of 10 or 15 it gets laggy up to 10 people on a typical map.

The 'lag' is never even related to my networking bandwidth and becomes bottlenecked at the tick_rate setting.

 

So doubling that to 20-25 might enable smoother playability at 10+ player caps? At least until 100 spiders spawns.

 

You could check that out I think by pressing Backspace in-game to get all the network data readouts on screen and comparing the difference between various tick rates. You can also see dropped packets and stuff from there so you know if you're overloading the connection or your CPU can't keep up.

 

Not sure if Klei can really specify a one-setting-fits-all, or even necessarily a formula, when it's totally dependant on CPU, network hardware and ISP performance (of all people connected), combined.

 

Specifically for you, if your connection speedtest.net tests as good as it does on paper (and your CPU is chunky) you could set a tick rate of 30, as Klei recommends for good quality connections, easily. I have no idea what effect an even higher tick rate will have, but if you have the gear you may as well give it a crack! :grin:

 

Higher tick rate = better performance for everyone at the cost of bandwidth and CPU, to the point where someone can't keep up, at which point performance degrades again.

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

Please be aware that the content of this thread may be outdated and no longer applicable.

×
  • Create New...