Big File

From Nomad DB

Dunia Engine-based titles such as the Watch Dogs series use the so-called Big File format to store most resources. A Big File comes in the form of a pair of physical files, one with the .fat and the other one with the .dat extension. For example, a Big File archive called patch consists of a patch.fat and a patch.dat file. Watch Dogs 2 uses version 11 of the Big File format, using the header magic FAT5, while Watch Dogs: Legion uses version 13.

File Contents

An individual FAT file without its corresponding DAT file or vice versa is mostly useless as they both contain important data. Typically FAT files only come in a few Megabytes in size while DAT files easily grow into the tens of Gigabytes.

The FAT archive contains a list of all resources in this Big File, stored using the 64-bit FNV-1 hash of the original resource name, the resource size and the resource offset in the DAT archive. Other parameters are the compression scheme of the resource (if any) and the uncompressed size. As the Big File format only stores resource name hashes for performance reasons there is no easy way to get a list of all resource names that are contained within a Big File.

The DAT archive consists entirely of the actual resource contents inside the Big File. The engine navigates this file using the offsets and sizes specified in the FAT file.