Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Figure out which localizations existed #61

Open
JayFoxRox opened this issue Dec 4, 2017 · 9 comments
Open

Figure out which localizations existed #61

JayFoxRox opened this issue Dec 4, 2017 · 9 comments

Comments

@JayFoxRox
Copy link
Member

Should be added to https:/OpenSWE1R/openswe1r/wiki/Game-versions

I have seen a french version (text at least, not sure about audio) before and I've also had a german version previously (text + audio)

@progwolff
Copy link

I have the german version, if that helps.

@JayFoxRox
Copy link
Member Author

JayFoxRox commented Dec 6, 2017

Some research on ebay:

If you can find other versions that'd be great.
Seeng this, I'd expect versions for almost every country where the film was released = everywhere.
I had no luck for Poland and couldn't get on Greek and Scandinavian ebay.
I'd also like to know if there are differences in the UK and US versions. I also heard of a german "DVD Collection" re-release, but couldn't find further information.


I was shocked to find that nobody properly preserved their discs yet (at least not stated so publically). If you happen to have any version of the game (for any platform) please dump it properly and hold onto your backup. More importantly, please add your dump results on redump . They have IRC and a forum where you can get involved. I've worked with redump in the past and it's a great and important project.
This is the existing redump info (which is only for the english language version)

If you feel adventerous you could also get in touch with archive.org to provide your backup.
It's hard to buy the game now so it should be fine for archive inclusion. Chances are it will be DMCA'd sometime, but at least we'll still have a good backup somewhere (even if we can't access it publically).

If anyone owns a copy of the game they don't need anymore (for any platform), please reach out via gitter. I'd love to collect and preserve this game. I'm willing to pay for shipping, too.

@CakeLancelot
Copy link

CakeLancelot commented Dec 6, 2017

Found the game bundled in a 'gold edition': not sure if this would have a difference between the normal version.

@JayFoxRox
Copy link
Member Author

@JayFoxRox
Copy link
Member Author

JayFoxRox commented Dec 28, 2017

We should be working towards #8 .
To do this, we should continue to identify different versions of the game, so we can bindiff those (to find the same function in different binaries).

While we don't condone it, it's realistic to believe that a lot of people are running cracked or pirated, possibly modded version of the game. So the hash alone won't be good to check for the version.

Instead, I propose using the timestamp from the exe header. This should be unique for each release, unless translations were done using a binary patcher.
As the game had different publishers in each region (who could have handled translations), we should test this first.

Here are my binaries:

LucasArts FTP patch, International

[fox@x230 1.1 international]$ objdump -x SWEP1RCR.EXE | grep Date && md5sum SWEP1RCR.EXE 
Time/Date		Fri Feb  8 01:54:41 2002
44008c034cf696e1cdc569838a7f8b1b  SWEP1RCR.EXE

(0x3c6321d1)

LucasArts FTP patch, US

[fox@x230 1.1 us]$ objdump -x SWEP1RCR.EXE | grep Date && md5sum SWEP1RCR.EXE 
Time/Date		Wed Feb  6 00:22:20 2002
d86d5d03638c24ab6279f24079825794  SWEP1RCR.EXE

(0x3c60692c)

Webdemo

[fox@x230 swe1r demo]$ objdump -x SWEP1RCR.EXE | grep Date && md5sum SWEP1RCR.EXE 
Time/Date		Fri Jun  4 21:17:45 1999
fbcf93e8c9923e3539ae0cd1b56dbd6b  SWEP1RCR.EXE

(0x37582659)

Retail disc version, US?

(I don't trust this information as the game was released on April 30th in NA according to Wikipedia)

[fox@x230 gnome]$ objdump -x swep1rcr.exe | grep Date && md5sum swep1rcr.exe 
Time/Date		Thu Apr 29 05:12:14 1999
22c2781b3cf606b7a093ec5a39ac2af5  swep1rcr.exe

(0x3727ce0e)

Retail disc version, International 1 (Confirmation would be nice)

This binary is found in the french (CD) and german (CD) versions.

[fox@x230 cd german]$ objdump -x SWEP1RCR.EXE | grep Date && md5sum SWEP1RCR.EXE 
Time/Date		Wed May 12 02:03:30 1999
e6ea6253f0091515b772fcabe0642058  SWEP1RCR.EXE

(0x3738c552)

Retail disc version, International 2 (Confirmation would be nice)

This binary is found in the spanish (CD) versions.

[fox@x230 spanish]$ objdump -x SWEP1RCR.EXE | grep Date && md5sum SWEP1RCR.EXE 
Time/Date		Thu May 13 23:21:04 1999
14ca47c5c3929344b95c3169e94778e2  SWEP1RCR.EXE

(FIXME: Timestamp)

Any moderately recent version of objdump should work for this. I'd appreciate more results from other users. @progwolff @Nicob75

If you don't have the original files from the disc, but modified / cracked / patched binaries, please don't post the MD5. Instead, just post the "Time/Date" of the binary

@progwolff
Copy link

Can confirm the German retail disc version.

@JayFoxRox
Copy link
Member Author

Note: The detection in the code claims to find a german version when it's actually the international version. The wiki has been updated a while ago, but the code was never changed.

@elraro
Copy link
Contributor

elraro commented Apr 19, 2018

Today, finally i have the spanish original game, so i can perform the dump :)

@JayFoxRox
Copy link
Member Author

JayFoxRox commented May 1, 2018

I've just looked at the gog.com release. My installer was called setup_star_warstm_episode_i_-_racertm_1.0_(20431).exe.

gog.com (Downloaded on 1 May 2018; Listed as "1.0" / "English" on gog.com)

[fox@x230 out]$ objdump -x SWEP1RCR.EXE | grep Date && md5sum SWEP1RCR.EXE 
Time/Date		Wed Feb  6 00:22:20 2002
cb1b25fbca829b4eb472423acbbe1f31  SWEP1RCR.EXE

... welp. Looks like they patched the "LucasArts FTP patch, US version" (as detected by timestamp).
This breaks the main assumption that we can identify different releases by PE timestamp..
I'm quite annoyed by this to be honest.

Some patches I can spot are releated to CD paths being patched and more code being added in place of original 0x90 / nop padding. I did not yet check what the new code contains. My full analysis is in #142 .
Most of the actual patching seems to be in a handful of wrappers (New dlls: dsetup16.dll, ddraw.dll, setup32.dll, ipxwrapper.dll, wsock32.dll, dpwsockx.dll, dsetup.dll, mswsock.dll).
I did not check if the original dlls (a3dapi.dll, IFORCE2.dll, Smush.dll) also have been patched. Although that doesn't matter as OpenSWE1R reimplements these anyway.

For all other GOG.com releases, also check #142

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants