Important information: this site is currently scheduled to go offline indefinitely by end of the year.

Little extractor program

The Original Forum. Game archives, full of resources. How to open them? Get help here.
Post Reply
Mr.Mouse
Site Admin
Posts: 4073
Joined: Wed Jan 15, 2003 6:45 pm
Location: Dungeons of Doom
Has thanked: 450 times
Been thanked: 682 times
Contact:

Re: Little extractor program

Post by Mr.Mouse »

Yes, a happy new year all! :D
User avatar
asmxtx
veteran
Posts: 127
Joined: Sun Jun 08, 2008 10:32 pm
Location: Developers Country
Has thanked: 1 time
Been thanked: 30 times

Re: Little extractor program

Post by asmxtx »

Added: Extraction support for Nancy Drew

This is based on this post:

http://aluigi.freeforums.org/help-with- ... -t716.html

bugtest wrote a fine utility for testing the modified LZSS-(de-)compression. Without it I wouldn't never have found out this algorithm.

There is a "simple" encryption: The byte position is substracted from the bytecontent at the current position.

I am not sure if there is some directory structure or file type description.
Some data entries have zero length.

You have to evaluate the extracted files to find the proper file type (there are a lot of TGA-graphics, for example).
You do not have the required permissions to view the files attached to this post.
stevenx
veteran
Posts: 130
Joined: Sat Nov 01, 2008 12:02 pm
Has thanked: 3 times
Been thanked: 1 time

Re: Little extractor program

Post by stevenx »

(1)At first .very thanks to asmxtx and bugtest!

(2)And then i also a few information to asmxtx and others.
In Nancy Drew 16,17,the pic file format is like some raw bmp file.
It looks likes this :

file head (18bytes)
24bit rgb raw data
Last line --->First line

and i have converted a pic to bmp by add a 54bytes bmp head with hand

(3)I have a question.
How to convert cif file to TGA picture?
Just change the file extend name or need add a file head?
Gobread can extract Nancy Drew 1-19 all ?
Can you add a to bmp option for nancy drew 16,17?
You do not have the required permissions to view the files attached to this post.
User avatar
asmxtx
veteran
Posts: 127
Joined: Sun Jun 08, 2008 10:32 pm
Location: Developers Country
Has thanked: 1 time
Been thanked: 30 times

Re: Little extractor program

Post by asmxtx »

@stevenx:
In Nancy Drew 16,17,the pic file format is like some raw bmp file.
It seems the picture format is TGA with transparency information.
Simply use your favorite image processing software or a picture browser to handle this format.
How to convert cif file to TGA picture?
A CIF-file might be a container file. Extract it with "GOBREAD filename.cif".
Gobread can extract Nancy Drew 1-19 all ?
It is tested with ND-17 only. ND-18 uses a different file format.
Can you add a to bmp option for nancy drew 16,17?
Sorry, no.
stevenx
veteran
Posts: 130
Joined: Sat Nov 01, 2008 12:02 pm
Has thanked: 3 times
Been thanked: 1 time

Re: Little extractor program

Post by stevenx »

@asmxtx

I want to change a file's name in the WME's .DCP file.
Can you tell me how to do it or make a file head output update?
If not,can you tell me the XOR key and file head structures so maybe i can make it myself?
User avatar
asmxtx
veteran
Posts: 127
Joined: Sun Jun 08, 2008 10:32 pm
Location: Developers Country
Has thanked: 1 time
Been thanked: 30 times

Re: Little extractor program

Post by asmxtx »

@stevenx

In general, once an extraction module works flawlessly, I will have deleted the game, shelved my source code and forgotten it.

I would not recommend to change filenames in a container file: The game might not gain access to predefined ressources.
I would recommend to leave the original file structure and add the edited files only.

Try if the game works with the extracted files and the not available container file (for safety rename it instead of deleting).
If so, just recover the original game, extract all files from the container into the right game directory, delete all files which you don't want to change, edit your file(s) and see if the game reflects your changes. (look for FILEMON/REGMON/PROCMON in this thread)

If this not works, you would have to program a DCP-repacker for all the extracted game files.

Here is my file declaration:

Code: Select all

Magic:
DE AD C0 DE JUNK
00 02 00 00	Version, if <> 200h, then no XOR-encryption of filename


Table:

db len,description(len-1)
db 0
dword	number_of_files

byte	length name
bytes	Name, (xor-value: 44h, only if Version 200h)
dword	Offset data
dword	uncompressed length of data
dword	compressed length of data (or 0, if not compressed)
dword	0
dword	CRC(?)	;only if Version 200h
dword	0	;only if Version 200h
For your appeasement, I am currently working on an extractor for the remaining Nancy-Drew-container-versions (01...18).
But it will take some time...
stevenx
veteran
Posts: 130
Joined: Sat Nov 01, 2008 12:02 pm
Has thanked: 3 times
Been thanked: 1 time

Re: Little extractor program

Post by stevenx »

@asmxtx

At first ,very thanks for your hard work!

I will tell you why i want to change file name in .dcp file.
I have a WME adventure game made in german language,it can't be started at chinese windows XP. When the game access some german filename files ,it had exceptions. So,i
want to chang the german filename files into english filename.

Here is my plan A:
1. XOR .dcp with 44h ,so i can see and find the german filename
2.chang it into english filename
3.find the location which CALL FROM of german filename and chang it into english filename too.
(Maybe in .exe or other files)
4.After done these,i think it will well run in chinese windows XP without any setting.

Here is my plan B:
1.find the location which CALL FROM of german filename and chang it into english filename .
(Maybe in .exe or other files)
2.extract them from .dcp and put them in the same folder with changed english name .
3.After done these,i think it will well run in chinese windows XP without any setting.

I don't know which will be success before test.
User avatar
asmxtx
veteran
Posts: 127
Joined: Sun Jun 08, 2008 10:32 pm
Location: Developers Country
Has thanked: 1 time
Been thanked: 30 times

Re: Little extractor program

Post by asmxtx »

@stevenx

It would not be the best to XOR the DCP-header.
As a very lazy man I would do the following:
- Extract all container files to somewhere.
- Create a list file of all extracted files like this:

Code: Select all

dir /b /s >FILELIST.TXT
- In this text file search for the target with a text editor. If you found a suspicious one, do a full-text-search in all extracted files in ASCII- and UNICODE-mode.
- If possible, replace the wrong name with an appropriate one in the found file(s).
- Rename the suspicious file to the new name.
- Add these changed files to the game directory keeping the directory structure intact.

---

I am about to finish my work on these annoying Nancy-Drew-files. Most of the content is stored as RAW data.
There are at least three data types in a "TREE"-file:

Code: Select all

00 - Directory entry (?), has always zero-length, won't be extracted in the future
02 - Picture data, sometimes stored as TGA, sometimes as RAW, with or without transparency
03 - Some kind of data I can't recognize
A "FILE"-file can contain another series of nested "FILE"-files. Therefore extracted files have to be extracted again.
stevenx
veteran
Posts: 130
Joined: Sat Nov 01, 2008 12:02 pm
Has thanked: 3 times
Been thanked: 1 time

Re: Little extractor program

Post by stevenx »

@asmxtx

Thanks again,my friend.
I have use a way like yours to make the game run in my chinese windows XP.
And waiting yours ND extractor now...
And also a question,you said some game will first find if the same file exists out of the continer file. I made a test ,ND18,19 worked with the OUT files.But ND 16,17 does not worked.I have use filemon to checked,it read autotext.cif ... first. I won't to make a packer ,so i wnat to made it works.Can you give a little advice?Maybe it need add a head to the OUT file? I means autotext.cif and so on. I just want to translate it.

here is a pic of the german wme avg
You do not have the required permissions to view the files attached to this post.
User avatar
asmxtx
veteran
Posts: 127
Joined: Sun Jun 08, 2008 10:32 pm
Location: Developers Country
Has thanked: 1 time
Been thanked: 30 times

Re: Little extractor program

Post by asmxtx »

@stevenx
And also a question,you said some game will first find if the same file exists out of the continer file. I made a test ,ND18,19 worked with the OUT files.But ND 16,17 does not worked
Nancy-Drew-files is a proprietary file format (like Tomb-Raider BIG-files).
That means the programmers not simply chose to store original files into their containers (like in Wintermute, Quake, StarshipTroopers or other gory shooters), but they decided to remove irrelevant headers and informations from the original files and store only raw data with encryption+compression into their containers. It seems that this game won't run with original files in any case. Therefore it is immanent to know (or to guess) what type of data has been extracted.
Once a container is extracted, the obtained files might have to be converted to a generic format for further processing with an editor.
After editing (if possible) it is necessary to recompile these files to Nancy-Drew-raw-format and to put these files into a container.
Because I am not able to decrypt all fields in a container-table-entry I am not able to write a container-file-rebuilder - and I must admit I don't want to do that.
Maybe you could find a (commercial?) editor on the net, similar to Quake or something...
stevenx
veteran
Posts: 130
Joined: Sat Nov 01, 2008 12:02 pm
Has thanked: 3 times
Been thanked: 1 time

Re: Little extractor program

Post by stevenx »

Thanks for your information,I will make a try.
User avatar
asmxtx
veteran
Posts: 127
Joined: Sun Jun 08, 2008 10:32 pm
Location: Developers Country
Has thanked: 1 time
Been thanked: 30 times

Re: Little extractor program

Post by asmxtx »

Added: Full extraction support for Monolith Games, ARCH??-files
Updated: F.E.A.R. 2: Project Origin, BNDL-/LVBNDL-files

Game info:
http://www.mobygames.com/game/windows/f ... ect-origin


I had to add the ARCH??-fileformat because GAUP (and maybe other unpackers) aren't able to recognize compressed data within the ARCH-files.
It was expecting to much to decompress such an amount of extracted files piece by piece.
You do not have the required permissions to view the files attached to this post.
stevenx
veteran
Posts: 130
Joined: Sat Nov 01, 2008 12:02 pm
Has thanked: 3 times
Been thanked: 1 time

Re: Little extractor program

Post by stevenx »

Have any news about Nancy drew series in Gobread?
cenkzenk
n00b
Posts: 19
Joined: Thu Jan 01, 2009 1:15 pm
Location: www.sniperelitev2.66ghz.com
Has thanked: 1 time
Been thanked: 1 time
Contact:

Re: Little extractor program

Post by cenkzenk »

How to create a file back ARCH01
wqzss
ultra-n00b
Posts: 2
Joined: Fri Oct 17, 2008 7:00 am

Re: Little extractor program

Post by wqzss »

The .ttarch is a Telltale game extention that was used in many famous games such as Sam and Max,Bone and CSI.I wander if gobread could deal with it.
Post Reply