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

Cannot detect/recognize/load data from C&C:The First Decade DVD #3863

Closed
DomtronVox opened this issue Sep 21, 2013 · 16 comments · Fixed by #8170
Closed

Cannot detect/recognize/load data from C&C:The First Decade DVD #3863

DomtronVox opened this issue Sep 21, 2013 · 16 comments · Fixed by #8170
Labels

Comments

@DomtronVox
Copy link

After starting ORA and selecting the RA or C&C mods, I place the C&C:The First Decade DVD in to my drive. Then I select the load from CD button and immediately receive a "disk not found error." The drive and dvd are functional since I had it installed in wine at one point and I can open the dvd's contents.

I'm guessing that ORA just doesn't support DVD's/The First Decade in which case this is a feature request rather then a bug. Anyway I though an issue should be made.

OS: Ubuntu 12.04 LTS
game version: playtest-20130915 pre-compiled .deb

@DanAE111
Copy link

I'm pretty sure everything on the first decade DVD is stored in cab files, not sure how much effort would be involved in getting OpenRA to open the

@DomtronVox
Copy link
Author

this is what I get when running "ls" on the dvd:

   domtron@Doms-laptop:/media/CNCTFD$ ls
   00000000.256  autorun.inf  data1.cab  data6.cab     launcher.dat  setup.isn
   00000001.TMP  data10.cab   data1.hdr  data7.cab     layout.bin    support
   00000002.TMP  data11.cab   data2.cab  data8.cab     setup.exe
   acrobat7      data12.cab   data3.cab  data9.cab     setup.ibt
   autorun       data13.cab   data4.cab  directx       setup.ini
   Autorun.exe   data14.cab   data5.cab  engine32.cab  setup.inx

So yes it looks like the data is in .cab format.

@Mailaender
Copy link
Member

If it is the https://en.wikipedia.org/wiki/Cabinet_(file_format)#Related_formats from InstallShield then you could give our current https://github.com/OpenRA/OpenRA/blob/bleed/OpenRA.FileFormats/FileSystem/InstallShieldPackage.cs a try.

If it is a Microsoft Installer https://en.wikipedia.org/wiki/Cabinet_(file_format) and DEFLATE compressed, then you could try https://github.com/OpenRA/OpenRA/blob/bleed/OpenRA.FileFormats/FileSystem/ZipFile.cs otherwise this probably needs a new file format parser.

@davegorst
Copy link

From what I can tell (using 'file') they're Installshield CAB's. I'll have a look inside them when I get the chance.

@DanAE111
Copy link

Once we can open the cab files, and find the data we need this should be straight forward (he says with hesitation)...

@davegorst
Copy link

I have the directory listing from unshield - just trying to work out how to attach the file (I've been using Github for all of an hour ...).

@davegorst
Copy link

I've put up a list here : https://gist.github.com/davegorst/d1897343f1b98c8fdc54

EDIT : Stupidly I just ran a "find . -name -exec unshield l {} ; -print" - so the contents are listed multiple times...

@alexforencich
Copy link

I have TFD installed on an old windows partition so I attempted to copy the MIX files over for CnC and RA. It worked for CnC after I renamed everything to lowercase. However, it seems the version of RA that TFD installed has a very different set of MIX files. The MIX files that OpenRA downloads are allies.mix general.mix russian.mix snow.mix temperat.mix conquer.mix interior.mix redalert.mix scores.mix sounds.mix. However, the only MIX files in the TFD install are expand2.mix hires1.mix main.mix redalert.mix expand.mix lores1.mix. There is also a directory called RED ALERT with a pile of ico, wav, cur, ani, theme, and bmp files. I have not been able to get OpenRA to work with the TFD files, it always presents the download dialog box when I select the mod. Unfortunately, there does not appear to be any debug information at all that indicates why OpenRA does not like the TFD files.

@Mailaender
Copy link
Member

See https://github.com/OpenRA/OpenRA/wiki/Game-Content on what to copy where. The redalert.mix file contains more .mix files (just like the old original CDs) so you can't just compare by numbers of files.

@alexforencich
Copy link

I followed the instructions and copied all of the MIX files. Except I copied them from the install directory in Program Files instead of the CD, as the files on the TFD CD are stored in CAB files. Even with all of the MIX files from the TFD installation, it does not work.

@alexforencich
Copy link

And I presume you mean main.mix and not redalert.mix, as my main.mix is 1.3 GB while redalert.mix is only 24 MB.

@DSUK
Copy link
Contributor

DSUK commented Mar 22, 2015

I am intrested in trying to fix this, though the only .cab extractor i know of is unshield, which I find behaves in quite a peculiar way with TTFD Disk.
I am also not 100% sure if this library will build in windows/mac or not.

@davegorst
Copy link

Hiya,

Sorry I don't have a PC at the mo, otherwise I'd help. I vaguely remember
making some notes. I think there might need to be some code reorganisation
to deal with different layouts of the filesystem within the .cab. I think
the compression is reasonably standard though, and unshield should extract
it without problems.

Cheers,
Dave
On 22/03/2015 12:09 PM, "DSUK" notifications@github.com wrote:

I am intrested in trying to fix this, though the only .cab extractor i
know of is unshield https://github.com/twogood/unshield, which I find
behaves in quite a peculiar way with TTFD Disk.
I am also not 100% sure if this library will build in windows/mac or not.


Reply to this email directly or view it on GitHub
#3863 (comment).

@DSUK
Copy link
Contributor

DSUK commented Apr 9, 2015

Update: I managed to hack something together that work for C&C however the list of required files in the RA mod isn't consistent the files that are available for RA part of TTFD ( File List, In groups )

the code in available on my fork but it's dirty and hacky and not pull request worthy atm (also untested outisde of linux).

@Mailaender
Copy link
Member

It would be best to implement the file format in C# for OpenRA instead of relying on a platform dependent libunshield.so. We already have a parser https://github.com/OpenRA/OpenRA/blob/bleed/OpenRA.Game/FileSystem/InstallShieldPackage.cs made for Dune 2000, however the format probably has changed over the years so this may not work without changes.

@Mailaender
Copy link
Member

There is now a pull request #8170 ready for review and testing. Thanks @DSUK!

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

Successfully merging a pull request may close this issue.

6 participants