Offtopic: Into Commodore 64 (6502) coding, pixeling or music?
Xentax is looking for new members for the C64 activities!
Just drop us a message at forum@xentax.com and join the Scene Team!

Forum rules: Click here

Watch_Dogs fat and dat archives

The Original Forum. Game archives, full of resources. How to open them? Get help here.
Post Reply
namquang93
veteran
Posts: 116
Joined: Mon Apr 09, 2012 8:40 am
Has thanked: 50 times
Been thanked: 5 times

Watch_Dogs fat and dat archives

Post by namquang93 » Fri May 23, 2014 1:00 pm

This game's file structure is similar to Far Cry series with fat and dat archives, but a bit different. Here is an example, can anyone take a look into this. Hope someone can make a unpacker/packer for it, like Rick's tools. Thanks in advanced.

Image

Code: Select all

https://www.firedrive.com/file/BA315D54DDCE56FC

Ekey
M-M-M-Monster veteran
M-M-M-Monster veteran
Posts: 1645
Joined: Wed Mar 31, 2010 6:54 am
Has thanked: 68 times
Been thanked: 825 times

Re: Watch_Dogs fat and dat archives

Post by Ekey » Fri May 23, 2014 1:16 pm

Code: Select all

struct FATHeader
{
	DWORD	dwID; // 3TAF
	DWORD	dwVersion; // Always = 8
	DWORD	dwUnknown;
	DWORD	dwTotalFiles;
};

Code: Select all

struct FATEntry
{
	DWORD	dwHash;
	DWORD	dwSize;
	DWORD	dwZSize;
	DWORD	dwOffset;
};
PC > XMem
PS3 > Deflate
Xbox > XMem

PS: Edited info > thx Haoose
Last edited by Ekey on Tue May 27, 2014 8:35 pm, edited 13 times in total.

User avatar
cra0
ultra-veteran
ultra-veteran
Posts: 432
Joined: Fri Apr 27, 2012 9:37 am
Has thanked: 29 times
Been thanked: 184 times
Contact:

Re: Watch_Dogs fat and dat archives

Post by cra0 » Fri May 23, 2014 4:20 pm

can you upload that common dat file?

HAIDER6222354
beginner
Posts: 27
Joined: Wed Jul 04, 2012 5:19 am
Has thanked: 4 times

Re: Watch_Dogs fat and dat archives

Post by HAIDER6222354 » Fri May 23, 2014 4:29 pm

cra0 wrote:can you upload that common dat file?
this common dat and fat for ps3 version

https://www.firedrive.com/file/7769DA947BE2EA60

namquang93
veteran
Posts: 116
Joined: Mon Apr 09, 2012 8:40 am
Has thanked: 50 times
Been thanked: 5 times

Re: Watch_Dogs fat and dat archives

Post by namquang93 » Fri May 23, 2014 5:12 pm

this is from pc version

Code: Select all

https://www.firedrive.com/file/B7B191D4E38EA190

User avatar
cra0
ultra-veteran
ultra-veteran
Posts: 432
Joined: Fri Apr 27, 2012 9:37 am
Has thanked: 29 times
Been thanked: 184 times
Contact:

Re: Watch_Dogs fat and dat archives

Post by cra0 » Sun May 25, 2014 12:50 pm

namquang93 wrote:this is from pc version

Code: Select all

https://www.firedrive.com/file/B7B191D4E38EA190
yep I got the pc version will take a look soon

User avatar
cra0
ultra-veteran
ultra-veteran
Posts: 432
Joined: Fri Apr 27, 2012 9:37 am
Has thanked: 29 times
Been thanked: 184 times
Contact:

Re: Watch_Dogs fat and dat archives

Post by cra0 » Sun May 25, 2014 4:53 pm

It's just a modifed Xmem i think... well for pc at least I can see the magic header, here is a 010 editor script anyway for the fat files using what ekey found

Code: Select all

//--------------------------------------
//--- 010 Editor v5.0 Binary Template
//
// File: common.fat
// Author: EKey/Cra0kalo
// Revision: 1
// Purpose: WatchDogs
// ByteFormat - Little Endian
//--------------------------------------


typedef  float vec3[3];
typedef  float quat4[4];
typedef  string asciiz;

struct
{
   DWORD   dwID; // 3TAF
   DWORD   dwVersion; // Always = 8
   DWORD   dwUnknown;
   DWORD   dwTotalFiles;
}FATHeader;

//DWORD UnknownA;

local int i;
for(i = 0; i < FATHeader.dwTotalFiles; i++ )
{
struct
{
   DWORD   dwHash;
   DWORD   dwSize;
   DWORD   dwZSize;
   DWORD   dwOffset;
}FATEntry;


}

As for Xmem we can see the usual 0x0F 0xF5 0x12 0xEE magic identifier in the dat

Image

Another script of a standard header it's obviously different but yeah I'm about to head to sleep will take a look tomorrow

Code: Select all

//--------------------------------------
//--- XCOMPRESS
//--- Watch Dogs 2014
//--------------------------------------
long Identifier; // # XCOMPRESS_FILE_IDENTIFIER_LZXNATIVE
long ContextFlags;
long Flags;
long WindowSize;
long CompressionPartitionSize;
long UncompressedSizeHigh;
long UncompressedSizeLow;
long CompressedSizeHigh;
long CompressedSizeLow;
long UncompressedBlockSize;
long CompressedBlockSizeMax;
xcompress.h

Ekey
M-M-M-Monster veteran
M-M-M-Monster veteran
Posts: 1645
Joined: Wed Mar 31, 2010 6:54 am
Has thanked: 68 times
Been thanked: 825 times

Re: Watch_Dogs fat and dat archives

Post by Ekey » Sun May 25, 2014 5:38 pm

PS3 compressed data header

Code: Select all

struct DataHeader
{
   SHORT   wChunksCount;
   SHORT   wUnknown; //xFF\x0F

  for(i = 0; i < DataHeader.wChunksCount; i++ )
  {
    Read(wChunksSizes, 2);
  }
};

killerpepo
beginner
Posts: 21
Joined: Wed Mar 23, 2011 7:22 am
Has thanked: 16 times
Been thanked: 7 times

Re: Watch_Dogs fat and dat archives

Post by killerpepo » Mon May 26, 2014 7:14 pm

Thanks to you guys I was able to extract the XCompress using quickbms , but there is a little modification to the file struct.

All big endian

Code: Select all

//--------------------------------------
//--- XCOMPRESS
//--- Watch Dogs 2014
//--------------------------------------
long Identifier; // # XCOMPRESS_FILE_IDENTIFIER_LZXNATIVE
long ContextFlags;
short Version;
short Reserved;
long Flags;
long WindowSize;
long CompressionPartitionSize;
long UncompressedSizeHigh;
long UncompressedSizeLow;
long CompressedSizeHigh;
long CompressedSizeLow;
long UncompressedBlockSize;
long CompressedBlockSizeMax;
long CompressedBlockSize;
Image

I'll try to post the script , btw :I'm not good in writing scripts :D

Gruselgurke
advanced
Posts: 73
Joined: Fri Mar 30, 2012 6:15 pm
Has thanked: 21 times
Been thanked: 2 times

Re: Watch_Dogs fat and dat archives

Post by Gruselgurke » Mon May 26, 2014 8:18 pm

How did you uncompress it? Does the game still work with uncompressed .dat files?
Might help with some performance issue many users have with the game.

User avatar
Haoose
mega-veteran
mega-veteran
Posts: 276
Joined: Tue Mar 01, 2011 9:34 pm
Has thanked: 68 times
Been thanked: 183 times
Contact:

Re: Watch_Dogs fat and dat archives

Post by Haoose » Mon May 26, 2014 8:45 pm

Gruselgurke wrote:Does the game still work with uncompressed .dat files?
No. Need modified EXE-file for it
-= GP-team =-
Image

Rick
Moderator
Posts: 388
Joined: Tue Aug 09, 2005 10:10 pm
Location: California
Been thanked: 84 times
Contact:

Re: Watch_Dogs fat and dat archives

Post by Rick » Tue May 27, 2014 7:15 am

Haoose wrote:
Gruselgurke wrote:Does the game still work with uncompressed .dat files?
No. Need modified EXE-file for it
Not sure why that would be the case, the archive format supports uncompressed data just fine.
http://blog.gib.me/

Don't ask me about localization tools; if you don't have the resources to develop them yourself you don't need them.

namquang93
veteran
Posts: 116
Joined: Mon Apr 09, 2012 8:40 am
Has thanked: 50 times
Been thanked: 5 times

Re: Watch_Dogs fat and dat archives

Post by namquang93 » Tue May 27, 2014 7:51 am

Rick wrote:
Haoose wrote:
Gruselgurke wrote:Does the game still work with uncompressed .dat files?
No. Need modified EXE-file for it
Not sure why that would be the case, the archive format supports uncompressed data just fine.
hello, will you work on this game ? I really love the way you did with Far Cry 3.

Rick
Moderator
Posts: 388
Joined: Tue Aug 09, 2005 10:10 pm
Location: California
Been thanked: 84 times
Contact:

Re: Watch_Dogs fat and dat archives

Post by Rick » Tue May 27, 2014 8:42 am

When I have the time.
http://blog.gib.me/

Don't ask me about localization tools; if you don't have the resources to develop them yourself you don't need them.

kalleoskar
beginner
Posts: 35
Joined: Thu Dec 25, 2008 3:17 pm
Has thanked: 12 times

Re: Watch_Dogs fat and dat archives

Post by kalleoskar » Tue May 27, 2014 12:57 pm

Cool to see some progress! For me im wondering and am curious about the scripts, and if we are able to change them up depending on the code

Post Reply