Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Bug] Mega, GMax, Origin, and more forms are not stored in caught data #5034

Open
IBBCalc opened this issue Dec 22, 2024 · 1 comment · May be fixed by #5037
Open

[Bug] Mega, GMax, Origin, and more forms are not stored in caught data #5034

IBBCalc opened this issue Dec 22, 2024 · 1 comment · May be fixed by #5037
Labels
P3 Bug Non gameplay affecting bug. typos, graphical issues, or other minor incorrect interactions.

Comments

@IBBCalc
Copy link

IBBCalc commented Dec 22, 2024

Describe the bug

These forms are part of an ignore list during the game-data setPokemonSpeciesCaught method. This seems to be legacy code? Because the method to ignore forms from being selected on the starter screen (like Arceus, Ogerpon, Genesect) is by setting the isStarterSelectable when initializing the PokemonForm in pokemon-species.

Importance for this is that you can actually collect these forms and that trainers using these pokemon forms wont have a grey ball icon anymore.

I believe simply removing that if statement and the list would fix the bug and cause no side effects.

if (noStarterFormKeys.includes(pokemon.getFormKey())) {
  pokemon.formIndex = 0;
}
export const noStarterFormKeys: string[] = [
  SpeciesFormKey.MEGA,
  SpeciesFormKey.MEGA_X,
  SpeciesFormKey.MEGA_Y,
  SpeciesFormKey.PRIMAL,
  SpeciesFormKey.ORIGIN,
  SpeciesFormKey.THERIAN,
  SpeciesFormKey.GIGANTAMAX,
  SpeciesFormKey.GIGANTAMAX_RAPID,
  SpeciesFormKey.GIGANTAMAX_SINGLE,
  SpeciesFormKey.ETERNAMAX
].map(k => k.toString());

All the other forms not mentioned in this list work perfectly fine and are stored in the catch data.

Reproduction

Get a Palkia. Start a run with it. Get Lustrous Globe (and activate it). You will see in the setPokemonSpeciesCaught function that it specifically sets the formIndex back to 0 instead of storing the formIndex 1 to the caught data.

Expected behavior

I expect my now unlocked form to be stored as unlocked in the caught data. Like how Arceus, Ogerpon, Silvally and many others work too.

Screenshots / Videos

activating the globe
roguedex sheet that reads caught data

Session export file

Palkia_Caught_Data.txt

User data export file

data_just_after_changing_palkia_form.txt

Additional context

No response

@IBBCalc IBBCalc added the Triage The issue needs triage label Dec 22, 2024
@Snailman11 Snailman11 added P2 Bug Minor. Non crashing Incorrect move/ability/interaction P3 Bug Non gameplay affecting bug. typos, graphical issues, or other minor incorrect interactions. and removed Triage The issue needs triage P2 Bug Minor. Non crashing Incorrect move/ability/interaction labels Dec 22, 2024
@Snailman11 Snailman11 moved this from To triage to Ready in PokéRogue Bug Management Dec 22, 2024
@Snailman11
Copy link
Collaborator

Link to Discord's Bug Report (Dialga, Palkia, Enamorous forms not saved as 'caught')
https://discord.com/channels/1125469663833370665/1320502229765197945

Jimmybald1 pushed a commit to Jimmybald1/pokerogue that referenced this issue Dec 23, 2024
@Snailman11 Snailman11 moved this from Ready to In review in PokéRogue Bug Management Dec 23, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
P3 Bug Non gameplay affecting bug. typos, graphical issues, or other minor incorrect interactions.
Projects
Status: In review
Development

Successfully merging a pull request may close this issue.

2 participants