Creating Additional Music Slots [GUIDE]

Mowcno

New member
Joined
Aug 21, 2018
Messages
1
#1
This guide shows how to create additional music slots, meaning you can have as many custom music tracks as you like without having to replace any of the original songs.

So I was looking around for a while trying to find out how to do this but couldn't find anything about it. In the end I've managed to figure it out so thought I'd upload a guide for anyone else trying to work out how to create more music slots, so you can have as many custom music tracks as you'd like without replacing the original songs!

I've only tested this on an emulator so don't know if it works on an original Wii, but I've successfully created new files in revo_kart.brsar that point towards new external BRSTM files, and got the tracks to fetch the BRSTM in game no problem, with last lap music working as well.

Now before we start:

This Guide assumes that you already have a Mario Kart Wii ISO with CT_Code installed. (Any mod with more than 8 cups will have this, I've been editing a wiimms fun pack.)

This Guide will not cover creating the BRSTM's for your music, read about this at: http://wiki.tockdom.com/wiki/Custom_Music

Tools you will need for this guide:
Wiimms SZS Tools: https://szs.wiimm.de/download.html (SZS v1.59a used in this guide)
SZS Modifier: http://www.chadsoft.co.uk/wiicoder/ (SZS Tools will not work for this guide)
BrawlBox: https://github.com/libertyernie/brawltools/releases (v0.78 Hotfix 1 used for this guide)

Now let's get to it! (It won't seem to let me put more than 5 images in a post to links to images that accompany the steps will be posted below.

Part 1: Import your BRSTM's

Step 1: Put the BRSTM's you wish to load in the /files/sound/strm folder of your Mario Kart Wii ISO.

Step 1 Image


Step 2: Open up revo_kart.brsar in BrawlBox. (Found in /files/sound).

Step 2 Image


Step 3: Click on "New File", and then select "External Reference".

Step 3 Image


Step 4: Now scroll down to the bottom, where you'll find your new file that will be named "External"
double click on it to open the File Path Window.

Step 4 Image


Step 5: Click on the three dots button to browse for and then select your BRSTM in the /files/sound/strm.

Step 5 Image


Repeat the above to add any other BRSTM's you wish.

Note: When swapping between windows/tabs in brawlbox you may find the new files you've added change their name back to "External" and you
may think that it's file path has been reset or removed. This is not the case, it is still set, however the name will reset to External if
brawlbox hasn't saved, so saving and then reopening revo_kart.brsar will fix this, but it's not a problem if you can carry on without getting mixed up.


Part 2: Create Music Slot/Reference ID File

Step 1: Right click on the STRM folder and then select the options New, Sound, New to create a file that will
be used as a new music slot. You can create the file in a subfolder of STRM to keep things organized if you wish
and rename the new file to anything you wish.

Step 1 Image


Step 2: Now click on the new file and we must now change it's settings to mimic that of the original files. Change the following:

In the "RSAR Sound" Section:
Sound File: (Select Your BRSTM!, it may be named "External" if it is don't panic and see the note at the bottom of Part 1 of this guide!)
Volume: 85 (90 if it's a Final Lap BRSTM)
SoundType: BRSTM

In the "Sound 3D Param" Section:
Flags: 0

In the "STRM Params" Section:
AllocChannelCount: 2
RSTMAllocTrack: Track 1

Step 2 Image


Step 3: Now repeat Step 1 and Step 2 to create a new file to act as the fast lap variant, even if you don't have a seperate BRSTM for the last
lap you'll still need two of these index files, if you don't have a seperate BRSTM just select the same BRSTM again for the sound file setting
in the second index file.

Step 4: Check, and make a note of the InfoIndex number for these new files, the last lap variant should be one higher than the normal variant.
So if the first file you created for the normal music is 6781, as it is for me, then the index file that points to the fast lap brstm should have an
InfoIndex of 6782. This should happen automatically assuming you created them in order.

Step 4 Image


Step 5: Save!!! We're done with brawlbox! (Make sure you have those InfoIndex Numbers!)



Part 3: Editing CT_Code

Step 1: With SZS Modifier: Open the Strap SZS file in /files/boot/strap folder that corresponds to your games region and the language you play in.
/EU/English.szs in my case as I have a PAL copy of the game and play in English. (You must use SZS Modifier, SZS Tool will be unable to open this file).

Step 1 Image


Step 2: In this .SZS file you will find a file called "CTGP_CODE", right click on this file and select "Export Raw Data" then export
it and name it "CTGP_CODE"

Step 2 Image


Step 3: Close SZS Modifier, then find the file you exported ("CTGP_CODE") and copy this to your Wiimms SZS tools install directory.
In most cases this is: C:\Program Files (X86)\Wiimm\SZS

Step 3 Image


Step 4: In the same folder you copied CTGP_CODE to there will be a file called Bash.exe, open it then type in the following command: wctct create full ctgp_code
This will create a text file in the folder called ctgp_code.txt

Step 4 Image


Step 5: Open this text file and scroll down to where all the tracks are listed, as shown in the image below.

Step 5 Image


Step 6: Find the track you wish to change the music for and then change the Music Code for that track to the InfoIndex number from the file you created in Part 2, followed by an !.
So for example if I wished to change the music track for "NDS Shroom Ridge" in my game I find the line it is on.

T KC ; KC ; "19" ; "NDS Shroom Ridge"

Then I will change the KC that immediately follows the T like so:

T 6781! ; KC ; "19" ; "NDS Shroom Ridge"

Remember to use the sound index for your standard music track, not the Last Lap, the game will automatically add one onto the index when you enter the final lap.

Step 6 Image



Step 7: Save the text file and close it. Then Open Bash.exe again and type the following command depending on your games region.

Pal: wctct create eu-szs ctgp_code.txt
NTSC: wctct create us-szs ctgp_code.txt
JPN: wctct create jp-szs ctgp_code.txt

This will create an SZS file in the folder with bash.exe.

Step 7 Image


Step 8: Now simply rename this new SZS file to the same name as the SZS you opened with SZS Modifier earlier, then replace that SZS file with the new one.
In my case: /files/boot/strap/eu/English.szs

Step 8 Image


Now we're done! The track you changed should now play the BRSTM file that you linked to the Index file you created.

So basically we created a new file with the index 6781 that points towards a BRSTM. When we play the game the track now looks for the file with the index 6781
and asks it which BRSTM file it should play as the music.

Hope I've explained well and someone finds this helpful!


Note when editing multiple times: If you export the CTGP_CODE file from your boot strap SZS that already has custom music slots created this way, and then you extract the txt file and build a new SZS from it, you will discover that all the tracks with custom music will play the Luigi Circuit music, this is because the number is converted when we first build the szs file and the exclamation mark (!) is removed.

So for example when we first build an SZS, 6781! is converted to 0x1A7D which is hexadecimal for 6781. Notice the absent ! from the end of this new number. This is fine for the game, but if we try to create an SZS file from a text file that has 0x1A7D as a music slot, CT_CODE will not recognise it as a music slot and convert it. That's why the ! symbol is important, it tells CT_CODE that the number shouldn't be converted even if it isn't an original music slot.

So to fix this you will have to reinsert the ! mark after all custom music slots that are missing it, eg: 0x1A7D!, it's not necessary to change it back to the numerical ID (6781!).
 
Last edited:

Warwick

New member
Joined
Jun 10, 2019
Messages
9
#6
can you do this works for le code, for fun MK game??? with this code i can add a music for every track what i want or there is a limit of numbre music sounds?
 
Top