673fdedb79ede

673fdedb7ad51
2 Guests are here.
 

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

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

Nope.
673fdedb7babf
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 »

673fdedb7bd80ZylonBane

673fdedb7bddd
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?
673fdedb7beed
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.
673fdedb7bffe
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?

673fdedb7c0a1Hogdalen

673fdedb7c0eb
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.

673fdedb7c196ZylonBane

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

673fdedb7c436Hogdalen

673fdedb7c48a
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
673fdedb7c59e
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.
673fdedb7c831
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...

673fdedb7c8f3Hogdalen

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

673fdedb7cc89Hogdalen

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

673fdedb7cf34Hogdalen

673fdedb7cf7e
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
673fdedb7d089
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
673fdedb7d1e4
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.

673fdedb7d2abHogdalen

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

673fdedb7d4dbHogdalen

673fdedb7d526
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 »

673fdedb7d671WhyNott

673fdedb7d6bc
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.

673fdedb7d78bHogdalen

673fdedb7d7dc
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.
Well we're not 12 years old either. (But some of us are obviously unsupervised.)
Contact SMF 2.0.19 | SMF © 2016, Simple Machines | Terms and Policies
FEEP
673fdedb80be4