The Game Modding Community - Since 2001

One-Stop From-Zero Modding Guide

A Tutorial for Super Smash Bros. for Wii U

Updates

v2.1
  • Improvement Added extra instruction re:Sm4shexplorer
3mo
v2
  • Improvement Fixed some typos
  • Suggestion Added links for other dump methods
6mo

Super Smash Bros... MOD MEEEEEEEEEEEE


Introduction

The purpose of this guide is to take you from unmodded Sm4sh 1.1.7 to a game that works with the most popular form of mod - character skins. Note that this guide assumes that you have your WiiU set up with CFW - you'll need to, if nothing else, be able to launch apps through the homebrew launcher (because we'll be using SDCafiine). If you need to get set up on that, you can look at other tutorials out on the web - I used this one although I recommend you avoid setting up coldboot Haxchi (CBHC) since that has a higher chance of bricking your console.

This guide assumes you want to manually install your skins, rather than using Meteor - since there are skins that are unavailable through Meteor, and learning how to do it yourself definitely won't hurt in case something gets screwed up anyway.

This guide essentially consolidates the things I've learned and the information I've had to look up since I began modifying my copy of Sm4sh - I had to page through many different sites and other pages to find all the information I was looking for. Here's a shortlist, in case you want to look back at those for further clarification:


Additional Options & Tuts

Check out these alternate dumping methods and tutorials!


What You Need

You're going to need a few files to get started with. We'll use all of this eventually, although some of it is optional - you only need it if you're going to do things that you don't strictly have to.

fungus' Sm4shexplorer 0.07.3 - this is the primary tool we'll be using. Extract it somewhere with a fair bit of space.

ddd title dumper - used to get the files from your copy of Sm4sh so that you have base resources to work from. Techically you could also use a dump that fell off the back of a lorry, just make sure it matches your region and that it's a dump of 1.1.7 (if you have to update the game then you'll need to use ddd since the update data is held separately on stuff like WiiUUSB Helper).

SDCafiine - this is an on-the-fly resource injector that loads resources from an SD card over pre-existing resources. The latest version can do USBloading as well, but for the purposes of this guide we'll be assuming you're using an SD card (you probably are anyway if you've got Haxchi or w/e set up).

PARAM.exe - already included in the Sm4shexplorer download, under "tools". We'll be using this to add costume slots. It's also useful for adding custom text, which we'll get to later.

MSBT Editor Reloaded - STRICTLY OPTIONAL, we'll be using it to add custom text for characters on things like the boxing ring stage background or on the victory screen. You can COMPLETELY SKIP THIS if you want to.

Blake Belladonna (RWBY) skin for ZSS by Dakavos - technically any mod will do, but this one has all the right filetypes for making a good tutorial, I can vouch that it works, and you don't have to unlock anything to test it.

1. Good, Raiden, but first you have to take a dump

The following instructions will also be present in the ddd thread linked above; they're repeated here for absolute clarity.

  1. Disable the WiiU's automatic power down or you're going to have a bad time. You can do this from system settings -> power options.
  2. Make sure you have ddd set up on your sd card properly (since we're assuming that you have Haxchi etc. set up properly I'm not going to walk you through this step, it's mentioned here just as a sanity check).
  3. Open up a terminal (start button -> cmd -> return will open one as a semi-shortcut) and navigate to the folder the ddd server is set up in. The primary command for this is cd <path> where path is the folder's path, i.e. C:\Users\User\Documents\ddd.
  4. Once you've navigated to the folder containing titledumper.exe, do titledumper.exe /vol <output> where <output> is the location that the files will be dumped to on your computer. The dump will be 15.7gb or so - make sure you've got space.
  5. Load up your WiiU, head into Homebrew Launcher, and run ddd. Select your computer's IP (its internal IP on your home network - you can either check this through the router or by using ipconfig or ipconfig /all in the terminal - make sure you don't give it your external IP) and hit X. This will dump you back to the WiiU system menu. Run the title you wish to dump (Sm4sh, in this case).
  6. THIS WILL TAKE A WHILE. If you got the IP right, the game will lock up on the splash screen as it tries to load, and the terminal you began loading titledumper.exe from will report back on the status. Remember: it's dumping 15.7gb over an internal network, so at best you'll usually get a speed of 1mbps, or 1gb per 1000 seconds (bit over 15 minutes per gig). When the game starts running again, the dump is finished; you can close stuff down and we'll move on.

Use the time while ddd is loading to do stuff like browse gamebanana for more mods you'd like, is what I did. Alternately, set it up before you go to bed - it's going to take a few hours at minimum so why not?

2. Exploring with Sm4shexplorer

Unzip Sm4shexplorer wherever you like it, and run Sm4shFileExplorer.exe - it will ask for the filepath of the Sm4sh dump you made, and then attempt to autodetect the game version (304 for 1.1.7, 288 for 1.1.6) and region (it's not as good at this - PAL players in Australia or the UK may have it detect as US). Make sure you have it set to the right region. If you screw up anything at this step, you can manually edit sm4shmod.xml or just delete it and reopen Sm4shFileExplorer.exe to repeat the process.
Let's start by getting access to the first of two files we're going to be screwing around with the most.



Your initial screen should look basically like this. The files that are in green text are because this is my version of Sm4shexplorer that has the modspack stored in it - they represent folders that contain edited files. Now, here's where things get fun: what we have to do next differs between PAL and NTSC versions of the game.

NTSC USERS

Browse to data\param\ui\ui_character_db.bin and right click it, then hit extract. It will appear in Sm4shExplorer 0.07.3\extract\data\param\ui (in your browser).

PAL USERS

Access the data(xx_xx) folder for your region. So, for example, I access eu_en because I'm in Australia. If you're in France, access eu_fr. Navigate to data(xx_xx)\param\ui\ui_character_db.bin and right click it, then hit extract. It will appear in Sm4shExplorer 0.07.3\extract\data(xx_xx)\param\ui.

This file basically contains all of the "vital statistics" of the characters, and for that reason, we'll be using it. Open up PARAM.exe (in Sm4shexplorer's Tools folder) and then open ui_character_db.bin with it.



This looks really complicated. DON'T PANIC. This is where the spreadsheet linked earlier comes into play. Okay, we're going to use that Blake skin for Zero Suit Samus, so the first thing we have to do is find ZSS' entry. This is accomplished by checking Line 6 of each Entry. This is the Character ID.
Looking at the spreadsheet tells us that ZSS' Character ID is 25 (use the CharID in the left column, not the hex offset next to it). Therefore, browse down each entry until you find Line 6 with a value of 25.

The line immediately below Line 6, Line 7, contains a value which is used as a range for how many selectable costumes the character has. This value can be 16 at most thanks to Little Mac. Most characters will have a value of 8 in their Line 7. Click on the Line 7 value and replace it with 10 instead of 8. Make sure you click on something else before doing file -> save, or else it won't always save the way it should.
We're not actually done with this file yet, so we won't re-add it to Sm4shexplorer's heirachy yet - we're saving now so that we don't have to worry about it later.
If you want to optionally insert text later in step 4, keep PARAM.exe open because we'll be using it again; if not, you can close it now.

EDIT: Something I discovered literally today is that you can doubleclick a file in Sm4shexplorer and it will intelligently open the file (msbt files require that you have a valid hex editor set up that Sm4shexplorer can find though), and when you save and close PARAM.exe it will ask if you want to reinclude the modified file right then and there. Efficient!

3. Inserting Blake

So, what we just did was change the game's database slightly, telling it that ZSS has ten costumes instead of 8. If you were to compile it now (after adding the file back in, more on that later), you'd just have two more default ZSSes when you cycled through her costumes. We're going to change that up now.

Open up blake_belladonna_v1_2.zip and check the files inside. It comes with a nice README you can use (and you should have it open when you're doing this anyway even if you're confident in yourself or me, just in case something gets screwed up). Blake has two versions: one with a bow hiding her cat ears, and one without. The reason we made two costume slots available is because we're going to use both. Start by extracting these two folders somewhere close to hand. You'll notice they each contain three folders: voice, cXX, and csp.

Back in Sm4shexplorer, browse to data\fighter\szerosuit\model\body and you'll find a whole bunch of folders labelled c00 through c07. We're going to make a brief aside because I want to drill something into you really quickly:

Whoever devised the file heirachy of Sm4sh was either an idiot or an intern. Computers begin counting from 0, which is why the costume folders begin at c00. However, for reasons unknown to man, csp files (which cover things like the character select portraits, stock icons, and so on) begin from 1. This means that whenever you are renaming csp files, you must offset that number by +1. So if you're adding csp files to a costume in folder c08, the csp files will use 09 as their number.
It's possible this is because csp icon 0 is the debug icon (red x on black square) which will appear if a csp file is not found, but if that's how they wanted to do it they could have done the classic SNES technique of giving it either a maximum value or a value of -1 as the debug and then had parity in their file system.

Anyway, let's start with default Blake. Rename her CXX folder to c08, then drag and drop it onto the body folder in Sm4shexplorer - this will make a new folder called c08 right there. Next, open up her voice folder and rename snd_vc_SZerosuit_cXX.nus3bank to snd_vc_SZerosuit_c08.nus3bank. Then, drag that file into szerosuit\sound. If you're a PAL user, you'll also need to drag that file into data(xx_xx)\fighter\szerosuit\sound - the game checks that folder for audio files as well, so that you get the correct dub language.

Apparently you can sometimes get by without updating the locale folder; I've never had that work for me but if it works for you that's great - you can skip some extra fiddling around.

Now for the CSP files. Navigate to data\ui\replace\chr and you'll be presented with a bunch of folders. Blake comes with five chr .nut files for use here, and this is where the +1 offset I mentioned earlier comes into play. Each of the files has an XX value in it. We named our Blake costume folder c08, so for the CSP files, replace XX with 09. So you should have:

chrn_11_Szerosuit_09.nut
chr_00_Szerosuit_09.nut
chr11_Szerosuit_09.nut
chr_13_SZerosuit_09.nut
stock_90_Szerosuit_09.nut


These files go into their respective folders, so chr_00 goes into the chr_00 folder. PAL Users: if your skin includes a chrn_11 file, then you will also have to go to data(xx_xx)\ui\replace\chr and drop the file into the chrn_11 folder there. Failure to do this will cause the game to enter an infinite loading loop when attempting to access the character select screen.

Now, repeat the process for Faunus Blake. This time, though, use c09 in the body folder and voice file, and 10 in the CSP files.

You're actually all set now - all you have to do is add the edited character db file back into Sm4shexplorer and build the modspack, and you'll be able to access Blake (complete with her own voice) by cycling through Zero Suit Samus' costumes. However, it will still use Samus' text on the victory screen, for example, so we're going to fix that as well. This is optional: if you just want the skin and don't care about the rest, then you can skip ahead to step 5.

4. Hello, World (OPTIONAL)

In Sm4shexplorer, navigate to data\ui\message\melee.msbt and extract it the same way as before. PAL Users: you need to go to data(xx_xx)\ui\message\melee.msbt instead. Once extracted, open up MSBT Editor and open melee.msbt with it. This file contains LOTS of strings of text, but we're going to look at four in specific:

MmelCharaA_XX_Character
MmelCharaC_XX_Character
MmelCharaN_XX_Character
MmelCharaR_XX_Character

In these contexts, XX is a number beginning at 01 while Character is the internal name of the character. Don't get caught out by this - internal names are basically all one word and may not be what you're expecting. For example, Dark Pit is "Pitb", Charizard is "Lizardon", Ganondorf is "Ganon", and so on.

In this case, in the text bar in the lower left, type in MmelCharaA_09_Szerosuit and click the + button. This will add that entry to the database, and you can then edit it. Repeat this for each of the four letters - the only thing changing is that you're putting C, N, or R instead.

As for the different letters and what we'll be putting next to them:
MmelCharaA: Text displayed on the boxing ring stage when the background goes into its "Versus" mode. Allows upper- and lowercase characters and two lines of text. This is generally description rather than a name. You can put in whatever you want here. We'll do something simple:

The Beast Descends
From Shadows


MmelCharaC: Text displayed underneath character's % or HP Gauge at bottom of screen. Allows uppercase and one line of text. Keep this one short. This is a character name.

BLAKE

MmelCharaN: Text displayed on the screen in Pokemon Stadium. Allows upper- and lowercase and one line of text. Usually the character's full name.

Blake Belladonna

MmelCharaR: Text displayed in gold on the victory screen. Again, usually the full name. Allows uppercase and one line of text, but the text is smart and can squish up a bit.

BLAKE BELLADONNA

When you're finished, repeat this again, but instead of 09, use 10.

Save the file when you're done tweaking things and return to PARAM.exe. Lines 37-52 of each character's entry covers their costume files. Scroll down and change the values of Lines 45 and 46 to 9 and 10 respectively. There's a quiet +1 offset here which I think is due to costume 0 being a debug costume - line 45 should cover the 9th slot costume, but it covers the 8th slot costume intead. The value you input, however, corresponds to the CSP files, because Sm4sh.

Save and you're ready to finish things up.

5. Settle It in Sm4sh

Drag and drop ui_character_db.bin and melee.msbt back to where you found them (remember to drop them on the folder icon, not on top of themselves in the Sm4sh heirachy).

Let's set up your SD card quickly: make sure SDCafiine elf is in the apps folder like it should, and create a folder on the root of your SD card called sdcafiine. Inside it, you'll need to make a folder named one of a few things depending on your region:

PAL: 0005000010145000
US: 0005000010144F00
JP: 0005000C10110E00

Technically it isn't necessary to do this manually (Sm4shexplorer will do it for you when you export), but this entire tutorial is about doing things manually. Once that's set, go back to Sm4shexplorer and do Project -> Build Modpack and it'll get to work. This can take a while depending on how many things you're including and especially for PAL players who have to repack all the locale files. When it's done compiling, it'll ask you to specify a name for the modspack (with recent versions of SDCafiine, you can select a modspack at runtime if you have them with different names), and then automatically send it over to your SD card.

Eject the SD card safely, plug it back into your (switched off) WiiU, power on and launch SD Cafiine through the Homebrew Launcher. It will boot you back to the WiiU main menu; launch Sm4sh and your mods should work just fine.

https://my.mixtape.moe/esettz.webm
If what you get looks like this, then you nailed it.

This is a basic example which should be applicable to most simple character skin hacks, so go forth and multiply your available characters.

6. Other Stuff and Potential Problems

I'm stuck in an infinite loading loop!
If you're a PAL user, this seems to be caused by not having a valid chrn_11 file in your data(xx_xx) folder. Even if you're sure you've done it, double-check there first - every time this has happened to me, that has been the cause.

The character has a white block instead of a name.
This occurs when a character doesn't have a chrn_11 file but you gave them custom text in step 4. You can either undo the custom text, or you can extract the character's default chrn_11 file and rename it to match the other CSP files, then drop it in. Note that you'll get standard text on any screen which requires a dedicated CSP file rather than reading compiled plaintext - you have to actually make the correct .nut file which is out of the scope of both this tutorial and my abilities. The white block should only appear on the character select screen and classic mode renders (might happen anyway if you're using a character who doesn't have classic mode renders and have custom text set for them, even if they have proper CSP boilerplates and so on).

The character name appears one (or more) costumes early/late.
This means that when you edited the character's entry for specific costume text in PARAM.exe in step 4, you were offset by the given amount. This is easily fixed, though - just revert the wrong value to the default one (this is either 1 or 0 for most characters), and then move a number of lines equal to how many costumes 'off' the name is.

Some characters behave strangely when I apply new skins, text, voice etc. to them.
Assuming there isn't some sort of bug in the applied content, you should check out 3.3.3 in this guide - some characters that have dramatic form changes work in a somewhat different way.

Can I replace a character entirely?
Sort of. There are dedicated models for 8-Man Smash and costumes for team matches, so if the character doesn't have the right body files for those, you'll end up getting the original character. In terms of just playing 1v1 or whatever, though, yes you can: simply reduce the value of the character's costume range (Line 7) to the number of costumes in PARAM.exe, and replace the character's first X costume folders with your mod skin's folders (c00 onwards). So, for example, if you use Dakavos' Ruby Rose skin over Dark Pit, along with DusterBuster's Ruby Rose alt colors, you'd put them over folders c00 through c03, and reduce the value of Dark Pit's Line 7 entry to 4 from 8.

How does custom text work with a replaced character?
Instead of adding new lines, just edit the default entry. So continuing the Ruby example, you don't need to set alt text for all three recolors - just edit MmelCharaX_01_PitB to be Ruby-specific and it will be used for all of them.

Where's the table of contents?
Look at all the gamebanana points I don't have!

Todos

Touch on DLC character modding
Include stage mod tut
Include music mod tut

Posts

  • 2moEdited 2mo
    Really nice tutorial. I have built my own “modpack” with my SD card,sm4shexplorer and all,by downloading some of the mods in this site. I also have homebrew (haxchi) and SDcafiine 1.4. However,mods just don’t seem to work. I have even changed the system language to English to make it work (I live in Italy,so I have a PAL wii u and disc and I followed the PAL directories on the tutorial) but when I load SDcafiine from homebrew,and then the game,the “select character” screen never appears,while the little rolling smash ball at the bottom of the screen continues loading for hours. What should I do? Thank you.

    PS: I’ve checked all the chrn_11 files and they are present in both the (eu_it) folder and the normal data folder. How come they still do not work?
    Bananite
  • 6moEdited 6mo
    Domineu avatar
    Domineu Joined 6mo ago
    Offline
    Smash doesn't show the character portraits and SmashExplorer doesn't pack added chrXX_character_XX.nut (XX ≥ 09) files in the "packed" file.
    E.g. in chr_00 is a "packed" file and chr_00_Koopa_09.nut.
    If the .nut replaces an existing .nut (XX ≤ 08), it works just fine.
    Bananite
  • 6mo
    Really nice and clean tutorial, everything is really clear, easy to read, information is not false and even the entire tutorial doesn't look boring to read. Definitely a tutorial I would recommend to someone who's starting on Smash 4 modding.

    Keep up with the good work!

    10

    • Thanks x 1
    Inactive.
  • 6mo
    In Smash explorer where do I add the edited Character db. Is it in a folder or..
    Bananite
  • 6mo
    ThatNintendoNerd avatar
    ThatNintendoNerd Joined 2y ago
    Offline
    5,530 points Ranked 880th
    16 medals 2 legendary 2 rare
    • Returned 5000 times Medal icon
    • 2017 Top Contributor Medal icon
    • Returned 1000 times Medal icon
    • 10 submissions featured Medal icon
    • One month a member Medal icon
    • Returned 100 times Medal icon
    This is a really great tutorial. But I have a few suggestions and recommendations:

    1. DDD. Within the past year, three more updated guides to dumping games (in this case, Sm4sh) have appeared on this website. While DDD is the simplest, it doesn't necessarily work for everyone. It can disconnect in the middle or just flat out not work at all. So a recommendation I have for you is to include links to a couple of the tutorials on the top of step one and/or a warning that it doesn't always work perfectly.

    2. Param editing. The tool Smash Forge can also edit the parameters of the game with updated code I'd assume, but best of yet, it has labels for the commonly edited parameter files. It has less of a chance to corrupt the file when saving (though in both programs, a select few files can break through the process of saving requiring you to run it through a particular param fixer made by Dr. HyperCake in the Sm4sh Modding Discord). So if you want to take a look at that, I think it would be best.

    3. Adding mods. Since 5.5.2 and 1.1.7, much has changed with exploits and more consistent freezing issues. SDCafiine has received multiple updates in the past making the most recent version 1.4. SDCafiine 1.4 changes where it expects mods to be loaded and updates some of it's more major aspects. I say this because many people have switched to this new version making your directory in the tutorial obsolete. Few people (like me) still use 1.0, so if you want to add the 1.4 section I think that would help.

    Other pointers/recommendations:
    • "Techically you could also use a dump that fell off the back of a lorry" kind of sounds like you're saying people could use a downloaded dump, which does break Rule 1.4 of this site. I could be wrong on this phrase, but that's just what I think you're saying.
    • CFW isn't required for the console. SDCafiine 1.4 has Mocha CFW built-in.
    • You should probably add where other mods would go, like effects, stages, music, etc so people don't go about asking in the comments.
    • I think you should add a section for adding music since there are some people who add hundreds of songs to their game, but the newbies don't know how to do it since as far as I know, there is no updated tutorial to do so.

    Anyways that's it for me. I'm very sorry for the huge wall of text and hopefully it didn't kill you reading it. Love this tutorial, great terminology too. Hopefully you take some of these points into interest.
    44 53 58 38 20 50 6C 73
  • 6moEdited 6mo
    This is a great tutorial, it covers jsut about anything.

    But the voice/sound files can also go in data/fighter/character/sound and it will work just fine
     avatar
    Mantra

Embed

Share banner
Image URL:
HTML embed code:
BB embed code:
Markdown embed code:

Credits

Tutorial Author
RayOfSpeed
RayOfSpeed Joined 7mo ago
Offline
Tool Creators
fungus
fungus Joined 2y ago
Offline
720 points Ranked 6884th
Sm4shexplorer Reloaded
dimok789
ddd
Maschell
SDCafiine
Tutorial Creators
fungus
fungus Joined 2y ago
Offline
720 points Ranked 6884th
Various tutorials
Mastaklo
Adding Costume Slots tut
KillzXGaming
Various tutorials
Blake Skin
Dakavos
Dakavos Joined 1y ago
Offline
6,213 points Ranked 770th
13 medals 2 legendary 1 rare
  • 2017 Top Contributor Medal icon
  • 30 submissions featured Medal icon
  • 10 submissions featured Medal icon
  • Submission featured Medal icon
  • Received thanks 5 times Medal icon
  • Reached 1,000 Points Medal icon
Skin Creator

Submitter

Sign up to access this!
Sign up to access this!
Sign up to access this!
Sign up to access this!

Category

Details

Difficulty Level
Beginner Difficulty

Attributes

Other
Misc

Share

  • Share on Reddit
  • Share on Twitter
  • Share on Facebook
  • Share on Google+

Stats

  • 4,302 Views
  • 11 Posts
  • 6mo Submitted
  • 3mo Modified
  • 3mo Updated

Scores

90 bScore
10 Rating

1 voter

Sign up to access this!

Hey, you! Mascot

GameBanana is one of the oldest mod sites on the net. Sign up and maximize your browsing experience.

  • Subscribe: Get notified of new submissions like this.
  • Say Thanks: Show your appreciation - send modders points.
  • Post: Give modders your thoughts on their work.
  • Vote: Help your favorite modders win monthly awards.
  • Rate: Rate mods and help them stand out.
  • Flag: Alert moderators and warn members of problems with mods.
  • Watch: Get notified when mods are updated.

Join the community! Sign up now!

Already a Bananite? Login

bcp.crwdcntrl.net tracking pixel