67402e0952871

67402e0953799
2 Guests are here.
 

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

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

Nope.
67402e0954894
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 »

67402e0954b4fZylonBane

67402e0954ba3
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?
67402e0954cca
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.
67402e0954df2
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?

67402e0954ebcHogdalen

67402e0954f08
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.

67402e0954fa5ZylonBane

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

67402e09551f5Hogdalen

67402e0955276
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
67402e0955386
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.
67402e09555be
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...

67402e095567dHogdalen

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

67402e09559d8Hogdalen

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

67402e0955ce9Hogdalen

67402e0955d3a
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
67402e0955eae
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
67402e0956046
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.

67402e0956118Hogdalen

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

67402e0956398Hogdalen

67402e09563e5
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 »

67402e095652cWhyNott

67402e0956578
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.

67402e095666dHogdalen

67402e09566d3
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
2 Guests are here.
RocketMan: Any valuable commodity which isn't otherwise readily available and which may be required by others should be protected and placed somewhere logical so that anybody can use it.
Contact SMF 2.0.19 | SMF © 2016, Simple Machines | Terms and Policies
FEEP
67402e095768c