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.
25 lines
1.4 KiB
Markdown
25 lines
1.4 KiB
Markdown
# 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.
|