Page 1 of 5

Evolution Engine Cache Extractor

Posted: Tue Sep 17, 2013 3:25 pm
by GMMan
Download from Tools Blog (Source code included)

This program allows you to extract cache files (.toc/.cache) from games using Digital Extremes' Evolution Engine. Just drag and drop a cache file on to the program and it will extract it into a subdirectory containing the file name. Make sure both .toc and .cache files are in the same folder. You can also specify where you want the files to be extracted using the /d switch.

Why use this instead of the Darkness II BMS? Because this keeps the proper directory structure and actually properly decompresses all the files. If you tried to extract the caches from any recent Evolution Engine games, the BMS script will produce junk.

Note: This extractor only works on version 20 caches. If you have a different version cache, send me a PM.

Other notes: 'H' caches contain file headers, 'B' caches contain the corresponding binary files (except for sounds, and maybe textures), and 'F' caches contain full sound files and textures. Also note that file extensions typically don't mean anything in these cache files. Those extensions are from before the files were cooked and compiled, so .fbx files are not in Autodesk FBX format, .wav files don't have WAVE headers, and .png files are not PNGs.

Version history:
[1.0.1.0 09/18/2013]
- Changed boilerplate console app text left over from app template (oops)
- Optimized LZ coder decoding (just a little bit, maybe)
- Writes file date from the TOC on to the extracted file
- Added some debugging workarounds (won't affect operation)
- Added cache version 16 to extractable versions (not fully tested; PM if you have any problems)
- Extractor can take filenames without the extension (e.g. "H.Font" instead of "H.Font.cache" or "H.Font.toc")

[1.0 09/17/2013]
- Initial release

Re: Evolution Engine Cache Extractor

Posted: Tue Sep 17, 2013 6:02 pm
by pixellegolas
Trying the extractor but cannot get it to work. I use it on the latest update and on an old version I kept on the harddrive. Folders are there but no png can be seen. Most pngs in different folders are named like this:

0_I_l1.png
0_l0.png
0_l1.png
1_l0.png
1_l1.png

Re: Evolution Engine Cache Extractor

Posted: Tue Sep 17, 2013 8:02 pm
by GMMan
What game are you extracting from? The files I've extracted from Warframe seem to have intelligible names. Also look at what I've mentioned in the first post. The .pngs are probably not PNGs. The ones in Warframe look like they could be uncompressed ARGB. When the extractor is working, check the console to see if it's giving any errors.

Re: Evolution Engine Cache Extractor

Posted: Wed Sep 18, 2013 8:50 pm
by GMMan
I've posted an update at the tools blog. It has a couple of new features, as outlined in the first post.

Re: Evolution Engine Cache Extractor

Posted: Wed Sep 18, 2013 11:39 pm
by pixellegolas
Yeah I think I missed that small text about the fbx, pngs etc :) It is warframe I have and probably extracts exactly how it should. So what do we do with the files to make them work? Some more codedigging?

Re: Evolution Engine Cache Extractor

Posted: Sat Sep 21, 2013 4:52 pm
by hoodlum47
Um, is The Darkness 2 supported? Because the program keeps telling me that it can't read the archive.

Re: Evolution Engine Cache Extractor

Posted: Sat Sep 21, 2013 11:10 pm
by GMMan
I apparently forgot to move the latest build to the zip, so if you're seeing the program making new ".cache.cache" and ".cache.toc" files, download it again (from the same post). Also, make sure you have write access to both the cache files and the path you're extracting files to.
hoodlum47 wrote:Um, is The Darkness 2 supported? Because the program keeps telling me that it can't read the archive.
It probably has a different cache version. If the BMS script is to be trusted, this version could be using a different compression algorithm than later games. Send me a sample.

Re: Evolution Engine Cache Extractor

Posted: Sun Sep 22, 2013 12:24 am
by hoodlum47
It probably has a different cache version. If the BMS script is to be trusted, this version could be using a different compression algorithm than later games. Send me a sample.
Actually, your "fixed" version seems to be doing the trick now. :)

Re: Evolution Engine Cache Extractor

Posted: Sat Oct 26, 2013 9:11 am
by musterfox
Hi.

Trying to find some way to extract the music from Dark Sector (Steam Version).

I tried using the "Evolution Engine Cache Extractor 1.0.1.0" tool but I ran into a couple of issues.

1) The Steam ver of DS does not have any .toc files, just .cache files whereas your first post says "Make sure both .toc and .cache files are in the same folder."

2) When I drag a .cache file onto EvolutionUnpack.exe, all it does it create a .toc file with the same name and its always a zero byte file. There is no sign of the extracted data.

Please tell me what I am doing wrong so I can extract the music files from DS.

Thanks in advance. :)

Re: Evolution Engine Cache Extractor

Posted: Mon Nov 11, 2013 2:23 am
by GMMan
musterfox wrote:1) The Steam ver of DS does not have any .toc files, just .cache files whereas your first post says "Make sure both .toc and .cache files are in the same folder."
Interesting. Could you PM me a sample?

Re: Evolution Engine Cache Extractor

Posted: Fri Nov 29, 2013 7:58 pm
by zaramot
Hi GMMan. I'm trying to write maxscript to import models from Warframe online, and it seems that textures aren't extracted correctly from this game with Evolution Extractor, maybe you could fix this issue in future? It will help me greatly, thanks for great tool!

Re: Evolution Engine Cache Extractor

Posted: Sat Nov 30, 2013 8:30 pm
by pixellegolas
so .fbx files are not in Autodesk FBX format, .wav files don't have WAVE headers, and .png files are not PNGs.
The next thing to do is to figure out these new files that are spitted out but that is same amount of work again :)

I am also hoping because they keep adding cooler and cooler robots in warframe but lets see

Re: Evolution Engine Cache Extractor

Posted: Sat Nov 30, 2013 11:12 pm
by zaramot
I have some progress with meshes, it's will be great if textures will extract fine and we could convert them.

Re: Evolution Engine Cache Extractor

Posted: Tue Dec 03, 2013 4:54 pm
by GMMan
zaramot wrote:Hi GMMan. I'm trying to write maxscript to import models from Warframe online, and it seems that textures aren't extracted correctly from this game with Evolution Extractor, maybe you could fix this issue in future? It will help me greatly, thanks for great tool!
I actually don't know what format textures are in. As far as I can tell they look like some sort of raw file. It's been a long time since I've touched any Revolution Engine stuff, but I think the extractor's working properly, since there were no warnings from the decompressed size check the last time I extracted various caches.

If I can find time I might add repacking into the program. If anyone needs it fast, I'll make a new version that will pack uncompressed.

Re: Evolution Engine Cache Extractor

Posted: Wed Dec 04, 2013 11:20 am
by zaramot
Hello GMMan. Thanks a lot for support and info. To say truth, I really hoped it's some issues from Cache Extractor side :) Because in this case there was hope, that you can fix this. If textures extracted right, I have no idea what to do with them to convert into any known format.