Die Hard Trilogy
In the first episode Die Hard, a third-person shooter, you are in charge of rescuing hostages in the Nakatomi Plaza building.
The second episode Die Hard 2: Die Harder is presented as an on rails-shooter in which you must stop terrorists who have taken over the Dulles Airport.
In the third episode Die Hard: With a Vengeance, you are tasked of finding and defusing explosive devices throughout a joyride driving taking place in New York City.
File formatsThe following file formats are used by this game.
|RIFF WAVE Format||Game music, located in cdrom:// but also as Audio CD tracks|
|Die Hard Trilogy container||Archive storing the game's data files, located in ./data|
Die Hard Trilogy container
Each container begins by indicating the number of files it contains :
|UINT32LE count||Number of files in the container|
Then is followed by count structures :
|UINT32LE offset||Offset in bytes where this file begins in the container|
|BYTE filename||Name of the file (DOS 8.3 style, padded with null-terminated characters)|
Note: the last file name will be null and its offset will equal the container size in bytes.
The logic for extracting files from the container is as follows :
- read the number of files in the container
- read the structures following (named files for this example)
- write a for loop running from index 0 to count - 1
- get the beginning offset of the current file from files[index]
- compute file length by subtracting it to offset of files[index + 1]
- and so on until index == count - 1
|LOAD.MWF||Contains 30 audio samples|
Format of audio samples
Monophonic 8-bit unsigned PCM at 11 025 Hz appended with a 36 bytes structure at the end:
|UINT32LE unknown1||Seems to be always 0|
|UINT16LE unknown2||Seems to be always 1|
|UINT16LE unknown3||Seems to be always 1|
|UINT32LE freq1||Sample rate of this file ?|
|UINT32LE freq2||Sample rate of next file ?|
|UINT32LE nextSize||Size in bytes of the next file in the container|
|UINT16LE eof||Seems to be the EOF indicator (systematically 0x5400)|
Aybe for the containers format.