Files
nuzlocke-tracker/.beans/nuzlocke-tracker-4ni4--fix-seed-data-with-encounter-conditions.md
Julian Tabel 7df56325a8
All checks were successful
CI / backend-lint (push) Successful in 9s
CI / actions-lint (push) Successful in 15s
CI / frontend-lint (push) Successful in 20s
Add per-condition encounter rates to seed data (#26)
Co-authored-by: Julian Tabel <juliantabel.jt@gmail.com>
Co-committed-by: Julian Tabel <juliantabel.jt@gmail.com>
2026-02-17 19:38:29 +01:00

2.2 KiB

title, status, type, priority, created_at, updated_at, parent
title status type priority created_at updated_at parent
Fix seed data with encounter conditions completed task high 2026-02-17T07:37:25Z 2026-02-17T17:52:29Z oqfo

Context

Some Pokémon games have different encounter tables depending on time of day, weather, season, or special mechanics (SOS calls in Sun/Moon). A proof-of-concept exists on branch feature/encounter-conditions that adds the backend/frontend infrastructure for encounter conditions (a condition field on RouteEncounter, seed loader support for a conditions dict, frontend condition selector and badges). However, the actual seed data has not been updated with real condition data yet.

The existing seed data has curated route ordering and normalized route names (from beans r48e, qvww, j28y) that must be preserved — only encounter condition data should be added/changed.

Checklist

Infrastructure (merge from PoC)

  • Merge backend model + migration for condition field on RouteEncounter
  • Merge seed loader changes to handle conditions dict format
  • Merge API/schema changes to expose condition field
  • Merge frontend type updates (RouteEncounter.condition)
  • Merge frontend UI (condition selector tabs/badges in EncounterModal)
  • Add horde/SOS method badges to EncounterMethodBadge
  • Add condition column to AdminRouteDetail

Import tool updates

  • Update tools/import-pokedb to extract per-condition rates instead of flattening to max()
  • Fix encounter method mappings (horde, SOS as distinct methods)
  • Write merge script (tools/merge-conditions.py)

Seed data updates

  • Gen 2: Gold, Silver, Crystal (morning/day/night)
  • Gen 4: HeartGold, SoulSilver, Diamond, Pearl, Platinum, Brilliant Diamond, Shining Pearl (morning/day/night)
  • Gen 5: Black, White, Black 2, White 2 (spring/summer/autumn/winter)
  • Gen 7: Sun, Moon, Ultra Sun, Ultra Moon (day/night)
  • Gen 8: Sword, Shield (weather conditions)
  • Verify all hooks pass (prek run --all-files)

Notes

  • X/Y had no condition data in PokeDB (horde encounters already tracked as separate method)
  • 5,684 encounters updated across 22 games