• Please make sure you are familiar with the forum rules. You can find them here: https://forums.tripwireinteractive.com/index.php?threads/forum-rules.2334636/

Tickrates on RO2 servers

Hjanne

Active member
Dec 12, 2010
43
15
The tickrate of a server is how many times it updates per sec and works kind of like its fps.
And 20 tickrate is like playing with 20 fps More information on this here:
http://wiki.unrealadmin.org/Netspeed_Tutorial_(UT)

The default server tickrate in this game is 20. And lets face it the game has a couple of netcode related issues.
Most problems occur when server admins push the number of slots on their servers way to high.
If you want good response from this game you need to forget about anything above 32slots.

Sweet have been running our 32slot public server on 40 Tickrate.
and we have had some GREAT responses from the ppl playing on it. More then one time i recall ppl calling it the BEST RO2 server they have ever played on. We agree with this the response was greatly improved. I recommend admins running similar settings. This also makes smaller pingtimes a possibility due to not having a default 50MS delay. Instead this delay is 25ms

WORD OF WARNING
When raising the tickrate to 40 make sure you dubble the rate aswell to compensate. Alot of servers are already going way over their capacity with having to many slots. Be carefull when setting up your servers. Almost NO servers can handle 64 players in default settings atm. We are getting great ping on our server running at 32 slots with these settings. Start out slow the game is alot more fun 10vs10 with these settings then with 32vs32 when the response is ****.

The settings i am talking about can be found in the SERVERS ROEngine.ini under
[IpDrv.TcpNetDriver]
MaxInternetClientRate=20000 (Default = 10000)
NetServerMaxTickRate=40 (Default = 20)

Also in order to fully use the servers new rates change in your CLIENT ROEngine.ini under
[Engine.Player]
ConfiguredInternetSpeed=20000 (Default = 10000)

IN SHORT:
LOWER YOUR SLOTS AND RAISE YOUR RATES = GREAT SUCCESS
 
Great post, and I hope the Australian server admins read it. There are three or four popular servers in AU, but they're set up with too many slots. The result is a lag-fest as the server approaches capacity player numbers, with pings shooting up to 150ms and beyond. Time to start playing on some 32 player servers from now on methinks.
 
Upvote 0
The tickrate of a server is how many times it updates per sec and works kind of like its fps.
And 20 tickrate is like playing with 20 fps More information on this here:
[url]http://wiki.unrealadmin.org/Netspeed_Tutorial_%28UT%29[/URL]

The default server tickrate in this game is 20. And lets face it the game has a couple of netcode related issues.
Most problems occur when server admins push the number of slots on their servers way to high.
If you want good response from this game you need to forget about anything above 32slots.

Sweet have been running our 32slot public server on 40 Tickrate.
and we have had some GREAT responses from the ppl playing on it. More then one time i recall ppl calling it the BEST RO2 server they have ever played on. We agree with this the response was greatly improved. I recommend admins running similar settings. This also makes smaller pingtimes a possibility due to not having a default 50MS delay. Instead this delay is 25ms

WORD OF WARNING
When raising the tickrate to 40 make sure you dubble the rate aswell to compensate. Alot of servers are already going way over their capacity with having to many slots. Be carefull when setting up your servers. Almost NO servers can handle 64 players in default settings atm. We are getting great ping on our server running at 32 slots with these settings. Start out slow the game is alot more fun 10vs10 with these settings then with 32vs32 when the response is ****.

The settings i am talking about can be found in the SERVERS ROEngine.ini under
[IpDrv.TcpNetDriver]
MaxInternetClientRate=20000 (Default = 10000)
NetServerMaxTickRate=40 (Default = 20)

Also in order to fully use the servers new rates change in your CLIENT ROEngine.ini under
[Engine.Player]
ConfiguredInternetSpeed=20000 (Default = 10000)

IN SHORT:
LOWER YOUR SLOTS AND RAISE YOUR RATES = GREAT SUCCESS

I would like to get a TWI response on this as to whether this may accidently break something. A tickrate of 20 really is quite low (I appreciate that this is to compensate for the heavy server loading) but could be the cause of all sorts of "hit detection" issues.
 
Upvote 0
Yes the default tickrate being so low is most likely because of 64 slot capability.
However i have yet to play on a 64 slot server that runs anywhere near that of servers with 32slots or less.

Our 32server was giving us better ping then on any 64 slot servers Yet we where basicly running that server at DUBBLE update speed. I think the problem with 64 slots is that the hardware cant keep up. Because 32 slots with DUBBLE the internet traffic still gives better pingtimes
 
Last edited:
Upvote 0
I would like to get a TWI response on this as to whether this may accidently break something. A tickrate of 20 really is quite low (I appreciate that this is to compensate for the heavy server loading) but could be the cause of all sorts of "hit detection" issues.

High tickrates generally won't break anything untill the server cannot handle it anymore.

Especially for competitive play I would use at least an 30 tickrate, although often competitions end up setting the tickrate somewhere higher.
 
Upvote 0
This is a pretty well thought out post, but has a few factual inaccuracies and a few things I'd like to discuss:

And lets face it the game has a couple of netcode related issues.

I'm unaware of any netcode related issues that aren't due to server admins overloading their server (i.e. pushing their server slots beyond what their CPU or bandwidth can handle). If there are issues that I'm unaware of, I'd love to know about them, and be happy to address them. The game uses the standard client server model with client side prediction that the unreal engine (and Red Orchestra 1, and Killing Floor) have been using for years.

Almost NO servers can handle 64 players in default settings atm.

An Intel Xeon 1240 or better can handle 64 players. And I know there are at least 100 (probably more like 200+) servers like this in the community. And the price of renting these servers isn't outrageous - usually $1.25-$1.50 a slot. Tripwire are hosting about 40 of these ourselves. With that said there are a LOT of server admins running 64 players that shouldn't and overloading their CPU or bandwidth. That I certainly agree with.

The other thing that you need to take into consideration is that increasing your tickrate will proportionately increase your CPU usage. If you go from 20 tick to 40 tick you are essentially doubling the amount of calculations the CPU needs to do ever second. So if your server is already overloaded or close to being overloaded, upping the tick rate will push it over the edge. What will happen when the CPU gets overloaded is the server will wait to update a client for a tick or two. So if you overload your CPU by increasing the tick rate you'll end up getting higher pings because the server won't update the client for a few ticks because it is overloaded. So this is something you should keep in mind. The main point here is to watch your CPU usage and lower your player slots if your CPU gets overloaded.

Also, keep in mind 20 tick rate has been the standard tick rate for internet Unreal engined games for years. It is the same tick rate used by UT99, UT2003/4, Red Orchestra 1, Killing Floor, and on and on. It isn't something we lowered to support 64 player servers. We've found it is the best compromise between server performance and ping.

So what your post got right:
1) Raising your tick rate will improve the ping/responsiveness of the game.
2) You may need to raise the bandwidth rates depending on the player slots
3) Be mindful of your player slots and CPU usage, especially when increasing the tick rate

Another couple of things to add:
1) I've found that there wasn't much ping benefit of going much higher than 35 or 40. Your mileage may very though.
2) I would NEVER suggest raising this rate on a 64 player server until some future process comes out that is much faster than what is on the market now :)

So in summary, raising the tick rate is a good idea for lower player count servers with the CPU that can handle it, and a bad idea for higher player count servers or servers that are already running even remotely close to peaking their CPU core. I would suggest any 6 on 6 or 8 on 8 clan/competitive matches definitely do this. Also, if you are renting a server from a GSP, I suggest talking to your GSP before making this change. You ARE going to use more CPU resources by bumping up the tick rate, and they will want to know about this (and probably charge your more money for using more of their server resources).
 
Upvote 0
the main benefits of increased tickrate is that the amount you need to lead against enemies to hit is generally more constant as long as your ping is constant. 20 tickrate means a 50ms time sample, this means that pretty randomly the enemy you tried to hit could be 50ms further. Net ping is generally a relatively big delay but fairly constant, which makes it easy to learn and compensate for those effects.

Next to of course possibly halving the process time from max 1/20th s or 50ms to for instance 1/40th or 25 ms is a 25ms ping gain. Which can already mean decreasing the randomness of the enemy position by about 15cm.

In general if a server cannot handle the tickrate it will automatically run at a lower tickrate, take a good look at the inbound packets from stat net as that shows you the effective server tickrate. (a server might not always need to send new info though but on a filled up server you will pretty much max out). So make sure if you set the server to say a 40 tickrate that you keep a constant amount of inbound packets.

Spoiler!
 
Last edited:
Upvote 0
I'm unaware of any netcode related issues that aren't due to server admins overloading their server (i.e. pushing their server slots beyond what their CPU or bandwidth can handle).
I think i wrote it wrong. I counted this issue as a netcode issue sry about this. This however is a big issue.
Are there any steps tripwire could take to prevent this?
Does the server client recognize the servers hardware?

I also know that good 64slot servers exist but atleast it feels like the majority is not so good.

The other thing that you need to take into consideration is that increasing your tickrate will proportionately increase your CPU usage. If you go from 20 tick to 40 tick you are essentially doubling the amount of calculations the CPU needs to do ever second. So if your server is already overloaded or close to being overloaded, upping the tick rate will push it over the edge. What will happen when the CPU gets overloaded is the server will wait to update a client for a tick or two. So if you overload your CPU by increasing the tick rate you'll end up getting higher pings because the server won't update the client for a few ticks because it is overloaded. So this is something you should keep in mind. The main point here is to watch your CPU usage and lower your player slots if your CPU gets overloaded.

Also, keep in mind 20 tick rate has been the standard tick rate for internet Unreal engined games for years. It is the same tick rate used by UT99, UT2003/4, Red Orchestra 1, Killing Floor, and on and on. It isn't something we lowered to support 64 player servers. We've found it is the best compromise between server performance and ping.

So what your post got right:
1) Raising your tick rate will improve the ping/responsiveness of the game.
2) You may need to raise the bandwidth rates depending on the player slots
3) Be mindful of your player slots and CPU usage, especially when increasing the tick rate

Another couple of things to add:
1) I've found that there wasn't much ping benefit of going much higher than 35 or 40. Your mileage may very though.
2) I would NEVER suggest raising this rate on a 64 player server until some future process comes out that is much faster than what is on the market now :)

So in summary, raising the tick rate is a good idea for lower player count servers with the CPU that can handle it, and a bad idea for higher player count servers or servers that are already running even remotely close to peaking their CPU core. I would suggest any 6 on 6 or 8 on 8 clan/competitive matches definitely do this. Also, if you are renting a server from a GSP, I suggest talking to your GSP before making this change. You ARE going to use more CPU resources by bumping up the tick rate, and they will want to know about this (and probably charge your more money for using more of their server resources).

This is pretty much what i was thinking BE CAREFULL when setting up your servers and remember that you will need max ppl on it to fully test it out. But the point of the thread was mostly to get admins to lower slots and to know about the POSSIBILITY of non default rates improving the game. Also welcome back Ramm we missed you :)
 
Upvote 0
[QUOTE='[TW]Ramm-Jaeger;928754'An Intel Xeon 1240 or better can handle 64 players. And I know there are at least 100 (probably more like 200+) servers like this in the community. And the price of renting these servers isn't outrageous - usually $1.25-$1.50 a slot. Tripwire are hosting about 40 of these ourselves. [/QUOTE]

And I know one of them is in Chicago.  So, why (oh WHY???!!!) can't I ever find one populated with -100 ping???!!!
 
Last edited:
  • Like
Reactions: Jason_Argo
Upvote 0
In general if a server cannot handle the tickrate it will automatically run at a lower tickrate, take a good look at the inbound packets from stat net as that shows you the effective server tickrate. (a server might not always need to send new info though but on a filled up server you will pretty much max out). So make sure if you set the server to say a 40 tickrate that you keep a constant amount of inbound packets.

This is intressting does this apply with an empty server aswell? Because i was alone on our server and it was running at 40 ticks but i could not get that many packets from it. Got more than 20 so i could not have been default tickrate. At the time i thought it was because i was alone on the server. But when playing on a full default setting server the inpackets usually jump a bit for me from 17-20.
 
Upvote 0