06-15-2024, 04:29 PM
(03-22-2023, 05:36 PM)DJ_Fox11 Wrote: Tutorial last updated: 28/07/23
*You will need to source a usable NSP/XCI of the game yourself!
*This tutorial will not contain instructions of installing/setting up Ryujinx and Yuzu, it is assumed you already know/have.
*A Mario + Rabbids Sparks of Hope guide is coming very soon!
Here you will find a helpful in-depth tutorial/guide for extracting models from Mario + Rabbids Kingdom Battle!
You will learn:
- How to extract the base game
- Importing and converting the ripped models
- Converting textures to get roughness, metallic, normal etc.
- Prepareing the models for upload.
You will need:
- A NSP/XCI of the game (NSP: Nintendo Submission Package. XCI: Game Cartridge Image)
- Yuzu/Ryujinx (Extracts the base game)
- QuickBMS (Extracts the games files using the following the following script)
- Noesis (Converts the models using this Python script)
- Switch Toolbox (Extracts textures)
- Texture Remix (Converts textures to be get roughness, metallic, emission, normal etc. Created by the great Peardian)
- NormalMapDAConverter (Converts the grey normal map to have colour)
- Blender, or any modelling software of choice (Testing/viewing the model, creating the icons for submission)
- Java (Requiered for TextureRemix to run)
Extracting the Game
For Yuzu
- Make sure Mario + Rabbids Kingdom Battle appears in the games list.
- Right-click the game and click Dump RomFS > Dump RomFS.
- A new window should appear asking how you would like the game dumped. Selected "Full". Wait for the extraction to be complete.
- A window should appear in File Explorer for the dumped game. Navigate to sdf > nx > data to see a long list of .SDFDATA files.Keep note of the directory for later.
For Ryujinx
- Make sure Mario + Rabbids Kingdom Battle appears in the games list.
- Right-click the game and select Extract Data > RomFS, then choose a location for the dump.
Extracting the Games Files
- Extract the downloaded .zip file called quickbms.zip, this is the tool used to extract all those .SDFDATA files.
- In the opened folder, right-click on quickbms.exe and then click "Run as administrator." Click "Yes" if prompted.
- Once opened, you will be prompted to select a .bms script. Locate the downloaded script called "ubisoft_sdf.bms".
- Another window will open up, asking you to select the files to extract. Go to the games dumped directory in the still-open window. Select all the files there with CTRL+A and click open.
- Lastly, another window will open asking where you would like the game files to be extracted to. Select a location, preferably in an easy-to-find spot.
- QuickBMS will extract a little bit of the files, and then you will be prompted to select what you want to do with duplicate files. Type "r" for the 4th option.
- Stop the extraction process when files begin to duplicate. This can be done by closing the application.
- Go into the folder where all the game files should be that were just extracted.
- Open up that folder and go to the "moria" folder. Once there, delete everything inside it except the "baked" folder. Everything else isn't required, and it saves space.
Converting the Models
- Extract the downloaded .ZIP called "noesis4466.zip.
- Inside that open folder, go to the following directory: plugins > python.
- Keep that folder open, and drag and drop the downloaded Python script into it.
- Now boot up Noesis64.exe.
- On the left-hand side, you will see a directory of your extracted files from earlier.
- Inside the "baked" folder, go to the "art" folder. The folders that contain important models are: "animation", "cinematics", "design" and "ui".
- In those 4 folders, browse around to find the models you like. The models will be in a .MMB format.
- Once you've found a model you like, it should open in the Noesis viewer.
- Export the chosen my model by right-clicking it and clicking "Export".
- A new window will open to export the model. Click browse and find a suitable spot for it. E.g. your Desktop.
- Make sure in the export window that "Main output type" is set to .FBX. Then click "Export"
- *Note that none of the exported models have rigs. If the export model does, delete it, they are very broken.
Converting the Textures (Switch Toolbox)
- Navigate back to the extracted game.
- Go back to the games extracted files and go to: moria > baked > art > characters. This folder holds all the textures for characters, enemies, and npc's.
- Go to the folder that corresponds with the model you extracted. For instance, if you export Mario, he will be in heros folder. The same goes for the characters folder.
- Copy all the .DDS textures to the same folder where the model was exported.
- Extract the downloaded .ZIP called "Toolbox-Latest.zip" This is the software used to convert the .DDS textures to .PNG.
- In the Toolbox-Latest folder, open Toolbox.exe.
- Go to File > Open (Folder) in the top menu bar.And select the folder where your extracted model and textures of choice are.
- A file browser, similar to Noesis, should be visible in the left pane.
- Double-click on all the .DDS file to make them viewable. Then right-click each one and click "Export".
- Save the exported texture as a .PNG and export it into the folder of your chosen model and textures. Do this for all textures.
Converting the Textures (TextureRemix - Roughness, Metallic)
- Now that all the textures are exported as .PNG's, you will notice the normal maps are in greyscale and there are weird green textures. The green textures are roughness and metallic textures, all grouped together in one image. The ones that need to be converted will have an "m" at the end of the file name. E.g. "her_mario_01_body_m.dds"
- Extract the downloaded ZIP called "Texture Remix 1.2.0.zip". In that folder, open TextureRemix.jar.
- Once the app is open, drag and drop the textures we need into the box, or click "Load Images(s)" to select them manually. Only four images can be imported in a single window.
- Specify a place for the output folder. Make it the same directory as the rest of the files you've extracted/exported. It is necessary to export the textures.
- Once the textures have been imported, click the three orange bars to extract each colour channel from the image. That is what gives it its green colour.
- In the folder where the exported textures are. You should see new grey textures as well as black and white ones.
- The textures that are solidly black and white are not needed; they can be deleted. Whereas the textures that have a combination of black and white are metallic maps, and the grey ones are roughness maps.
Converting Textures (TextureRemix - Normal Maps)
- Now for the normal maps. I would recommend you open up a new window of Texture Remix so you don't get confused with the previously loaded textures.
- Just like before, simply drag and drop the normal map textures into the open box, or select them manually via the "Load Image(s)" button.
- Now that your image has loaded, you will see four boxes: red, green, blue, and grey (alpha). You'll want to click on the green box and then click on the other green box directly below it to link them together.
- Do the same for the grey alpha box, but instead of clicking on the other grey box, click the red one. So now the alpha channel is swapped with the red channel.
- Lastly, simply select the checkbox below the blue box; this will make the blue channel completely white.
- In case you get lost, I have attached an image of what the layout should look like.
- Once everything has been setup, click "Save Images" to save the fixed normal map to your desired location.
Importing the Model (Blender)
- Once you have installed and opened Blender, go to the top menu bar and go to: File > Import > fbx (.FBX). In the newly opened window, choose the .FBX model you exported from Noesis earlier.
- Once your model imports, you'll notice that it is very small. Just delete all the Armature objects in the "Outliner" pane on the right. The rigs are broken anyway.
- Select all of your models' objects and go to "Object Properties" and make sure the X, Y, and Z scale values equal 1.
- Next, head over to the "Shading" workspace. All exported textures will be assigned here.
- You will also notice the model is very purple and shiny. The material properties for Noesis models will default to max roughness and max metallic. The purple is the color Blender assigns to objects that lack textures.
- Click the open texture button and select the texture associated with the selected object. Make sure to select the image with a "d" in it. This means "Diffuse".
- After that, add a new "Image Texture" node and select the grey texture, this is the roughness texture. Plug the "Colour" output from the roughness texture into the "Roughness" value of the "Principled BSDF" node. Make sure to switch the "Colour Space" of the texture to "Non-Colour".
- If metallic and emission textures are present, repeat the previous step.
- Get another "Image Texture" node and select the purple normal map.
- Get a node called "Normal Map" and plug the "Colour" of the normal map into the "Colour" of the normal map node. Then plug the "Normal Output" of the "Normal Map" node into the normal value on the "Principled BSDF".
- Select all of the models objects and go File > Export > Wavefront (.obj). And save it in a safe spot.
FAQ
Q. I get a big Python Traceback error when previewing a model in Noesis. What is that?
A. Majority of models, for an unknown reason need to merged together. In the folder where the model is located you will see the main model E.g. "chr_her_mario_tpose_01.mmb, then you will also see "chr_her_mario_tpose_01_00000001.mmb. You then need to download and install an app called HxD. Open up the larger file first in HxD. (The one with _00000001) and copy all of the hex code you see. Then open the second main smaller file in HxD, and paste the copied hex to bottom of the currently opened one. Save the file and you should be good to go!
Q. Some textures never stop loading when previewing in Switch Toolbox. How do I fix it?
A. These file are not actually textures, they are more placeholder textures. This is only present with the "m" textures and normal maps as values for those proporties can be set in-game.
Q. There are duplicate textures with _00000001 in the filename. Can they be deleted?
A. This happens if the extraction process from the second stop was left for too long. QuickBMS doesn't know when to stop extracting so it just kept duplicating. These can be deleted.
Q. What about Sparks of Hope, will this guide work with that game?
A. As of now, the script used in QuickBMS doesn't work with Sparks of Hope, a new guide is coming soon.
Q. QuickBMS just flashes command prompt for a split second, why does it not open?
A. Make sure you are running quickbms.exe as Administrator, and also make sure you have the UAC prompt enabled.
Final Words
There you have it! A full in-depth guide to extracting models from Mario + Rabbids Kingdom Battle! This took a very long time to write up. So I hope you're thankful! If you have any questions reply to the post and I'll try my best to help!
DJ~
Hey hello! I don't know if you are still online but I just want to say thank you so much for this tutorial! It's really helping me to understand how to get the resources from Mario + Rabbids.
Although I've sadly ran into a problem, the link to the python script for Noesis doesn't work anymore and I couldn't find the script on the Wayback machine either. If you maybe have another link to it or a copy of the script to replace it that'd be very appreciated since I don't know if I can find the python script anywhere else.