--- # nuzlocke-tracker-gkcy title: Output seed JSON status: todo type: task priority: normal created_at: 2026-02-11T08:43:21Z updated_at: 2026-02-11T08:43:33Z parent: nuzlocke-tracker-bs05 blocking: - 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. - [ ] **Output per-game JSON**: Write `{game-slug}.json` files matching the existing format: ```json [{"name": "Route 1", "order": 3, "encounters": [...], "children": []}] ``` - [ ] **Output games.json**: Generate the global games list from `version_groups.json` (this may already be handled by existing config, verify). - [ ] **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**: Ensure encounters specific to one version in a version group only appear in that game's JSON file (e.g. FireRed exclusives vs LeafGreen exclusives). ## 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