How to test iterations of your mod quickly

Discussion in 'Switch - Tutorials' started by foop57, Aug 7, 2018.

  1. foop57

    foop57 Member

    May 3, 2018
    United Kingdom
    I am currently in the process of creating my second custom level, and this required a LOT of testing due to the kind of level I wanted to make, where everything is exactly planned out. Therefore, I have found some shortcuts to make the process easier. Here they are!

    Setting up ftp
    Ftp is this really great thing that lets you view files remotely, provided that the two devices are on the same network. If you want to use it, you'll need a version of hekate and sdfiles that support it. Currently, v3.2 of hekate and v6.1 of sdfiles support ftp and work very well together. Earlier versions may work too, but this is a great reason to update; any later version should work as well. Simply choose the "ftp + layeredFS" boot option. Once you boot, ftp should be running automatically, using port 5000 and no password (newer versions may introduce a password for security, so read the description of the release on Github before trying to use ftp). You can view the switch's IP address under "Internet" in settings. If you have a preferred ftp client, you can use that just fine, but I've found that MobaXterm is a great piece of software for Windows that provides many other functions aside from ftp, such as ssh and vnc.

    Using ftp on MobaXterm (Windows only)
    MobaXterm is a great piece of software, providing the aforementioned features and more in one easy-to-use package. To get started with ftp, download the program here, then install it. To set up an ftp connection, press "session" in the top left corner, then select "ftp" - it's the green globe. Next, set up the connection by entering your Switch's IP address in the the "Remote host" field, setting the "port" to 5000, and leaving the "Username" field blank. Make sure your Switch is connected to the same network as your computer. Click OK. Click OK again as it asks you for the password. If everything went well, after a few seconds, you should be able to see the contents of the SD card within the software. You can browse your local files using the left part of the screen. Simply drag and drop files from one window to the other to transfer them to and from your SD card. Bear in mind that the screen of the Switch has to be on for this to work, and that the file browser may not update if a new file has been placed into the folder being viewed. Exit the folder and open it again to see the new file.

    Quickly testing iterations in-game (SMO only)
    It may seem like you need to constantly enter and exit Mario Oddysey for the changes that you have applied (by copying over the new version of your mod to the SD card using ftp) to be visible in-game, but this is not the case, despite the fact that there is no option to exit to the main menu. Provided you have an empty save slot, you can copy your save to the empty slot, then load the new copied savefile (which is actually identical to the one you were using originally) after having loaded your new mod. There is no specific time you need to do it, provided you have the new mod in the correct location before loading the copied savefile. The game doesn't crash when you change the files in your romfs directory (at least in my experience).This significantly reduces the time taken to view smaller changes of your level edit in-game.

    Reducing the distance to travel to get to your custom level (SMO only)
    Sub-levels are currently the easiest to modify and make custom levels out of, so why waste time getting to that specific pipe? Well, it is possible to move pipes in the main kingdoms, provided that you have a dump of the version of the game you are running on your Switch (this only applies to the main kingdoms due to things like Luigi's balloon world). Use my tutorial for help with extracting the files and opening them in the editor. Now, it is easy to move pipes right to the Oddysey, right where Mario spawns! You may see two copies of the pipe in the same location, so copy both of them for optimal results. To save you the hassle, I have attached a mod of the Metro Kingdom on SMO version 1.2 for level creators who don't want the hassle of getting the correct dump and extracting it, all for a simple mod. The name of the file associated with the sub-level whose pipe I moved is SwingSteelExStageMap.szs.

    If you have any questions, please do not hesitate to reply to this thread.

    Attached Files:

    jakibaki, tomGER, epickid37 and 2 others like this.
  2. tomGER

    tomGER GBAtemp Fan

    Feb 6, 2017
    Hotswapping through sys-ftpd is definitely one of the most useful features for everyone developing mods. Thanks to @jakibaki for all his work on that :D
    cearp likes this.
  3. FEF1

    FEF1 Advanced Member

    Aug 22, 2018
    United Kingdom
    This will be great when I am making some SMO mods. I remember back in the day when NSMBWII mods were starting out, and I had to take the sd card every time to try the mod.