Thread: Research: ds music discovery
View Single Post
Old July 5th, 2011 (8:48 AM). Edited July 5th, 2011 by Team Fail.
Team Fail's Avatar
Team Fail Team Fail is offline
fun in the sun
Platinum Tier
Join Date: May 2009
Location: yes
Age: 20
Gender: Male
Nature: Brave
Posts: 11,105
Originally Posted by 3dd13 View Post
so basically the soundbank has a almost immediate release time making that bend stlye. it isnt something the midi does and to get it in a soundfont you will literally have to take hours perfecting it and tweaking it. again, something that just shows how much time and effort is spent making the games. im researching how to make custom soundbanks, but it isnt going well. may just stick to gba hacking for now.
Actually, it's already been done. From Credits to Orengefox.

The sound effects you hear in NSMB DS comes from an *.swav file. Recall in the last section that an *.swav file is basically a *.wav file but in a format that can work for the game. This kind of file can normally be found in a *.swar file which is located in the Wave Archive folder of the sound_data.sdat file using the NDS Editor. A *.swar file is a lot like a *.rar file. It usually carries more than one *.swav file. Hence why you tend to see more than one *.wav file after you’ve extracted all the *.swav data from out of an *.swar file then converted it into a *.wav file using any hacking tool. Please refer to the following link for more information on what a *.swav/*.swar file is. Now that you know what *.swav/*.swar files are, you can now read up on what’s possible to hack.

A. Replacing/Swapping *.swav files in a *.swar file

Before you continue reading; here’s a list of what I used for this technique:
NSMBe5.exe – NSMB Editor 5
Editor.exe – NDS Editor 0.1
Swav2Swar – Conversion Tools
The modified sound_data folder used for the NDS Editor

Say you wanted to change the sound Mario makes when shot from out of a warp/pipe canon to the sound Wario makes after being squashed by a Thwomp in Super Mario 64 DS. Here’s what you would have to do:

Step 1:

Let’s say you already know which files to look for. Case in point, the sound file for Mario’s voice when shot from out of a warp/pipe canon is the “WAVE_MARIO_BASE_SE_000.swav” file (or “WAVE_MARIO_BASE_SE_214.swav” file if extracted using the NDS Editor) which is in the “WAVE_MARIO_BASE_SE.swar” file (located in the “Wave Archive” folder within NSMB DS’ sound_data.sdat file); and the sound file for Wario’s voice after being squashed by a Thwomp is the “NCS_WAVE_SE_VOICE_WARIO_MG_004.swav” file (or “NCS_WAVE_SE_VOICE_WARIO_MG_240.swav” file if extracted using the NDS Editor) which is in the “NCS_WAVE_SE_VOICE_WARIO_MG.swar” file (located in the “Wave Archive” folder within SM64DS’ sound_data.sdat file).

Load up both NSMB DS & SM64DS using the NDS Editor. Double-click the two games and locate their sound_data.sdat file. Once you’ve located the two *.sdat files, double-click them both; they’ll then be uploaded onto the NDS Editor.

Step 2:

Double-click the two newly uploaded *.sdat files and search for the *.swar file you’re after in each *.sdat file. Once you’ve located both the “WAVE_MARIO_BASE_SE.swar” & “NCS_WAVE_SE_VOICE_WARIO_MG.swar” file, you’ll then want to extract the *.swav files from out of the two *.swar files using the NDS Editor. It will then create two new folders in the same folder that the NDS Editor is in; the first folder being “WAVE_MARIO_BASE_SE” and the second folder being “NCS_WAVE_SE_VOICE_WARIO_MG”. Each folder will contain the *.swav file you’re after along with any other *.swav files that were included in the *.swar file they came out of.

Now if somehow you’re not entirely sure which *.swar file contains which sound files, the best thing to do is to extract the *.swav files from out of all the *.swar files and as well as an extraction of all the *.swav files converted into *.wav files using the NDS Editor. Obviously if the *.swar file has got an “SE” in its name then you know it’ll contain the main sound effects to the game. As for the others that don’t have an “SE” in its name, those will be the instrumental sounds for the music files. It’s just a matter of playing each and every sound file to see what’s what.

Step 3:

Start up Swav2Swar. The program is pretty straight forward, you click “Add” and insert as many *.swav files as you like into the program; you then click “Create SWAR” which will then create a new *.swar file containing those selected *.swav files but in the order of which *.swav was inserted first. Seeing as you’ll be creating a new “WAVE_MARIO_BASE_SE.swar” with some modifications, you’ll want to add all the *.swav files it originally had (in numerical order) onto the program except for the one that you want to replace. Looking in through the “WAVE_MARIO_BASE_SE” folder, it’s quite obvious that “WAVE_MARIO_BASE_SE_214.swav” (which also goes by “WAVE_MARIO_BASE_SE_000.swav”) was the first file listed in the original *.swar file. If you’re not sure about it, make a file dump of “WAVE_MARIO_BASE_SE.swar” using the NDS Editor and look it up. With that in mind, you’ll want to add the file that’s replacing “WAVE_MARIO_BASE_SE_214.swav” first. Using Swav2Swar, click “Add” and look for “NCS_WAVE_SE_VOICE_WARIO_MG_240.swav” which will be in the “NCS_WAVE_SE_VOICE_WARIO_MG” folder. After you’ve added the first file in, you’ll then want to add in the rest of the *.swav files which made up the original “WAVE_MARIO_BASE_SE.swar” file. Once you’ve added the rest of the *.swav files in, it should look something like this:

If the files are out of order, use the up/down arrow buttons to move them around. Click “Create SWAR” and name the new file “41 WAVE_MARIO_BASE_SE”; now save the file anywhere you like. It’ll save with the file extension which I suggest to take out just to make things easy for when you go to Step 5.

Step 4:

Before you continue any further, you’ll need from out of the NSMB DS rom all the extracted files that are in the sound_data.sdat file which you can get using the NDS Editor (instructions here). Bare in mind, you will need to re-organize the files around before compiling it back up; or you can use the modified sound_data folder (get your copy here) which already does all that for you. You can read about it in the LAST MINUTE INFORMATION section.

Step 5:

Using the modified sound_data folder, locate the “41 WAVE_MARIO_BASE_SE” file (the files are numbered for re-organizing reasons). Once you’ve located the file, you’ll then want to replace that file with the new one you created using Swav2Swar. Compile all the files in the sound_data folder into a new sound_data.sdat file using the NDS Editor (Tools –> Make Sdat File –> Select a folder –> OK).

Step 6:

Finally, replace the original sound_data.sdat file that’s in the NSMB DS rom with the one you compiled using NSMB Editor 5. Congratulations, you’ve manage to hack the sound in NSMB DS by replacing/swapping *.swav files in a *.swar file. Give your newly hacked NSMB DS rom a test run on an emulator. Though I’ve not run into any problems yet when using this hacking technique; there is a chance you may still run into problems. You can read more about it in the LAST MINUTE INFORMATION section.

Try this experiment out the next time you’re replacing *.sseq files with one that’s been converted from a *.mid file or one that came from another game. Instead of using the existing *.swar file that came with the original *.sseq file (before it got replaced); you could use one that’s been customized using Swav2Swar.
So, it's just sample replacing.
EDIT: I was looking at this earlier, and I was thinking on posting some stuff in here, but it seems that you came back to the thread anyways! xD

je suis désolé
Reply With Quote