DescentDevelopers / Descent3

Descent 3 by Outrage Entertainment
GNU General Public License v3.0
2.86k stars 247 forks source link

[Runtime Issue]: Support for Windows XP #631

Open own3mall opened 3 days ago

own3mall commented 3 days ago

Build Version

1.5 latest release

Operating System Environment

CPU Environment

Game Modes Affected

Game Environment

No response

Description

I tried to get the Descent3.exe binary to work in Windows XP by following the instructions in a reddit comment from here (https://www.reddit.com/r/windowsxp/comments/1dckc7b/is_not_a_valid_win32_application/):

Specifically:

If you want to try editing it, open the EXE in some hexeditor, find bytes 50 45 (PE) near the beginning of the file, and exactly 62 bytes after that you'll probably see sequence 06 00 00 00 (meaning Vista), then some 4 bytes (probably 00) and then again 06 00 00 00. Change both those occurrences to 05 00 01 00 (meaning XP).

That gets me past the "is not a valid Win32 application" error, but then I get :

This application has failed to start because the application configuration is incorrect. Reinstalling the application max fix this problem.

Yet, I've installed Visual C++ 2015-2019 (last supported XP version).

Could you please support XP? The original Descent 3.exe build does...

Regression Status

No response

Steps to Reproduce

Try to run on XP 32-bit and XP x64 (64-bit). Doesn't work. Original binary works in both versions.

winterheart commented 2 days ago

Hello.

This task may be difficult to achieve. Currently we fully support only Windows 64bit target. 32bit target still buildable (as last I checked some time ago), but not tested. Main difficulties here is using correct toolchain. You definitely need MSVC 2019 as project requires C++17 capable compiler. Other things is remember to install MS Visual C++ redistributable runtime package.

Lgt2x commented 1 day ago

Hi, WinXP support is indeed not currently planned, as we now mostly target current-day (64-bit) Operating Systems where the Descent 3 experience needs improvement. If you wish to run the game on legacy hardware, your best bet would be to start from the 1.5 tagged version, before the rendering changes that could break compatibility with older graphics drivers that may not support OpenGL 2+.

own3mall commented 1 day ago

Thanks for the responses!

Are there any build instructions for 32-bit? I was able to build and compile following the build instructions, but that's obviously for the 64-bit version.

I think most graphics cards in XP (Nvidia / AMD) have OpenGL 2+ support. I have a GTX 970 on my XP x64 machine, and it works fine with the last driver release Nvidia put out for XP.

Lgt2x commented 1 day ago

To build for 32bit on Windows, you need to build from the x86 native command prompt instead of the x64 one