Jazz Jackrabbit Font Format

From ModdingWiki
Jump to: navigation, search
Jazz Jackrabbit Font Format
File:Jazz Jackrabbit Font Format.png
There is no image of a tileset in this format — upload one!
Format typeTileset
HardwareVGA
Max tile count65,535
PaletteExternal
Tile names?No
Minimum tile size (pixels)0×0
Maximum tile size (pixels)16,383×65,535
Plane count4
Plane arrangementUnknown
Transparent pixels?Yes
Hitmap pixels?No
Metadata?None
Supports sub-tilesets?No
Compressed tiles?No
Hidden data?No
Games

The font files in Jazz are stored in two slightly different ways, some font characters are stored in non-font files. (For example the bonus font is stored in BONUS.000 with the bonus sprites.)

Normal fonts

The standard .0FN files (Fontbig, fontiny, fontmn1, fontmn2 and font2) consist of a 23 byte header ('Digital Dimensions + $1A followed by the h and v spacing between font characters when displayed and two blank bytes.) followed by font characters. Font characters can either contain data, or be placeholders. Placeholders are simply a blank word, and tend to end up in blocks in the font file.

Font characters consist of a character size word (Uncompressed character size + 4) followed by a Jazz Jackrabbit RLE compression compressed block. (RLE block size word followed by compressed data.)

Uncompressed character data consists of two words, the character width and height, followed by the character pixel data stored in the 'normal' way. Fonts contain no palette, so the color of the font will depend on the level it is in.

Fonts.000

This font file is similar to the others, but with some differences. Its header contains only word dictating how many font characters are in the file (Default 37), followed by characters themselves. (There is no h or v spacing for this font.)

Characters are uncompressed and consist of a header of 8 bytes. (Four words; width of character \ 4; height of character; height * width / 4; and a blank word.) followed by the character data.

Character data is stored as four interlaced images. Each image is one quarter of the columns of pixels making up the character. Image 1 is columns 1,5,9... image 2 is 2,6,10... and so on.

Bonus.000

This contains the bonus level font and sprites. It is not a font file per se but a graphics file.