![]() |
Switchtor - Nintendo Switch NSP repacker
1 Attachment(s)
[Admin, we need a nintendo switch thread :)]
Switchtor is my new tool to help me (un)repack Nintendo Switch games. Features: Code:
-scan nca|nsp|xci files(or whole dir) for informationWhen creating nsp, you point to a directory where this db file(and __extracted directory) are located. This directory can now be anywhere you prefer, so just point to the full path. Directories "__nsp_out" and "__nca_out" will be created. NCA's are just temporary files to create nsp and can be deleted. NSP inside "__nsp_out" is newly created nsp. Key revision is maintained but can be simply overwritten in db file(as anything else there). Newly created nsp contain nca's created with '--plaintext' - unencrypted form and title key removed. These nsp's are intended for emulators. During scan or extracting, titlekey is automatically detected, extracted and used, as well as title ID. Main point of switchtor is simplicity: Code:
scan:This tool is extremely simple thanks to way it works, no need to type(and figuring out) which nca is what, no multi-command options etc. Just a simple -x -c -s and in case you dealing with updates also --plaintext and --basenca. Tool is mainly to deal with nsp, for xci its better to use another tool to convert it to nsp first. It is reliable, I already repacked 18 games with it + tested and working on both emulators. Attachment 31454 |
Quote:
|
I need to clarify few things about dealing with updates, as I got PM about it:
After you unpack the update using basenca command(with conjunction of plaintext command you used on the original first version of the game), you get full new updated and extracted game as a result. First thing you need to do is to rename ID in the database file to be same as original game. Usually updates end with something like 800 in last digits, say if original game was ending with something like ...A000, updated one could be ...A800. This is because ID of the update is(correctly) that, however, when packing back to nsp game again, it need to be ID of the original game, not an update! Above only apply to updates, not DLC as those are standalone(and you don't use plaintext or basenca commands on them). Furthermore, updated games will likely contain more than just control, logo and program nca's. Specifically they may contain data nca - even multiple. When you go to those unpacked nca's that are data(as pointed in database file), there should be single file called fragment. These nca's are useless and have to be removed: delete whole extracted data nca folder and also remove it from database file. You should pretty much end up with only program, control and logo nca's(in 99% cases), with ID of the original game. If you want you can also copy logo section from original version to updated version(and increase section number from 2 to 3 in database file), as original hactool do not do it. But is not mandatory. @Masquerade let me know if it works for you now. Write me here about it. |
Quote:
Unsure why the plaintext command is needed though. Thanks. |
Quote:
When you use --plaintext=file.nca during extraction of base game, that file.nca is created(in addition to unpacking of base game, which for update itself is not needed). You don't point to an existing file with that command! File created with --plaintext command is such that it is possible to create new updated game with it. Then, when you use --basenca command during unpacking of update, now you actually point to an existing file.nca you just created with --plaintext. That is how whole new extracted and updated game is generated and not just update. You cannot extract update alone! Hope that makes it clear. |
This thread is old, but it looks like the most appropriate place to ask. Has there been update in that field? I'm using combinations of hac2l/hactool/hactoolnet and hacpack to merge base and update. But this seems broken since around firmware 20.0, where unknown sections (probably a desync in parsing) are found in NCAs.
However, I see some people, like FitGirl, able to perform these merges, so there must be updated tools? |
| All times are GMT -7. The time now is 16:10. |
Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2026, vBulletin Solutions Inc.
FileForums @ https://fileforums.com