Hacking Switch games: rip and tear

Reploid

Well-Known Member
OP
Member
Joined
Jan 20, 2010
Messages
2,832
Trophies
2
XP
6,282
Country
Serbia, Republic of
What I like in PSP and VITA games is the simple file structure. PSP is just and ISO, and Vita is a bunch of files and folders, like on PC. So you can remove and dummy files easily, even play compressed images on PSP. You've completed story mode in MK9? Just delete video files now and game is 1gb smaller.

Is there currently no sensible way to do so on switch? There wasn't on ds/3ds I think. Like in MK11, currently the largest game (I know of) you could delete campaign videos, that are several GBs worth and make it a little more manageable to hold on to.

Or rip and tear DOOM games, removing all extra voice-overs, which are several, taking a lot of space on your SD.
 

ScarletDreamz

[Debug Mode]
Member
Joined
Feb 16, 2015
Messages
3,967
Trophies
1
Location
/dev/sda1
XP
4,380
Country
United States
What I like in PSP and VITA games is the simple file structure. PSP is just and ISO, and Vita is a bunch of files and folders, like on PC. So you can remove and dummy files easily, even play compressed images on PSP. You've completed story mode in MK9? Just delete video files now and game is 1gb smaller.

Is there currently no sensible way to do so on switch? There wasn't on ds/3ds I think. Like in MK11, currently the largest game (I know of) you could delete campaign videos, that are several GBs worth and make it a little more manageable to hold on to.

Or rip and tear DOOM games, removing all extra voice-overs, which are several, taking a lot of space on your SD.
You can use any of the multiple NSZ compressors for NSP files.
 

ScarletDreamz

[Debug Mode]
Member
Joined
Feb 16, 2015
Messages
3,967
Trophies
1
Location
/dev/sda1
XP
4,380
Country
United States
What I like in PSP and VITA games is the simple file structure. PSP is just and ISO, and Vita is a bunch of files and folders, like on PC. So you can remove and dummy files easily, even play compressed images on PSP. You've completed story mode in MK9? Just delete video files now and game is 1gb smaller.

Is there currently no sensible way to do so on switch? There wasn't on ds/3ds I think. Like in MK11, currently the largest game (I know of) you could delete campaign videos, that are several GBs worth and make it a little more manageable to hold on to.

Or rip and tear DOOM games, removing all extra voice-overs, which are several, taking a lot of space on your SD.
You can use any of the multiple NSZ compressors for NSP files.
 

DarkMatterCore

Finding my light.
Developer
Joined
May 30, 2009
Messages
1,292
Trophies
1
Age
28
Location
Madrid, Spain
Website
github.com
XP
2,606
Country
Spain
There's no sensible way to do it, nope. And that's because of the way NCA archives work.

A single NCA archive contains both the game's binaries (ExeFS) and resources (RomFS), uses multiple encryption layers and may even be stored split in any storage medium (eMMC, SD card) if it exceeds 4 GiB. The game's resources are not read directly from the storage medium's filesystem, unlike the other examples you provided.

In other words, removing data from a RomFS to save up on storage space would require:

1. Dumping the game.
2. Unpacking the dumped NSP.
3. Identifying the Program NCA and extracting all its filesystem sections (ExeFS, RomFS, Logo PFS0 [if available]).
4. Deleting the RomFS files you don't want to keep (or replacing them with empty placeholders).
5. Rebuilding the whole Program NCA using the extracted filesystem sections.
6. Updating the Program NCA checksum inside the Meta NCA.
7. Rebuilding the NSP and reinstalling the game.

Sadly, this situation isn't expected to change anytime soon unless a full-fledged FS sysmodule reimplementation is released. And even then, said reimplementation would have to be capable of loading NCA data straight from the SD card filesystem, which is a feature not provided by Nintendo's FS sysmodule.

Some people may point out that it's possible to load both ExeFS and RomFS data from the SD card via LayeredFS, but this solution has its own caveats:

1. You must already have installed a donor title, which will be overridden using LayeredFS.
2. Compatibility between donor titles and desired games isn't guaranteed, your mileage may vary.
3. If the desired game's RomFS uses files bigger than 4 GiB, these will have to be manually split before being transferred to the SD card (if you're using FAT32... which certainly, you should). It's even worse if it's a game like SSBU, which stores all of its resources in a single, gigantic container - removing data from a game always implies getting familiar with the way it uses its own resources.
4. There *will* be savedata issues.

Hope that helps.
 
Last edited by DarkMatterCore,
  • Like
Reactions: bad361 and Reploid

Reploid

Well-Known Member
OP
Member
Joined
Jan 20, 2010
Messages
2,832
Trophies
2
XP
6,282
Country
Serbia, Republic of
There's no sensible way to do it, nope. And that's because of the way NCA archives work.

A single NCA archive contains both the game's binaries (ExeFS) and resources (RomFS), uses multiple encryption layers and may even be stored split in any storage medium (eMMC, SD card) if it exceeds 4 GiB. The game's resources are not read directly from the storage medium's filesystem, unlike the other examples you provided.

In other words, removing data from a RomFS to save up on storage space would require:

1. Dumping the game.
2. Unpacking the dumped NSP.
3. Identifying the Program NCA and extracting all its filesystem sections (ExeFS, RomFS, Logo PFS0 [if available]).
4. Deleting the RomFS files you don't want to keep (or replacing them with empty placeholders).
5. Rebuilding the whole Program NCA using the extracted filesystem sections.
6. Updating the Program NCA checksum inside the Meta NCA.
7. Rebuilding the NSP and reinstalling the game.

Sadly, this situation isn't expected to change anytime soon unless a full-fledged FS sysmodule reimplementation is released. And even then, said reimplementation would have to be capable of loading NCA data straight from the SD card filesystem, which is a feature not provided by Nintendo's FS sysmodule.

Some people may point out that it's possible to load both ExeFS and RomFS data from the SD card via LayeredFS, but this solution has its own caveats:

1. You must already have installed a donor title, which will be overridden using LayeredFS.
2. Compatibility between donor titles and desired games isn't guaranteed, your mileage may vary.
3. If the desired game's RomFS uses files bigger than 4 GiB, these will have to be manually split before being transferred to the SD card (if you're using FAT32... which certainly, you should). It's even worse if it's a game like SSBU, which stores all of its resources in a single, gigantic container - removing data from a game always implies getting familiar with the way it uses its own resources.
4. There *will* be savedata issues.

Hope that helps.
Wow, that's deep.
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
    K3Nv2 @ K3Nv2: Lmao that sold out fast