DarkPlacesEngine / DarkPlaces

The DarkPlaces Quake engine, created by LadyHavoc. Official Git repository (replaces SVN).
https://icculus.org/twilight/darkplaces/
GNU General Public License v2.0
273 stars 39 forks source link

[Steel Storm] Erroneous server connection during loading screen #203

Open parkerlreed opened 3 days ago

parkerlreed commented 3 days ago

Starting at 7dedbcb24623a668a1a3229c77e7b1094196cd35

Steel Storm tries to connect to a random old Quake server and waits about 10 seconds during retries

Sound format: 48000Hz, 2 channels, 16 bits per sample
CD Audio Initialized
menu: program loaded (crc 8245, size 405K)
Connect: failed, no reply from 83.169.46.160:26310
OpenGL backend shutting down
Saving command history to darkplaces_history.txt ...
Saving config to config.cfg ...

This no longer exists and only started happening after mentioned commit.

image

parkerlreed commented 3 days ago

As a test only removing this line prevents the random connection and it shows the splashes correctly now as well.

https://github.com/DarkPlacesEngine/DarkPlaces/blob/master/cl_main.c#L608

Baker7 commented 3 days ago

I'm not part of the DarkPlaces dev team, just someone who maintains the Zircon engine (a modified DarkPlaces) ...

In my humble opinion, you should rummage through Motorsep's githubs and see if there is SteelStorm one and report this there ... https://github.com/motorsep/StormEngine2

Most games are locked to specific version of DarkPlaces and Steelstorm is likely no exception ... it isn't that it "won't run" in a different version but rather small things change over time and the version of DarkPlaces from the SteelStorm era might not even be compatible with DarkPlaces 2014 --- which while not recent at all -- is the most recent stable version --- and SteelStorm pre-dates that by years if I recall.

Which is to say, your best shot is compiling the DarkPlaces from that Steel Storm release.

/3rd party thoughts

parkerlreed commented 3 days ago

I mean other than these three things the game runs great.

The advantages of keeping the game working on newer Darkplaces is SDL2 and any compiler quirks that arise being solved by a codebase that's actively maintained.

There would be nothing for motorsep to manage here as there's nothing wrong with the Steel Storm codepath itself. At the very least could use a handful of ifdefs to only apply the newer changes to the Quake side of the codepath.

Or these could possibly be bugs for other games, in which case a broader fix would help everyone involved.

Storm Engine 2 was for a game that was never released as far as I'm aware.