Project

General

Profile

Actions

Emulator Issues #9570

closed

Donkey Kong Country Returns - Clear Minigame / Stage Freeze

Added by Admentus almost 8 years ago. Updated almost 8 years ago.

Status:
Fixed
Priority:
High
Assignee:
% Done:

0%

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

Description

Game Name?

Donkey Kong Country Returns

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

SF8E01

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

df3f2e48df32519c193f1eafeb965caf

What's the problem? Describe what went wrong.

The issue has so far only been encountered in World 1-5 Canopy Cannons. Levels 1-1, 1-2 and 1-3 did not have this issue. More levels have not been tested yet.
When collecting the puzzle piece in the 30 seconds minigame (where uou have to collect all bananas and coins by shooting through barrels) or when completing the level through the finish barrel the game freezes. Donkey Kong performs a victory animation when winning a minigame or completing a level. At the end of that animation scene (which shows your obtained collectables) the game freezes.

It is expected that a translation back to the stage or stage selection is preformed, which happens through another animation. This screen translation animation does not occur and the game freezes instead. No settings were changed while testing several builds. The freezing issue still occurs on the latest development build. I can confirm that 4.0-9267 works without this issue. Since 4.0-9269 and past the freeze occurs.

What steps will reproduce the problem?

  1. Start the game.
  2. Enter level 1-5 Canopy Cannons.

3a. Proceed halfway the level and enter the underground area to do the barrel jumping minigame.
4a. Proceed as usual by collecting all bananas and coins, making the puzzle piece appear.
5a. Collect the puzzle piece. The victory animation occurs showing your collectables, the level transition animation does not occur and the game freezes instead.

3b. Proceed to the end of the level.
4b. Jump in the finish barel to complete the level, The victory animation occurs showing your collectables, the level transition animation does not occur and the game freezes instead.

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?

4.0-9394 is the last version that worked with out freezing issue.
It last worked on: 4.0-9267. The freezing occurs since: 4.0-9269.
Request 3791 for 4.0-9269 states: "Use CoreTiming for MemoryWatcher."

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

CPU: Intel Core i5-4430 @ 3.0GHz 3.0GHz.
GPU: Nvidia GTX 960, 4 GB VRAM.
RAM: 16 GB, DDR3 1600MHz.
Operating System: Windows 10 x64

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

The attached screenshot shows the exact point of the freeze during collecting the puzzle piece from the minigame in World 1-5.
No AR / Gecko codes were used. Game ini and properties are default settings.

Settings:
CPU Clock Override disabled (100%). Dual Core and Idle Skiping are enabled. JIT recompiler.
English Wii system language with 16:9 Aspect Ratio.
HLE audio, OpenAL with Dolby Pro Logic II decoder and 2 latency.
Direct3D 12 (the issue also occurs on different backends such as OpenGL).
1920x1080p fullscreen resolution. Stretch to window. 3x internal resolution and 16x anisotropic filtering.
Checked: Render to Main Window, Scaled EFB Copy, Per-Pixel Lightning, Force Texture Filtering, Ignore Format Changes, Store EFB Copies to Texture Only, Disable XFB, Fast Depth Calculation, Disable Bounding Box, Progressive Scan and Borderless Fullscreen.
Texture Cache set to Fast.


Files

DKCR Freeze.jpg (121 KB) DKCR Freeze.jpg The exact point of the freeze during collecting the puzzle piece from the minigame in World 1-5. Admentus, 05/25/2016 12:55 PM
Actions #1

Updated by JosJuice almost 8 years ago

  • Milestone set to Current
  • Regression changed from No to Yes

I don't know how 4.0-9269 could've made this happen, but I'm marking the issue as Current for now, because this is a regression we don't want to ship 5.0 with.

Actions #2

Updated by Admentus almost 8 years ago

Ignore the text line "4.0-9394 is the last version that worked with out freezing issue."
I don't know why I wrote that. 4.0-9394 must be 4.0-9267 as stated in the next line.

Actions #3

Updated by degasus almost 8 years ago

I'm pretty sure this commit has no effect on emulation by default. Might you double check which commit broke it?

Actions #4

Updated by Admentus almost 8 years ago

Hmm... Ok, So I double checked the following builds:

4.0-9267, 4.0-9269, 4.0-9271, 4.0-9273 and 4.0-9277.
The weird thing is that 4.0-9267 suddenly didn't crash for once, but I ran it again and it crashed again.
4.0-9269 also crashed again, and 4.0-9271 seemed to work again?

Honestly, I wouldn't know anymore from which version it went exactly wrong.
I think I understand what I did different. I think the issue lies at using save states.
So I enabled a Gecko Code for freezing the 30 seconds timer (I don't make it in time otherwise without any form of aid) and didn't use any save states at all. Now it works.
Afterwards I tried to do the same without a safe state in the entire playing session on the latest development build (4.0-9392). Again, there are no issues entering and exiting between screens. As soon as I reload a save state switching a screen causes a freeze again.

I made a save state prior to entering the minigame cave. Entered the minigame cave without issue and reloaded the save state because I messed up the minigame, suddenly the game starts to crash every time I am entering the minigame cave with a crackling noise sound (at the point that the screen transistion animation should occur, which is exact the same freezing issue mentioned in the bug report). I tried that in 4.0-9269.

Actions #5

Updated by Admentus almost 8 years ago

I have been trying to do the exact same procedure as mentioned in my previous post for other stages. It seems the issue is global for all stages. Not only World 1-5.

Reloading a safe state causes screen transistions to freeze.

Actions #6

Updated by JMC4789 almost 8 years ago

Works fine here. 4.0-9390. Just collected most of the bonus minigames in world 1, including 1-5.

Actions #7

Updated by Helios almost 8 years ago

Maybe get somebody with maxwell to test? That's the only configuration difference I can see with JMC and OP.

tbh, I don't know how the GPU would be related though.

Actions #8

Updated by Admentus almost 8 years ago

Ok, so I tried the following procedure:
Start level 1-1.
Do a save state directly.
Do the save state 2 seconds later.
Enter Donkey's banana cave.
Freeze.

If no save state is loaded no freeze occurs. Creating a save state is not harmful, only loading.

This occurs on 4.0-9257, but not on 4.0-9240 yet. The issue must be in 4.0-9257 or between 4.0-9240.

Actions #9

Updated by JMC4789 almost 8 years ago

So, it's a savestate issue? We're pretty aware that savestates can break things.

Actions #10

Updated by Admentus almost 8 years ago

I meant to say, "load the save state 2 seconds later". The Save state is created a second after Donkey gains control when landing on the ground after smashing the enemy out of his hut.

Actions #11

Updated by Admentus almost 8 years ago

Yes, I guess it is an save state issue then. Sorry for the trouble. I did not think of that first when creating this issue. I was not really aware I did that :(

Actions #12

Updated by JMC4789 almost 8 years ago

No, savestate issues are still important. Please try to find out what build broke them!

Actions #13

Updated by Admentus almost 8 years ago

4.0-9254 still works. So the issue for me starts since 4.0-9257.
The commit states: "Fix handling of Wii NAND's /tmp directory during savestate loads."

Actions #14

Updated by Helios almost 8 years ago

Question, did you use my bisector utility to get that original build you thought broke it?

Actions #15

Updated by JMC4789 almost 8 years ago

  • Status changed from New to Accepted
  • Assignee set to phire
  • Priority changed from Normal to High

Good catch!

Actions #16

Updated by Admentus almost 8 years ago

No I did not, I could try that. Where do I find that utility tool?

Actions #17

Updated by Helios almost 8 years ago

Don't. Yet anyways. I was wondering simply because in it's current release there's a bug that can possibly give you a bad build number that it claims breaks your issue.

Actions #18

Updated by seapancake almost 8 years ago

Can definitely confirm, Amentus isn't going crazy.

  1. Played new game in 4.0-9399
  2. Saved before bonus cave (Level 1-1)
  3. Entered bonus cave and jumped off edge, waited until summary screen
  4. Loaded save and went into cave, game freezes just as Donkey goes below screen edge and can hear buzzing

Core i7-6700k @ 4Ghz
Windows 10 64bit
Geforce GTX 970 368.22
16GB DDR4
Default settings

First time I tested I accidentally 4.0-5026 and that worked without any issue.

Actions #19

Updated by phire almost 8 years ago

So... based on the bisect, this is possibly something to do with file handles not being saved-stated correctly.

I'll try to find some time to look into it later.

Actions #20

Updated by phire almost 8 years ago

  • Status changed from Accepted to Fix pending

Fixed by PR 3867

Actions #21

Updated by JosJuice almost 8 years ago

  • Status changed from Fix pending to Fixed
Actions

Also available in: Atom PDF