66e32ee970ca1

66e32ee9710d0
7 Guests are here.
 

Topic: System Shock 1 with Mac assets?
Page: « 1 [2] 3 4 »
Read 13151 times  

66e32ee971a99
Converting shouldn't be that hard.
If there is no converter yet I might just write one.
66e32ee971d38
Am I the only one who thinks the PC's assets look better?

Nope.
66e32ee971ea1
Here's the extracted data files.
They are in some kind of hexadecimal data statements.
« Last Edit: 29. September 2015, 19:56:19 by Kolya »

66e32ee97217aZylonBane

66e32ee9721d9
Whoever [...]
Why is it that whenever a thread threatens to take a turn for the stupid, you're right there yanking the steering wheel even harder?
66e32ee9722f0
Noticed interesting detail. In the MAC version the new picture of D'Arcy's office is with battle damage.
I think the original DOS version is more rational since the picture was attached in the email from earth.
66e32ee972413
Oh well, I looked into it and can't make out anything from the .r files. It doesn't follow any of the file conventions I know. My guess is that they are actually vector graphics.

I know there are so called resource files on XCode, but these files are older than XCode itself. Was there any predecessor on Mac?

66e32ee972519Hogdalen

66e32ee972569
If you open the original data files in ResEdit on a very old Mac system, or decompile them with DeRez, you will see that they are organized into smaller "resources". My guess is that the images are those with the type sIMG.

66e32ee972615ZylonBane

66e32ee972672
Worst-case, we could just screenshot from the Mac version and use the existing tools to save in the format the DOS version uses.
66e32ee9727f0
Yep.
.r files are text files. The hexadecimal strings needs to be converted to binary. I bet the content is the same as in DOS version chunks. Byte order is propably reversed.
I will convert those strings to bytes when I'll have more time. Should be really easy.
the number after the type identifier is identical to chunk Id in DOS version...

Code: [Select]
data 'sIMG' (75, "c", purgeable) {
sIMG is the data type. Similar to chunk type in DOS.
75 is the chunk id.

"c" could be constant and purgeable could mean it can be destroyed from memory if other application needs it...
« Last Edit: 29. September 2015, 18:53:49 by Gawain »

66e32ee9728daHogdalen

66e32ee972933
By the way, the intro screens, help screens and other Mac specific UI graphics can be found as PICT resources in the main System Shock application.

Acknowledged by: Gawain
66e32ee972a5b
Ah, well. I don't have access to any Mac tools. Is there something available for Windows?
Or I'll just wait for Gawain converted files.
66e32ee972cee
Ah, well. I don't have access to any Mac tools. Is there something available for Windows?
Or I'll just wait for Gawain converted files.

Those .r files in the zip are extracted with DeRez. Original files are .rsrc files (actually multiple files because of HFS filesystem).
So no Mac tools needed...

66e32ee972dd5Hogdalen

66e32ee972e3b
Also, if anyone is curious, here are all PICT resources converted to Photoshop format.
66e32ee9730ce
Any chance of those in a different format (e.g. png)?  I realise photoshop is widely used but it's one I've successfully avoided up to now!

The .r files look good - I've had a bit of a play with them and knocked together a utility to convert them to binary format and have a peek at the graphic resources as shown in the attached screenshot.  Binary and source code available here if you want to have a play.  Warning: it's highly dumb in it's approach with a "good enough for playing" philosophy rather than a serious tool.

A lot of the graphics appear to be simple uncompressed data with headers.  Conversation portraits appear to be in block 40 of mfdart (same block as the PC version, I think) but at first glance it looks like there's some form of basic compression or skipping between graphical elements applied.
« Last Edit: 30. September 2015, 11:46:10 by Kolya »

66e32ee9731efHogdalen

« Last Edit: 30. September 2015, 11:48:02 by Kolya »

66e32ee973554Hogdalen

66e32ee9735a3
It seems that at least the uncompressed sIMG chunks begin with the number of subimages they contain, then an offset to the start of each one of them, then the total size of the chunk. I think each subimage starts with the coordinates of its corners.

Basically it  corresponds to the description under "Directories" (line 63) here.

By the way, the file named Origin.r is actually this movie with the movie data stripped out.

EDIT: If that didn't work, try this.
« Last Edit: 30. September 2015, 11:48:24 by Kolya »
Acknowledged by: Gawain
66e32ee9736f1
One thing to be aware of is that the data appears to be big-endian for 16 and 32 bit offsets and counts.
Acknowledged by: Gawain
66e32ee973854
Just watching the back and forth between you guys is awesome.

Amazing what a little news about the rights to System Shock being untangled will do for lighting a fire under people.

66e32ee97392eHogdalen

66e32ee97398c
Well, I'm getting close. Apparently some image resources contain extra data that messes up the extraction. I'll keep investigating.
66e32ee973a80
That's excellent - looks like you're extremely close indeed!  :thumb:

66e32ee973b8eHogdalen

66e32ee973bd8
Yeah, basically the file format is the same as the DOS version, only big endian and with the chunks stored in resource forks rather than LG resource files. That last part seems to be what has tripped people up.

I have made a modified version of Glen Sawyers DumpTex program, but unfortunately it won't compile on Windows any more. Besides, my coding skills are non-existant, so it's really not very good. Feel free to check it out.

To use it you must first extract resources with your MacConvert program. It also requires the GAMEPAL.RES file from System Shock DOS.

EDIT: Added an OS X binary.
[DumpResMac.cpp expired]
[Dmpresmac_OSX.zip expired]
« Last Edit: 05. October 2015, 06:32:07 by Hogdalen »

66e32ee973d1fWhyNott

66e32ee973d6c
Wow, this thread is extremely impressive. It always stroke me how much tech-savvy system shock 1 fanbase is compared to any other game that I know of, but this is just so rad

So, assuming that we have those portraits, how would we add them to the game's files? I reckon there was only one program that I found that was capable of replacing system shock graphics, it was very old (it was a DOS program), complicated to use (you had to like unpack all the stuff in the archive and then pack it again) and only supported replacing the images with images of the same size. The last part is probably the most crucial in terms of what we want to do, but I reckon that the author of the program said in readme that this limitation "could be easily bypassed with a hacky workaround" that he wanted to avoid (I think he mentioned he might add this option in "later versions" which obviously never happened). I even considered contacting him about that back then, but the email from the readme was some uni email that probably expired 20 years ago.

66e32ee973e45Hogdalen

66e32ee973e98
Right, I finally got the extraction program to work on Windows. I hope it works for others too. VS2015 project files are included.

As before, you need to extract the chunks with DumpTex first, and a copy of GAMEPAL.RES from the DOS version.

EDIT: I don't know why I keep renaming it, but this is the same program that is called DumpResMac and Dmpresmac above.
[ExtractMacSS.7z expired]
« Last Edit: 05. October 2015, 06:32:36 by Hogdalen »
Acknowledged by: JosiahJack
7 Guests are here.
Cyberspace is her world, and you a worthless intruder.
Contact SMF 2.0.19 | SMF © 2016, Simple Machines | Terms and Policies
FEEP
66e32ee974fc0