Add openrouter_judge.py to rank live image+JSON models by advertised price, with ordered fallbacks, auth-error handling and auto selection. Wire both judges to --model auto, record the model used, and add fake-catalogue/mocked-call tests. Re-run the judges with the valid key: 13/13 screen designs match, 0 diff; the Forward+ A/B report records the selected model and ~$0.006 spend. Headless 231/231, Python 94/94.
1.4 KiB
1.4 KiB
TODO
Work is grouped by theme. Each item should be small enough to complete and verify on its own;
see AGENTS.md for the workflow and MEMORY.md for the decisions behind these plans.
Realism follow-ups (deferred)
- Re-run the screen-design judge for
12-joke-shop,13-studio-arrivaland the Forward+ A/B with the valid key: 13/13 match, 0 diff; the HQ A/B is in the report. - Capture a hooded/winter NPC close-up once a scenario spawns types 5-7 (the explicit
--portrait-typeoverride is already incapture_realism.gd). - Human-authored tree/hedge silhouettes: the whole scene now reads well except the foliage,
which is still flat-shaded clumps (
_shrub()/_tree()intools/blender_assets.py). Only worth doing if a higher-poly organic builder is added to the library. - Camera height: the concept frames are shot at ~1.55 m with a slightly wider lens; the game camera sits at 1.7 m. Decide whether the first-person height should match the art direction or stay at the current gameplay value.
Future ideas (optional, not scheduled)
- Live 3D body-camera replay (the timeline is text-only today).
- Additional venues or seasonal events authored from the new
.tresfiles. - Real voice/dialogue audio (the crowd bed and radio crackle are procedural).
- Swap the primitive prop builder for an image-to-mesh model API behind the same
assets/models/generated/<prop>.glbcontract.