Ads keep us online. Without them, we wouldn't exist. We don't have paywalls or sell mods - we never will. But every month we have large bills and running ads is our only way to cover them. Please consider unblocking us. Thank you from GameBanana <3

Guide to Getting Started Modding Ultimate - A Tutorial for Super Smash Bros. Ultimate.

1. Introduction

This tutorial will be guiding you from scratch on how to begin modding Super Smash Bros. Ultimate.

1.1. Before Getting Started

This tutorial will contain the most up-to-date information on preparing to mod Ultimate.

NOTICE: As you read the guide directly below, please keep in mind that creating an emuMMC is not required and generally not necessary for standard custom firmware usage. It is especially not recommended to use it online as opposed to sysMMC. If you would like to create one anyway, you may do so as you please.

If you are new to Switch hacking, please read up on this guide which will guide you from stock to custom firmware. Be sure to read the FAQ in that guide to answer some questions you may have regarding Switch hacking.

A microSD card formatted to FAT32 is recommended to avoid filesystem corruption. If you have the option to change the allocation unit size, set it to the maximum value of 64 KiB/65536 bytes. Windows by default is unable to format SDXC cards to FAT32, so please use the third-party software guiformat to do so.

To clear up the fear-mongering and misinformation spread throughout the Switch modding community regarding online activity with a modded Switch, please take a look through this GameBanana thread detailing what is safe and what isn't for both custom firmware usage and Super Smash Bros. Ultimate modding.

Having issues with the tutorial? Please consult me in the comments or join the Smash Ultimate Modding Hub Discord server and ask in the help channels there.

1.2. DISCLAIMER

I assume no responsibility for any kind of ban or brick by following this tutorial. You take the risk by running the unsigned software. If you follow the instructions exactly as written, you will be fine.

2. Requirements

  • A microSD card of any capacity (a 32 GB microSD card is required if you plan to dump the game for mod creation)
  • Skyline
  • ARCropolis

2.1. Preparing the microSD Card

  1. Download and extract skyline.zip from the Skyline page.
  2. Drag the exefs folder from the extracted .zip file to sd:/atmosphere/contents/01006A800016E000/. If you do not have any part of this directory, create it.
  3. Download and extract release.zip from the ARCropolis page.
  4. Drag the atmosphere folder from the extracted .zip file to the root of your microSD card. Do this even if you already have an atmosphere folder, but do not drag atmosphere onto itself!
  5. Create your mod directories. These are explained in the chapter directly below, so create the directory you take preference in. You may have both if you wish. Any folders you do not have already, create them (this applies to the rest of the guide).

3. Adding Mods

3.1. Organized Layout (ARCropolis)

This layout allows for the sorting of multiple mods within an individually named mod folder. An example directory is given below, starting from the root of the microSD card:
sd:/ultimate/mods/Shiny Mewtwo (Default Eye)/
"Shiny Mewtwo (Default Eye)" is the named mod folder, and within it is the mod content's root arc folders (effect, fighter, stage, stream;, ui, etc.). You can have as many of these named mod folders as you want within the sd:/ultimate/mods/ directory and they can be named anything. 

Please make sure the named mod folder doesn't have one or more named mod folders within it. This will prevent ARCropolis from loading any mod content in that folder.
Do also note that if two mod folders replace the same file(s), the last iterated mod folder will take priority.

3.2. All-in-One Layout (ARCropolis)

You can also add all of your mod content into one single directory if that is your preference. The directory for that is as follows, starting from the root of the microSD card:
sd:/atmosphere/contents/01006A800016E000/romfs/arc/
Inside of the arc folder is where you would place the mod's root arc folders (effect, fighter, stage, stream;, ui, etc.).

3.3. Skyline Plugins

NOTICE: Only necessary to follow if your mod comes with an .nro plugin designed for Skyline.

1. Add your plugin .nro file(s) into the following directory, starting from the root of the microSD card:
sd:/atmosphere/contents/01006A800016E000/romfs/skyline/plugins/
2. To load these plugins in-game, simply launch the game.

3.4. SaltyNX Plugins

NOTICE: Only necessary to follow if your mod comes with an .elf plugin designed for SaltyNX.

  1. Download the latest release of SaltyNX here. Extract the .zip file, merge the atmosphere folder with the one on the root of your microSD card, and add the SaltySD folder to the root of your microSD card.
  2. Inside of the SaltySD folder, create a new folder named plugins, and inside of that folder, a new folder named 01006A800016E000. Inside of that folder is where you're going to place your plugin .elf file(s).
  3. To load these plugins in-game, simply launch the game. Holding L to prevent mods from loading will not prevent SaltyNX from executing these plugins as SaltyNX is not a part of LayeredFS whatsoever.

4. Updating Compressed Mods

NOTICE: Only necessary to follow if you downloaded a mod that was uploaded roughly around late 2019 and has not been updated since then.

Compressed mod files can be recognized by identifying a hexadecimal value as the file's name (e.g., 0x14C2014A8). These files are compressed with Zstandard and are named after their data offset in the game's data.arc file. If you do not know what that means, don't worry about it. What you do need to know is that these offsets are generally version-specific, meaning they are not supported on different game versions. ARCropolis is unable to read files named by offset and without a valid file path, so they will need to be updated to conform with modern standards.

  1. You will need a Python script called OffsetModUpdater. This Python script decompresses every compressed mod file and reorganizes everything into a structure understood by ARCropolis.
  2. Download and install the latest Python 3 release if you haven't already.
  3. Move your target mod folder to be in the same directory as the Python script. Double-click the OffsetModUpdater.py script. If it asks to install Zstandard, install it.
  4. When asked for the mod folder path, drag the folder you want to update into the Command Prompt/terminal window.
  5. When asked for the mod version, input the version that the mod's offsets were made for (e.g., 1.0.0). Usually the submission page for the mod says what version the offsets were for, so use that information.
  6. The new mod folder will output to wherever you have the script. The folder inside of output will contain the named mod folder you can use for mod installation.

5. Running Mods

To run mods, simply launch Super Smash Bros. Ultimate while in custom firmware. If you are using ARCropolis and this is your first time installing it, you should receive a popup thanking you for installing ARCropolis. Close this popup and allow the game to launch. If all went well, you should see ARCropolis' version on the title screen.

As of ARCropolis 3.0.0, you will need to enter the in-game mod manager to enable your mods. This menu can be found within the in-game eShop button on the main menu. There is unfortunately no way to enable all mods at once, but enabling one mod is a one-time process. This behavior may be changed in the future.

If no mods have loaded for one system or another, please see the first FAQ entry titled "Why are my mods not working?"

6. Conclusion

By the end of this guide, you should be comfortable with the basic process for modding Super Smash Bros. Ultimate. If you have any questions, please let me know and I'll be sure to answer you as soon as I can! Alternatively, please look through the FAQ to see if something there answers your question.

6.1. FAQ

Q: Why are my mods not working?
A: There could be a multitude of reasons for this, especially between which system and what "not working" means. The below will contain some select few solutions per each system.

Skyline:
  • Skyline plugins crashing: The most likely cause of this is that you are missing dependencies (extra plugins) that a mod expects to work at all. For example, you might be missing libnro_hook.nro or libacmd_hook.nro, but ultimately it depends on the mod. Please refer to the mod page for a list of dependencies, or contact the mod author if no dependencies are given and their plugin is what's crashing for you.

ARCropolis:
  • ARCropolis crashing: An ARCropolis crash can likely be due to bad or conflicting mods. Find which mods are causing the crash by isolating the problem mod (folder), then ideally the problem mod file(s). Report the issue to the mod author, preferably. If you believe this is an ARCropolis issue, please report the issue on its GitHub repository and provide as much detail as possible.
  • ARCropolis loading but not loading mods: If you are certain your mods are laid out properly in either of the mod directories, then this may be due to the archive bit being set on a folder. To keep it brief, when the archive bit is set on a folder, it is read as a file on the Switch's OS. To unset it for Hekate users, under "Tools > Arch bit • RCM • Touch • Partitions" is an option titled, "Fix archive bit." Select this option to automatically "fix" the bit, which unsets it in areas where it should not be set and sets it where it should be set.

SaltyNX:
  • SaltyNX plugins crashing: This could be the cause of two plugins hooking the same function or if a plugin hooks a function via an offset not for your current game version. It's not exactly feasible to know how or if this is the case for a crash, but it is one worth noting. There's no real way to fix this without contacting the author about it or removing the plugin.

Q: I want to start making my own mods. How can I get started?
A: Granted, with ARCropolis there are more steps to write out into one place, so this question will be split up into three different questions below to avoid clutter and easier searching.

Q: What is the data.arc file, why do I need it, and how do I dump it?
A: The data.arc file is specific to Super Smash Bros. Ultimate for containing all of the game's assets into an efficiently packaged file archive within the ROM filesystem of the cartridge/title. You will need it to gain access to the game's assets for mod creation. If you would prefer not dumping the file and just access it over the network, download ArcExplorer and follow this guide to do so.

Otherwise, if you'd prefer to have a local copy of the file, follow the steps below. For simplicity's sake, you should use Ultimate Mod Manager for nothing more than dumping the game.
1. Put the .nro file from the embedded link above inside of the sd:/switch/ directory on the root of your microSD card.
2. Launch Ultimate Mod Manager from the Homebrew Menu by holding R and launching Smash. You should immediately be presented with the application's dumper screen.
3. To perform a verified dump, hold R and press A or Y (depending on the format of your microSD card). Doing this should help ensure that the dump is a "good" file. A list of good MD5 hashes for the data.arc file can be found here.
4. After the dump has completed, shut down your Switch and insert your microSD card into your computer. The dump will be stored in the following directory:
sd:/atmosphere/contents/01006A800016E000/romfs/

The result will either be a file or a folder named data.arc. On exFAT formatted microSD cards, it could be either because there is no practical file size limit. With FAT32 formatted microSD cards, there is a 4 GiB file size limit, so any files greater than that size will need to be split and inserted into a folder with a special bit known as the archive bit applied onto the folder for it to be read as a single file on the Switch's OS. If data.arc is a file, simply move it to your computer or preferred disk and read the Q&A after the following one. If it is a folder, follow the Q&A directly below.

Q: How do I combine the data.arc folder into a file?
A: For Windows, run the following command in Command Prompt inside of the dump's romfs folder (see video here on opening Command Prompt in a specific directory) (do not replace %UserProfile%):
copy /b data.arc\* "%UserProfile%\Desktop\data.arc"
This may take some time to complete. Once you are able to type in the console again, it has completed. Confirm the data.arc is one file within your output directory and that it opens in CrossArc (as discussed in the next entry). If all is well, delete the data.arc folder on your microSD card.

For either Linux or macOS, open a terminal window with the current working directory being the dump's romfs folder and run the following command:
cat 00 01 02 03 04 > ~/Desktop/data.arc
This may take some time to complete. Once you are able to type in the console again, it has completed. Confirm the data.arc is one file within your output directory and that it opens in CrossArc (as discussed in the next entry). If all is well, delete the data.arc folder on your microSD card.

Q: How do I browse the data.arc file?
A: You will need an application named ArcExplorer to do so. Please read the repository's README.md file here to get familiar with installation, usage, and features of the application.

Q: Am I able to add mods without constantly taking out my microSD card?
A: Yes you can! In fact this is recommended as constantly ejecting and inserting the microSD card will quickly wear out the console's reader. By using an FTP client, you will be able to send files to your microSD card over the network. I personally recommend the sys-ftpd-light sysmodule to use anywhere, anytime. From there, you can setup an FTP client to access the server and send files and/or folders to your microSD card. Tutorials for setting up a client can be found elsewhere online.

Q: How do I fully migrate from Ultimate Mod Manager to ARCropolis?
A: All listed directories start from the root of the microSD card:
1. Delete sd:/atmosphere/contents/01006A800016E000/romfs/data.arc
2. Delete sd:/UltimateModManager/backups/ and sd:/UltimateModManager/compTable.backup
3. Rename the UltimateModManager folder to ultimate.
1-10 of 231
1
Pages
Go to page:
  • Kujakubes avatar
    Kujakubes Joined 20d ago
    Offline
    11d
    Why does my physical copy of smash ultimate need a update? It wont open unless I update it and im in the emuMMC cfw, also for some reason it says im on version 1.0 of smash, can someone help with this?
    A Novice at Modding
    URL to post:
  • Dr. kong avatar
    Dr. kong Joined 7mo ago
    Offline
    180 points Ranked 80,773rd
    4 medals 1 rare
    • Returned 1000 times Medal icon
    • Returned 100 times Medal icon
    • One month a member Medal icon
    • 6 months a member Medal icon
    1mo
    I made the cmd thing on the romfs folder and when i check if it merged it just passed the whole file as it was (separate) any fix for that?
    Bananite
    URL to post:
  • B r u h XD avatar
    B r u h XD Joined 5mo ago
    Offline
    102 points Ranked 104,241st
    3 medals 1 rare
    • Returned 1000 times Medal icon
    • One month a member Medal icon
    • Returned 100 times Medal icon
    1mo
    I re-downloaded my smash ultimate data and now the mods don't appear. Apparently ARcropolis doesn't load. What should I do?

    Bananite
    URL to post:
  • TKG avatar
    TKG Joined 6mo ago
    Offline
    175 points Ranked 81,764th
    2mo
    help me.
    I`m Japanese.
    ARCropolis It doesn`t work.

    Downloaded files.
    atmosphere2,6
    arcropolis v3.0.0
    Skyline

    Is there anything missing?
    Bananite
    URL to post:
  • Gridatttack avatar
    Gridatttack Joined 6y ago
    Offline
    123 points Ranked 95,066th
    2mo 2mo
    Hello, thanks for the guide! It's well written and managed to get it going.

    However, I have this issue that the mods are not loading.

    I was able to get ARCropolis running, as I got the fake update screen and I see ARCropolis verion 3.0.0 running on the title screen, however when entering the game, I see that none of the mods are loaded.

    I added all the mods I downloaded here to `ultimate/mods/` and ran the hekate bit flip thing (nothing was changed/wrong)

    Any idea what could be preventing the mod from showing up?

    EDIT: I was able to get the mods to load up by using the other location method; perhaps is a configuration somewhere to load for the ultimate/mods folder instead?
    Bananite
    URL to post:
  • Does Ultimate Mod Manager ever NEED to be used when it comes to modding this game?
    Bananite
    URL to post:
  • I don't understand how to use the python script or if I need it to run some of my mods that aren't working. I put them in the correct file path, but they don't seem to work. For example, I have the master chief mod by 5dollarfootluong and the Big Blue Vaporwave stadium mod by Wieland smh. 

    I joined a server, but they don't seem to understand, can anybody help me to figure this out.
    Bananite
    URL to post:
  • Randle91 avatar
    Randle91 Joined 6y ago
    Offline
    924 points Ranked 46,078th
    3mo
    Is Skyline required anymore? I clicked on its page, and there are no releases. Do I have to build from the master?
    Smash n00b and rookie modder
    URL to post:
  • haraop avatar
    haraop Joined 4mo ago
    Offline
    3mo
    I'm runny  Atmosphere 13.2, with Smash 13.0.1 and this doesn't work for me. Every time I open Smash with the files, it just crashes. Deleting the Arcropolis folder makes the game work again.
    Bananite
    URL to post:
  • Do i have to get the modchip for the switch or can i just do everything through my sd card
    Bananite
    URL to post: