TASEmulators / TASEmulators/BizHawk

Pokemon Emerald wont open

Open
#4,625 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

App: EmuHawk Repro: Affects 2.11
Dominant language
C#
Stars
2.8k
Forks
468
PR merge metrics
No merged PRs in 30d

Description

Summary

Playing an archipelago with friends. My game was Pokemon Emerald and was having no issues until i saved over my save file and now the game wont open at all.

Output
System.IndexOutOfRangeException: Index was outside the bounds of the array.
   at BizHawk.Client.Common.SaveSlotManager.HasSlot(IEmulator emulator, IMovie movie, Int32 slot, String savestatePrefix) in /src/BizHawk.Client.Common/SaveSlotManager.cs:line 42
   at BizHawk.Client.EmuHawk.MainForm.HasSlot(Int32 slot) in /src/BizHawk.Client.EmuHawk/MainForm.Events.cs:line 54
   at BizHawk.Client.EmuHawk.MainForm.LoadRomInternal(String path, LoadRomArgs args, Boolean& failureIsFromAskSave) in /src/BizHawk.Client.EmuHawk/MainForm.cs:line 3876
   at BizHawk.Client.EmuHawk.MainForm.LoadRom(String path, LoadRomArgs args, Boolean& failureIsFromAskSave) in /src/BizHawk.Client.EmuHawk/MainForm.cs:line 3608
   at BizHawk.Client.EmuHawk.MainForm..ctor(ParsedCLIFlags cliFlags, IGL gl, Func1 getConfigPath, Func1 getGlobalConfig, Action`1 updateGlobalSound, String[] args, IMovieSession& movieSession, Boolean& exitEarly) in /src/BizHawk.Client.EmuHawk/MainForm.cs:line 695
   at BizHawk.Client.EmuHawk.Program.SubMain(String[] args) in /src/BizHawk.Client.EmuHawk/Program.cs:line 348
Host env.

-Bizhawk 2.11

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reading SaveSlotManager.HasSlot in BizHawk.Client.Common/SaveSlotManager.cs at line 42, then follow the MainForm.HasSlot and LoadRomInternal callers named in the stack trace. Reproduce the Pokemon Emerald load failure if possible and determine what behavior is expected when the save slot data is invalid; done means loading the game no longer throws this IndexOutOfRangeException.

Written by the indexing model from the issue text.

Assessment

Tech stack
csharp
Domain
desktop
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.