Emulator Issues #10128
openJust Dance 2/3/4 issues with multiple DLC songs
0%
Description
Big issue report incoming!
Game Name?
Just Dance 2
Just Dance 3
Just Dance 4
Game ID?
SD2Y41
SJDY41
SJXE41
MD5 Hash?
None of my MD5 hashes will match good dumps as I scrubbed the ISOs, but all of them passes in Dolphin's built-in Partition Integrity Check.
What's the problem? Describe what went wrong.
The mentioned games have weird issues if you have more than 11 DLC songs on the NAND dump at the same time. What will happen varies depending of the game, but the three basically won't play some of those DLC songs and will end throwing infinite "Invalid read/write from 0xXXXXXXXX, PC=0xXXXXXXXX" at some time:
Just Dance 2: The preview in the track selection menu won't play for any of the DLC songs, regardless of how many songs you have on the NAND. If you have more than 11 DLC songs, the song you selected might start throwing "Invalid read/write from 0xXXXXXXXX, PC=0xXXXXXXXX" upon starting the song. If you disable Panic Handlers, Dolphin won't crash and the game will just be there sitting at the start of the DLC song (as if it were paused at 0:00). Sometimes you'll also hear a high pitched, continuous sound, or the game might simply keep repeating the last SFX played indefinitely. You can still pause and go back to the main menu to select another song when that occurs.
Just Dance 3: if you have more than 11 DLC songs it'll start throwing "Invalid read/write from 0xXXXXXXXX, PC=0xXXXXXXXX" as soon as you hover over some of the DLC songs in the track selection menu. If you disable Panic Handlers, the game will completely freeze with FPS 0/VPS 60 when you hover one of these DLCs that causes the Panic Alerts and the only thing you can do is force stopping the emulation (graceful shutdown won't work either after the game freezes).
Just Dance 4: if you have more than 11 DLC songs it'll start throwing "Invalid read/write from 0xXXXXXXXX, PC=0xXXXXXXXX" as soon as you hover over some of the DLC songs in the track selection menu. If you disable Panic Handlers the game won't crash, it just won't play the preview of the DLCs that causes the Panic Alerts but you can select that song and play it anyway, and although the lyrics, pictograms and background animations/effects will show and animate normally, the dancers won't appear and the music won't play. You can still pause and go back to the main menu or jump directly to another song from the pause menu when that occurs.
What steps will reproduce the problem?
You just need to have a NAND dump with more than 11 DLC songs for any of the mentioned games to trigger the issue, and it doesn't need to be a complete NAND dump (e.g. manually copying only the ticket and the DLC contents -- 00000001.app, 00000002.app, etc -- to the proper location is enough).
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?
I tested current and previous stable releases (3.0, 3.5, 4.0.2 and 5.0) and the current development build (5.0-2668) and all of them exhibits this issue.
What are your PC specifications?
CPU: Intel Core i7-3630QM @ 2.4GHz
GPU: NVIDIA GeForce GT 635M @ 2GB GDDR3
RAM: 8GB @ DDR3-1600 (2x4GB)
OS: Windows 10
Is there any other relevant information? (e.g. logs, screenshots,
configuration files)
That's something I've been trying to debug for a while, and those are my findings:
-
I didn't notice anything relevant to this issue in the Dolphin log when triggering the problem.
-
By messing with the DLC files on the NAND, I noticed all of the three games can play all of the DLCs fine, the issue only occurs if you have more than 11 DLCs at the same time and even then, some will still play normally while others will just trigger the issue.
-
The song(s) that will trigger the issue varies depending of the number of DLCs you currently have on the NAND. For example, if I have 12 DLC songs, on the track list the 3rd DLC listed here will always cause the issue, but if I put more DLC songs (e.g. 14) the 3rd DLC which would previously trigger the issue will now work fine and the 7th DLC listed on the track list which previously worked (when I had 12 DLCs) will trigger the issue now. I don't know if there's a pattern between the number of the DLC songs vs the DLC which will trigger the issue, at least I couldn't find. Depending of the number of DLCs, more than one song will trigger the issue too.
-
On the NAND, all .app files for those games are U8 packed files (except for one I'll talk below) and are stored on a different folder on the NAND (e.g. normal Wii save files generally goes to User\Wii\title\00010000<game ID in hex>, the DLCs from those games goes to User\Wii\title\00010005<game ID in hex starting with 7>)
-
If there's no ticket corresponding the ID the games use for DLC (73443245 for Just Dance 2, 734a4445 for Just Dance 3 and 734a5845 for Just Dance 4, for example) inside User\Wii\ticket\00010005, the games won't "see" any DLC song, even if they're on the correct folder.
-
You can swap DLCs by putting/removing .app files from the previously mentioned NAND folder directly. I'll detail this below.
-
Every song correspond to an specific .app file (you can move these in and out freely and the game will reflect that only showing the songs from the files which are there), but you'll also have other two smaller .app files which doesn't map to any song.
-
The first .app file which doesn't map to any song is a very small .app file (around 20 to 30 kb). It's the only .app file which is not an U8 packed file, from a quick look through a hex editor it seems to store some kind of "metadata" for the DLC songs (you can read strings with the song names and some kind of timestamp, like "sD2E_v7_26dlcs.1103301553"). I didn't notice any difference in the game after I moved this file in or out of the NAND, all DLCs still played normally as long as you didn't have more than 11 on the NAND at the same time.
-
The second small .app file (of around 2 to 3 MB) is an U8 packed file just like the others and seems to be some sort of "catalog" of all available DLCs, as I found small preview tracks for all the DLC songs when I unpacked it, even of DLCs I don't have. Also, the game complains that the DLCs are corrupted and you need to go to the Wii Shop to redownload them if you move this file out of the NAND and boot any of the three games.
-
With that findings, it's possible to create "DLC packs" and it's what I did as workaround. Basically, I created multiple "content" folders inside User\Wii\title\00010005<game ID in hex> (e.g. content_a, content_b, etc). On each content folder you must have a copy of title.tmd, the "catalog" .app file and up to 11 of the bigger .app files (each one corresponds to a song, remember?). Having the smaller .app file which seems to store metadata seems irrelevant, I didn't notice anything different by having it there or not. Even without it, you're still limited to only 11 DLCs, if you put more you trigger this issue. To switch the "packs", just rename the one you want to play to "content" and boot the game.
-
Probably not relevant, but if you play a DLC song then swap to another pack without it then switch back to the previous pack which had it, your high scores will still be there.
-
Deleting/Moving the song to the SD Card from the "Archives" menu in-game does nothing. It'll claim the song was deleted/moved successfully but it'll still be there as if nothing happened.
-
This one applies only to Just Dance 2014 and onwards (they switched to a new engine AFAIK) but might be relevant: JD2014 and 2015 doesn't suffer from this issue and you can have more than 11 DLC songs without any kind of issue -- for record I have 18 DLC songs on JD2014 and 15 on JD2015 -- but I noticed both JD2014 and 2015 lists all DLCs, even the ones I don't have on their "Archives" menu, but they don't appear on the track selection (probably a different issue). Also, on the NAND there's no "catalog" file anymore (the small .app file with preview music for the DLCs the previous Just Dance games had and complained if it wasn't there), that info seems to be stored directly on the big .app file of the actual song now (and every song has a copy of the info of all other DLC songs too -- IDK why). The smaller .app which apparently stores metadata is still there, though, and just like before, deleting it makes no visible difference in the game. Moving files in and out of the NAND doesn't affect anything, all songs (even the ones I don't have) will still appear in the "Archives" in-game menu, but not in the song selection menu. JD2016 and 2017 uses the same engine and probably have this same behavior but we'll never know as they don't have a DLC store following the Nintendo WFC shutdown...