ROM Hack RELEASE NSC_Builder. Nintendo Switch Cleaner and Builder. (Game+updates+dlc in a single xci)

  • Thread starter JRoad
  • Start date
  • Views 722,563
  • Replies 2,823
  • Likes 74

JRoad

Developer
OP
Developer
Joined
May 18, 2018
Messages
1,003
Trophies
0
XP
1,746
Country
Spain
@JRoad i think it will be really cool to included it. Because it works perfectly for SD i didn't test it for hdd yet. Does it also happens when a hdd is formated as fat32? Anyway to include the option would be cool, because those backups run flawless from the SD card.
The exfat driver ius different so it doesn't have the corruption issue but archived formats won't work with it. They made the ns0 format because of that it basically won't recognize them as files.
The ns0 and xc0 in SX OS support any block size so I can standardize the block size without issues really and allow to archive the files.
 

JRoad

Developer
OP
Developer
Joined
May 18, 2018
Messages
1,003
Trophies
0
XP
1,746
Country
Spain
  • Like
Reactions: 18Phoenix

18Phoenix

Well-Known Member
Member
Joined
Nov 21, 2005
Messages
766
Trophies
1
XP
2,298
Country
Germany
Last edited by 18Phoenix,

Tokiwa

Well-Known Member
Member
Joined
Jul 2, 2017
Messages
234
Trophies
0
Age
26
XP
1,629
Country
Brazil
Some nsz files when verified nscb gives me a "ncz file needs HASH check" during the decryption test but this alert disappears when i decompress back to nsp.

Is this behavior considered normal?
 

JRoad

Developer
OP
Developer
Joined
May 18, 2018
Messages
1,003
Trophies
0
XP
1,746
Country
Spain
Some nsz files when verified nscb gives me a "ncz file needs HASH check" during the decryption test but this alert disappears when i decompress back to nsp.

Is this behavior considered normal?
Yes, level1 verification is not that accurate on block compression.
In normal nsp files I seek the ndm and check if it's readable or the equivalent for dlcs. The thing is that is the middle section and is way down the file. To read it I need to read the revious data so it takes a longer time. Since that was really slow on some files I did another kind of check that's weaker. If that check works I give lv1 as valid if it doesn't I give it as hey the check didn't work but is probably ok, verify the hash to be sure.
I need to try and get a better check for nsz\nsp but you can verify the hash in the batch if you don't want to decompress the file.
 

JRoad

Developer
OP
Developer
Joined
May 18, 2018
Messages
1,003
Trophies
0
XP
1,746
Country
Spain
NSCB 0.98 including:
- Some fixes
- Small improvements to the interface
- Initial Google Drive support for advanced downloads (download trimmed\decompressed), library search, file information and more stuff
- Support allows to use several auth accounts or public links as source (Team Drives are supported).
- Filepaths are inputted directly or trough a console interface based on the curses library.
Full changelog on github.
https://github.com/julesontheroad/NSC_BUILDER/releases/tag/v0.98
 

mathew77

Lovin' life.
Member
Joined
Jan 19, 2019
Messages
1,171
Trophies
0
Age
47
XP
3,632
Country
Kazakhstan
Trying to compress with NSCB 0.98 an nsp file that was signed for FW 9.1.0 (keygenerator 11) to nsz format, and have that error:
Code:
Traceback (most recent call last):
  File "squirrel.py", line 2743, in <module>
  File "lib\compressor.py", line 659, in compress
  File "nutFs\Nsp.py", line 205, in open
  File "nutFs\Pfs0.py", line 190, in open
  File "nutFs\Nca.py", line 222, in open
  File "nutFs\File.py", line 69, in partition
  File "nutFs\Nca.py", line 119, in open
  File "lib\Keys.py", line 63, in unwrapAesWrappedTitlekey
KeyError: 'master_key_010'
[10664] Failed to execute script squirrel

File opens (and installs) normally, here's some info:
Code:
- RequiredSystemVersion: 605028352 -> (9.1.0)
- Encryption (keygeneration): 11 -> (9.0.0 - >9.1.0)
- Patchable to: 605028352 -> (9.1.0)

The keyfile is ok, it has a proper master_key_0a from my console derived with latest lockpickrcm, checked it twice. All files before keygenerator 11 works fine too. The problem with the new files, signed with the new masterkey only.
Any help would be greatly appreciated. :)
 
Last edited by mathew77,

JRoad

Developer
OP
Developer
Joined
May 18, 2018
Messages
1,003
Trophies
0
XP
1,746
Country
Spain
Trying to compress with NSCB 0.98 an nsp file that was signed for FW 9.1.0 (keygenerator 11) to nsz format, and have that error:
Code:
Traceback (most recent call last):
  File "squirrel.py", line 2743, in <module>
  File "lib\compressor.py", line 659, in compress
  File "nutFs\Nsp.py", line 205, in open
  File "nutFs\Pfs0.py", line 190, in open
  File "nutFs\Nca.py", line 222, in open
  File "nutFs\File.py", line 69, in partition
  File "nutFs\Nca.py", line 119, in open
  File "lib\Keys.py", line 63, in unwrapAesWrappedTitlekey
KeyError: 'master_key_010'
[10664] Failed to execute script squirrel

File opens (and installs) normally, here's some info:
Code:
- RequiredSystemVersion: 605028352 -> (9.1.0)
- Encryption (keygeneration): 11 -> (9.0.0 - >9.1.0)
- Patchable to: 605028352 -> (9.1.0)

The keyfile is ok, it has a proper master_key_0a from my console derived with latest lockpickrcm, checked it twice. All files before keygenerator 11 works fine too. The problem with the new files, signed with the new masterkey only.
Any help would be greatly appreciated. :)
Yeah, I see the bug is a function that i think only the nutFs libraries use and is not corrected. Basically it should have the line that says "If kegeneration is bigger than nine don't add the 0 to the masterkey name.
Let me test the fix and i'll add the new files later.
I think it only affected the compressor and that's why i didn't realize since i didn't comprssed games for a while.
 
  • Like
Reactions: mathew77

bostonBC

Well-Known Member
Member
Joined
Aug 17, 2011
Messages
1,304
Trophies
1
XP
1,416
Country
United States
Trying to verify keys in 0.98 and getting

'py' is not recognized as an internal or external command

I have the 2.7x python installed. It's a new PC I just built up. AMD Ryzen 3950x.
 

JRoad

Developer
OP
Developer
Joined
May 18, 2018
Messages
1,003
Trophies
0
XP
1,746
Country
Spain

CD-RIPer

New Member
Newbie
Joined
Jan 20, 2020
Messages
4
Trophies
0
Age
45
XP
51
Country
Ukraine
I've tried to repack nsp (for FW 9.1) with keygeneration downgrade and got "list index out of range" error:
Code:
Getting NUTDB json
(url...)
Response 404. Old Files weren't removed
Processing: d:\temp\a.nsp
0B [00:00, ?B/s]Exception: list index out of range
DONE

My keys.txt is successfully validated.

JRoad do you have any ideas?
 

JRoad

Developer
OP
Developer
Joined
May 18, 2018
Messages
1,003
Trophies
0
XP
1,746
Country
Spain
I've tried to repack nsp (for FW 9.1) with keygeneration downgrade and got "list index out of range" error:
Code:
Getting NUTDB json
(url...)
Response 404. Old Files weren't removed
Processing: d:\temp\a.nsp
0B [00:00, ?B/s]Exception: list index out of range
DONE

My keys.txt is successfully validated.

JRoad do you have any ideas?
Well the DB stuff makes .e think you're using 0.97. Try upgrading to 0.98b first and verify the nsp file itself with the verification method.
 

CD-RIPer

New Member
Newbie
Joined
Jan 20, 2020
Messages
4
Trophies
0
Age
45
XP
51
Country
Ukraine
Well the DB stuff makes .e think you're using 0.97. Try upgrading to 0.98b first and verify the nsp file itself with the verification method.

Thank you for your response!

I already use most recent version -- v0.98b. And I tried to converted nsp file which is verified.

"list index out of range" is a very generic error, is it possible to get stack trace for it?

Is it fine to work with nsp file which name doesn't have title id?
Does your tool work without NUTDB json?
 

JRoad

Developer
OP
Developer
Joined
May 18, 2018
Messages
1,003
Trophies
0
XP
1,746
Country
Spain
Thank you for your response!

I already use most recent version -- v0.98b. And I tried to converted nsp file which is verified.

"list index out of range" is a very generic error, is it possible to get stack trace for it?

Is it fine to work with nsp file which name doesn't have title id?
Does your tool work without NUTDB json?
Yeah, the json files are only needed for dlc names. If it doesn't have them it calls the dlcs by it's number.
It doesn't read ID's from name it reads them from the nca files and it reads the name from the control nca if available. It would take genres and other days from the DB but that's mostly for the interface.
Is true that some errors are left as the default python exception so is hard to track unless I have the nsp file that gives issues but the first step is for you to use the info functions and verify the file, show file info etc... Most stuff can be solved with that information.
 

CD-RIPer

New Member
Newbie
Joined
Jan 20, 2020
Messages
4
Trophies
0
Age
45
XP
51
Country
Ukraine
I double checked the file and found what app could not verified it (failed with "index out of range" during decryption test for Content.PROGRAM).
I think that nsp is fine so it's a bug in nsc builder.
Do you have a time to look at that file?

I've attached url to that file in the post.
 
Last edited by CD-RIPer,

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • No one is chatting at the moment.
    straferz @ straferz: Anybody know why this is happening to my ACWW town...