Skip to content

Let a Red/Blue save choose its cartridge - #60

Open
gui-camargo wants to merge 1 commit into
sofianeelhor:mainfrom
gui-camargo:feat/gen1-cartridge-choice
Open

gui-camargo wants to merge 1 commit into
sofianeelhor:mainfrom
gui-camargo:feat/gen1-cartridge-choice

Conversation

@gui-camargo

Copy link
Copy Markdown

Closes #53.

Red, international Blue, Japanese Green and Japanese Blue write the same file, so PKHeX keeps them as one group (RB). The shelf showed that group as a single cartridge, using the lumped Green art. Yellow was already its own save and stays that way.

Rename only changes the display name. The suggestion in that dialog comes from the file name, not from the save, and it does not set the cartridge art, the second-screen logo, or the origin recorded when a Pokémon is transferred. This uses the existing Set game path, the same one FireRed/LeafGreen and Ruby/Sapphire already use.

On the first open, the save asks which cartridge it is: Red, Blue (INT), Green (JP), or Blue (JP). Set game offers the same four, plus a Red/Blue-based ROM hack. Until a cartridge is chosen, the shelf keeps the G1 badge instead of the lumped Green art. After the choice, the shelf and the second screen use that cartridge's art. The choice is stored with the save and applied again the next time it is opened. The file on disk is not rewritten.

A transfer records the chosen game as the Gen 1 origin. Two limits come from PKHeX, not from the shelf:

  • Blue (INT) and Green (JP) are the same version id (GN). The shelf can show either cartridge. The origin string on a transfer is the shared name, "Blue [INT]/Green [JP]".
  • Blue (JP) is recorded as Japanese Blue only when the Pokémon itself is Japanese. On an international Pokémon, PKHeX writes the origin as Red.

Opening a Yellow save now records Yellow as the transfer origin. Before this, that origin fell back to Red.

Checked on an AYN Thor with a RetroArch Pokémon Blue (INT) save: it opens as that cartridge, under its own name, instead of the lumped Red/Blue group. The shelf in the photo also shows Yellow and Red as their own cartridges, and the lower screen is the Red logo.

AYN Thor: Yellow, Red and Blue (INT) as separate cartridges. The lower screen is the Red logo.

Tests: SaveIdentity (30) and GameIdentification (27), including the four cartridges, file names that must not count as a choice, and the origin stamped on open.

Red, international Blue, Japanese Green and Japanese Blue are one save,
so the shelf showed a single lumped cartridge. The player picks once,
the same way FireRed/LeafGreen and Ruby/Sapphire already work. The
shelf uses that cartridge's art, and a transfer records that origin.
The file on disk is not rewritten. Rename still only changes the
display name.
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.

[Feature Request] Allow "Set game…" for Gen 1 Red/Blue (currently shows as generic RB)

1 participant