- Add 37 games from Gen 1-9 (Red/Blue through Scarlet/Violet) - Add color field to Game model matching box art/branding - Add migration for games.color column - Update fetch_pokeapi.py to fetch all games and output colors - Update seed loader to upsert game colors - Update frontend Game type to include color field Games without PokeAPI encounter data (ORAS, Let's Go, Sword/Shield, BDSP, Legends Arceus, Scarlet/Violet) have location structure but empty encounter tables. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
52 lines
2.3 KiB
Markdown
52 lines
2.3 KiB
Markdown
---
|
|
# nuzlocke-tracker-j28y
|
|
title: Curate route ordering to match game progression
|
|
status: todo
|
|
type: task
|
|
created_at: 2026-02-05T13:37:39Z
|
|
updated_at: 2026-02-05T13:37:39Z
|
|
parent: nuzlocke-tracker-f5ob
|
|
---
|
|
|
|
Routes are currently in alphabetical order from PokeAPI. Update the order field in each game's JSON seed file to reflect actual game progression (e.g., Pallet Town → Route 1 → Viridian City → Route 2 → ...).
|
|
|
|
## Automated Approach: Bulbapedia Walkthrough Scraping
|
|
|
|
We already have all location/encounter data from PokeAPI. The missing piece is progression order, which can be extracted from Bulbapedia walkthroughs.
|
|
|
|
### Data Source
|
|
Every game has a Bulbapedia walkthrough with routes listed in progression order:
|
|
- https://bulbapedia.bulbagarden.net/wiki/Walkthrough:Pokémon_FireRed_and_LeafGreen
|
|
- https://bulbapedia.bulbagarden.net/wiki/Walkthrough:Pokémon_Emerald
|
|
- https://bulbapedia.bulbagarden.net/wiki/Walkthrough:Pokémon_HeartGold_and_SoulSilver
|
|
- (and so on for all games through Gen 8)
|
|
|
|
### Implementation Plan
|
|
1. **Scrape walkthrough TOCs** - Parse the section headings from each game's walkthrough page to get route order
|
|
2. **Normalize names** - Map Bulbapedia location names to PokeAPI location names (handle differences like "Route 1" vs "Kanto Route 1")
|
|
3. **Generate ordering** - Create a JSON mapping of `{game: {location_name: order_number}}`
|
|
4. **Update fetch_pokeapi.py** - Apply ordering when generating seed data
|
|
|
|
### Benefits
|
|
- Automatable for all games (Gen 1-8)
|
|
- Bulbapedia walkthroughs are community-maintained and accurate
|
|
- Scales as we add more games
|
|
- Only needs to run once per game (or when walkthroughs update)
|
|
|
|
### Considerations
|
|
- Gen 9 (Scarlet/Violet) is open-world so ordering is less meaningful
|
|
- Some games have branching paths - may need to pick a canonical order
|
|
- Name matching between Bulbapedia and PokeAPI may need fuzzy matching
|
|
|
|
## Current Scope
|
|
- FireRed and LeafGreen share the same route progression (Kanto)
|
|
- HeartGold and SoulSilver share the same route progression (Johto + Kanto)
|
|
- Emerald has its own progression (Hoenn)
|
|
- So effectively 3 unique orderings to define for current games
|
|
|
|
## Files
|
|
- `backend/src/app/seeds/data/firered.json`
|
|
- `backend/src/app/seeds/data/leafgreen.json`
|
|
- `backend/src/app/seeds/data/emerald.json`
|
|
- `backend/src/app/seeds/data/heartgold.json`
|
|
- `backend/src/app/seeds/data/soulsilver.json` |