Maraiah/doc/data/2-data.md

6.0 KiB

DATA FORMATS

Wad

Wad files are used for scenario data, images such as those in terminals and the main menu, and physics files. Here is a listing of all chunks used within them.

Map tags:

Name Description
Minf Static Map Info structure
PNTS Array of Point
EPNT Array of Endpoint
LINS Array of Line
SIDS Array of Side
POLY Array of Polygon
LITE Array of Light
NOTE Array of Annotation
OBJS Array of Object
plac Array of Object Frequency
plat Array of Platform Data
medi Array of Media Data
ambi Array of Ambient Sound
bonk Array of Random Sound
term Array of Terminal
NAME NTBS containing map name
påth Unused, supposed to be guardpaths (å is $8C)
door Unused, supposed to be extra door data

Map files can be identified by the Minf chunk.

Maps will always have either a PNTS or EPNT chunk, depending on what the map (and editor) use. PNTS are plain and have no more information than the actual position, while EPNT can be loaded directly into memory by the engine. EPNT also tells the engine that the map is preprocessed and that iidx and PLAT chunks also exist. With DataVersion as DataM1, the format must always be preprocessed.

Physics tags:

Name Description
FXpx Array of Effect Definition
MNpx Array of Monster Definition
PRpx Array of Projectile Definition
PXpx Array of Physics Definition
WPpx Array of Weapon Definition

Physics definitions may be embedded into a map in Infinity and Aleph One, so the only reliable way to check if something is a pure physics file is by checking that there are no chunks other than **px chunks.

Image tags:

Name Description
PICT Picture Resource
clut Banished to the shadow realm

Images can be identified by the PICT chunk.

Save file tags:

Name Description
plyr Not analyzed (saved player data)
dwol Not analyzed (saved dynamic world data)
mobj Not analyzed (saved object data)
iidx Not analyzed (saved map indices)
alin Not analyzed (saved automap lines)
apol Not analyzed (saved automap polygons)
mOns Not analyzed (saved monsters)
fx Not analyzed (saved effects)
bang Not analyzed (saved projectiles)
PLAT Not analyzed (saved platform data)
weap Not analyzed (saved weapon state)
cint Not analyzed (saved terminal state)

Preferences tags:

Name Description
graf Not analyzed (graphics prefs)
serl Not analyzed (serial code)
netw Not analyzed (network prefs)
plyr Not analyzed (player prefs)
inpu Not analyzed (input prefs)
snd Not analyzed (sound prefs)
envr Not analyzed (environment prefs)

Aleph One tags:

Name Description
ShPa Not analyzed (shapes)
MMLS Not analyzed (MML scripts)
LUAS Not analyzed (Lua scripts)

Marathon 2 Shapes (.shpA)

The Shapes file is used for storing animation, sprite, sky and texture data. It uses a fixed, offset-based format for everything, with sprites sorted into collections along with frames and sequences.

Marathon 2 Sounds (.sndA)

The Sounds file is used for storing information about sounds as well as the actual PCM data.