Project

General

Profile

Emulator Issues #9496

Using savestates with Metroid Prime 3 crashes Dolphin (again)

Added by locutus over 4 years ago. Updated over 4 years ago.

Status:
Fixed
Priority:
Normal
Assignee:
-
% Done:

0%

Operating system:
N/A
Issue type:
Bug
Milestone:
Regression:
No
Relates to usability:
No
Relates to performance:
No
Easy:
No
Relates to maintainability:
No
Regression start:
Fixed in:

Description

Game Name?

Metroid Prime 3: Corruption

Game ID? (right click the game in the game list, properties, info tab)

RM3E01

MD5 Hash? (right click the game in the game list, properties, info tab, MD5 Hash: Compute)

84f9cfd24681390997a31f871278e8f3

What's the problem? Describe what went wrong.

According to the wiki page, savestates work from Dolphin 4.0-5615 onward. I've done a great deal of testing and have confirmed that they did appear to work for quite a while (with one caveat that I will describe later), but they stopped working again in starting in version 4.0-6970 and remain broken through 4.0-9237 (the latest version available when I logged this). See reproduction steps for details.

What steps will reproduce the problem?

These steps are quick to follow and always cause a crash starting with Dolphin version 4.0-6970.

Error 1

  1. Start Dolphin, and start Metroid Prime 3
  2. As soon as you reach the title screen, create a savestate
  3. Restore the savestate you just created
  4. Close the emulation window (but not Dolphin itself)
  5. Restart Metroid Prime 3. A series of error dialogs will appear, and the game will finally crash.

The very first error message appears to always be this:

error_msg_1.jpg

I don't claim to be familiar with the dolphin codebase at all, but the description on this pull request and the first error dialog look related to me.

The dialogs after this point are different. Here is a sample from one particular round:

error_msg_2.jpg

When I get a dialog like this one, I click no:
error_msg_3.jpg

After I click no, Dolphin crashes:
error_msg_4.jpg

Error 2

  1. Assuming you have an existing savestate, completely restart Dolphin, and start Metroid Prime 3
  2. Restore the save state
  3. Wait a few seconds. (Attempt to play the game). Before long (if not immediately), an error dialog will pop up, but this time, it is not the "could not create new file" message, but an "invalid read" message (just like one of the above dialogs). These messages keep popping up until Dolphin finally crashes.

Which versions of Dolphin did you test on? Does using an older version of Dolphin solve your issue? If yes, which versions of Dolphin used to work?

All versions I tested prior to 4.0-6970 did not display this behavior.

  • 4.0-5616
  • 4.0-5809
  • 4.0-6820
  • 4.0-6928
  • 4.0-6955
  • 4.0-6965
  • 4.0-6970 <-- The error being described in this issue starts happening here
  • 4.0-6972
  • 4.0-6982
  • 4.0-7034
  • 4.0-8833
  • 4.0-8992
  • 4.0-9103
  • 4.0-9224
  • 4.0-9237

What are your PC specifications? (CPU, GPU, Operating System, more)

  • Windows 10 Pro 64 bit
  • Intel Core i7-2600K CPU @ 3.4 GHz
  • 16GB RAM
  • nvidia GeForce GTX 770 with 2GB RAM
  • real wiimote connected via a MayFlash DolphinBar

Is there any other relevant information? (e.g. logs, screenshots,
configuration files)

I mentioned a "caveat" above. Here are the details (and an explanation of why I haven't logged a second issue).

  • On the versions of Dolphin that don't crash, savestates appear to work fine within a single session of playing. For example, this works just fine: start Dolphin, start Metroid Prime 3 from one of the game's native save points, and then create and restore savestates during that session.
  • If I stop the game and start it again, and attempt to load a savestate I made during a previous session, the game acts like buttons on the nunchuck are stuck. Samus walks by herself, turns into a morphball and rolls in a circle, etc. I can press buttons and they do things, but the game is not playable as the erratic behavior will not stop.
  • On the dolphin versions that actually crash, I have once or twice seen the game actually start for a second or 2 after restoring a savestate. Prior to crash, Samus begins moving erratically.

I think once whatever is causing the crash is resolved, this behavior will still be a problem. I haven't logged another issue for this, because at the moment savestates completely crash, so you can only reproduce it on a dolphin version that is over a year old. I'm not sure if it possibly is possibly related to the fact that I am using a DolphinBar. (I don't currently own a bluetooth dongle to try another way of connecting).

error_msg_2.jpg (15 KB) error_msg_2.jpg locutus, 04/25/2016 03:11 AM
error_msg_1.jpg (15.4 KB) error_msg_1.jpg locutus, 04/25/2016 03:11 AM
error_msg_3.jpg (17.8 KB) error_msg_3.jpg locutus, 04/25/2016 03:11 AM
error_msg_4.jpg (17.9 KB) error_msg_4.jpg locutus, 04/25/2016 03:11 AM
5371
5372
5373
5374

History

#1 Updated by phire over 4 years ago

  • Status changed from New to Accepted

Confirmed,

I suspect this really doesn't count as a regression.

#2 Updated by phire over 4 years ago

Could someone track down the exact build where save states started working the first time?

The wiki is vague (just a casual report that they happen to be working now) and 4.0-5615 isn't even a valid dolphin build.

#3 Updated by locutus over 4 years ago

I tested on 4.0-3870 and savestates seem to work (and the "caveat behavior" I described is exactly the same as well). I'll test more as I have time but I though I'd mention this in case someone else happens to start looking in the mean time.

#4 Updated by JMC4789 over 4 years ago

We fuck up with games that use ES_Launches and savestates. I think we just need a global issue for that. This isn't a regression or anything, you can fuck up the behavior a ton more ways than the one you found. There's a bigger underlying bug.

#5 Updated by JMC4789 over 4 years ago

Err, I used the Trilogy Version, which has multiple ES_Launches. Mario Kart Wii also does this though, and that's a single game, so I assume it's the same bug.

#6 Updated by phire over 4 years ago

  • Status changed from Accepted to Fix pending

Fixed in PR 3798

#7 Updated by parlane over 4 years ago

  • Status changed from Fix pending to Fixed

Also available in: Atom PDF