I have left all social media and I am still getting messages about people wanting me to rip game file things and yes I am going to work on the drive and have things updated now that they’re not adding any more new content, but I also want to share my knowledge on how to do this so here we go.
This is the scary bit but I believe in you.
If you have a switch running
Atmosphère (Homebrew) this is
quite easy, grab the latest commit build of nxdt_rw_poc.nro
from the Github
releases page and put
that in the switch/
directory of your SD card
I wrote a whole guide and everything but instead I’m just going to link to this one by Dardel, follow the steps in “Dumping RomFS For Modding”
One thing to note, is that in the games I’ve tried, dumping the Update for the game also dumped everything from the base game as well, so you may just be able to skip that. Most games didn’t have “DLC Updates” either, but I’d check just to make sure.
The dump will create a lot of nested folders, /NCA FS/User/Extracted/[Game Info]/[Data or Program] #0/[Some Number]
but inside that numbered folder that
is the actual files you’d want.
You can also follow the guide in “Proceed to Dumping to PC”, which will give you an NSP file.
I believe switch toolbox can actually open up an NSP or an XCI file directly, however it’s a bit more convenient to dump the files.
You can load up the NSP into an emulator. The last builds of Yuzu and Ryujinx are archived around, and there are forks going around. Make sure it’s trustworthy, look around on Reddit, idfk.
I do prefer Ryujinx, but it can’t dump DLCs. So Yuzu has to do. Once a game
is in Yuzu (don’t start the game) right click on it, hit Dump RomFS
(twice)
and when it’s done it will show you where it extracted.
Here’s the final dump of the Update for Splatoon 3 looks like.
You can also, instead of dumping romfs, dump exefs, which has the game code. You’d have to decompile it to make sense of it though. Don’t ask me how, I don’t know, it’s very scary.
In both methods the dumped files are in odd locations, and you can move them however you want, I would keep the DLC files in separate folders. Here’s my file structure
If you’re going to be putting models into blender, I made a Blender add-on to import bfres models directly. From there, you can export it to whichever format you like.
I still think it’s a good idea to learn Switch Toolbox, it’s good for a lot more than just bfres files, and is more useful in a lot of ways.
Switch Toolbox is technically archived, however work is still being put into it here and there, so I would download the latest build from the Github.
I have also made my own fork which just has some small changes which I prefer, but also fixes for previewing Splatoon 3 models. You will have to build it yourself. I wont go into that here, but the regular Switch Toolbox works completely fine.
Once you have it open, you can just open the folder with the romfs, and browse around.
I’ll be talking about things from Splatoon here, but other games may have similar structures.
Models are in the Model
folder. Double click on anything to see it in the 3D
view.
The yellow octahedrons are animations bones. You can make them smaller or turn them off in Settings -> Main Settings -> Display Bones. You can also see that parts of her are just completely black, and this can be fixed in the same settings menu by turning off “Display Vertex Colors,” but other models may need it to look proper.
Every model has a textures folder, and you can view them in a big viewer but clicking the little 3D button at the top, otherwise it goes into a small preview in the bottom right
If you’ve dealt with normal maps before this may look odd, as normal maps are
usually a blue colour. You may also notice that some other textures like
roughness or ambient occlusion textures are transparent when they shouldn’t be.
This can be fixed by turning off View -> Use Component Selector
Some games will need this option ON however, just check to see which one looks like it makes more sense.
And now for the moment you’ve all been waiting for, if you open the “Models” folder, you can click Export, and it will save the model as a DAE.
This will also export the included textures, though I would actually recommend against exporting the textures like this. When exporting the model, turn off “Export textures.” Afterwards, right click on the “Textures” folder, and click “Export All Textures.”
This will avoid textures with the same name from other models being included instead, as well as including all the unused textures (some models have variants of textures for things like eyes, it will only export the first one otherwise).
If the textures worked better with the “Component Selector” off, disable the “Use Texture Channel Swaps” option.
If possible, I would suggest using Microsoft DDS (.dds)
textures as the “bntx”
format that the textures are originally in use the exact same compression
methods so you get the smallest size with no loss in quality. Otherwise png is
good and more easily usable.
There can be multiple models inside of each “Model.” You can export all at once
using Tools -> Batch Export Models
. You can do this for as many different
files at a time. Once again I would recommend turning off texture exporting, and
doing it separately, with Tools -> Batch Export Textures (All Supported Formats)
. This also is much faster for some reason.
If the .dae and the textures are in the same folder, you should be able to open it in any software that supports it. I would recommend converting it to an FBX first. Blender for instance has a much better FBX importer, while the DAE importer is in the process of being removed. The creator of FBX has their own converter but no libraries or any sort of open documentation for it so this is what we get instead of being able to directly export to it, lovely.
Anything UI related is either in the “Layout” or “UI” folders. Layout archives contain all the info about what textures go where on the screen, how things are “laid out.” The support for Splatoon 3 layout files aren’t too great, I think the developer is working on a Layout Library, so check up on that once in a while.
Particles are in the “Effect” folder, however toolbox will not work if you try to open them. The file is compressed, so you can use Tools -> Compression -> ZSTD -> Decompress, or just open it in 7zip and decompress it with that. Once you have that you can open it in a hex editor, find “VFXB” and delete everything that comes before it. Save the file, rename the extension to .ptcl, and Toolbox should be able to open it. It’s crude but what can you do.
The text is in the “Mals” folder, anything from dialogue to UI text, it should all be in there. For Splatoon 3 they are in “sarc” files, but those can be opened with switch toolbox. Inside you’ll see a lot of “msbt” files, and while switch toolbox can open them, other tools do the job better, such as MSBT Editor. You’ll probably have to export the files first.
I’ve not personally used it, as for Splatoon 3, LeanYoshi dumps all the text out every update, along with a lot of other neat stuff, if you go looking around that Github.
You’re gonna need foobar2000 along with the vgmstream component for it.
After you install that, you should just be able to play anything in
Sound/Resource/Stream
folder. For Splatoon 3 this has all the music, and a
couple ambient sound effects. The rest of the sound effects are in the
“Resource” folder, all as .bars.zs files. BARS files are packs of bfwavs, so you
can use a tool like BARSReaderGUI
to extract them all into folders.
Some things will cause it to crash, usually if something inside of the BARS file is also in the “Stream” folder, it will set the length of the file to -1 and the program doesn’t know how to handle that. I forked it to deal with this properly, when batch extracting, just exporting an empty file if it encounters it, but once again, you have to build it yourself.
Ripping models yourself is a really good skill to know, Switch Toolbox tells you a LOT about the model that you can’t just get from a ripped model. What colours certain things are, exactly what values certain things have, etc.
There’s a lot of demand for ripped assets and like barely a handful of people who are doing it, I just think this could help out a bunch for everyone if even a few more people started doing it.
The only reason I started splatoongamefiles was just because I noticed nobody else did it, and I found it fun. It’s a bit of a challenge to learn everything about ripping models and stuff. Everything about switch toolbox and how everything works was just from fiddling around and reading things online, you don’t have to code anything at all really.
It’s cool and I would recommend trying it out.
If there’s anything which you need more help with send me an ask on Tumblr and I’ll eventually see it and update this guide to be a bit clearer.