Add a painting entrance, Freedoom combat and Doom-style HUD. Persist the one-time clear reward in signed saves without changing file sizes. Include native regression checks and synchronized game/launcher builds.
1.4 KiB
Hell presentation asset contract
Imported offline from the pinned Freedoom 0.13.0 archive using
tools/generators/import_freedoom.py. Runtime remains MASM32.
All packs: 20-byte ANM1 header (five little-endian DWORDs: magic, width, height,
frame count, payload bytes), then row-major BGRA frames. Nearest-neighbour only.
| Pack | Frame size | Layout / alpha / origin |
|---|---|---|
hud.bin |
320×32 | One STBAR frame, rendered 2× at (0,416) |
digits.bin |
16×16 | Ten digits and percent, right-aligned; transparent |
faces.bin |
24×32 | Five health bands × four expressions, then dead; bottom-centred |
impacts.bin |
32×32 | Four PUFF frames, shared sprite origin; transparent |
painting.bin |
512×256 | One opaque, power-of-two wall texture; full-frame UVs |
Painting composes Freedoom sky, lava, masonry and monsters with an authored gilt
border. Its preview uses intended landscape aspect. Engine maps the texture onto
a 6×2-world-unit wall panel; it is not a camera-facing sprite. Power-of-two
dimensions are required by DrawCityVertical3D's masked texture coordinates.
No generated AI image or proprietary Doom artwork is used.
HUD glyphs and portrait retain original pixel-art palette. Frame padding avoids
per-expression scaling jitter. See assets/hell/manifest.json for source lumps
and assets/hell/COPYING.txt / CREDITS.txt for licence and attribution.