Argonaut WAD

From XentaxWiki
Jump to: navigation, search

Back to index | Edit this page

WAD

  • Format Type : Archive
  • Endian Order : Little Endian / Big Endian


Format Specifications

// WAD file format

4 bytes (uint32) - offset to the end of WAD archive   // in newer games 2048 
                                                      // needs to be added 

num_of_sections *
{
   x bytes - section data
}

Sections

WAD archive can store one or more sections from the list below:

  • TPSX / XSPT: Textures
  • SPSX / XSPS: Sound effects and ambient tracks
  • UNIF / FINU: Fonts and text management
  • LPSX / XSPL: Localization, translated strings
  • DPSX / XSPD: 3D models, animations, actors and level
  • PORT / TROP: Rendering groups / zones and more
  • 'END ' / ' DNE': Marks the end of the file. May contain some data like background music and sound effects.

TPSX (XSPT) section

4 bytes (char) - signature  // "XSPT"
4 bytes (uint32) - section size
x bytes - texture header
x bytes - texture data

SPSX (XSPS) section

4 bytes (char) - signature  // "XSPS"
4 bytes (uint32) - section size
x bytes - SPSX flags
x bytes - common sound effects count

UNIF (FINU) section

//HEADER
4 bytes (uint32) - signature "FINU"
4 bytes (uint32) - chunk size
2 bytes - unknown // char table size * 2 (?)
2 bytes (uint16) - number of supported languages?
4 bytes (uint32) - number of entries in char table
4 bytes - unknwon
2 bytes - unknown  // size of some rel_offsets data block? (look below)


//CHARACTER TABLE
num_of_entries *
{
  2 bytes - unknown  // always "\x00\x00"
  2 bytes - unknown  // height?
  2 bytes - character
  2 bytes - some relative offset
}

LPSX (XSPL) section

//HEADER
4 bytes (char) - signature "XSPL"
4 bytes (uint32) - chunk size
4 bytes (uint32) - number of supported languages in chunk
4 bytes (uint32) - number of strings / 4     // 4 = 3 languages + 1 null string
4 bytes - unknown


// OFFSET TABLE
num_of_entries *
{ 
  4 bytes (uint32) - string relative offset
}


//STRING TABLE
//Note: lower characters "a-z" are encrypted,
//moved in ASCII table 1 character left
//Note2: special characters are encrypted
//in different way, check .py script for details

num_of_entries *
{
  12 bytes - identifier   // #0#$01 etc.   
  x bytes - string
  2 bytes - null terminator // "\x00\x00"
}

MultiEx BMS Script

Not written yet.

Notes and Comments

  • This file format occurs in games made by Argonaut.

Games

List of games using this file format:

  • Aladdin in Nasira's Revenge
  • Alien Resurrection
  • Croc 2 (PS1) (*.WAD)
  • Harry Potter and the Sorcerer's Stone / Harry Potter and the Philosopher's Stone (PS1) (*.WAD)
  • Harry Potter and the Chamber of Secrets (PS1) (*.WAD)
  • The Emperor's New Groove

Compatible Programs