Comparison of X-Wing game series executable versions
Back to article list

 

This article was made with the aim to assist with the problems that might occur when using patches on the game versions different from CD release and incompatibility of Steam versions with EHBL.

After the original CD release of X-Wing game series there were two more re-releases – GOG and Steam. No one pays attention to the possible differences that might affect using Emperor’s hammer patches.
There are 3 original versions of X-Wing game series executables: CD, GOG and Steam. As an example we will look at XWA version 2.02. We will not look at the differences in the executable file due to
installed patches, tweaks or other edits. What we need to see is the executable’s sections to be located at the same offsets. Only this way all patches will work. We are interested in main executable
xwingalliance.exe.

CD version:
CD version in PE Explorer

CD version in 7zip


GOG version:
GOG version in PE Explorer

GOG version in 7zip


STEAM version:
CD version in PE Explorer

STEAM version in 7zip

While CD and GOG versions are the same, Steam version is little different. It has one more section (.bind).
This is SteamStub. What it does? It has additional code that runs first and unpacks executable’s original .text section (the code section that was packed in Steam release).
This acts as DRM. Because the .text section is modified no patches that edit anything in .text section will work and will damage the executable. One of those patches is s-foils patch.
Other sections are located at their original offsets and are identical to original (except some tweaks and patches added by GOG and Steam for compatibility but that does not
concern us as the only thing we need is that everything is located at the same offsets. The behavior of the code in .bind section also makes EHBL incompatible with Steam versions
of the games. EHBL thinks that the executable has stopped working.

Possible solutions:
1.) Usage of GOG executable. It is possible to replace steam executable with GOG one with no negative effects for the game.

2.) Removal of SteamStub using Steamless (https://github.com/atom0s/Steamless).

By doing this we can be sure that all patches are compatible with the game.
Pros:
- Compatibility with CD version for all patches;
- Compatibility with EHBL.
Cons (more like a positive thing though):
- Running the executable outside of Steam will not start the Steam. This is bad if you want to add playing time to your steam profile. You can still launch the game from Steam for that.

This is valid for all games from the X-Wing series as well as for any other old game that have SteamStub DRM.

 

top