Hacking [Tutorial] Sm4sh Changing CSS, Custom Sounds Per Costume, and More! Mega Thread!

KillzXGaming

Well-Known Member
OP
Member
Joined
Jan 2, 2016
Messages
1,629
Trophies
0
Age
28
XP
1,618
Country
United States
I compiled this tutorial as guides online were very far apart and harder to find. From my knowledge and what i've managed to do i want to make this a helpful tutorial of doing many things. Currently you can change the CSS or Character Selection Screen with changing the location of portraits, enabling slots, and more. You can edit music, stages, and add more slots too..

To Start Modding
Dump Smash 4 Copy
https://gbatemp.net/threads/ddd-wiiu-title-dumper.418492/

While it dumps the copy, make sure you press the home button after it finishes as this will dump the meta folder!

Put the game on your pc, open it with this tool
https://gbatemp.net/threads/sm4shexplorer-wii-u-only-for-now.416118/

First file locations and Documentation

Sm4sh Explorer Color Types
Green=Modified
Blue=Patch Files/Update Files
Black=Non Patched Files (Never edited from updates)


Character Selection Screen
data(Region)\param\ui\ui_character_db.bin
Database of character selection menu, allows enabling of slots that cannot normally be accessed and also portrait moving, additional costumes, and more!

maxresdefault.jpg

Music Selection Screen (Hex Required)
data(Region)\param\ui\ui_sound_db.bin
Music data of what music to load. Does not include titles, composers, ect!

1.jpg

Music Selection Text
data\ui\message\sound.msbt
Stores text data for music such as title, composer, ect.

Stage Selection Screen (Can be edited with param plugin in sm4sh explorer)
data(Region)\param\ui\ui_stage_db.bin"
Slot info of stages. Can enable more slots.

entry13-1.jpg

Edit text with the .msbt editor below:
Menu Text
data\ui\message\menu.msbt

Items Text

data\ui\message\melee.msbt

Clear Challanges Text
data\ui\message\cleargetter.msbt

Trophy Text
data\ui\message\figure.msbt

CSS Custom Portaits:



For Stock icons use (In Stock_90 Folder)
A8R8G8B8 dds format

Rest use
DXT5


ABGR_8888/A8B8G8R8 format used for stock, battle portaits, ect
This format is different that the others, hence why you rarely get these types in mods. Hopefully i can make it easier for everyone so i start seeing them more often!

Step 1 Extract them and Opening Them. (You can skip if you know)
Extract the file you want.

Stock:
data\ui\replace\chr\stock_90"

Battle Portraits (Used as portrait above stock icons, and results screen)
data\ui\replace\chr\chr_00

DLC ones are in
data\ui\replace\chr\append\chr

And last PAL is in (I could be wrong, don't own PAL version)
data(Language)\ui\replace\chr

Put them in the folder for the injector pack. If you don't have that get it from here:
https://mega.nz/#!nII2jZhL!imJ_Zsho7BNhb8jpYUw2P1EkdkoHsZWTZrnMdC1cdtk

Put those in folder along with the files you want to edit. Open cmd in folder via Shift + Right click "Open command Window Here"

Type NUT_check.py (Model Name Here.nut)

This will extract the dds in the output_dds folder., you can open it using a DDS plugin or convert to png with the DDS2PNG.bat though that won't for me.

DDS plugin is here:
Photoshop
https://developer.nvidia.com/nvidia-texture-tools-adobe-photoshop

Gimp (Zip file)
http://registry.gimp.org/node/70

Step 2. Swapping Colors
Now that you opened your file, it may look normal, however you need to first swap the colors before editing anything. We will use photoshop for this tutorial.
Go to color mixer like this:

TzrrrN5.png


and change the values to this for red:

I852ZEB.png


And change output channel to blue and change to these values

D6AaqD4.png


Step 3
Edit away!
If you want to copy a render or whatever you can do so now!

Step 4
Now time to revert to original! Set the values back to normal. Like this!

For red

9XUdTnC.png


For Blue

uAxmCFa.png


Colors may look weird, THAT'S NORMAL!
Now after all that is done. Save as a PNG! DO NOT EXPORT AS DDS!

Step 4: Export back to DDS using AMD Compress
Once saved download this program called AMD compress:
http://developer.amd.com/tools-and-sdks/graphics-development/amdcompress/

Now install that and open it.
then drag the png you saved to the project time:

VEcJPDL.png


Then on there click the 0.png file which will drop down "add destenation settings"
Make sure to export like this and as 0 as the name! Also make the location where NUT inject is.

xEPN1zT.png


Now click save, then process by right clicking the 0.png file.

ZrUiDdn.png


Step 5
You finally almost done!
Make sure the path is set for NUT inject first! (If you already used it you don't need to worry)

Open EasyInject.bat with notepad. then change it according to where nut injector is and python.

Now click NUT inject and it will inject the file! Success you can now put it back into sm4sh explorer! To do a quick test, do NUT_check.py (File name here) again and see if it extracts correctly!





Additional Stage Slots!
Using sm4sh explorer, open the ui_stage_db file in data(language)/param/ui.

You will get the param editor to pop up, this no longer crashes with this plug in.

To add a stage slot, copy these values for entries 69-77

dgTXlSa.png


Now that you did that, 6-9 is the stage that boots. 8 and 9 is omega variants, 6 and 7 is normal. Go to this list my BlueDan

https://docs.google.com/spreadsheets/d/1oHue1RzlFMQaZ8jg-EP5zGZHV2p3ddW_6Odwxf1sZbE/pubhtml#

Click the tab k6/7/8/9

and type the stage ID you want!

Just take note 6 and 7 values are the same, and 8 and 9 are the same.

Should end like this or similar too!
As4E7ly.png

Additional Music Slots:
Have smash bros 4 on the latest version including your dump!
Also have latest version of Sm4sh Explorer!
Open the program, goto plugins and select sm4shmusic plugin.

0Z3Ncwe.png



Before we add the slot, we need to first make a nus3bank file. This is very easy and you will be given 2 options.
GUI option
https://gbatemp.net/threads/easy-nus3bank-editor-with-gui.426370/

Install Python 2.7

Simply open _NUS3BANK Editor.pyw
and then goahead and open any NUSbank file. You can also just download example here:

https://www.mediafire.com/?flcvi9rlab41gy8

Now you can open the file, and click replace and select any wav. You may convert a music you want into .wav format and import it in here.

Manual Option:
http://pastebin.com/tkbEMP91

Another Option:
You can get a song from a choosen game off here

http://www.smashcustommusic.com/

Then download as Smash Bros Wii U - Stage (doesn't matter which as you're rename it later)
Click the song,
Putting in in a slot!
No that you have a nus3bank file, you can now put it in a slot, first:
Rename file with a snd_bgm_ at start, and then anything after. Example:
snd_bgm_galaxy.nus3bank

Now put the file in the sm4sh explorer folder/workspace/content/sound/bgm. If it doesn't exist create it!

Now goto file - refresh BGM files list for the plugin in sm4sh explorer and it will show up. If you add another one while the page is open refresh it again.

hgcyFx1.png



Now fill in the info (some can simply be left blank).
Then type the name of the nus3bank without the snd_bgm_ and it will pop up!
Lastly click file and compile configuration! Now you are done, build the mod and put it on your SD Card. Dekete any previous mods from your SD Card first or it will crash! Note the location of the mods are now in export/release/content now!


CSS New & Additional Costume Slots:


Character ID (Line 6 in param program)

Updated thanks to Jam's Tool and a bit of what i discovered using it.
mii 0
mii 1
mii 2
mario 3
dk 4
link 5
samus 6
yoshi 7
kirby 8
fox 9
pikachu 10
luigi 11
falcon 12
ness 13
peach 14
bowser 15
zelda 16
sheik 17
marth 18
g&w 19
ganon 20
falco 21
wario 22
MK 23
pit 24
ZSS 25
olimar 26
diddy 27
DDD 28
ike 29
lucario 30
rob 31
tlink 32
charizard 33
sonic 34
jigglypuff 35
dr.mario 36
lucina 37
dark pit 38
rosalina 39
wii fit 40
little mac 41
villager 42
palutena 43
robin 44
duck hunt 45
bowser.jr 46
shulk 47
greninja 48
pac-man 49
megaman 50
mewtwo 51
ryu 52
lucas 53
roy 54
cloud 55
bayonetta 56
corrin 57
gbowser 58
warioman 59
Giga Mac 60
mega lucario 61

Mii Enemy (Brawler) 62
Mii Enemy (SwordFighter) 63
Mii Enemy (Gunner) 63

Stage Portrait Edits
Same as CSS but this directory
data\ui\replace\stage

Custom Music


Model Editing Textures


Sound Effects Per Costume
snd_vc_CHARACTERNAME_cXX.nus3bank
and
snd_vc_CHARACTERNAME_cXX_ouen.nus3bank

cXX as slot number.

Example
snd_vc_Sonic_c01.nus3bank
snd_vc_Sonic_c01_ouen.nus3bank

CSS Slot editing & Additional Slots
Open ui_character_db.bin with param editor tool. Go to the character ID (Given above)

Line13=Slot number (1-60]

To add slots simply add the same values of another character onto an entry that isn't used yet. like 60. You can then change line 6 and edit the ID for another character. CSS depends on line 0 (cosmetic ID) however do not know how to exactly customize this yet.
Adding Warioman (ID is 59)
h3mQkz1.png


Note! It may crash after winning however there is a way to fix this by either playing on teams or fighting against the same fighter that isn't in final smash form.

What Lines from Param Editor Mean in CSS file?
Line6=Character ID
Line 0 is the Cosmetics ID

Line 4 is the Character Series Icon

Line6=Character ID (Shown above)

Line7=Costume amount

Line10=Enabled slot or not. You can disable a slot with value of 1. Useful for limited character selection!

Line13=Slot Number

Lines 21-3 Something per costume, no idea what

Lines 37-52 is CSS text used in chrn_11, each representing a costume.

Image by Mastaklo
15cd62973808dad01eb9244dcb8bd39d.png

Mssing DLC Portaits, Stock, Ect. (Also Freeze Fix for CSPs)
Extract CHR folder in
data/ui/replace/append

Then drag it into the replace folder. This makes their CSPs merge with where the default character ones are located and makes them show up.

PAL USERS!
Also if the CSS doesn't show with additional costume DLC slots, try putting them in the data(language)/ui/replace chr folder or the append folder and into the chr(number) folder. If it freezes REMOVE them from the data folder so they only show here.

Tex ID Fix (Enemy has same textures)
Tools:
Jams Easy CSS Editor!

https://gbatemp.net/threads/smash-4-easy-css-editor.428542/


Paramater/.bin Editor (Use Sm4sh Explorer Plugin!)

Hex Editor/Hxd
https://mh-nexus.de/en/hxd/

Text and .msbt editor
https://gbatemp.net/threads/release-msbt-editor-reloaded.406208/

Information from
http://gamebanana.com/threads/199992

https://sm4shmods.com/forums

https://www.youtube.com/channel/UCqJc_Vo_D23IiPRk72f74LQ


More to come! Please add what you discovered or want to share with modding! I want lot of documentation for this game so it is easier to mod!


Some Nice Packs!

Turbo Mode

TS4M's Mod Pack

 
Last edited by KillzXGaming,

TSSableye

Well-Known Member
Member
Joined
Jan 4, 2016
Messages
101
Trophies
0
Age
24
XP
95
Country
United States
It's a good thing someone got to this. This way, new people who just come here to get answers can quickly see this. Let's just hope this gets noticed :P
 

Blazingflare

Well-Known Member
Member
Joined
Mar 3, 2013
Messages
329
Trophies
0
Age
30
XP
544
Country
United States
Name 0 is the Cosmetics ID
Name 4 is the Character Series Icon
7 is of course the amount of costumes
no clue what 8 is for
9 makes the slot not show up on the CSS if it's set to 1
Setting name 9 on all three mii fighter slots to 1 will break the mii slots in general until you revert it.
everything else is just random flags that don't serve any immediately obvious purpose.

To add new slots to the CSS (to make giga bowser and co playable or whatever)
Take any dummy slot in the param file and copy all of any regular fighter's name values over to it then change the cosmetic ID and character ID to whatever you want.
If you want that slot to show up after the DLC characters, you will have to change name 10 to 1 in ui_character_db.bin as well as add and modify data in the dlc_param_f.bin found inside the eshop folder under param.
When you add a slot, for some reason the picture on the Mii CSS icon will change to Mario, but otherwise it works fine. There's probably a fix, but I haven't found it yet.


I'm also looking into getting multiple soundbanks working properly for the same character in a match and might be onto something. I'll report back if I find anything.
Here's a bit more info about ui_character_db.bin that I found and posted in the other thread.
I haven't had the chance to do too much more research yet, so I don't have any new info. I can confirm that ui_stage_db.bin has to be hex edited though.

In addition to multiple soundbanks that work simultaneously, I'm looking into making giga bowser and co. not freeze on the results screen (Probably isn't possible without an in-depth fix), making unselectable stages playable (I managed to do this very easily on the 3ds so it's definitely doable), and enabling or disabling stage hazards and elements in 8-player smash and regular smash (the game disables all stage hazards and bosses in crazy orders and all-star mode so it should be possible).
I also want to look into making random more likely to choose alternate costumes, but I don't think that's a simple param edit.
 
Last edited by Blazingflare,

Motobug

Well-Known Member
Member
Joined
Apr 13, 2013
Messages
177
Trophies
1
Age
24
XP
248
Country
United States
Here's a bit more info about ui_character_db.bin that I found and posted in the other thread.
I haven't had the chance to do too much more research yet, so I don't have any new info. I can confirm that ui_stage_db.bin has to be hex edited though.

In addition to multiple soundbanks that work simultaneously, I'm looking into making giga bowser and co. not freeze on the results screen (Probably isn't possible without an in-depth fix), making unselectable stages playable (I managed to do this very easily on the 3ds so it's definitely doable), and enabling or disabling stage hazards and elements in 8-player smash and regular smash (the game disables all stage hazards and bosses in crazy orders and all-star mode so it should be possible).
I also want to look into making random more likely to choose alternate costumes, but I don't think that's a simple param edit.

Is the trigger for the names under the character icons in that file as well? I've seen mods with the names removed and they look a lot better than with the names, imo.
 

LucaSmash

Well-Known Member
Member
Joined
Jul 29, 2014
Messages
114
Trophies
0
Age
43
XP
204
Country
United States
So can you add Mii Fighters to the online roster? I attempted to change a character so it launches Mii Fighter instead, but I think the other person saw the character it actually was and it caused a desync. I'll look into it a bit more I guess.
 

Blazingflare

Well-Known Member
Member
Joined
Mar 3, 2013
Messages
329
Trophies
0
Age
30
XP
544
Country
United States
So can you add Mii Fighters to the online roster? I attempted to change a character so it launches Mii Fighter instead, but I think the other person saw the character it actually was and it caused a desync. I'll look into it a bit more I guess.
Yes and no. You can't just edit the character ID and go online with it, because the other person will still see the character you originally replaced. If you make the individual mii fighters slots selectable, you may be able to go online with it, but you will most likely get desynced since the slot uses your NNID's Mii fighter and the other person's mii would probably show up as a differently sized mii.
 

LucaSmash

Well-Known Member
Member
Joined
Jul 29, 2014
Messages
114
Trophies
0
Age
43
XP
204
Country
United States
Yes and no. You can't just edit the character ID and go online with it, because the other person will still see the character you originally replaced. If you make the individual mii fighters slots selectable, you may be able to go online with it, but you will most likely get desynced since the slot uses your NNID's Mii fighter and the other person's mii would probably show up as a differently sized mii.

I added Mii Fighter to the CSS via new slot and yeah it just disconnects them before the game and I vs a computer :(
 

KillzXGaming

Well-Known Member
OP
Member
Joined
Jan 2, 2016
Messages
1,629
Trophies
0
Age
28
XP
1,618
Country
United States
Here's a bit more info about ui_character_db.bin that I found and posted in the other thread.
I haven't had the chance to do too much more research yet, so I don't have any new info. I can confirm that ui_stage_db.bin has to be hex edited though.

In addition to multiple soundbanks that work simultaneously, I'm looking into making giga bowser and co. not freeze on the results screen (Probably isn't possible without an in-depth fix), making unselectable stages playable (I managed to do this very easily on the 3ds so it's definitely doable), and enabling or disabling stage hazards and elements in 8-player smash and regular smash (the game disables all stage hazards and bosses in crazy orders and all-star mode so it should be possible).
I also want to look into making random more likely to choose alternate costumes, but I don't think that's a simple param edit.
Thanks I'll add that info. How exactly do you edit the dlc_param_f.bin?
 
Last edited by KillzXGaming,

Segtendo

#TeamMarie
Member
Joined
Jun 30, 2010
Messages
252
Trophies
1
Age
31
Location
Illinois
Website
twitter.com
XP
394
Country
United States
Question. I know how to add costume-specific sounds no problem. However, what about the case of the male/female Robin, Corrin, and Wii Fit Trainer? I checked their files, and they have two: one for male, one for female. Does anyone know if there's a way to save a little space and have the sound file say which slots use that soundbank? And what about not having characters go mute?
 
Last edited by Segtendo,

AmNavySeal

Member
Newcomer
Joined
May 14, 2016
Messages
9
Trophies
0
Age
27
XP
53
Country
Cote d'Ivoire
Any help with .DDS format saving? I followed the guide in the OP on how to do texture hacks, but my texture keeps crashing the game. It must be either something with saving settings, or the injector being unstable.
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • No one is chatting at the moment.
    LeoTCK @ LeoTCK: yes for nearly a month i was officially a wanted fugitive, until yesterday when it ended