Skip to content

FRLG Living Dex helper methods - #1808

Merged
Mysticial merged 2 commits into
PokemonAutomation:mainfrom
Dalton-V:frlg-living-dex-helper
Nov 6, 2026
Merged

Mysticial merged 2 commits into
PokemonAutomation:mainfrom
Dalton-V:frlg-living-dex-helper

Conversation

@Dalton-V

@Dalton-V Dalton-V commented Nov 1, 2026 •

Copy link
Copy Markdown
Member

Splitting the FRLG Box Sorter PR - 9

Helper methods for sorting the living dex

Similar to previous Box Organization helper methods. These will be used in a new Living Dex Sorter program as well as test classes.

@Dalton-V Dalton-V changed the title Living dex helper methods FRLG Living Dex helper methods Nov 1, 2026
@Dalton-V
Dalton-V force-pushed the frlg-living-dex-helper branch from 8f0a3f5 to edf5d45 Compare November 5, 2026 13:47
@Dalton-V
Dalton-V marked this pull request as ready for review November 5, 2026 13:52

@pa-devbot pa-devbot left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

AI review: Reviewed against the intended usage in #1614 (PokemonFRLG_BoxSorterLivingDex + BoxSorter_Tests).

Verification

  • Built the branch (CMake+Ninja like CI): compiles cleanly.
  • Full command-line test suite: 20,335 passed, 0 failed.
  • JSON keys natID/slug/has_gender_difference match the Pokemon HOME living dex template convention, and the "-male"/"-female" slug-suffix gender check matches PokemonHome_BoxSorterLivingDex::is_viable_for_dex. FRLG's scan_box_data does populate dex_number (National Dex via SLUGS_TO_NATIONAL_DEX), gender, and shiny, so is_viable_for_dex has the data it needs.
  • make_living_dex_order logic checks out: it never drops Pokemon (template slots + extras always fit unless the overflow error fires, which is reachable: a nearly full box with shiny_dex and no shinies makes every Pokemon an extra, and the non-template slots can be fewer than the Pokemon count). Running it on already-organized boxes yields an empty plan, so it's idempotent.
  • NATIONAL_DEX_SLUGS().at(nat_id - 1) in make_missing_living_dex_report is safe because the loader bounds natID to 1..386.

No blockers; two minor items below.

@Mysticial
Mysticial merged commit 56b6d24 into PokemonAutomation:main Nov 6, 2026
7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants