Extract WDFs(To get missing .dds and .c3 files)

06/30/2009 04:02 fantazyz#46
Quote:
Originally Posted by unknownone View Post
Try this, although I cannot guarantee the results.
Place all in Conquer root folder and run wdfbatcher.exe
It works perfectly to extract 3dtexture.ini, but I can't guarantee it working for anything else.

Use at your own risk. It's virus free, you can scan, but it may crash your system.
thanks thats the best extractor out there and easiest to use
07/01/2009 03:13 raidenx123#47
Just some tips:

Market is street.ani
BirthVillage is newbie.ani
ApeMountain is Canyon.ani
PhoenixCastle is woods.ani
Terrain of TwinCity is plain.ani
BirdIsland is island.ani
DesertCity is sand.ani
Server icons are server.ani
The faces of Npcs are NpcFace.ani
Some random effects including Nobility effects are effect.ani

I know more but I think you can figure rest out, if this helped press thx
01/10/2010 01:04 engshehab#48
so nice release , keep it up

first i wanna thank u about this very useful release for all

2nd i find that u make very nice edits in .dds files
so i need to make an new honor halo called World Pk champion
i hope u can help me to do it, ty
03/31/2010 14:22 BEanErzzz#49
Quote:
Originally Posted by unknownone View Post
the WDF files contain the same type of contents as the c3 and data folders, they are just like working dirctories, except the individual files are accessed differently, not through windows.

The packed WDFs have a very simple structure, it just contains all the files from a particular directory in order of their filename. The file header contains the number of files, and a pointer to the location after all the files are packed.

Code:
struct HEADER {
	ULONG identifier; // = "PDFW"
	ULONG fileamount
	ULONG dataoffset;
}
The data at this offset contains the location, size and ID for each packed file. The structure of the file data is this

Code:
struct FILEDATA {
	ULONG uid //unique IDs
	ULONG offset
	ULONG size
	ULONG space //always zero, probably meant for some flags.
}
to retrieve a paticulur file, just go to its offset and count <size> bytes after it, then copy into a new file. Maybe set space to a non-zero value to show its already been extracted, but thats not neccesary.

Now the only question left is where the filename is, and I'm still quite lost with it myself. I figure, filenames are actually stored in a seperate file, and we arent sent that file with the client.

The unique IDs are made via a hash algorithm, and the client makes use of this algorithm to find a file as its needed. All the filenames are stored in ini/ani files, and are accessed when they are needed. The client passes them through the algorithm, then it searched for the unique ID in the WDF file.

*EDIT* Forgot to mention, all filenames should be converted to all lowercase letters before being passed to the algorithm.

If anyone has the time to go through ani and ini files, and generate a list of filenames for data.wdf and c3.wdf, I'td be handy to make a fully functional extractor. The only exctractor I have now is passing a filename as an argument, and it generates the file 1 at a time. slow considering the 2 .wdfs contain about 25,000 files.
Would it be possible to make a wdf packer to repack the entirity of the data folder into a wdf for a more compact client?
03/31/2010 16:43 Korvacs#50
Im currently writing my own extracter, it looks like its entirely possible to repack the .wdf, however you would need to know exactly how the client interacts with the files, which becomes alittle bit complicated.
04/19/2010 16:41 redhades777#51
does the batcher still work? because i dont think im getting any new files added to my c3/effects folder. im looking for flysword (nix skill) in particular.
or am i using the batcher incorrectly?
04/27/2010 07:20 Arcо#52
Quote:
Originally Posted by redhades777 View Post
does the batcher still work? because i dont think im getting any new files added to my c3/effects folder. im looking for flysword (nix skill) in particular.
or am i using the batcher incorrectly?
Try using korvacs version, its much more efficient.
05/04/2010 17:10 BEanErzzz#53
Quote:
Originally Posted by Korvacs View Post
Im currently writing my own extracter, it looks like its entirely possible to repack the .wdf, however you would need to know exactly how the client interacts with the files, which becomes alittle bit complicated.
Let me know if you get it, please. Repacking WDF files would save MASSIVE space on repacking the client for private servers with customized clients.