Toggle menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.
Revision as of 23:52, 6 September 2022 by Algoflash (talk | contribs)

← Gotcha Force

This section is currently being written.
More research is needed and some paragraphs may be wrong.

MDT files are similar to PZZ files, with a header of 0x800 / 2048 bytes including :

  • the number of files (uint32 big endian)
  • the file size / 0x800 for each file

It is possible to unpack and repack .mdt files with the pzztool.py tool. Unlike pzz, the internal files of .mdt are packaged and not compressed.

  • 000 dat file contains at first sight all texts of the game (Related to all dat file, not only one).
  • 001 TPL including an alphanumeric alphabet used by the dat file

dat file:

header:

  • 4 bytes - offset_block_list offset
  • 4 bytes - symbols_count # number of symbols contained in the tpl
  • 2 bytes - offsets for each symbol - in the file relative to after the header (array)

offset_block_list:

  • 4 bytes - uint32 absolute offset array of the offsets_blocks terminated by -1 (FF FF FF FF)

offset_block_1: # first offsets block describing data block 1 partitioning

  • 4 bytes - int32 absolute array of offsets in the data block terminated by -1 (FF FF FF FF). The first offset is the data block offset

data_block_1:

  • 2 bytes - signed int16 list <- block 2 describe where each element begin

offset_block_2: ... data_block_2: ...

data_block contains int16 indexes relative to the tpl symbol list. First symbol in the tpl has number 0 then horizontaly symbol 1, 2 ... So data block contains phrases.

  • FFFE: space
  • 1001: end of the phrase

Virtual World RE has developed the python script pzztool.py to manipulate MDT files and their internal files.


PGCD of MDT file sizes: 2048 / 0x800