Table of Contents

.CER file format

The .CER file stores assets used by ZZT Enhancer worlds.

A simple extraction tool is available here.

Offset Type Description
0 uint16 Asset entry count
2… asset_entry[] Asset entries

Asset entry

Offset Type Description
0 uint16 Asset index (used in OOP)
2 uint32 Offset, from beginning of file
6 uint32 Length, in bytes

Known asset formats

Asset type information is not stored in the .CER file - rather, any asset can be used as any format by using its index with a given OOP command.

Configuration

This format is always present at asset index 1. It seems to automatically be loaded by ZZT Enhancer on startup. It's stored as a text file with DOS line endings (CR-LF).

Line Description
1 World filename, without the .ZZT extension.
2 Unknown; always 123456789abcdef0123456789abcdef0 in preserved worlds.
3 Long world name, used for the ZZT Enhancer startup screen.
4 Unknown; Caverns uses 2, while Evil3 uses 0.
5 .DLM filename, if used by the game in question.

Font

256 characters, 32 bytes each - the first 14 bytes are used for each character in 8×14 mode.

Palette

Sixteen consecutive triplets of Red, Green, and Blue values in the range 0 - 63. Matches MegaZeux's palette format.

Screen

The width and height are followed by (width x height) character/color pairs.

Offset Type Description
0 uint8 Width
1 uint8 Height
uint8 Character
uint8 Color

Wave

Unsigned 8-bit mono RIFF wave files of arbitrary? frequency (known: 8000 Hz, 22050 Hz).

Module

Tracked module file. ZZT Enhancer was compiled with an unknown version of MikMod (close to but newer than 2.09b), implying support for .MOD, .MTM, .S3M, .STM and limited support for .XM files.