Making your Nintendo Switch seaworthy

By | 20 Mar 2024

Back when I bought my Nintendo Switch, I made sure to buy an unpatched one – turning all the different boxes in the store upside down to read the serial number on the bottom and compare it with the list I had on my phone.

However, apart from some experiments with SX OS and later with memloader, hactoolnet and NHSE, I never made real use of that as I was pretty happy with everything as-is and even subscribed to the Nintendo Online service. Even though I never play online and never really played all the classic console games made available via the subscription.

When it was time to renew the subscription, I’ve realised that I only use this as a glorified savegame backup and that I can have that much easier and for free by hacking my Switch.

So I followed the “Rentry-Guide” (with a few small adjustments here and there) to install the Atmosphere OS and it all went smoothly.

However, I wanted to have my legitimately bought (via the Nintendo eShop) games available in the CFW. While they didn’t show up as properly installed at first (showing the “Cloud” icon), I found out that you need to copy them from the /Nintendo folder on the SD card to /EmuMMC/RAW1/Nintendo – so the emuNAND can find them.

This made them at least show up as “properly installed”, i.e. as if they should work fine. However, when trying to launch a (legitimately bought!) game, an Error 2155-8007 appeared.

All documentation I could find about this pointed to various causes like wrong/missing SigPatches, a bad clone of the sysNAND to emuNAND, bad game data, bad user profile, etc. But I’ve verified everything and was sure it was none of that. And I also didn’t want to risk getting my Switch banned by letting it connect to Ninty’s servers. So I made a post in the GBAtemp forums to ask for further ideas.

After a bit of fruitless discussion, I came to the conclusion that it must be something with the so-called “ticket”. The ticket is basically the metadata for a file, linking its content to your Switch’s user and your online profile. After cloning, I’ve unlinked the user profile in emuNAND from the Nintendo Online service using linkalho. This seems to have made the Switch want to re-authorise the existing tickets. (Even though I’m pretty sure I’ve tried cloning the sysNAND without unlinking the account afterwards, too, and it didn’t work either.)

It took me some experimenting before I found the solution: Using nxdumptool I was able to dump the tickets of all the games’ files. Each base file, update and all the DLCs have their own tickets. After dumping them, I used DBI to install those dumped tickets again. This made sure they are tailored to my current setup. And lo and behold – those games finally launched.

Leave a Reply