Wire the crowd variants into per-role pools and verify every seed resolves
Full build / Import + headless tests (push) Successful in 55s
Full build / Full desktop build + optional release (push) Skipped

This commit is contained in:
zwitschi committed 2026-11-04 11:03:01 +01:00
1 parent 4e8665e25b
commit 6052ea391b
3 files changed
+35 -28

No files matched your search

+6 -2
View File
@@ -639,8 +639,12 @@ must inherit the reviewed face/hand/gear baseline instead of multiplying whateve
- [x] Add the four specs to `CHARACTERS`, commit their GLBs/AO maps and manifest roles/tint data.
(Note: this adds ~2 MB to the next release build via `export_filter=all_resources` — accepted
for the crowd-variety roster.)
- [ ] Replace the fixed `character_model_for()` mapping with deterministic per-role pools and add
tests for repeatability and duplicate avoidance (`godot-export` contract check included).
- [x] Per-role pools: `character_model_for()` now picks from `CHARACTER_POOLS` by seed — the
routine crowd roles gain the crowd variants (tourist → casual/crowd_a/crowd_d,
confused_visitor → casual/crowd_b, intoxicated → casual/crowd_c) while the special roles
keep their existing alternation (guest ⅓ jacket, trespasser/threat ½ hoodie). The test
now checks seed-stability plus that every pool entry resolves to a committed GLB
(277/277).
- [ ] Rebuild and verify gear fit for every new variant (`blender_assets.py fit` plus the runtime
gear checks) and re-run `inspect` on the four new GLBs.
- [ ] Build the crowd-variety reference board (licensed street-crowd photos plus AI proposals) and