Wire output module into CLI pipeline: route ordering, special encounter merging, and JSON writing for per-game encounters, global games list, and pokemon list with types and sprite paths. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
1.7 KiB
1.7 KiB
title, status, type, priority, created_at, updated_at, parent, blocking
| title | status | type | priority | created_at | updated_at | parent | blocking | |
|---|---|---|---|---|---|---|---|---|
| Output seed JSON | in-progress | task | normal | 2026-02-11T08:43:21Z | 2026-02-11T09:24:47Z | nuzlocke-tracker-bs05 |
|
Generate the final per-game JSON files in the existing seed format.
Checklist
- Apply route ordering: Use the existing
backend/src/app/seeds/route_order.jsonto assignordervalues to routes. Handle aliases (e.g. "red-blue" → "firered-leafgreen"). Log warnings for routes not in the order file. - Merge special encounters: Integrate starters, gifts, fossils, and trades from
backend/src/app/seeds/special_encounters.jsoninto the appropriate routes. Pokemon names are resolved to proper display names via PokemonMapper. - Output per-game JSON: Write
{game-slug}.jsonfiles matching the existing format:[{"name": "Route 1", "order": 3, "encounters": [...], "children": []}] - Output games.json: Generate the global games list from
version_groups.json— 38 games written, matching existing count. - Output pokemon.json: Generate the global pokemon list including all pokemon referenced in any encounter. Include pokeapi_id, national_dex, name, types, sprite_url.
- Handle version exclusives: Encounters are filtered by
version_identifiersper game — verified FireRed vs LeafGreen have 18 exclusives each.
Notes
- The output must be a drop-in replacement for the existing files in
backend/src/app/seeds/data/ - Boss data (
{game}-bosses.json) is NOT generated by this tool — it's manually curated - Evolutions data is also separate (currently from PokeAPI) — out of scope for this task