HMEL files were introduced with Descent Manager HAXMEDIT/DOS
and HAXMEDIT32. They are simply an exchange file format for HAM/HXM elements, to provide
easy exchangement of single elements. The format itself is also really similar to the
HAM/HXM formats.
These specifications were defined and written by Heiko Herrmann. Thanks a lot to Garry Knudson, Steve Klinger and Luke Schneider for the great support.
Definitions and declarations for HMEL files
Get Descent Manager HAXMEDIT32 editor software
Get Descent Manager HAXMEDIT/DOS editor software
Get Descent Manager POLYTRON32 editor software
Get PMView by Garry Knudson - Viewer software
Get RBotEdit by Garry Knudson - Editor software
Go to *.HAM specs
Go to IDTA specs
eMail author: Heiko Herrmann
char[4]
"HMEL";
// signature ("HaM
ELement")
INT32 version;
// currently 1
INT32 element_num;
// number of element, where this element
was extracted from (*1)
INT32 num_blocks;
// number of blocks now following
for (i=1;i<num_blocks+1;i++) {
block(size_of_block[i]); // data of this block (The
size depends on the block type)
} |
(*1) this information is important for creating HXM
files, so it can default the "replaced_polygon" etc. to the default
The following HMEL files are existing:
| *.TXE |
Textures
- 2 blocks:
TEXTURES_1 (2 bytes)
TEXTURES_2 (20 bytes) |
| *.SOU |
Sounds
- 2 blocks:
SOUNDS_1 (1 byte)
SOUNDS_2 (1 byte) |
| *.VCL |
VClips
- 1 block:
VCLIPS (82 bytes) |
| *.ECL |
EClips
- 1 block:
ECLIPS (130 bytes) |
| *.WCL |
WClips
- 1 block:
WCLIPS (126 bytes) |
| *.ROB |
Robot Types
- 1 block:
ROBOT_TYPES (480 bytes) |
| *.JOI |
Robot Joints
- 1 block:
ROBOT_JOINTS (8 bytes) |
| *.WEA |
Weapon Types
- 1 block:
WEAPON_TYPES (125 bytes) |
| *.POW |
Powerup Types
- 1 block:
POWERUP_TYPES (16 bytes) |
| *.POL |
Polygon Models
- 4 blocks:
POLYGON_MODELS (734 bytes)
MODEL_DATA (varies, the size stands in the POLYGON_MODELS block)
DYING_MODELNUMS (4 bytes)
DEAD_MODELNUMS (4 bytes) |
| *.GAG |
Gagues
- 2 blocks:
GAGUES_1 (2 bytes)
GAGUES_2 (2 bytes) |
| *.OBM |
Object Bitmaps
- 2 blocks:
OBJECT_BITMAPS_1 (2 bytes)
OBJECT_BITMAPS_2 (2 bytes) |
| *.SPS |
Single Player
Ship - 1 block:
SINGLE_PLAYER_SHIP (132 bytes) |
| *.COC |
Cockpits
- 1 block:
COCKPITS (2 bytes) |
| *.MAR |
Marker
- 1 block:
MARKER (4 bytes) |
| *.REA |
Reactors
- 1 block:
REACTORS (200 bytes) |
The most important file type is "POL". It is not
only used by Descent Manager HAXMEDIT, but also by Polytron, PMView and RBotEdit (links see top of page)