Add Game Data Cleanup epic with subtasks

Track the work needed to audit and complete encounter data and route
ordering across all supported games. Covers automated source exploration,
Gen 8+ stub population, ORAS/Let's Go completion, route ordering for
Gen 5+, Gen 1-4 ordering audit, and special encounters review.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Julian Tabel
2026-02-10 10:00:14 +01:00
parent 31355975e1
commit fae6532b8a
7 changed files with 232 additions and 0 deletions

View File

@@ -0,0 +1,49 @@
---
# nuzlocke-tracker-1e9k
title: Populate encounter data for Gen 8+ stub games
status: todo
type: task
created_at: 2026-02-10T08:59:02Z
updated_at: 2026-02-10T08:59:02Z
parent: nuzlocke-tracker-rzu4
---
Fill in encounter data for games that currently have null/stub seed files. These games are not covered by PokeAPI and require manual curation or an alternative data source.
## Games with null/stub data:
- [ ] Sword (null)
- [ ] Shield (null)
- [ ] Brilliant Diamond (null)
- [ ] Shining Pearl (null)
- [ ] Scarlet (null)
- [ ] Violet (null)
- [ ] Legends Arceus (null)
## Format requirements:
Each game's JSON file must follow the existing structure:
\`\`\`json
[
{
"name": "Route Name",
"order": 1,
"encounters": [
{
"pokeapi_id": 25,
"pokemon_name": "pikachu",
"method": "walk",
"encounter_rate": 10,
"min_level": 5,
"max_level": 8
}
],
"children": []
}
]
\`\`\`
## Notes:
- This is likely the largest manual task unless the "explore automated sources" task finds a viable alternative
- Depends on findings from the automated data sources task — if automation is viable, this becomes much easier
- Sword/Shield and Scarlet/Violet use open-world/Wild Area mechanics that may need special handling
- Legends Arceus has a fundamentally different encounter system (overworld encounters, alpha Pokémon, space-time distortions)
- BD/SP are remakes of Diamond/Pearl — existing D/P data could serve as a starting point

View File

@@ -0,0 +1,35 @@
---
# nuzlocke-tracker-2b4r
title: Add route ordering for Gen 5+ games
status: todo
type: task
created_at: 2026-02-10T08:58:55Z
updated_at: 2026-02-10T08:58:55Z
parent: nuzlocke-tracker-rzu4
---
Add route progression ordering in `route_order.json` for all games that currently lack it. Routes should be ordered to match the typical in-game progression (main story first, post-game after).
## Games needing route ordering:
- [ ] Diamond/Pearl (could alias to Platinum if progression is similar enough)
- [ ] Black/White
- [ ] Black 2/White 2
- [ ] X/Y
- [ ] Sun/Moon
- [ ] Ultra Sun/Ultra Moon (could alias to Sun/Moon if similar enough)
- [ ] Sword/Shield
- [ ] Brilliant Diamond/Shining Pearl (could alias to Platinum/Diamond-Pearl)
- [ ] Scarlet/Violet
- [ ] Legends Arceus
- [ ] Legends Z-A
- [ ] Let's Go Pikachu/Eevee (currently aliased to firered-leafgreen — verify this is correct)
## Approach:
- Reference Bulbapedia "walkthrough" or "appendix" pages for progression order
- Consider aliasing games that share the same region and route progression
- Mark a clear divider between main story and post-game routes where applicable
- The format is an array of route name strings in `route_order.json`, keyed by version group slug
## Notes:
- This is primarily manual work — play order guides are widely available online
- Verify route names match exactly what's in the encounter data files (case-sensitive)

View File

@@ -0,0 +1,30 @@
---
# nuzlocke-tracker-6lud
title: Audit and fix route ordering for Gen 1-4 games
status: todo
type: task
created_at: 2026-02-10T08:59:16Z
updated_at: 2026-02-10T08:59:16Z
parent: nuzlocke-tracker-rzu4
---
Review the existing route ordering for Gen 1-4 games that already have ordering defined. The current ordering may not accurately reflect typical game progression.
## Games to audit:
- [ ] FireRed/LeafGreen (and aliased: Red/Blue, Yellow, Let's Go)
- [ ] HeartGold/SoulSilver (and aliased: Gold/Silver, Crystal)
- [ ] Emerald (and aliased: Ruby/Sapphire, Omega Ruby/Alpha Sapphire)
- [ ] Platinum
## What to check:
- Routes are in correct progression order (match typical walkthrough)
- No routes are missing from the ordering
- No routes are listed that don't exist in the encounter data
- Aliases make sense (e.g. Red/Blue may have slightly different progression from FR/LG)
- Post-game areas are placed after main story areas
- Sub-areas (children) inherit parent ordering correctly
## Notes:
- Cross-reference with Bulbapedia walkthrough pages
- The Platinum ordering currently starts with cities and mines rather than the starting town/routes — this may be incorrect
- Diamond/Pearl currently aliases to nothing — check if it should alias to Platinum or needs its own ordering

View File

@@ -0,0 +1,33 @@
---
# nuzlocke-tracker-7jba
title: Review and complete special encounters for all games
status: todo
type: task
created_at: 2026-02-10T08:59:24Z
updated_at: 2026-02-10T08:59:24Z
parent: nuzlocke-tracker-rzu4
---
Audit \`special_encounters.json\` to ensure starters, gifts, fossils, and other non-wild encounters are covered for all games.
## What counts as special encounters:
- **Starters** — the three (or more) starter Pokémon choices
- **Gift Pokémon** — NPCs that give you Pokémon (e.g. Eevee in Celadon, Lapras in Silph Co.)
- **Fossils** — Pokémon revived from fossils (e.g. Omanyte/Kabuto, Lileep/Anorith)
- **In-game trades** — Pokémon received via NPC trades (if tracked)
- **Static encounters** — Legendaries, Snorlax blocking the road, Sudowoodo, etc.
- **Event-specific** — One-time encounters tied to story events
## Checklist:
- [ ] Audit Gen 1 (Red/Blue/Yellow/FR/LG) special encounters
- [ ] Audit Gen 2 (Gold/Silver/Crystal/HG/SS) special encounters
- [ ] Audit Gen 3 (Ruby/Sapphire/Emerald/ORAS) special encounters
- [ ] Audit Gen 4 (Diamond/Pearl/Platinum/BD/SP) special encounters
- [ ] Audit Gen 5 (Black/White/B2/W2) special encounters
- [ ] Audit Gen 6 (X/Y) special encounters
- [ ] Audit Gen 7 (Sun/Moon/USUM) special encounters
- [ ] Audit Gen 8+ (Sword/Shield/Scarlet/Violet/Legends) special encounters
## Notes:
- Cross-reference with Bulbapedia "Gift Pokémon" and "In-game trade" pages
- The current file appears focused on Gen 1-2 — later gens likely need additions

View File

@@ -0,0 +1,27 @@
---
# nuzlocke-tracker-q5vd
title: Explore automated data sources for encounter data
status: todo
type: task
created_at: 2026-02-10T08:58:47Z
updated_at: 2026-02-10T08:58:47Z
parent: nuzlocke-tracker-rzu4
---
Research and evaluate automated or semi-automated options for populating encounter data, especially for games where PokeAPI has no data (Gen 8+).
## Potential sources to investigate:
- **PokeAPI CSV/database dumps** — the raw data behind PokeAPI may have more than the REST API exposes
- **veekun/pokedex** — community-maintained Pokémon database with encounter data
- **Bulbapedia / Serebii** — structured wiki data that could be scraped (check terms of use)
- **pkNX / game data extraction** — tools that extract data directly from game files
- **Community GitHub repos** — search for curated encounter datasets (e.g. for romhack tools, fan wikis)
## Goals:
- Determine which games can realistically be populated via automation vs. manual entry
- If a viable source is found, prototype a script/tool to import data into the existing seed JSON format
- Document findings even if no automated approach is viable, so we know what's available
## Notes:
- The existing Go tool (`tools/fetch-pokeapi/`) could serve as a template for new data fetchers
- Output format must match the existing `{game}.json` structure (routes with encounters, children for sub-areas)

View File

@@ -0,0 +1,31 @@
---
# nuzlocke-tracker-rzu4
title: Game Data Cleanup
status: todo
type: epic
created_at: 2026-02-10T08:58:36Z
updated_at: 2026-02-10T08:58:36Z
---
Audit and fix the game seed data to ensure all supported games have accurate encounter data and correct route ordering. PokeAPI provides a solid basis for Gen 1-7, but later games (Gen 8+) have no encounter data at all (stub/null JSON files), and route ordering is only defined for Gen 1-4. This is mostly manual work, but we should explore automated/semi-automated options where possible (e.g. scraping community wikis, leveraging existing fan-curated datasets).
## Current State
### Encounter data status:
- **Complete (from PokeAPI):** Red, Blue, Yellow, FireRed, LeafGreen, Gold, Silver, Crystal, HeartGold, SoulSilver, Ruby, Sapphire, Emerald, Diamond, Pearl, Platinum, Black, White, Black 2, White 2, X, Y, Sun, Moon, Ultra Sun, Ultra Moon
- **Stub/null (no data):** Sword, Shield, Scarlet, Violet, Brilliant Diamond, Shining Pearl, Legends Arceus
- **Minimal/partial:** Omega Ruby, Alpha Sapphire (96 lines each), Let's Go Pikachu/Eevee (134 lines each), Legends Z-A (1298 lines, partially complete)
### Route ordering status (route_order.json):
- **Defined:** firered-leafgreen (+ aliases: red-blue, yellow, lets-go), heartgold-soulsilver (+ aliases: gold-silver, crystal), emerald (+ aliases: ruby-sapphire, omega-ruby-alpha-sapphire), platinum
- **Missing:** diamond-pearl, black-white, black-2-white-2, x-y, sun-moon, ultra-sun-ultra-moon, sword-shield, brilliant-diamond-shining-pearl, scarlet-violet, legends-arceus, legends-z-a
### Special considerations:
- Existing PokeAPI data may have inaccurate encounter rates or missing special encounters (gifts, fossils, starters)
- Sub-area grouping (children) may need review — some routes are split into too many/few sub-areas
- The `special_encounters.json` file handles manual additions but may be incomplete for later gens
## Approach
- Manual curation is the primary approach for most tasks
- Explore automated options: community datasets (e.g. veekun/pokedex, PokeAPI CSV data), wiki scraping, or other structured data sources
- Use the admin panel and export CLI to verify/edit data after seeding

View File

@@ -0,0 +1,27 @@
---
# nuzlocke-tracker-v5zc
title: Complete ORAS and Let's Go encounter data
status: todo
type: task
created_at: 2026-02-10T08:59:09Z
updated_at: 2026-02-10T08:59:09Z
parent: nuzlocke-tracker-rzu4
---
Omega Ruby, Alpha Sapphire, Let's Go Pikachu, and Let's Go Eevee have minimal stub data that needs to be completed.
## Current state:
- **Omega Ruby:** 96 lines (stub — likely just a skeleton)
- **Alpha Sapphire:** 96 lines (stub — likely just a skeleton)
- **Let's Go Pikachu:** 134 lines (minimal)
- **Let's Go Eevee:** 134 lines (minimal)
## Approach:
- **ORAS:** These are Gen 3 remakes. Emerald data could be used as a base, but ORAS added new areas (Mirage spots, soaring encounters), DexNav encounters, and different encounter tables. Supplement from community sources.
- **Let's Go:** These are Gen 1 remakes with simplified mechanics. FireRed/LeafGreen data could serve as a base, but encounters are different (no wild battles in traditional sense, overworld spawns). Version exclusives differ between Pikachu and Eevee versions.
## Checklist:
- [ ] Review and complete Omega Ruby encounter data
- [ ] Review and complete Alpha Sapphire encounter data
- [ ] Review and complete Let's Go Pikachu encounter data
- [ ] Review and complete Let's Go Eevee encounter data