Emulator Issues #12965
openPokémon Battle Revolution breaks if running via DirectoryBlob.
0%
Description
Game Name?
Pokémon Battle Revolution
Game ID? (right click the game in the game list, Properties, Info tab)
RPBE01
MD5 Hash? (right click the game in the game list, Properties, Verify tab, Verify Integrity button)
95a1a518cbec79fa217319e235cf31d7
What's the problem? Describe what went wrong.
Game softlocks when starting a battle if it's running via DirectoryBlob. Running directly from the ISO/RVZ works fine.
What steps will reproduce the problem?
- If you don't have a save use the attached one, starting from scratch in this game takes forever.
- Extract the entire disc via Properties -> Filesystem.
- Run the extracted main.dol
- Start the game
- -> Colosseum Mode
- -> Continue
- -> File 1
- -> Battle (top-right icon)
- -> Colosseum Battle
- -> Main Street Colosseum
- -> Challenge
- -> Confirm
- -> Pick any battle pass
- -> Use this pass
- -> Pick any 3 Pokémon
- -> Start the battle
- Observe softlock.
If you do the same with the unextracted ISO/RVZ, it continues fine.
Is the issue present in the latest development version? For future reference, please also write down the version number of the latest development version.
5.0-16713
Is the issue present in the latest stable version?
Don't know.
If the issue isn't present in the latest stable version, which is the first broken version? (You can find the first broken version by bisecting. Windows users can use the tool https://forums.dolphin-emu.org/Thread-green-notice-development-thread-unofficial-dolphin-bisection-tool-for-finding-broken-builds and anyone who is building Dolphin on their own can use git bisect.)
Haven't bisected.
Files
Updated by AdmiralCurtiss over 2 years ago
This appears to be a data-on-disc alignment issue. If I force the alignment to 1MB (instead of our default 32KB) it works -- anything lower (in power of 2 steps, anyway) fails. What the heck?
Updated by AdmiralCurtiss over 2 years ago
Yeah I think this game is just super strict about its file system. There's a handful of files that on the original disc are placed near the start of the partition when everything else is placed -- like Wii games usually do -- near the end of the partition/disc to get a free CAV speed bonus. This seems extremely unusual, I suspect they're doing some wild nonsense with how they're reading those files. I think the only good way we have to 'fix' this is to implement a thing where we try to keep the original file offsets as best as possible when building an FST for a DirectoryBlob...