Modern Warfare PAK Files: Difference between revisions
| Line 23: | Line 23: | ||
On XBOX, each image's data is compressed, then appended to the file. | On XBOX, each image's data is compressed, then appended to the file. | ||
No image headers are stored in these files. See | No image headers are stored in these files. See https://codresearch.dev/index.php/FastFiles_and_Zone_files_(MW2) | ||
Entries are the serialized source ranges and logical decode positions for streamed GfxImage payloads. | Entries are the serialized source ranges and logical decode positions for streamed GfxImage payloads. | ||
Latest revision as of 06:55, 30 June 2026
There are two different types of PAK files used by the Modern Warfare series (MW, MW2, MW3) and Advanced Warfare, Packfiles and Imagefiles. Packfiles store audio data and Imagefiles store image data. Both use the same extension (.pak).
Imagefile
Uses the same common header as all fastfiles do. After the header is nothing else but the data.
Header
| Name | Offset | Description |
|---|---|---|
| Magic | 0x0 | "IWffu100" or "S1ffu100" |
| Version | 0x4 | See fastfile versions |
On PS3, the compression method is the same as it is for fastfiles. Image data is concatenated as one file, split into blocks each 0x10000 bytes, then each block is compressed, and appended to the file.
On XBOX, each image's data is compressed, then appended to the file.
No image headers are stored in these files. See https://codresearch.dev/index.php/FastFiles_and_Zone_files_(MW2)
Entries are the serialized source ranges and logical decode positions for streamed GfxImage payloads.
Packfile
Header
| Description | Offset | Size |
|---|---|---|
| Hash | 0x0 | 4 |
| Alignment | 0x4 | PS3: 0x7FC XBOX: 0x46C |
The header is only found on Modern Warfare 2 & 3. After the header is the audio data. Each audio file is concatenated and aligned (by 0x800 on PS3). These sounds are known as streamed sounds. They are loaded through sound alias list assets by offsets (in StreamedSound).