ROM Hack WIP Switch Manager

Stormwave

Well-Known Member
OP
Member
Joined
Apr 22, 2010
Messages
237
Trophies
0
Website
Visit site
XP
229
Country
Hey guys,

Been a while since I was in the GBATemp developers section. I'm working on an offline ROM manager for the Switch. Essentially, it tracks your collection, both NSPs, XCIs, Updates and DLC files. It generally scans the library by reading the filename, using the format "<name> [titleID]". It's designed to work mostly alongside Nut, so the filenames are such that they are compatible. It has a batch rename function however, that can read the TitleID from NSPs and XCIs and then rename the files accordingly. What you will end up with is a nicely named and organised list of your backups to keep track of. It currently uses hactool to find the TitleID from XCI files, although it can find NSP ones internally. As such, you will need keys.txt for it to function properly. Titles are loaded from Nut's database.

I want to add other features in the future, for example Metacritic ratings for the games.

It's still very early in development, I only started it a couple of days ago. I initially only wanted to develop it for myself, but wondered if there is much interest for such a tool on here. If so, any ideas are welcome, and when it's in a workable condition, I'll share it on here.

SwitchManager.png
 
Last edited by Stormwave,

Cyan

GBATemp's lurking knight
Former Staff
Joined
Oct 27, 2002
Messages
23,749
Trophies
4
Age
45
Location
Engine room, learning
XP
15,649
Country
France
like I just said to someone else, even if there are identical tools it's always nice to have choices and it helps you learn for future projects.
you always need a base for future updates, and different features other tools don't have.
Thanks for sharing :)


edit:
I added it to my wiki app list, so it'll be easier to find by other users.
 
Last edited by Cyan,

Stormwave

Well-Known Member
OP
Member
Joined
Apr 22, 2010
Messages
237
Trophies
0
Website
Visit site
XP
229
Country
like I just said to someone else, even if there are identical tools it's always nice to have choices and it helps you learn for future projects.
you always need a base for future updates, and different features other tools don't have.
Thanks for sharing :)


edit:
I added it to my wiki app list, so it'll be easier to find by other users.

Thanks. In regards to features, are there any features missing from current similar projects that might be useful to be added? I've not really tried any of the other ones out there. This one can handle DLC and Updates, not sure if the others can?

I'm also considering making a Switch homebrew app to go alongside it to copy files over, although not sure how necessary it is. Although Nut is great, it doesn't support transferring XCI files.
 
Last edited by Stormwave,

Cyan

GBATemp's lurking knight
Former Staff
Joined
Oct 27, 2002
Messages
23,749
Trophies
4
Age
45
Location
Engine room, learning
XP
15,649
Country
France
supporting xcz and nsz would be nice (compressed xci/nsp)
https://gbatemp.net/threads/nszip-nsp-compressor-decompressor-to-reduce-storage.530313/

I don't think other managers/game checkers are already supporting it.
edit: it seems the file extension is nspz and xciz

as for the features other managers are doing, there are additional information (key version, publisher, whether it's a good signed or fake signed/dangerous/bricker game, etc.)
 
Last edited by Cyan,

Stormwave

Well-Known Member
OP
Member
Joined
Apr 22, 2010
Messages
237
Trophies
0
Website
Visit site
XP
229
Country
supporting xcz and nsz would be nice (compressed xci/nsp)
https://gbatemp.net/threads/nszip-nsp-compressor-decompressor-to-reduce-storage.530313/

I don't think other managers/game checkers are already supporting it.
edit: it seems the file extension is nspz and xciz

as for the features other managers are doing, there are additional information (key version, publisher, whether it's a good signed or fake signed/dangerous/bricker game, etc.)

Nice, didn't know about the compression thing. Do any of the CFWs support it? It'll be useful for PC side library management regardless.

I'm going to write an info popup today, that'll show publisher/date released/images/description, etc. Not sure if I want all that data in the main table. Might be good to have optional columns I suppose.
 
Last edited by Stormwave,

Cyan

GBATemp's lurking knight
Former Staff
Joined
Oct 27, 2002
Messages
23,749
Trophies
4
Age
45
Location
Engine room, learning
XP
15,649
Country
France
for now, it's supported by emulator on computer.
support can also be added to installers (to install compressed files directly to the console)

what's not supported yet (requires a new module) is launching xciz without installation (from SXOS), you need uncompressed version to launch the game from SD/USB without install.
 
Last edited by Cyan,

Stormwave

Well-Known Member
OP
Member
Joined
Apr 22, 2010
Messages
237
Trophies
0
Website
Visit site
XP
229
Country
for now, it's supported by emulator on computer.
support can also be added to installers (to install nspz directly to the console)

what's not supported yet is launching xciz without installation (from SXOS), you need uncompressed version to launch the game from SD/USB without install.

Thanks. I've just grabbed the nsZip source code, will integrate it into the program shortly. I'll add a "Compress Library" option, although I can imagine it'll take a while.

--------------------- MERGED ---------------------------

I'm presently, kind of, enforcing the "<name> [TitleID]" for main NSPs and XCIs, with "<name> [TitleID][VersionCode]" for updates. Mostly for compatibility with Nut. It also makes scanning the library folder significantly quicker. However, I can imagine people might want to use different styles of naming conventions? If so, I'll have to have some sort of database to remember which file is which game, etc.

Quick side question, does Nut support these compressed files? I'm currently using SXServer, which is essentially just a rebrand of Nut.
 
Last edited by Stormwave,
  • Like
Reactions: Cyan

Stormwave

Well-Known Member
OP
Member
Joined
Apr 22, 2010
Messages
237
Trophies
0
Website
Visit site
XP
229
Country
@Cyan

Quick question, in regards to checking the validity of game files. Is there some sort of database that has which files are dangerous, bricker games, etc?

I'm also contemplating adding a Nut server and FTP server into the program itself, to ease installation using various installers.
 

Cyan

GBATemp's lurking knight
Former Staff
Joined
Oct 27, 2002
Messages
23,749
Trophies
4
Age
45
Location
Engine room, learning
XP
15,649
Country
France
there's no database.
to know if a title is potentially dangerous, you need to check its signature and certificate etc.
if you have a xci (usually a game dumped from cartridge) but it contains a non signed nro inside (usually a homebrew), it looks ultra suspicious. like Pokemon.xci which was released months ago, it contained a bricker homebrew.

other verifier or game manager are usually open source, you can check how they are doing it and make something similar.
in the wiki page, I list all tools. the game verifier working on one file at a time are currently listed in "tools", not in "game manager".
 
Last edited by Cyan,
  • Like
Reactions: Stormwave

Stormwave

Well-Known Member
OP
Member
Joined
Apr 22, 2010
Messages
237
Trophies
0
Website
Visit site
XP
229
Country
there's no database.
to know if a title is potentially dangerous, you need to check its signature and certificate etc.
if you have a xci (usually a game dumped from cartridge) but it contains a non signed nro inside (usually a homebrew), it looks ultra suspicious. like Pokemon.xci which was released months ago, it contained a bricker homebrew.

other verifier or game manager are usually open source, you can check how they are doing it and make something similar.
in the wiki page, I list all tools. the game verifier working on one file at a time are currently listed in "tools", not in "game manager".

Ah, okay. I see, should be easy enough to check.
 

Bebamercurio

New Member
Newbie
Joined
Mar 13, 2019
Messages
2
Trophies
0
Age
40
XP
96
Country
Spain
Nice!

Is very useful for me :)

I'm messing around with NSC Builder that is a wonderful tool but I really need this type of apps to check my backups collection.

Yesterday I used Switchbackupmanager to get all the info and paste it into a excel :D so my first idea is to add a feature to export the data.

Some useful fields I use are name, filename, filesize, base version, title id, update version, dlc's included...

Good job!
 

Stormwave

Well-Known Member
OP
Member
Joined
Apr 22, 2010
Messages
237
Trophies
0
Website
Visit site
XP
229
Country
Good idea about exporting, I'll work that in.

Latest version is coming along nicely, almost ready for release I think.

I've recently added: Batch renaming based on formatted strings (customisable), Metacritic ratings for games and Validation checking for ROMs. Also a game info panel on the right as well. Invalid games (either certificate failed, hash is invalid, file not readable, etc) appear with a red dot to the left, and "Rom Info" as Invalid.

Games will be verified on scanning, which takes a bit of time (a few minutes). Games already verified and checked will be skipped in future scans, unless you run a "Full Scan" which will reset everything it knows.

SwitchManager2.png
 
Last edited by Stormwave,

Stormwave

Well-Known Member
OP
Member
Joined
Apr 22, 2010
Messages
237
Trophies
0
Website
Visit site
XP
229
Country
Alright, ready for first release I think.

Still a ton of things I want to add, but it's enough to get started.

You can download from this page:

http://stormwave.uk/#downloads

All feedback appreciated, and new ideas will be taken into consideration.

Forgot to add a brief tutorial for getting set up.

First step is setting the library path in Library -> Set Path, after that everything should be straight forward enough. Full Scan does validation checks again, as opposed to normal scan. Rename Files will rename or sort files based on the options in File -> Settings.

Red dot, at present at least, means either the main XCI or NSP is damaged, corrupt or modified, or one of it's patches/DLCs is.
 
Last edited by Stormwave,
  • Like
Reactions: klear and Philliyxx

Stormwave

Well-Known Member
OP
Member
Joined
Apr 22, 2010
Messages
237
Trophies
0
Website
Visit site
XP
229
Country
Just to update you guys, I'm working on a rewrite of this app. I've ported the code base over to Mono instead of Microsoft's C# Dot Net.

This means it is now cross-platform! The user interface is web based, and completely skin-able. It'll keep all the same features, plus a few more I've added since I uploaded the older version. Linux and Mac OS users can celebrate.

Switch Manager New.png


Once I finish porting all the functions over, I'm going to try and implement a Nut server directly into it for ease of game installation on Switch. I might not include the USB option, undecided yet. I'll release it in the near future.
 
Last edited by Stormwave,

stitchxd

Well-Known Member
Member
Joined
Apr 27, 2017
Messages
401
Trophies
0
Location
nope
Website
gnusocial.me
XP
689
Country
United States
Just to update you guys, I'm working on a rewrite of this app. I've ported the code base over to Mono instead of Microsoft's C# Dot Net.

This means it is now cross-platform! The user interface is web based, and completely skin-able. It'll keep all the same features, plus a few more I've added since I uploaded the older version. Linux and Mac OS users can celebrate.

Switch Manager New.png


Once I finish porting all the functions over, I'm going to try and implement a Nut server directly into it for ease of game installation on Switch. I might not include the USB option, undecided yet. I'll release it in the near future.


Yo, that looks SLICK. Keep up the good work!
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
    K3Nv2 @ K3Nv2: they be like which lite firefox exe pls