Files
nuzlocke-tracker/.beans/nuzlocke-tracker-gkcy--output-seed-json.md
Julian Tabel df55233c62 Add seed JSON output (per-game, games.json, pokemon.json)
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>
2026-02-11 10:59:56 +01:00

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
nuzlocke-tracker-vdks

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.json to assign order values 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.json into the appropriate routes. Pokemon names are resolved to proper display names via PokemonMapper.
  • Output per-game JSON: Write {game-slug}.json files 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_identifiers per 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