DO/New PRJ Notes

From Dark Omen Wiki

(Difference between revisions)
Jump to: navigation, search
(Overall Structure)
(Header)
Line 23: Line 23:
===Header===
===Header===
-
The header merely consists of the string "Dark Omen Battle File 1.10     ", which is used to identify the PRJ format.
+
The header merely consists of the string "Dark Omen Battle File 1.10<+' '*6>", which is used to identify the PRJ format.
==='BASE'===
==='BASE'===

Revision as of 20:45, 17 November 2008

Contents

PRJ File format

The PRJ file format represents the world data (as opposed to the mission-specific data) for a Dark Omen battle.

Overall Structure

The Overall structure of a PRJ File is shown below. It is made up of sections, which appear in this order:

Header: The string "Dark Omen Battle File 1.10      " (32 bytes in total, padded with spaces)
'BASE': Indicates the terrain mesh to use
'WATR': Indicates the water mesh to use (if any)
'FURN': Describes the position of external meshes (buildings, trees etc)
'TERR': The terrain heightmap, used for collision detection with the ground
        and possibly has other uses
'ATTR': Attribute flags for parts of the terrain
'EXCL': Unknown function at present
'MUSC': The music to use for this level
'TRAC': Camera tracks for the intro
'EDIT': Unknown function at present

Block Formats

Header

The header merely consists of the string "Dark Omen Battle File 1.10<+' '*6>", which is used to identify the PRJ format.

'BASE'

The base section looks like this:

struct BASE
{
   unsigned char ID[4]; // = 'BASE'
   unsigned int lengthOfFilenameString;
   unsigned char filename[BASE.lengthOfFilenameString];
}
Personal tools
communication