Rhythm Paradise (Rhythm Heaven Fever EU) music replacement problem

Discussion in 'Wii - Hacking' started by Axido, Mar 20, 2016.

  1. Axido
    OP

    Axido GBAtemp Fan

    Member
    474
    467
    Feb 12, 2014
    Germany
    Hey guys,

    I came up with the idea of replacing some music files in the game stated above, basically to add vocals to a few songs (meaning the length of them wouldn't change at all). What I tried was using WiiScrubber to extract the file "rev_tengoku.brsar", which contains all the background music, and replace one of the music files in BrawlBox (right-click on the file in the left column->Replace->choose .wav), save that new .brsar file and replace the old one in WiiScrubber.

    Testing the results in Dolphin I got past the safety screen showing the Wiimote and then got stuck in a loop of this pattern moving around:
    stuckscreen.jpg

    Normally it should look like this after a few seconds:
    normalscreen.jpg

    I already figured that this must be related to the altered .brsar file (duh), so I tried just exporting the original track in brawlbox and replacing it with that exported one (totally unaltered, just exported and put back into the .brsar file). After putting everything together, the result of my next test was the first image shown above...

    Now, how is it possible that replacing a file with the seemingly exact same file breaks the game?

    I would really like to make my own customized Rhythm Heaven game, so please help me out if you have any ideas. I'm also thankful for any kind of workaround to get past that screen and test if the newly added music would at least be played.

    Thanks in advance
    Axido

    Btw altering other files seems to be okay (tried adding custom text to the original .iso and it still worked fine afterwards).

    EDIT:
    Since everyone here was so helpful (*cough*), I will share what I found. It took a lot of searching to find this, so it might be a good idea to post it here.

    To replace the music properly you need to use BrawlBox to extract the .brwsd file that contains the song stored in the .brsar file that you want to replace.

    -open the .brwsd file you just extracted in another instance of BrawlBox and extract "Audio[0]" as raw data (preferably but not necessarily with the ending .rwav).
    -go back to your BrawlBox instance with the .brwsd file opened and replace "Audio[0]" with a .wav file of your choice (BrawlBox will encode it)
    -extract "Audio[0]" again as raw data (and name it something like Audio[1].rwav to not confuse it with the other one)
    -make sure your Audio[1].rwav is smaller or the same size as the Audio[0].rwav... if it's not, fiddle around with the .wav file you used to make it smaller no matter what
    -open a hex editor (like HxD) and open the .brsar file, and the two .rwav files
    -copy the header (everything above the part that starts with the word "DATA") of the first .rwav, then search for that header in the .brsar instance of the hex editor
    -put your cursor before it, so you can overwrite it from that point on later
    -select all the code from the Audio[1] instance of your hex editor and copy it (CTRL+c)
    -overwrite the part where your cursor is at in the .brsar instance (CTRL+b in HxD)
    -if there's some old code left (probably because your replacement .rwav was smaller in size than the code you wanted to overwrite) put some 00 there until the header of the next file in the .brsar starts
    -save it, put the new .brsar into the .iso or whatever and watch the magic happen

    This also works for a good amount of other games (and that's how I found out about it).
    I hope, this will be useful to someone in the future.
     
    Last edited by Axido, Mar 21, 2016
  2. DoctorMario606

    DoctorMario606 Member

    Newcomer
    31
    2
    Jan 2, 2017
    United States
    Hey um can you help me? I just found this guide, so i followed it but when i put the song in the game the song was playing on 2 different audion channels and were desynced what do i do?