Corrupt.wiki
  • Videogame corruptions
    • Introduction
    • Communities
    • Safety and Ethics of Corruptions
    • What makes a good corruption?
  • Real-Time Corruptor
    • RTC Discord
    • Download RTC
    • Beginner Guides
      • Tutorial Video Guide
      • Corruption Classroom
      • Cheat Sheet Guide
    • In-Depth Guide
      • Introduction
      • Frequently Asked Questions
      • Simple Mode
      • Concepts and Vocabulary
      • General Parameters
      • Corruption Engines
      • Emulation-centric features
      • Classic Vector Lists
      • Glitch Harvester
      • Blast Editor
      • Blast Generator
      • Virtual Memory Domains
      • VMD Generator (Advanced)
      • Cluster Engine (Advanced)
      • Hotkeys
      • Tips, tricks and quirks
    • More RTC Guides
      • RTCV Dev Startup Guide
      • Running RTCV on Linux
      • How to make Passthrough Lists
      • Sequence Loader Plugin
  • Other Corruptors
    • Classic Corruptors
      • Vinesauce ROM Corruptor
      • VineCorrupt
      • Android Vinesauce ROM Corruptor
      • Lesser known corruptors
      • Old Corruptors
    • Scares Scrambler
    • Cheat Engine
    • Web-Based Corruptors
  • Systems
    • NES
      • Corrupting the NES
      • NES Architechture
      • NES Memory Domains
    • SNES
      • Corrupting the SNES
      • SNES Architechture
      • SNES Memory Domains
      • SNES Audio Tinkering
    • Sega Genesis
      • Corrupting the Sega Genesis
      • Genesis Architecture
      • Genesis Memory Domains
      • Cracking the Checksum Routine
    • N64
      • Corrupting the N64
      • N64 Architecture
      • N64 Memory Domains
      • N64 Basic/Advanced ROM Corruption
      • N64 Expert ROM Corruption
    • Gameboy Advance
      • Corrupting the GBA
      • GBA Architecture
      • GBA Memory Domains
    • Nintendo DS
      • Corrupting the DS
      • MelonDS Memory Domains
      • MelonDS-Specific Lists
      • Rom Corruption (Deprecated)
    • Gamecube/Wii
      • Corrupting the GC/Wii
      • Dolphin Memory Domains
      • Dolphin-Specific Lists
      • Using a real Wiimote with Dolphin
      • Dolphin Narry's mod (Deprecated)
    • Playstation 1
      • Corrupting the PSX
      • Advanced corruptions
    • Playstation 2
      • Corrupting the PS2
      • PCSX2 Memory Domains
      • PCSX2-specific Lists
    • Playstation 3
      • Playstation 3 Executable Corruptions
    • Xbox 360
      • Xbox 360 Executable Corruptions (Real Console)
      • Xbox 360 Executable Corruptions (Xenia)
    • Nintendo Switch
      • Switch ROM Corruptions
    • Computers & Mobile
      • Corrupting Android Unity games
      • Corrupting Files with FileStub
      • Corrupting PC Games with ProcessStub
      • Corrupting VMware snapshots
    • Java
      • Java Corruptor Plugin
      • Corrupting Minecraft with the Java Corruptor Plugin and FileStub
      • Corrupting Project Zomboid with the Java Corruptor Plugin and FileStub
Powered by GitBook
On this page
  • Preparing the Corrupt mod
  • Preparing the main file
  • Preparing the File Corruptor
  • Finding the alignment
  • Blast away

Was this helpful?

  1. Systems
  2. Nintendo Switch

Switch ROM Corruptions

using unmodded Ryujinx and FileStub

PreviousNintendo SwitchNextComputers & Mobile

Last updated 1 year ago

Was this helpful?

This guide explains how to get Nintendo Switch corruptions working using FileStub and Ryujinx the Nintendo Switch emulator. This method allows for Switch corruptions, but ultimately it is a slow and tedious process due to the lack of savestates.

This guide presupposes that the game is already operational on the emulator. If you haven't gotten your game to run in Ryujinx, stop reading this guide and figure this one out.

This guide will not show you how to setup the firmware and your prod.keys.

Preparing the Corrupt mod

In the main Ryujinx menu, right-click on your game and select Open Mods Directory.

If you have been opening your games using "File -> Load application from file" and your game doesn't appear in the main screen, you need to go in the Ryujinx settings and setup the Game Directories to where your game file is.

In this directory, you will create a folder called "Corrupt". Inside the Corrupt folder, you will create a folder called "exefs". It is very important that this one is written in lower case.

Go back to the main screen in Ryujinx and right-click on your game and select Extract Data -­> ExeFS. Make it extract the data in the "exefs" folder you just created.

You should now have a "main" file in the "exefs" folder alongside a few other files.

Preparing the main file

Get the "nsnsotool" program from Github at Put the tool in the "exefs" folder and open a command prompt to the "exefs" folder.

Run the following command:

nsnsotool.exe main main.decompressed

This will create a decompressed executable. Delete the "main" file and rename the .decompressed one to "main".

Preparing the File Corruptor

The new bigger uncompressed "main" file in that "exefs" folder is the rom that you will corrupt. Open FileStub and load that "main" file as your target for RTC.

You will want to use the Vector Engine and realistically only the Classic vector lists.

If you haven't done it already, go to RTC Settings and Uncap the intensity. You'll need massive blasts for the Switch executables.

Finding the alignment

Nintendo Switch executables are rarely aligned on the 32-bit grid. In most cases, you will need to set your Alignment to "1" for them. If you want to be 100% sure of the alignment needed for your game, you can do the following to test it.

  • Set your alignment to 0

  • Set your Vector Engine to One/Two

  • Open the Glitch Harvester

  • Blast at maximum intensity

  • Note how big is the generated BlastLayer

  • Repeat for Alignment 1,2,3

After having probed all 4 alignments (0,1,2,3), you'll know which one is the right one from which BlastLayer had the most units.

Blast away

You should now have a setup ready for Switch Corruptions. When you blast using the Glitch Harvester, it will alter the "main" file. To get the results, you have to stop the emulated game and restart it. Because of this, sanitizing is an extremely slow process and is not recommended.

Play around with the Classic Vector lists and you'll find effects. Go ham.

http://github.com/0CBH0/nsnsotool