1. IntroductionThis tutorial will be guiding you through the steps to learning how to import your own models in Super Smash Bros. Ultimate.
1.1. Some Notes Before StartingThis tutorial assumes you have an exploitable Switch and are capable of modding the game.
This tutorial assumes you have experience interacting with the 3DS Max viewport. If not, there are plenty of guides out there, such as this one.
Please do not release unfinished work as a full mod. Also do not submit a work in progress for mods you have not started. If you require help with that mod, the recommended option is to ask in the Smash Ultimate Modding Hub Discord (link is on the front page of the Ultimate section here), but making a help thread also works.
**Please avoid using Brawl models as they are lower-poly and lower-detail than models from Ultimate. Finding a better model contributes to the quality of your work!
Credit any content you may have used for your mods when releasing or showcasing. Taking credit for content you did not create from scratch isn't cool or permitted.
At this time, Blender is not supported within the guide. Once someone gives us information for doing this in Blender, the guide will be updated to have alternative steps. It is known that it is possible, however.
3. Setting Everything UpThe most crucial thing you need is 3DS Max. If you do not have 3DS Max, you can create a student trial that lasts three years. It is the safest way to get access to the program for a long duration, as other methods may not be as safe.
For finding a model to use, you can use ones from The Models Resource, another site, a clean rip from a game, or you can make your own. I would heavily advise you not use poor quality random models. It is heavily recommended to retexture models you find online and subdivide them in blender later to clean up their quality. However, heavily editing existing models or making your own is the best solution as you have more freedom to work with and render normal maps, PRM maps, and more.
Once you have your model, launch 3DS Max. It may take a bit, especially for slower computers. Once it does fully open, click on the square "Max" button on the very top left. Then click on the Import button. A window titled "Select File to Import" will pop up. Find your model and import it into the scene. If your model is in a format that is not supported by 3DS Max, search for a script to import it or use the program Noesis to convert it, if supported.
For example purposes, I will be using Phil as a test rig. Now you are ready for rescaling, rotating, and moving. If you have blue or green-ish hues with detailed patterns all over them, they are likely to be normal maps, which can be imported later on to give your character more detail. If you don't have these, there are online generators and tools to create them, either from your texture, or from baking the model in 3DS Max itself.
Now to the left of 3DS Max, you should see the Scene Explorer. If not, click on Tools at the top left and then click "New Scene Explorer, and drag it to the left or the right depending on your preference.
Select all your custom model/s (you can have more than one) and right click > Collapse All in the scene OR right click > convert > convert to mesh in the scene. If you see bones or anything other than the meshes (your characters model) in the current scene, delete those using the Del key after selecting them, so we can import the Smash Ultimate skeleton of the fighter you are importing over. Alternatively, if you need to edit the proportions, you could use this existing skeleton to re-proportionate the model and then do the Convert to Mesh/Collapse All trick as described before.
If you want to rig over different costumes, you can do so by importing models over another costume. E.X Cloud c01 is advent children costumes bones, which has some physics bones used for it. However, most characters only have one model per 8 costumes, besides exceptions such as Pikachu and Inkling, and use recolored textures for the rest. This is an issue that can be fixed with the upcoming SaltyNX mod loader.
Now that we have our model set up, we need to extract and import our character from Smash into the scene. Character models are located in the directory of CrossArc:
fighternamehere should be obvious as to what it implies, but cXX refers to any of the folders that start with the letter 'c.' You should be extracting the whole cXX folder.
To import a Smash Ultimate model into the scene, simply drag and drop the
SSBUlt_NUMDLB.msfile onto the window. The script should popup like so:
Click on the big "Import *.NUMDLB" button and it will bring up a window prompting you to select your
model.numdlbfile. Locate it and double-click on it. It may take a while to import, depending on the model size. Reminder you will need all the other files in the costume folder so make sure those are extracted from CrossArc.
Delete all the models/objects of the default Smash character that were just imported into the scene, unless you wish to do something such as a clothing replacement instead of a full import. You can do this by clicking on the individual models in the scene while holding CTRL and press "Del" on the keyboard. Make sure you left your new custom model(s) in.
Do this for every model until the only remaining model or models is your custom one you imported in Max. Now, there should be bones from the Smash character still remaining in the scene, meaning it should have "Trans" as a root bone and your custom model or models beside it on the list:
(Note: several more meshes can be there depending on model.)
Now, move your custom model around and rotate it at proper angles that match up with the bones properly inside of the viewport. E.X 90 degrees, 180 degrees, to match up with the model. Scale it like in the tutorials above I told you to view and move it to fit to match with the bones of the Smash Fighter.
You can also scale and repose, and it is heavily recommended to make sure that the character is lying flat on the ground and not at an odd angle. Its also useful to move the model up and down so that the arms and limbs fit properly.
Don't be wary if your model doesn't completely fit, since the next step will go over that.
Vertexing the model, or editing the portions of the model, can help immensely in certain models that don't fit perfectly. The next step explains this since it'll be needed to fit the model to the scale of the bones
Before you start on the next step, I highly recommend using Noesis on your models first before rigging. To do this, select your model (or models) ONLY and go to Export > Export Selected > and set as fbx with the default export setting of scale being "1.0". Then, open noesis and locate the fbx file, right click on it, hit export, set to fbx, and it should export properly. Now delete your original meshes before importing, and import the fbx as usual but with a scale setting being 1.0. Then one by one for each mesh set the rotation of 90 to 0, or back to what it was originally.
4. Rigging the ModelRigging a model is the process of bringing life to a static 3D model. Some of you may know about T-posing or A-posing, which are both commonly used positions for rigging a model.
Select your model from the scene. If you have multiple models, select all the models and continue, unless you'd like to separately rig each model which can streamline the process and makes things easier.
Start off by selecting all of your models, or each by each, and on the right of the screen, there should be a "Modifier List" on the right side. What it is is it allows you to transform your models with certain attributes. Click on the "Modifier List" and scroll down to find "Skin." Select it and click on "Add."
In the new window that pops up, click on "Select," then "Select All" to highlight the entire skeleton:
Hold the CTRL key and click on TransN and RotN to deselect them, as they may cause issues while rigging. Anything else that is not a bone, deselect it.
Any bones that you do not need to rig onto, for example, Captain Falcon's scarf bones, deselect them. Or if you're rigging a character who doesn't need them, for example Rayman, deselect root bones for the bones you don't need to rig to and select bones inside of those if needed. E.X character has no left arm, you deselect RShoulderN, RArmN, and everything inside of that. Experiment to see what works for your model if you need to do so.
Hit "Select" in the bottom right corner of the window for bone selection.
Now you should see your chosen selected bones here, meaning you did it correctly.
If you are clueless on weighting and rigging in general, there are great tutorials to help you out with bones and rigging.
This tutorial has a great explanation on rigging and vertexing the models to fit better.
The main principle you want to follow is understand the fundamentals: Everything is balanced together between the bones, meaning that if you want a smooth stretch you would want a Half and Half value for limbs, i.e the Kneecap is half rigged to the knee bone and half to the Leg bone. This also means everything has to be rigged to something, of course, so don't just leave anything out.
I chose clips from 2 other Brawl tutorials to teach you how to vertex the model to fit and also how to make your rig and body work correctly. A big part about rigging is trial and error and thinking about how hard or soft vertices moving should be. Many other tutorials do exist out there, so if you are ever lost or confused by this tutorial in general, looking up more basics on 3DS Max and skinning will help you greatly, including other brawl rigging tutorials with tips and tricks to help you out. Remember! Don't give up!
It is very important to know how to rig and weight so your character has proper structure in-game.
Explaining of the finger bones and hand rigging. Drawn by Y2K.
If you do not understand this video tutorial, find other tutorials about rigging and weighting to help you out like I said above, and try different methods to make your models look proper in smash as I also said above, such as the Skin Wrap method (many tutorials exist on this) that parents the original model's rigging and slapping it over yours and using it as a base to work off of.
You can hit the F3 key to go into wireframe mode to see how the bones are lining up with your model. It will help you greatly throughout the rigging process.
Make sure your models all have a skin modifier applied and are rigged properly before exporting and testing. Errors you may get may happen due to some vertices not having any weights, ( you can see which ones specifically by moving around the Hip bone in 3DS max,) dead vertices (solvable with this 30 second video tutorial), or just being too high polygon of a model.
If you want to have expressions, you will either have to duplicate the existing facial expression and edit the models so they indicate different emotions, OR do flat texture expressions and re-UV a flat plane that fits over the face of said character (only can be done on those that use this method such as Toon Link, unless you're good at conserving texture space and editing models.) This is all explained in detailed tutorials on creating your own model outside of smash modding, but you can also soft select parts to make expressions without remodeling. Expressions, of course are entirely optional.
For naming these models and making them work in-game (I.E expressions), make the model names match up, and make sure to pay attention to the FAQ below that lets you know how to order them in the same way the original model did.
In 3DS Max, select a mesh and go to the Skin Modifier. Under the Advanced Parameters tab, find an option titled "Bone Affect Limit" and set it to 4 to prevent rigging issues. Do this for all of the meshes just in case. Also, underneath it, you want to hit "Remove Zero Weights" as well.
Now we want to smoothen normals before export. To do this, select each mesh individually and make an "Edit Normals" modifier, and right click on the scene and select "normal". Hit break, and then hit unify. Finally, toggle "use threshold" in the bottom right part of the screen, set the threshold to 0.001, and hit "selected." If you have expressions in the scene, instead of doing this individually, select multiple models at a time and follow the steps. This will prevent face seams from occuring.
Now that the rigging process is finally completed (note that this will likely not be your final rig and may take adjustments later on), we are nearly ready to export the model from our modelling program.
Make sure absolutely that your Skin modifier is on top as seen here. This can be done simply by dragging the skin modifier to the top or your other modifiers to the bottom.
Now we can export the model as
.fbx. Make sure you have these settings in your FBX Export window.
5. Model Importing / StudioSB UsageStudioSB is an application designed to mainly preview and import models, however it has other functions we're not going to get into right now. It is regularly updated every so often, download a new release.
Open the application and navigate to "File", "Import", then "Model". Locate and select your .fbx file to import it. Set Rotate90 to "True" and your model should appear. If you personally want to view animations for the sake of testing what the rig looks like, do file > import > animation > and locate the extracted animation folder and choose one to your liking.
All textures that your model uses must be exported in your preferred photo editing program (I use photoshop with intels dds plugin to save as bc7), and save them with the format that the original texture has. They must also retain the original dimensions, i.e 512x512. For those without photoshop, since paint.net brings some odd brightness issues, unless you absolutely need to, I recommend using TexFactory to compress textures. In some cases, TexFactory will not provide some formats, which will require you to use PNG replacement detailed below.
Now, in order to import the texture, you must use Switch Toolbox by KillzXGaming. File > Open any nutexb you want to import over. Then you want to right click on the texture on the sidebar and hit export as png, and then open the png in your preferred editing program and export as the proper dds format. BC7_SRGB is the common "diffuse" texture (while some characters use differently), while the normal map and prm map are commonly BC7_UNORM. In some editing programs that let you export as bc7, they may label the latter "BC7_LINEAR". Make sure your edited texture matches the same dimensions as those labeled in Switch Toolbox, and export the dds.
If you don't have Photoshop or many means to export DDS in the format you need, another option is to simply reimport the PNG with the PNG replace option. Sometimes, this wont work for some users with worse PCs.
Reimport it in Switch Toolbox, and export the texture by clicking on it and selecting "Save." They should be imported if you did everything correctly.
Note: if you want to make your model ink-compatible, you must make a Blend map for the blue channel of the normal map, with the darker parts being inked later on. This is doable by baking a model with the Noise diffuse in 3DS Max.
Now, you want to select your material from the character of choice. You cannot create new materials yet, so you must use a pre-existing one from your character. Some models will only have one material so you wont have to adjust anything.
Now, export the model into a new folder. Delete model.nusktb to avoid complications. You should now have two files that are ready for compressing with Smashpad plus your edited texture files (if you have any.) The instructions are in the description of the download page for smashpad at the top of this guide. The troubleshooting below can also help with this and many other parts of this guide, so be sure to use that in case anything messes up.
6.1. Game Softlock or CrashSometimes smaller files such as some
.numdlbfiles have no compression at all, meaning you can skip compressing it. To find out if your file needs or doesn't need compression, look at the file in CrossArc and check if the compressed and decompressed sizes are different. If they're different, you must compress it.
If your modded files before compressing are over the decompressed file size of the vanilla files, your mod will crash when put in-game as well. If you are unable to reduce contents and resources (which in most cases are solvable (by optimizing the model poly count, for instance) you will be out of luck until SaltyNX is usable for the general public.
If you have checked that both of these things arent true and everything seems to be O.K, it may possibly be you needing to recompress. If all else fails, reinstall Studio Smash Bros on the latest version in another directory and do a fresh reimport of your model.