66e32ec437903

66e32ec437e8e
5 Guests are here.
 

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

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

Nope.
66e32ec438a7c
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 »

66e32ec438daeZylonBane

66e32ec438e0c
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?
66e32ec438f35
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.
66e32ec43905e
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?

66e32ec439117Hogdalen

66e32ec439161
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.

66e32ec4391fcZylonBane

66e32ec43924e
Worst-case, we could just screenshot from the Mac version and use the existing tools to save in the format the DOS version uses.
66e32ec439398
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 »

66e32ec43945fHogdalen

66e32ec4394ad
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
66e32ec4395ba
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.
66e32ec439840
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...

66e32ec4398ffHogdalen

66e32ec439956
Also, if anyone is curious, here are all PICT resources converted to Photoshop format.
66e32ec439b9f
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 »

66e32ec439caaHogdalen

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

66e32ec439f83Hogdalen

66e32ec439fd3
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
66e32ec43a12e
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
66e32ec43a28b
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.

66e32ec43a34eHogdalen

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

66e32ec43a5abHogdalen

66e32ec43a5fe
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 »

66e32ec43a73fWhyNott

66e32ec43a789
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.

66e32ec43a878Hogdalen

66e32ec43a8d1
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
5 Guests are here.
I have a collection just like yours, all the most peculiar finds.
Contact SMF 2.0.19 | SMF © 2016, Simple Machines | Terms and Policies
FEEP
66e32ec43bbb3