Fonts.mul holds a collection of totalling 9 fontsets.
Where the fontset consists of several sprites, each representing a letter.
Every fontset has 224 letters, representing the ASCII code table with an offset of 32.
(Space = 32-ASCII = letter 0, '!' = 33-Ascii = letter 1, ...)
The contents of this file may change to your localization.
(Arachnide uses only english letters, I guess the fonts file of the korean or japan version
might look radical different as they have more than 224 characters... until some of you eastern
guys get hack on that file, we cannot tell if Arachnide or other applications using this file
will work for you....(btw. does InsideUO do?))
Characters with an ASCII-ID greater than 127 are special to your local version,
How the client knows which extra letters are valid and how they correspond to their UNICODE value, is unknown.
This file has no index file, or is otherwise indexable, meaning you can only read it's contents in a single run.
A Fontset
(UN)SIGNED BYTE
unkown (always == 1)
LETTER[224]
224 letters (see below)
...
followed by the next fontset.
A Letter (sprite)
UNSIGNED BYTE
width
UNSIGNED BYTE
height
(UN)SIGNED BYTE
unknown
UNSIGNED INT16[width * height]
the pixels
A pixel value of 0x0000 represents transparent background, every other pixel foreground (dough :o).