Difference between revisions of "ZiPatch File Structure"
Line 1: | Line 1: | ||
+ | All ZiPatch files for FINAL FANTASY XIV share the same overall structure. This format was later expanded in 2012 for DRAGON QUEST X and FINAL FANTASY XIV: A Realm Reborn, which are more similar in their DAT structure. Many of the original instructions in this version were deprecated, but still remain in the executable for A Realm Reborn. | ||
+ | |||
ZiPatch File Header | ZiPatch File Header | ||
− | 91 5A 49 50 41 54 43 48 0D 0A 1A 0A | + | <code>91 5A 49 50 41 54 43 48 0D 0A 1A 0A</code> |
uint dataSize (Little Endian) | uint dataSize (Little Endian) |
Revision as of 18:30, 5 June 2019
All ZiPatch files for FINAL FANTASY XIV share the same overall structure. This format was later expanded in 2012 for DRAGON QUEST X and FINAL FANTASY XIV: A Realm Reborn, which are more similar in their DAT structure. Many of the original instructions in this version were deprecated, but still remain in the executable for A Realm Reborn.
ZiPatch File Header
91 5A 49 50 41 54 43 48 0D 0A 1A 0A
uint dataSize (Little Endian) byte data[dataSize + 4] byte crc[4]
crc is standard CRC32 checksum (RFC 1952) of the data block
byte type[data[0..3]] "FHDR" (File Header) "APLY" "APFS" "ETRY" (Entry File) "ADIR" (Add Directory) "DELD" (Delete Directory)
>>FHDR byte version[4] byte result[4] uint numEtry (Little Endian) uint numAply (Little Endian) uint numDeld (Little Endian)
>>ADIR uint pathSize (Little Endian) byte path[pathSize]
>>DELD uint pathSize (Little Endian) byte path[pathSize]