Urban Terror Forums: Ioq3 unofficial experimental test - Urban Terror Forums

Jump to content

 Login | Register 
Advertisement
  • (5 Pages)
  • +
  • 1
  • 2
  • 3
  • Last »
  • You cannot start a new topic
  • This topic is locked

Ioq3 unofficial experimental test

Test packets synchronization-timing changes for the Urt-4.x engine

#1 User is offline   karnute Icon

  •   community dev   
  • Account: karnute
  • Joined: 09-August 11
  • Posts: 157

Posted 03 March 2017 - 09:36 PM

Warning:
This post is about an unofficial experimental test of the Ioq3 engine used in UrT 4.x.
Please, be sure to understand all the technical requirements and the RISKS before following any instructions here UNDER YOUR OWN RESPONSIBILITY.


Preliminary
As you all know, the sv_fps uncapping in UrT 4.3.1 release brought out some hidden problems in network communication and synchronization between some clients with servers. The problems were aggravated dramatically with high values of sv_fps in servers (so allowing high values of snaps in clients). The problem was visible in that some players move warping erratically or like in hiccups and it was visible in the lagometer (netgraph) by periodic collapsing communications.
As a provisional solution in UrT 4.3.2, sv_fps were reverted to the previous 20 lock. With sv_fps (and hence snaps) limited to 20, the game is again playable for almost all players, but the problem is already there and some players can feel it more depending on the relative pings to the rest of players in the server.

After looking for possible causes of the problem in the Ioq3 engine implementation for UrT, by comparing it to the Ioquake3 one, I have cherry-picked some code and adapted it to Ioq3-for-UrT (unnecessary gory details are hidden in the spoiler button).
Spoiler


Now it is necessary to test if those changes are relevant to solve (or mitigate) the problem or not, and for this goal the help of voluntaries is needed to set up servers with this corrected engine and to test if players feel it more smooth.

Be aware that this test engine will not solve other problems due to bad server or client configurations, nor problems with bad network connection, nor low computer power, etc. The test engine has exactly the same capabilities and options than the latest official one. The changes do not add nor remove any feature.
Also, maybe the changes do not correct the problem, but at least negative results would be useful to rule out (partially) the engine as the source of the problem. My hope is that at least they will not harm ...

Regrettably, at the moment, I only can offer builds for Linux 64 bits (server and client) [Barbatos added builds for Win32 and Mac], but I have packed the full sources in .zip and .tgz formats (details in the spoiler)
Spoiler
so that if anyone have resources to compile for other platforms (Win, Mac, BSD) they can build their own and offer them here.

How to install the test engine:
Warning:
Remember it is EXPERIMENTAL, so it could delete all your files, and even melt the earth core, and it is UNOFFICIAL, so do NOT report bugs about it in the official github (only report in this thread), and please, do NOT pester, annoy, NOR disturb FrozenSand developers about it.
If you have a spare dedicated server to participate in the test, or you want to try out the client (or non-dedicated LAN server), you need:
  • A standard installation of Urban Terror 4.x correctly configured (preliminary tests on 4.3.2 and 4.3.1 worked, but probably it will work down to any 4.x release).
  • Rename or move away the engine executable and, at your discretion, backup the config files of the server in case you modify them.
  • Download the corresponding executable from the precompiled repository https://goo.gl/WNJ0Wt and check its md5sum (Google-Drive will do anti-virus/malware automatic checking before download):
    c45bf97963e74a5aa649f1c3ad0ae6a6  Quake3-UrT-Ded.x86_64  (Linux 64 bits server)
    9cfcd714d461548a3d8437008331ad98  Quake3-UrT.x86_64      (Linux 64 bits client)
    
    UPDATE (2017-03-08):
    More binaries, thanks to Barbatos, for Win32 (server and client) https://up.barbatos....rnute-win32.zip and macOS (client only) https://up.barbatos....rnute-macOS.zip [see post #15] You need to extract from the .zip.
    UPDATE (2017-03-10):
    Even more binaries, thanks to Travmon, for client and server in OpenBSD, Linux-32bits, Linux-64bits and Win32, in the RMS Clan site. You need to extract from the .zip.
  • Copy it in the standard installation path and remember to give execution permissions (chmod a+x ...).

Only for dedicated servers test:
  • It would be advisable to change the name of the server, including the words TEST or Experimental, etc, to warn potential players.
  • Post in this thread a message with the IP and port of the offered server, include information about platform, version of UrT, game mode, etc, so that other people can enter it to test.
  • Don't forget to add bots so that people can test also without other players.
  • If you are using a UrT4.3.1 server, please try different values of sv_fps, like 25, 30, 40, for example (in 4.3.2 it is irrelevant as it is capped). Remember you always can download any old UrT4.x full releases from official mirror.


The modified engine binaries for testing client are compatible, so they will work also to play in any standard official servers as well as in the testing experimental servers.
In the same way, standard client engine can be used to enter and play in test servers with the modified engine as they both should be compatible.
Although, the changes in client are less relevant, and so their effect will probably be little noticeable.
In any case, if you run the UrT-updater, the executable engine will be restored to the latest official one (or a previous one if selected).

Please, report in this thread if you find some results in the tests, giving details on the server tested, executing platform (Op.Syst. vers., cpu, memory, network connection), UrT version, number of players in server, pings, values of cvars rate, cl_maxpackets, and snaps, etc.
From the point of view of players, it is important to observe the smoothness of movement of other players in comparison with the same server with standard engine or with other servers in the same IP address, etc. Specially, take note of your ping in the screen and in the score tab, as well as the other players' pings (minimum and maximum), and observe lagometer.

Thanks in advance to all the voluntaries.

P.S.: Known public servers testing:



#3 User is offline   travmon Icon

  •   verified user   
  • Account: travmon
  • Country:
  • Joined: 12-April 11
  • Posts: 63

Posted 04 March 2017 - 12:17 AM

I tried to cross-compile on my archbox, build fails. As Barbatos/ioq3-for-UrbanTerror-4 will cross-compile with exec make PLATFORM=mingw32 CC=i686-w64-mingw32-gcc LD=i686-w64-mingw32-ld WINDRES=i686-w64-mingw32-windres. Will try to rebuild later


#5 User is offline   KarlMariaSeeberg Icon

Posted 05 March 2017 - 03:08 PM

I'd love to try this, if compiled for mac ... go go go !
if you don't like uptown, you are basically hating urban terror.

bullet_loaderAdvertisement

#6 User is offline   drunkrabbit Icon

  •   verified donor   
  • Account: drunkrabbit
  • Main tag: |RFA|
  • Country:
  • Joined: 13-October 13
  • Posts: 133

Posted 07 March 2017 - 02:57 PM

View PostBarbatos, on 03 March 2017 - 11:49 PM, said:

Thank you Karnute for running this experiment.

I'll try compiling Windows and OSX builds soon so more people can help testing!



I'm in for OSX! Thank you.. :)


#8 User is offline   karnute Icon

  •   community dev   
  • Account: karnute
  • Joined: 09-August 11
  • Posts: 157

Posted 08 March 2017 - 12:59 AM

View PostBarbatos, on 07 March 2017 - 10:39 PM, said:

As promised!
Windows binaries: https://up.barbatos....rnute-win32.zip
macOS binary: https://up.barbatos....rnute-macOS.zip
I didn't test them. Also another reminder that these builds are UNOFFICIAL. :smile:

Thanks a lot, Barbie. First post updated to include the links.

Everyone, please, remember the important part to test is the dedicated server, where the changes could be more noticeable. Changes in client are very subtle and probably cannot be felt playing in standard servers. So, if you know of any currently unused server that can be applied to the experiment, try to contact its administrator to suggest the test, but only if they have the technical knowledge to do it.

#9 User is offline   travmon Icon

  •   verified user   
  • Account: travmon
  • Country:
  • Joined: 12-April 11
  • Posts: 63

Posted 08 March 2017 - 04:06 AM

Ended test after several maps, was 80%-100% cpu usage at 20, 40 and 60 sv_fps linux Ded x86_64 4.3.1

This post has been edited by travmon: 08 March 2017 - 04:45 AM


#10 User is offline   karnute Icon

  •   community dev   
  • Account: karnute
  • Joined: 09-August 11
  • Posts: 157

Posted 08 March 2017 - 09:03 PM

View Posttravmon, on 08 March 2017 - 04:06 AM, said:

Ended test after several maps, was 80%-100% cpu usage at 20, 40 and 60 sv_fps linux Ded x86_64 4.3.1

Thanks for testing. Do you get similar cpu usage also with the standard official binary? It is strange. Do you have any suspicious warning message in console?
I tried again the test binaries locally on 4.3.1 and without players the cpu load added by server is almost 0%. Of course, in the instant I launch a client in the same machine I get the usual high load for client.

  • (5 Pages)
  • +
  • 1
  • 2
  • 3
  • Last »
  • You cannot start a new topic
  • This topic is locked

1 User(s) are reading this topic
0 members, 1 guests, 0 anonymous users

Advertisement


Copyright © 1999-2024 Frozensand Games Limited  |  All rights reserved  |  Urban Terror™ and FrozenSand™ are trademarks of Frozensand Games Limited

Frozensand Games is a Limited company registered in England and Wales. Company Reg No: 10343942