(also please boost this thread if you found it helpful, I think communities that are not often used get a deboost in the algorithm and I don’t want this guide to end up with just 3 pairs of eyeballs on it 🥲)

Switch emulation has come a long way and works perfectly. In fact, I can even play some games on my phone - though you’ll probably need snapdragon cpu and 8gb ram.

This is a guide to set up switch emulation on your phone or PC because fuck intellectual property.

tl;dr: you need an emulator, prod.keys and title.keys file, and a firmware. A website to download games and patches/DLCs and then you’re good to go.

1- The emulators

The first thing you need is an emulator. They’re all based on yuzu, but due to mimtendo piracy shenanigans, yuzu has stopped and other projects have popped up in its place.

Currently I would say there is Yuzu, **Ryujinx **(also abandoned iirc), Citron and Eden. All of these emulators work slightly differently, and you might get different performances on different games on different devices. My phone works great with Eden but that won’t necessarily be the case for you. The best part however is you can easily install all of them and use a common folder for your games - we’ll get into that.

Download the emulators from the official websites, even if it redirects you to their github or gitlab (in the case of Citron).

-> On Citron, there has been controversy about them requiring a dump of your switch data to verify you own one. As far as I can tell they never implemented that and it was going to be limited to the discord, because mimtendo will drag you to hell and back if you try to make emulators. That’s why these emulators say they are only for playing and testing homebrews. It’s a protective measure and Citron does not need to connect to the internet to be used.

So go ahead and install all the emulators you feel like testing on your device. If you’re on android, download and run the apk from your device directly tbh. Once installed, open the emulator once and look at the instructions: they will likely tell you which keysand firmware versions you need.

2- Getting the prod keys and firmware

you will now need two things: prod keys, and a firmware. You can get both here: https://prodkeys.net/prod-keys/ (that’s where I downloaded mine).

They make categories by emulator but this is just marketing. Prod keys are prod keys, any of them will work. Download either prod keys v20.3.0 or the ones specified by the emulator, and firmware v19.0.1 - not the newer firmwares. Most emulators don’t work with the newer ones yet.

Download those files and keep them somewhere on your device. On Android I just make a folder in the root so that I have everything close by. For speed reasons, use the internal storage, not the SD slot. Then on the emulator, follow the instructions and specify the prod keys file and then the firmware.

The beauty of this is that if you install more than one emulator, you can do the same steps without redownloading the files. I keep my keys and firmware on my device for this reason.

3- Getting games

If you set up your emulator correctly (it will tell you), it will then ask for a game folder. Like with the prod keys, I recommend making a single folder that has all your switch games, and you just put them there. Then specify the same folder for every emulator, and it will find all your games automatically.

There are two things though: 1- you will have to set up your controls and overlay for every emulator, and 2- game saves are not automatically picked up by other emulators. But you can export your saves and import into another emulator.

So to get games, there are several websites. Personally I was recommended www.ziperto.com and so this is what I use. It may not be the fastest but it works. I have an ad blocker so idk if there are malicious ads on there.

What you want is the .nsp file. This is ready to be moved into your game folder, after which the emulator will automatically see it and add it to your library. You can also use .xci files but I’ve never had to try them so I can’t tell you more about those.

Ziperto will have these links:

“Download” is for the base game (separated by languages when applicable), and then there are other links for any updates and DLCs. Ideally you’ll want to grab your language base game and then every update and DLC.

Dump all the actual rom files into your games folder - ziperto adds their own ads in the zip but you can just delete those. Also move the dlcs and patches into that folder. There’s no need to make subfolders or anything.

4- Applying updates and DLCs

Normally, your emulator will recognize the game files and create a card for it automatically. If it doesn’t, refresh (exit and open again) or make sure you have selected the right games folder. It should look like this:

However, what if you have updates or DLCs? Make a long press (right click) on the game card, and it will open up a new menu. Tap “Extensions”, “Install”, then select either patch/dlc or mod. Understandably this will be patch/dlc. It will open your games folder, and just select the patch and DLC files one by one. It will tell you if it failed to install them but it should work without issues.

And that’s it! From this point on you can play any switch game you want on PC or android. But…

5- What if you want to play Japanese games?

The switch is not artificially localized with PAL/NTSC etc regions. However, there are games that just never came out of Japan, with english fan patches (Umineko for example).

What you have to do there is first look online if there’s an english patch for your game. Then download it. For the switch, it should normally come into a folder structure like this:

| patch folder
|_ romfs
|_ exefs

Move the entire patch folder to your game folder, and then instead of using patch/dlc installation (see previous step), use “Mods and cheats” option. Then, select the ‘patch folder’ folder - not the individual files within it but the parent folder that contains everything.

It should take seconds and install! And this is where emulation really shines, you now get access to potentially tons of games that were never made available in your language.

6- Changing the settings

Okay, one last quick chapter on how to set up the emulator in case it doesn’t play a game perfectly.

First, try to change the settings. Exit the game, go into settings on the emulator, and fiddle around with the Advanced settings: audio driver, video resolution, etc. If you get a clicky sound, you’re probably using the wrong audio driver (default is Auto, selecting automatically between either of two). I think cubeb is overall better for audio. For graphical glitches, try different things.

If it still doesn’t fix your issues (I had this problem with umineko), try another emulator! That’s the beauty of it imo. Settings don’t transfer and you need to reinstall the patches, but that’s why we keep everything in one folder. Umineko was giving me glitches on Citron, I switched to Eden, and it works perfectly now.

7 - Installing emulator On PC (Windows)

(Only windows because I don’t know if it works the same on Linux).

I just installed Eden on Windows and the setup is a bit different. When you open it, it will tell you decryption keys are not installed. Click OK. Double click the interface with the huge folder icon on it to select your games folder, and it should detect all of them (Eden didn’t detect some of my games but Citron does).

Next, open Tools in the menu and “Select decryption keys”. Select your prod.keys file or title.keys file, it doesn’t matter which one as it will automatically install both. Afterwards select “Install firmware” from the same Tools menu, and select either the folder or zip file of the firmware.

If you have patches and DLCs to install, open File in the menu -> Install to NAND. You can ctrl+A the entirety of your games folder (provided the patches and DLCs are in there) and it will automatically install what it finds. It says not to install base games from that tool but it should skip them if you select them. Keep it easy.

  • Kras Mazov@lemmygrad.ml
    link
    fedilink
    English
    arrow-up
    1
    ·
    3 days ago

    the URLs can change or get hijacked

    Fair enough. I just searched for Eden and even downloaded to take a look. Hopefully these forks don’t get taken down easily. I wonder why there isn’t more Ryujinx forks tho, the only one I know of right now is the one by greemdev.

    • CriticalResist8@lemmygrad.mlOP
      link
      fedilink
      arrow-up
      2
      ·
      edit-2
      3 days ago

      I would try ryujinx to see how it differs but I see two different websites that claim the name which is already a red flag 😅 this is why I wouldn’t want to link to websites directly, I can’t be sure that even I am downloading the legit version…

      People seem to be on edge every time a new project pops up though, analyzing the commit history and such. Honestly I’m good with citron and eden lol, they seem to run all my games. I get being wary of new projects with opaque code but a lot of it seems to be navel-gazing and splitting hairs. Obviously nobody wants to get sued for making an emulator so they have to find ways around how they sell the project - just saying generally because damn, the switch emulation scene is a mess and not helped at all by the supposed fanbase of it! Which is why I wanted to write this guide to simplify it all.

      • Kras Mazov@lemmygrad.ml
        link
        fedilink
        English
        arrow-up
        2
        ·
        edit-2
        3 days ago

        This is the official GitLab instance for greemdev’s Ryujinx fork (sometimes called Ryubing too) if you want to try it. Sometimes games run better on Ryujinx, while others are better on Yuzu/Yuzu-forks, so for now it is good to have both installed at least to test. I don’t know if it is possible on Windows (probably is), but I have both Ryujinx and Yuzu/Eden share the files needed to run, so it doesn’t need to have separate stuff taking a lot of space. The one thing Ryujinx definitely have tho is a good UI/UX.

        because damn, the switch emulation scene is a mess

        Oh definitely, I remember the shit show that was when the forks of Yuzu started to appear and people where desperately looking into the source code of everything lol. That’s actually why I’m still weary of Citron even. While it’s good that they never implemented the verification stuff, their attitude towards it was very weird and makes me doubt the people behind the project a bit, tho if it survives the test of time, then hopefully that’s just a past mistake.