1. raine_em

    OP raine_em Advanced Member
    Newcomer

    Joined:
    Aug 17, 2019
    Messages:
    62
    Country:
    Canada
    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 :D

    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 raine_em, Jan 26, 2020
  2. raine_em
    This message by raine_em has been removed from public view by x65943, Oct 13, 2019, Reason: Done :).
    Oct 13, 2019
  3. Hamdan

    Hamdan GBAtemp Regular
    Member

    Joined:
    Dec 14, 2018
    Messages:
    228
    Country:
    Pakistan
    Pretty Cool!

    — Posts automatically merged - Please don't double post! —

    Damn Cool!
     
    raine_em likes this.
  4. Shadic12

    Shadic12 Newbie
    Newcomer

    Joined:
    Jul 2, 2016
    Messages:
    4
    Country:
    United States
    I just wanted to know how do you run a preexisting mod with add-ons? For example I have the Modern Sonic mod but I want him to have his boost and homing attack ability which are dll files. how do I go about applying them on the Switch? Here is the video of what I am talking about:
     
  5. raine_em

    OP raine_em Advanced Member
    Newcomer

    Joined:
    Aug 17, 2019
    Messages:
    62
    Country:
    Canada
    I don't know, but DLL files are usually just used just for executables and are separate from the data of the main game. Better off just using them with the PC version.
     
  6. Shadic12

    Shadic12 Newbie
    Newcomer

    Joined:
    Jul 2, 2016
    Messages:
    4
    Country:
    United States
    Alright I will use it on the PC version thanks for the response.
     
  7. Yoni Arousement

    Yoni Arousement GBAtemp Regular
    Member

    Joined:
    Mar 3, 2009
    Messages:
    158
    Country:
    United States
    Only mods that don't change code (or anything involving DLL's?) can work in the Switch version.
     
  8. UNREALWINS

    UNREALWINS Member
    Newcomer

    Joined:
    Aug 26, 2016
    Messages:
    28
    Country:
    Brazil
    I tried all day to make some mod work but nothing worked. It only gave black screen. I tested with version 1.04 installed, uninstalled, reinstalled and nothing worked.
     
  9. ristar

    ristar Member
    Newcomer

    Joined:
    Jul 29, 2012
    Messages:
    19
    Country:
    United States
    I’m having trouble getting this working - I put all the requisite files and directories into /atmosphere/contents because of the revised ah Atmosphere handles mods, but Sonic Mania still doesn’t load the repacked Data file when starting up.
     
  10. raine_em

    OP raine_em Advanced Member
    Newcomer

    Joined:
    Aug 17, 2019
    Messages:
    62
    Country:
    Canada
    Which mod are you using? If it has a DLL file, a black screen will show up because the DLL file needs a external program to function. Since such a thing doesn't exist yet on Switch, you'll have to use mods that only replace existing files.

    Hm, I only know of /atmosphere/titles/[title ID] as the directory for layeredfs to recognize mods. I don't remember that directory being used. Then again, I haven't been active in the Switch homebrew community for about a month now. Did you try the directory in the tutorial, or tell the revised directory the title id?
     
    Last edited by raine_em, Jan 18, 2020
  11. ristar

    ristar Member
    Newcomer

    Joined:
    Jul 29, 2012
    Messages:
    19
    Country:
    United States
    I tried the titles folder first, yeah - that didn’t seem to work, either. Also what’s this about a revised title id? Nxdumptool gave the same ID as was listed in the initial post, so that’s what I used for the folder name.
     
  12. raine_em

    OP raine_em Advanced Member
    Newcomer

    Joined:
    Aug 17, 2019
    Messages:
    62
    Country:
    Canada
    I think I got confused when you said revised in your first post, sorry. Did you use the Plus ID or the Base ID (Plus: 01109AA000FAA800) (Mania: 01109AA000FAA000).
    I only have the digital version, so I used 01109AA000FAA000. The cartridge version might use 01109AA000FAA800 or 01109AA000FAA000 but I don't know since I don't have it. Sorry if this is confusing.

    Just try 01109AA000FAA000 instead of the ID that I said that was tied to the cartridge which might just be the ID of the update. Tell me if it works and I'll update the post.
     
  13. lisalover1

    lisalover1 Member
    Newcomer

    Joined:
    Oct 3, 2008
    Messages:
    36
    Country:
    United States
    No such luck - I've tried both my cartridge and download versions with both Title IDs, in both the /titles and /content folders, and the mods still don't load...
     
Draft saved Draft deleted
Loading...

Hide similar threads Similar threads with keywords - (revised), Switch, Sonic