UTzone.de

UTzone.de (https://www.utzone.de/forum/index.php)
-   UT2004 (https://www.utzone.de/forum/forumdisplay.php?f=66)
-   -   UT2004 Max FPS & Connection Settings Guide (https://www.utzone.de/forum/showthread.php?t=4326)

Ragnos 18.02.2019 19:18

UT2004 Max FPS & Connection Settings Guide
 
Disclaimer: This is a copy of the UT2004 Max FPS & Connection Settings Guide posted on the UnrealNorth.com-Forums by asc. I'm posting this here since UnrealNorth has been down for some time now, and I think this should be preserved.




Since there doesn’t seem to be a definitive guide on UT2004 frame-rates and connection settings, I thought I’d share what I found to make everyone’s online experience (much) better.

There is often some confusion as to what netspeed to use and which frame-rate is better than the other, hopefully this guide will put this to an end. Since this game is almost ten years old a lot of the settings were designed for PC’s and networks of pre-2004, but we can now change some things to make better use of current tech.

What we all want to achieve is lower latency when playing online to give us the best gaming experience. To achieve this we need a high stable frame-rate and to also tweak connection settings to send more packets of data. Why more packets? So that the game doesn’t have to wait as long to send your ‘hit data’ to the server – meaning that your hits will be registered more often and more accurately! Before anyone complains, the weapons fire rates are independent of the games’ tick-rate, frame-rate, or packets sent/s, meaning that firing weapons online should be closer to how they feel offline (The way it’s meant to be played :) ).

By default the online fps is capped to 85fps. This sends about 43 packets/s, which gives you 24ms of latency before you’ve sent that data to the server. When the Netspeed is set above 10000 (also unlocks fps cap) then the game will send 85 packets/s at 85fps, which gives you 12ms of latency.

Now what if you want higher frame-rate?

I’ve found that the engine caps the online frame-rates to these values:

FPS Caps (BIOS: HPET=off): 85, 93, 102, 113, 127, 145, 169, 202, 252, 335, 502
FPS Caps (BIOS: HPET=on): 90, 100, 111, 125, 142, 166, 199, 250, 333, 500


So, 85fps = (1/0.012 + 2), 93fps = (1/0.011 + 2), 102fps = (1/0.010 + 2), etc.

This can be changed via ut2004.ini:

Code:

[Engine.LevelInfo]
MaxClientFrameRate=85.0

Let’s say that you wanted 120fps and you put MaxClientFrameRate=120 in your ut2004.ini, you’ll only get 113fps in-game as that’s the next cap down according to the above fps caps. So, you cannot pick whatever fps cap you like.

OK, so how do you work out which Netspeed to set?

User.ini:

Code:

[Engine.Player]
ConfiguredInternetSpeed=

Or, type: ‘Netspeed xxxxx’ in console.
Or, bind to a key: ‘key=Netspeed xxxxx’.

Each packet is 64 bytes. Your Netspeed is the maximum bytes of data you want to allow the game to send. Your netspeed can be calculated by: your FPS x 64.
If your Netspeed is too low then the game will discard some game data before sending it to the server, which will result in a feeling similar to having packet loss.
So for 113fps, you’ll need a Netspeed of 113fps * 64bytes = 7232. But, this will keep your frame-rate at 85 because it is locked. To unlock this, enter a Netspeed of 10001.

So now at 113fps, you’ll only be sending 57 packets/s. I recently found a way to increase this. To send 113 packets/s you’ll need to change the KeepAliveTime value (default=0.2) under:

ut2004.ini:

Code:

[IpDrv.TcpNetDriver]
KeepAliveTime=

Set this to [s]0.009[/s] 0.007. You’ll now send 113 packets/s at 113fps.

So far I’ve managed to find stable frame-rates of up to 202fps by changing the KeepAliveTime value. This sends 194 packets/s at 202fps – reducing latency to 5.2ms. This needs a minimum Netspeed of 13120. [s]I’m still not 100% sure on what KeepAliveTime is doing[/s] EDIT: (Epic recently stated it doesn’t add any gameplay value – damn :D) but at some values it does make the frame-rate more stable. At the default KeepAliveTime value with MaxClientRate=202 the fps would often jump to 230+fps and wouldn’t feel smooth.

Here’s a table with all the (amazing) info I’ve found:

MaxClientFrameRateKeepAliveTimeNetspeed >10kMin. Netspeedin-game fpsPackets/sLatency (ms)
2050.004Yes131202021945.2
2050.005Yes1312020210010.0
1700.005Yes108801701705.9
1700.006Yes108801708511.8
1500.005Yes100011441446.9
1500.006Yes100011441367.4
1500.007Yes100011447313.7
1300.006Yes100011281277.9
1300.007Yes100011281208.3
1300.008Yes100011286415.6
1150.007Yes100011131138.8
1150.008Yes100011131059.5
1150.009Yes100011135717.5
1020.008Yes100011021019.9
1020.009Yes100011028411.9
1020.010Yes100011028411.9
1020.200Yes100011028411.9
920.010Yes10001929011.1
920.200Yes10001929011.1
920.200No5888924323.3
850.010No5440858511.8
850.200No5440854223.8
850.200Yes10001858511.8

I’ve not included values for 250fps or higher because I’ve not managed to get it stable. It jumps to 300+fps sometimes, also on some maps such as DM-1on1-Roughinery-FE it drops far below 250fps.

Edit: It seems as though Nvidia users may need to put MaxClientFrameRate=200.0 instead of 202 or 205 to get a stable 200fps in-game. Same method might apply to other frame-rate values.

Edit, 250fps: If you’d like to try for 250fps then I’ve had someone tell me how they’ve managed to get it stable whilst sending 250 packet/s with these values: MaxClientFrameRate=252 (or 250 with Nvidia), Netspeed >16000, KeepAliveTime= 0.003. As netspeed is >15000 then it might be a problem with some servers; you can however still keep the same frame-rate but halve your packets sent to 125 packets/s by using KeepAliveTime= 0.004, which should be fine for 15000 netspeed.

Edit, HPET & 333fps:
I’ve found that enabling HPET in BIOS changed the frame-rate values needed in the ini. It makes the input lag from your machine more consistent as tested by noacc on ESR. There’s much less oscillation in frame-rate values with it on. I’ve also included frame-rate values of up to 333fps for anyone who’s feeling adventurous.

To clarify, the latency in the table refers to the time between packets sent. Your ping to the server is another matter. The more packets you send per second the less time your weapon fire or movement change needs to wait before your input is registered to the server. This may in-fact give you the feeling of a more stable ping. As the table shows, the gains in reduced latency become smaller as you go higher in frame-rate and packets/s sent. So, there isn’t much point in trying to use 335fps or higher for example. It’s best to stick to a frame-rate and packet/s that your machine and connection can handle stably.
[s]Another reason not to use 335fps or higher is that this would need a Netspeed value greater than 20,000. Servers by default allow a maximum Netspeed of 15,000, or 20,000 if changed by the admin; this could be changed to any value if the admin is willing.[/s] Edit – I’ve found I can set Netspeed above 20000 by adjusting the maximum limit in the UT2004.ini (MaxInternetClientRate=30000). Your upload is not limited by the server, however sending 333 packets per second will probably not go so well, but you’re free to try and see how it feels. /Edit

Also, the Netspeed values shown in the table are only the minimum values required to achieve said frame-rates and packets/s. It would be safer to use a higher value; 20,000 or higher if you’d like as long as it is within your connections’ upload speed. Remember – Netspeed 20,000 is 20kb/s upload.

So, there you have it. You will need to check if you can achieve these frame-rates offline before you try online. You may need to reduce your graphics settings. Look out for packet-loss and adjust settings according to the table above if needed.

Happy fragging.

Useful links:
Note: I was using the 64bit version of UT2004 as it gave me a higher and more stable fps with the above settings.

-unrealist (asc)

slice 19.02.2019 00:30

+1 für's herüberretten von UnrealNorth die gerade down sind (bleiben?).

TY :)


Alle Zeitangaben in WEZ +1. Es ist jetzt 22:09 Uhr.

Powered by vBulletin® Version 3.8.11 (Deutsch)
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
CopyRight-Licence © 2000 - 2018 by UTzone.de