Lookup data and art generated by tools #30

Closed
opened 2026-10-20 18:41:22 +00:00 by mintopia · 2 comments
Owner

Per ADR 0020: commit lookup tables (cars, mods, tracks, routes, powerups, awards), powerup/mod icons and track images as consumer data, each produced by a script in tools/ from the user's game install (wiki only where the install lacks it, recorded by the script).

Acceptance

  • JSON tables for cars, mods, tracks, routes, powerups, awards in the repo (location shared with the live-timing example).
  • Existing examples/live-timing/icons and cars.js regenerated by the tools (names may change from wiki to install values).
  • Track images added.
  • README's no-game-derived-files statement describes the ADR 0020 exception.

Rules

  • Wire format: ADR 0019 (docs/decisions/0019-feed-message-contract.md). Repo data/tools: ADR 0020.
  • Fix and verify on BLUR_ENGINE=recomp only.
  • Update docs/state-websocket.md and examples/live-timing for any feed change.
  • Test races: use the scripts/ scenarios (windowed, low settings) once #33 exists.
Per ADR 0020: commit lookup tables (cars, mods, tracks, routes, powerups, awards), powerup/mod icons and track images as consumer data, each produced by a script in `tools/` from the user's game install (wiki only where the install lacks it, recorded by the script). ## Acceptance - JSON tables for cars, mods, tracks, routes, powerups, awards in the repo (location shared with the live-timing example). - Existing `examples/live-timing/icons` and `cars.js` regenerated by the tools (names may change from wiki to install values). - Track images added. - README's no-game-derived-files statement describes the ADR 0020 exception. ## Rules - Wire format: ADR 0019 (`docs/decisions/0019-feed-message-contract.md`). Repo data/tools: ADR 0020. - Fix and verify on `BLUR_ENGINE=recomp` only. - Update `docs/state-websocket.md` and `examples/live-timing` for any feed change. - Test races: use the `scripts/` scenarios (windowed, low settings) once #33 exists.
Author
Owner

Done on harmonic/task-38.

  • tools/lookup/gen.py: one boot of the recomp game, names resolved via its own string tables -> examples/live-timing/data/{cars,mods,tracks,routes,powerups,awards}.json + cars.js (install names; e.g. dropped wiki make prefixes for rival cars).
  • tools/lookup/icons.py: 24 mod icons rendered from the game ability_icons scene (replaces wiki ones).
  • tools/lookup/tracks.py: 34 route cards from tools/trackcards runs -> examples/live-timing/tracks/ (route 0 of each track has no card; #13 routes not re-captured).
  • README and docs/state-websocket.md describe the ADR 0020 exception.

Gaps: 8 powerup icons remain wiki images (no standalone art in the install; recorded in data/sources.json); 8 SP boss mods have no shape in ability_icons so no icon; tracks.py needs a prior trackcards run.

Done on harmonic/task-38. - tools/lookup/gen.py: one boot of the recomp game, names resolved via its own string tables -> examples/live-timing/data/{cars,mods,tracks,routes,powerups,awards}.json + cars.js (install names; e.g. dropped wiki make prefixes for rival cars). - tools/lookup/icons.py: 24 mod icons rendered from the game ability_icons scene (replaces wiki ones). - tools/lookup/tracks.py: 34 route cards from tools/trackcards runs -> examples/live-timing/tracks/ (route 0 of each track has no card; #13 routes not re-captured). - README and docs/state-websocket.md describe the ADR 0020 exception. Gaps: 8 powerup icons remain wiki images (no standalone art in the install; recorded in data/sources.json); 8 SP boss mods have no shape in ability_icons so no icon; tracks.py needs a prior trackcards run.
Author
Owner

Completed and merged by Harmonic (task 38).

Completed and merged by Harmonic (task 38).
Sign in to join this conversation.
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Reference
mintopia/blur#30
No description provided.