35 lines
1.7 KiB
Markdown
35 lines
1.7 KiB
Markdown
# Health regeneration and starry sky
|
|
|
|
- Living players recover exactly one HP per elapsed gameplay second, including combat.
|
|
Maximum is 100 HP; no healing or resurrection after death. Physics time accumulator
|
|
handles frame-rate variation; time at full HP does not bank healing.
|
|
- `scripts/main.gd` uses a `PanoramaSkyMaterial` as the environment background.
|
|
Ambient light remains the existing constant color; sky reflections are disabled.
|
|
- Compared local Half-Life skies `night`, `space`, and several `neb*` sets. `space`
|
|
was selected for a plain star field (`night` is cloudy; nebulae are colorful).
|
|
- `assets/textures/sky/space_panorama.png`: 2048x1024 equirectangular conversion of
|
|
the six Valve `space*.tga` faces, not a newly generated texture. The original faces
|
|
are low resolution, so stars retain their original soft appearance. Source hashes
|
|
are in `source_manifest.json`; original Steam files are never modified.
|
|
|
|
Reproduce (Pillow and FFmpeg with v360 required):
|
|
|
|
```sh
|
|
python3 tools/prepare_sky.py /path/to/Half-Life/valve/gfx/env
|
|
```
|
|
|
|
Verify with installed Godot 4.7.1:
|
|
|
|
```sh
|
|
"$G" --headless --path . --script res://tools/test_health_sky.gd
|
|
"$G" --display-driver x11 --rendering-method gl_compatibility --path . \
|
|
--script res://tools/test_health_sky.gd -- --screenshot
|
|
```
|
|
|
|
Screenshot: `/tmp/zombie-star-window.png`. Test checks discrete timing, maximum,
|
|
no healing after death, panorama dimensions, and unchanged ambient light. Existing
|
|
music, grenade, wave, death, damage, and touch tests also pass. The existing resource
|
|
leak/in-use warnings at test shutdown remain; they are not fixed by this change.
|
|
|
|
Sky format reference: https://docs.godotengine.org/en/stable/classes/class_panoramaskymaterial.html
|