Tutorial
Updated
How to use Sonic Mania PC mods on Switch (revised)
A year ago, a thread was made on how to mod Sonic Mania with LayeredFS by @Knucklesfan: https://gbatemp.net/threads/how-to-run-sonic-mania-mods-for-pc-on-switch.507925/
The program attached to the thread was very useful for the base version of the game, but now since Plus has released, it's a bit more confusing and outdated. So, I wanted to make a revised tutorial on how you can mod Sonic Mania with updated tools. LayeredFS already comes pre-packaged with the latest versions of SXOS and Atmosphere, so if you have any of those two, you're good! I'll be showing how to do it on Atmosphere, but I'm sure SX has the same kind of file structure for LayeredFS. ReiNX users will have to use this tutorial with the latest version.
Requirements:
Make sure you've updated to the latest version of Sonic Mania (1.0.4). It's best to also have the Plus DLC because most mods now replace certain files only accessed by having the Plus DLC. You also need to obtain access to "Data.rsdk." It's a compressed file for Retro Engine (the engine Sonic Mania runs on) which contains all media data for Sonic Mania. I'll explain what to do with it further down.
Note: I expect you've got custom firmware on your Switch and you know how to inject a payload and launch hbmenu. If you're new to the scene, use this guide or the helpful guides from many members of GBATemp.
FYI:
Mods with DLL files will not work. DLL files need an external program/dependency to function, otherwise you'll end up with a black screen. Only use mods that overlay existing files in the Data.rsdk folder. If you want to use add-ons, use the PC version.
Alright, let's get started
Dumping your RomFS:
First, you'll want to dump your RomFS from a legally owned copy of Sonic Mania, either installed internally or externally on your Switch, or from your cartridge. This is because the file we want to use, "Data.rsdk," is located in RomFS folder when dumped. I wouldn't recommend using the rsdk file from a Steam bought version of Sonic Mania, but you can try since it has essentially the same data files as the Switch version, but to make it easy and safe, use the one from your Switch. You'll need the latest version of the homebrew app nxdumptool.
If you have Kosmos 14.2, this is already pre-packaged with the latest version. If you don't have it, get the latest release and place the .nro in the /switch folder on the root of your microSD.
Once done, launch hbmenu and locate nxdumptool. On the main menu, you'll see "Dump gamecart content" and "Dump SD card / eMMC content." Choose the one you want for what you have, and make sure you've located Sonic Mania if it's installed on your Switch. Both of these have "RomFS options." This is the one you want to go to. Once in RomFS options, make sure you use your installed update file and not the installed DLC file. The update file has the updated Data.rdsk file that's used for the latest version of Sonic Mania, and the DLC file only has the DLC key; used to authenticate the DLC access. Your "Use update/DLC" option should have the update file with the title ID of Sonic Mania Plus (01109AA000FAA800), a version number, and "(UPD)" at the end. Once your update file is selected, hit "RomFS section data dump" and let it dump until it's finished. Once it's done, you can exit out by pressing + on your controller.
Locating your Data.rsdk:
Take out your microSD, insert it into your computer, and locate your switch folder. You should see a folder called "NXDumpTool." Click it, inside is the RomFS folder with a folder called "Sonic Mania [VERSION NUMBER] (01109AA000FAA800) (UPD)," and it has the Data.rsdk file you need to continue on. Ignore the shaders folder, it's not needed. Now that you have the Data.rsdk, copy it into a new folder onto your desktop or where ever you want, but keep the original .rsdk in your microSD.
Unpacking your Data.rsdk:
There are many great rdsk decrypting programs out there, but for this you should be using RetroED.
This is because it can unpack and repack rsdk files easily, and it works with rsdkv5 (the version of your rsdk file). Download the latest release, extract the zip, and run the RetroED exe file in located in the unzipped folder. You should see a GUI with tabs on the top. Click on "Engine," then "RSDK Unpacker" or press Ctrl + Shift + U. Once you're on the unpacker settings menu, click on "Select data file" and locate which folder you placed your Data.rsdk file, and make sure you go to the bottom right and choose "RSDKv5 Data Files (* .rsdk)." Find your Data.rsdk, double click it, and it'll load all the files stored on the left side window on the unpacker menu (can take a few seconds). Once they're visible in that window, press "Extract data file" and locate it in the same folder where your Data.rsdk file is, and name it "Data." Wait, and you'll get a Data folder located in the folder you made with Data.rsdk. You'll also get a folder named "Unknown Files." Don't worry about this folder, it just stores an unused sound effect that doesn't support unpacking.
Getting your mod:
You've extracted the rsdk file and got a data folder, great! Now it's time for mods. Find a good mod that's pretty light and is guaranteed working fine by the modding community. You can find mods on Gamebanana, YouTube, or anywhere that hosts mods for Sonic Mania. Getting it from the original creator's page is the best way. Once you find and download your mod, extract it, and you'll see a Data folder inside of the mod folder you have. All you need to do is overwrite your extracted Data folder with the Data folder from your mod. Confirm the mod has overwritten your extracted Data folder, and that's it. Any other files in the mod folder that are placed with the mod Data folder you can ignore.
Packing your Data folder:
Make sure you have your mod in your extracted Data folder, you're going to want to open RetroED again. Go back to the extract menu with Ctrl + Shift + U and go down to where it says "Compress data file." Click on "Select folder," find your Data folder, click it, make sure it's selected, and then click open. The media files should show up in the window once again. Now press "Build data file." A GUI should pop up asking which version of RSDK you want, select "RSDKv5." You'll get taken to your file explorer once again, go to the bottom and select "RSDKv5 (* .rsdk)" and name it "Data." Don't overwrite your pre-existing Data.rsdk, locate this new one somewhere else, maybe in a new folder or your desktop. Once you find your location, click okay, and you'll see a new Data.rsdk. Close out of RetroED. It's now usable for your LayeredFS.
Setting up your mod:
Take your new Data.rsdk with the mod inside, and go into your atmosphere folder, then click titles, and find or create a file with Sonic Mania's title ID, "01109AA000FAA000" or the Plus title ID if you have a cartridge. Make a folder called "romfs" in the folder with the title ID. In the romFS folder, place your modded Data.rsdk. You can also use Simple Mod Manager to toggle the Sonic Mania mod on or off.
Boot up your Switch, open Sonic Mania, and you should see your mod has worked and is playable on your Switch!!!
Hopefully this helped you out, and thanks for reading!
ʰᵒʷ ᵐᵃⁿʸ ᵗᶦᵐᵉˢ ᵈᶦᵈ ᶦ ˢᵃʸ ᵈᵃᵗᵃ ᵃⁿᵈ ʳˢᵈᵏ ˡᵒˡ
The program attached to the thread was very useful for the base version of the game, but now since Plus has released, it's a bit more confusing and outdated. So, I wanted to make a revised tutorial on how you can mod Sonic Mania with updated tools. LayeredFS already comes pre-packaged with the latest versions of SXOS and Atmosphere, so if you have any of those two, you're good! I'll be showing how to do it on Atmosphere, but I'm sure SX has the same kind of file structure for LayeredFS. ReiNX users will have to use this tutorial with the latest version.
Requirements:
Make sure you've updated to the latest version of Sonic Mania (1.0.4). It's best to also have the Plus DLC because most mods now replace certain files only accessed by having the Plus DLC. You also need to obtain access to "Data.rsdk." It's a compressed file for Retro Engine (the engine Sonic Mania runs on) which contains all media data for Sonic Mania. I'll explain what to do with it further down.
Note: I expect you've got custom firmware on your Switch and you know how to inject a payload and launch hbmenu. If you're new to the scene, use this guide or the helpful guides from many members of GBATemp.
FYI:
Mods with DLL files will not work. DLL files need an external program/dependency to function, otherwise you'll end up with a black screen. Only use mods that overlay existing files in the Data.rsdk folder. If you want to use add-ons, use the PC version.
Alright, let's get started
Dumping your RomFS:
First, you'll want to dump your RomFS from a legally owned copy of Sonic Mania, either installed internally or externally on your Switch, or from your cartridge. This is because the file we want to use, "Data.rsdk," is located in RomFS folder when dumped. I wouldn't recommend using the rsdk file from a Steam bought version of Sonic Mania, but you can try since it has essentially the same data files as the Switch version, but to make it easy and safe, use the one from your Switch. You'll need the latest version of the homebrew app nxdumptool.
If you have Kosmos 14.2, this is already pre-packaged with the latest version. If you don't have it, get the latest release and place the .nro in the /switch folder on the root of your microSD.
Once done, launch hbmenu and locate nxdumptool. On the main menu, you'll see "Dump gamecart content" and "Dump SD card / eMMC content." Choose the one you want for what you have, and make sure you've located Sonic Mania if it's installed on your Switch. Both of these have "RomFS options." This is the one you want to go to. Once in RomFS options, make sure you use your installed update file and not the installed DLC file. The update file has the updated Data.rdsk file that's used for the latest version of Sonic Mania, and the DLC file only has the DLC key; used to authenticate the DLC access. Your "Use update/DLC" option should have the update file with the title ID of Sonic Mania Plus (01109AA000FAA800), a version number, and "(UPD)" at the end. Once your update file is selected, hit "RomFS section data dump" and let it dump until it's finished. Once it's done, you can exit out by pressing + on your controller.
Locating your Data.rsdk:
Take out your microSD, insert it into your computer, and locate your switch folder. You should see a folder called "NXDumpTool." Click it, inside is the RomFS folder with a folder called "Sonic Mania [VERSION NUMBER] (01109AA000FAA800) (UPD)," and it has the Data.rsdk file you need to continue on. Ignore the shaders folder, it's not needed. Now that you have the Data.rsdk, copy it into a new folder onto your desktop or where ever you want, but keep the original .rsdk in your microSD.
Unpacking your Data.rsdk:
There are many great rdsk decrypting programs out there, but for this you should be using RetroED.
This is because it can unpack and repack rsdk files easily, and it works with rsdkv5 (the version of your rsdk file). Download the latest release, extract the zip, and run the RetroED exe file in located in the unzipped folder. You should see a GUI with tabs on the top. Click on "Engine," then "RSDK Unpacker" or press Ctrl + Shift + U. Once you're on the unpacker settings menu, click on "Select data file" and locate which folder you placed your Data.rsdk file, and make sure you go to the bottom right and choose "RSDKv5 Data Files (* .rsdk)." Find your Data.rsdk, double click it, and it'll load all the files stored on the left side window on the unpacker menu (can take a few seconds). Once they're visible in that window, press "Extract data file" and locate it in the same folder where your Data.rsdk file is, and name it "Data." Wait, and you'll get a Data folder located in the folder you made with Data.rsdk. You'll also get a folder named "Unknown Files." Don't worry about this folder, it just stores an unused sound effect that doesn't support unpacking.
Getting your mod:
You've extracted the rsdk file and got a data folder, great! Now it's time for mods. Find a good mod that's pretty light and is guaranteed working fine by the modding community. You can find mods on Gamebanana, YouTube, or anywhere that hosts mods for Sonic Mania. Getting it from the original creator's page is the best way. Once you find and download your mod, extract it, and you'll see a Data folder inside of the mod folder you have. All you need to do is overwrite your extracted Data folder with the Data folder from your mod. Confirm the mod has overwritten your extracted Data folder, and that's it. Any other files in the mod folder that are placed with the mod Data folder you can ignore.
Packing your Data folder:
Make sure you have your mod in your extracted Data folder, you're going to want to open RetroED again. Go back to the extract menu with Ctrl + Shift + U and go down to where it says "Compress data file." Click on "Select folder," find your Data folder, click it, make sure it's selected, and then click open. The media files should show up in the window once again. Now press "Build data file." A GUI should pop up asking which version of RSDK you want, select "RSDKv5." You'll get taken to your file explorer once again, go to the bottom and select "RSDKv5 (* .rsdk)" and name it "Data." Don't overwrite your pre-existing Data.rsdk, locate this new one somewhere else, maybe in a new folder or your desktop. Once you find your location, click okay, and you'll see a new Data.rsdk. Close out of RetroED. It's now usable for your LayeredFS.
Setting up your mod:
Take your new Data.rsdk with the mod inside, and go into your atmosphere folder, then click titles, and find or create a file with Sonic Mania's title ID, "01109AA000FAA000" or the Plus title ID if you have a cartridge. Make a folder called "romfs" in the folder with the title ID. In the romFS folder, place your modded Data.rsdk. You can also use Simple Mod Manager to toggle the Sonic Mania mod on or off.
Boot up your Switch, open Sonic Mania, and you should see your mod has worked and is playable on your Switch!!!
Hopefully this helped you out, and thanks for reading!
ʰᵒʷ ᵐᵃⁿʸ ᵗᶦᵐᵉˢ ᵈᶦᵈ ᶦ ˢᵃʸ ᵈᵃᵗᵃ ᵃⁿᵈ ʳˢᵈᵏ ˡᵒˡ
Last edited by ,