HSB Format (Halloween Harry)
Format type | Tileset |
---|---|
Hardware | VGA |
Max tile count | Unlimited |
Palette | Shared VGA |
Tile names? | No |
Minimum tile size (pixels) | 0×0 |
Maximum tile size (pixels) | 65535×65535 |
Plane count | 1 |
Plane arrangement | Linear VGA |
Transparent pixels? | Yes |
Hitmap pixels? | No |
Metadata? | None |
Supports sub-tilesets? | No |
Compressed tiles? | No |
Hidden data? | No |
Games |
HARRY.HSB is the sprite file used by Halloween Harry and holds all of the sprites used by the game. The format is trivial, being a collection of sprite chunks. Each sprite chunk has an 8 byte header followed by raw data.
Signature
The file has no signature, however the chunk headers can be parsed and checked to make sure the end of the last chunk aligns perfectly with the end of the file. It is unlikely this would result in incorrect identification of a file.
File format
Each image consists of an eight byte header followed by raw image data, repeated until the end of the file. The image data is for a 256 color sprite, meaning one byte of data per pixel.
Data type | Description |
---|---|
UINT8 unk1 | ! Unknown - unused by game |
UINT8 unk2 | ! Unknown - unused by game |
UINT16LE unk3 | ! Unknown - unused by game |
UINT16LE width | Image width, in pixels |
UINT16LE height | Image height, in pixels |
BYTE data[width * height] | Image data in Linear VGA format (raw 8bpp) |
Palette
Each map file (found in MAPS.-0) has its own palette data (see the article on the GMF Format for information). This palette is used to draw both the tile art and the sprites for that level.
Colour index 0 is used to denote transparent pixels.
Versions
At present only one version of the file is known of length 462,848 bytes containing 467 sprite images.
Unresolved issues
It is still unknown how the game determines the placement of sprites. I suspect the 'unknown' bytes listed above are used in conjunction with the map file, but I haven't been able to verify that yet.
Content
I was able to extract 467 sprite images from HARRY.HSB. Some of these are 1 pixel high and 1 pixel wide. I don't know the purpose of these 1x1 images yet. These may separate different groups of sprites, or they may simply be slots unused or reserved by the developers.
Tools
The following tools are able to work with files in this format.
Name | Platform | View images in this format? | Convert/export to another file/format? | Import from another file/format? | Access hidden data? | Edit metadata? | Notes |
---|---|---|---|---|---|---|---|
Camoto | Linux/Windows | Yes | Yes | Yes | N/A | N/A |
Credits
This file format was reverse engineered by Duckthing. If you find this information helpful in a project you're working on, please give credit where credit is due. (A link back to this wiki would be nice too!)