Homebrew RELEASE Switch Backup Manager 1.0

Does version 1.1.0 works for you when adding nsp?

  • Yes

    Votes: 14 93.3%
  • No

    Votes: 1 6.7%

  • Total voters
    15
  • Poll closed .

GibaBR

Well-Known Member
OP
Newcomer
Joined
Jul 2, 2018
Messages
89
Trophies
0
Age
114
XP
475
Country
Brazil
Version 1.1.1 released

v 1.1.1
* Now you can add NSP titles with the same TitleID. Thanks to @garoxas
* add support for multiple XCI revisions Thanks to @garoxas
* Game information like description, release date, nº o players, publisher and categories can now be scraped from web (optional, can be set on config screen)
* User can manually edit information of the games.
* Fixed #32 (Auto renaming problem)
* Add CDNSP Renaming pattern (Detects if its a base game, DLC our Update)
 

Thandor

Well-Known Member
Member
Joined
Jul 29, 2018
Messages
103
Trophies
0
XP
315
Country
Germany
That was fast, great update! I have three suggestions for the future, perhaps it is possible to include them:

#1: Two seperate renaming patterns for Local files (XCI) and E-shop files (NSP)
#2: The CDNSP GUI rename format is very nice, but you should notice that files that have more than 67 chars can't be installed, so those should be cut automatically (eg. remove the update version, NSP Rename works this way).
#3: Perhaps you could include XCI-Cutter, some of us are still using a old firmware and FAT32.

https://github.com/Destiny1984/XCI-Cutter/releases
 
Last edited by Thandor,
  • Like
Reactions: GibaBR and PrixM

PrixM

Well-Known Member
Member
Joined
Apr 14, 2009
Messages
176
Trophies
1
XP
289
Country
Germany
Still the problem with linebreak for text and some spaces at start/end of the lines. You should trim and combine the lines.
" The legendary action game, "10 Second Run" is back! The rules (and "
" controls) are simple: "Move Sideways" and "Jump & Dash" to get to the "

should be
"The legendary action game, "10 Second Run" is back! The rules (and controls) are simple: "Move Sideways" and "Jump & Dash" to get to the..."
 

GibaBR

Well-Known Member
OP
Newcomer
Joined
Jul 2, 2018
Messages
89
Trophies
0
Age
114
XP
475
Country
Brazil
Guys, please, before use autorenaming function DO A TEST! If you use a wrong pattern it could overwrite all your files with the same name!
For Example, if you select a pattern like {gamename} {titleid} and have multiple files with the same Game name and Title ID it will override all files!
 
Last edited by GibaBR,

GibaBR

Well-Known Member
OP
Newcomer
Joined
Jul 2, 2018
Messages
89
Trophies
0
Age
114
XP
475
Country
Brazil
Guys, please, before use autorenaming function DO A TEST! If you use a wrong pattern it could overwrite all your files with the same name!
For Example, if you select a pattern like {gamename} {titleid} and have multiple files with the same Game name and Title ID it will override all files!

Release v 1.1.1a

* Fix: User could select a destructive pattern for autorenaming feature, leading to overwriting their files. To avoid that, if the same file name is generated, the program will not overwrite that, showing an error on the log
 
  • Like
Reactions: veddermandan

GibaBR

Well-Known Member
OP
Newcomer
Joined
Jul 2, 2018
Messages
89
Trophies
0
Age
114
XP
475
Country
Brazil
Still the problem with linebreak for text and some spaces at start/end of the lines. You should trim and combine the lines.
" The legendary action game, "10 Second Run" is back! The rules (and "
" controls) are simple: "Move Sideways" and "Jump & Dash" to get to the "

should be
"The legendary action game, "10 Second Run" is back! The rules (and controls) are simple: "Move Sideways" and "Jump & Dash" to get to the..."
I tried that but did not like the result.

Enviado de meu SM-G935F usando o Tapatalk
 

PrixM

Well-Known Member
Member
Joined
Apr 14, 2009
Messages
176
Trophies
1
XP
289
Country
Germany
I tried that but did not like the result.
upload_2018-8-12_6-52-10.png


Found another Problem.
No "Folders to scan at Startup" in Options and all NSP on external drive.
After starting Programm bevore connecting drive all NSP are removed.
The Program should not scan or ask.

Another error:
If i click on Tools / Scrap.... the Program crashes.

System.NullReferenceException: Der Objektverweis wurde nicht auf eine Objektinstanz festgelegt. (The Objectreference has no instance)

bei Switch_Backup_Manager.FrmMain.backgroundWorkerScrapExtraInfo_DoWork(Object sender, DoWorkEventArgs e)
bei System.ComponentModel.BackgroundWorker.OnDoWork(DoWorkEventArgs e)
bei System.ComponentModel.BackgroundWorker.WorkerThreadStart(Object argument)
 
Last edited by PrixM,

Muskusrat

Well-Known Member
Member
Joined
Jul 31, 2003
Messages
242
Trophies
2
XP
677
Country
Netherlands
Languages in NSP renaming are not working, for example pattern {gamename} (v{nspversion}) ({languages}) results in GUNBIRD2 for Nintendo Switch (v65536) ().nsp

Languages display in the program is not consistent. For example one game can have en, fr, de, it and the next game hasAmerican English, Japanese is it possible to configure these ourself? I prefere the short version on language names.

Can you add the [UPD] and [DLC] as options for custom pattern?

Can you add an option to move renamed files to a directory rename (or something like that). This way it is easily noticeable which games weren't renamed correctly.

Keep up the good work, really like the program.
 

PrixM

Well-Known Member
Member
Joined
Apr 14, 2009
Messages
176
Trophies
1
XP
289
Country
Germany
you mean disable the word wrap?
yeah I think that would be nice too
Yes and no.
First line has only CRLF (0x0d 0x0a).
The every line starts with 6 Spaces (0x20)
So if you remove every 0x0d0a202020202020 in the string you get one line of text that works.
(I made this for SBM_NSP_Local.xml and it looks much better now)
Only disabling word wrap won't work.


BTW. The Link in the left Panel still only works for the Game

Clicking a emty line and the left panel is clear but the botton panel (should be bottom in your View menu or?) is still filled.
 
Last edited by PrixM,
  • Like
Reactions: Garou

veddermandan

Well-Known Member
Member
Joined
Mar 4, 2010
Messages
92
Trophies
0
Website
youtu.be
XP
207
Country
Australia
Release v 1.1.1a

* Fix: User could select a destructive pattern for autorenaming feature, leading to overwriting their files. To avoid that, if the same file name is generated, the program will not overwrite that, showing an error on the log
I have a problem of scanning existing nsps and xcis. Only nsp up to C are listed nothing further. And xcis not listed at all
 

Garou

Well-Known Member
Member
Joined
Jan 13, 2015
Messages
1,213
Trophies
0
XP
1,667
Country
Yes and no.
First line has only CRLF (0x0d 0x0a).
The every line starts with 6 Spaces (0x20)
So if you remove every 0x0d0a202020202020 in the string you get one line of text that works.
(I made this for SBM_NSP_Local.xml and it looks much better now)
Only disabling word wrap won't work.
I agree
here's the result with disabling word wrap and trimming leading and trailing whitespace. there are still weirdly placed linebreaks in some lines

sbm1.PNG


and here's the result by simplifying all whitespace so it become 1 line as you suggested (with word wrap enabled)

sbm2.PNG


the second one looks better imo
 
  • Like
Reactions: PrixM

PrixM

Well-Known Member
Member
Joined
Apr 14, 2009
Messages
176
Trophies
1
XP
289
Country
Germany
First of all i like your work! :bow:

Some Ideas/wishes for the next version/s.
If you scrap onlineinfos. Save them to a local DB so next time you could read them from there (much faster)
E.g. GalGun 2 US are 23 Files (Game + UPD + DLC) = 23 Scrappings (is Scrappings a existing word?) from net or 1 time.

Show User if there are videos on the Webpage.

Remove the [DLC] in front of Gamtitle. or set it to the same position [UPD] has.
You make them green thats enough.
If i sort by name the DLCs are sorted correctly

Like i an other told you. The Languages are a little bit confusing.
American English,British English,Japanese,French,German....
Replace the Strings using the short versions and then remove double.
French & Canadian French should be fr

For the better look
Firmware 0 = 0.0.0

Let the User choose the Dateformat.
US Date is confusing for most peopele in the world even if you use Month as Text

I still want one list for all.
You show the Distribution and i can set filters so why 2 lists/databases?

Your UsedSpace/Bytes are not correct,
In my DB they are allways identical with ROMSize/Bytes but in real they are not.

The Description is not allways complete.
e.g. Take a look at 1-2-Switch https://ec.nintendo.com/apps/01000320000CC000/US
Your version ends after "Features:"

Also i still want to choose the Language for the description without recompiling your source ;-)
You can find all possibilities on https://www.nintendo.com/countryselector
I found a way to set the language in ec.nin.. url for Multilaguage countries like swiss (DE/FR/IT)
Maybe you are interested.
If you set INTERNET_FLAG_NO_AUTO_REDIRECT flag (No Autoredirect) Dont know how you do this for your 3rd party control.
You can catch the 303 Header
This header gives you the Adress incl. language support.
https://ec.nintendo.com/apps/010055a00a300000/DE
Result:
HTTP/1.0 303 See Other
Content-Type: text/plain; charset=utf-8

Location: https://www.nintendo-europe.com/redirect/?nsuid=70010000008221&country=DE&language=de
.....
Now you can get the url and set BE fr
 
Last edited by PrixM,
  • Like
Reactions: GibaBR

Yasars

Member
Newcomer
Joined
Aug 6, 2018
Messages
15
Trophies
0
Age
40
XP
253
Country
Germany
I select the dir with my xci games...

Scraping games ... Is freezing..
But he can found games , but it say done... Use 1.1.1a...
See log:
 

Attachments

  • MVIMG_20180812_153419-1024x768.jpg
    MVIMG_20180812_153419-1024x768.jpg
    171.7 KB · Views: 114

fpw76

Member
Newcomer
Joined
Dec 5, 2009
Messages
8
Trophies
1
Location
Sydney
XP
261
Country
Australia
Great job so far!

Few other suggestions from me (could probably implement them myself but too many things to do in life :-)
  • Scrapped information (with Update Game Info from Web) should probably be shared between Base Game and DLC/Update. Currently scrapped info is only associated with the file it was run on.
  • Ability to filter/hide by type (Base Game / Update / DLC / Demo) as the list is getting a bit too cluttered
    OR
  • completely hide DLCs / Updates file from the main list and instead add DLC / Update columns to the list (to show there are associated DLCs/Updates).
    Then add two extra tabs to the bottom panel listing DLCs / Updates associated with given base game.
 
  • Like
Reactions: GibaBR

Moko

Well-Known Member
Member
Joined
Feb 19, 2007
Messages
113
Trophies
1
XP
1,865
Country
Germany
Many thanks for your program.
It works without problem, but i have a little problem:
Every time, i scanning for XCI Files, the changing date of the folders are setting to the current time.
i think you create a tmp file, is it possible to do this in tmp folder, so that the date/time of the folder not changed?
Thanks
 

chr0m

Well-Known Member
Member
Joined
Oct 9, 2007
Messages
345
Trophies
1
XP
987
Country
Australia
I've found an issue when adding certain Update NPSs. So far all the problem ones I have found are ones downloaded with the latest CDNSP with lots of extra delta fragments in. The original versions of those same update NSPs without all the extra delta fragments load fine.

Some examples are:

Disgaea 5 Alliance of Vengeance [UPD][0100e5f0000c0800][v196608]
Gear.Club Unlimited [UPD][010065e003fd8800][v131072]
L.A. Noire [UPD][0100830004fb6800][v131072]
NBA 2K18 [UPD][0100760002048800][v393216]
RiME [UPD][0100a62002042800][v131072]

The log shows this error on those files:

Code:
2018-08-15 22:09:59.239 [ERROR]    seems to be broken! Some info will be missing.
2018-08-15 22:09:59.313 [ERROR]      at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
   at System.IO.Directory.Delete(String fullPath, String userPath, Boolean recursive, Boolean checkHost)
   at System.IO.Directory.Delete(String path, Boolean recursive)
   at Switch_Backup_Manager.Util.GetFileDataNSP(String file)
   at Switch_Backup_Manager.Util.AddFiles(String[] files, String fileType)

It then proceeds to show stuff like this many, many times:

2018-08-15 22:38:04.097 [DEBUG] searching for 0100F5A008126000 on database.
2018-08-15 22:38:04.190 [DEBUG] 0100F5A008126000 not found on database. Adding...
2018-08-15 22:38:04.266 [DEBUG] Adding element...
2018-08-15 22:38:04.345 [DEBUG] Saving xml SBM_NSP_Local.xml
2018-08-15 22:38:04.454 [DEBUG] xml saved...
2018-08-15 22:38:04.516 [DEBUG] searching for 010002900294A000 on database.
2018-08-15 22:38:04.594 [DEBUG] 010002900294A000 not found on database. Adding...
2018-08-15 22:38:04.672 [DEBUG] Adding element...
2018-08-15 22:38:04.753 [DEBUG] Saving xml SBM_NSP_Local.xml
2018-08-15 22:38:04.859 [DEBUG] xml saved...
2018-08-15 22:38:04.922 [DEBUG] searching for 010002900294A800 on database.
2018-08-15 22:38:05.011 [DEBUG] 010002900294A800 not found on database. Adding...
2018-08-15 22:38:05.087 [DEBUG] Adding element...
2018-08-15 22:38:05.166 [DEBUG] Saving xml SBM_NSP_Local.xml
2018-08-15 22:38:05.295 [DEBUG] xml saved...

Before giving up
 
Last edited by chr0m,

GibaBR

Well-Known Member
OP
Newcomer
Joined
Jul 2, 2018
Messages
89
Trophies
0
Age
114
XP
475
Country
Brazil
I've found an issue when adding certain Update NPSs. So far all the problem ones I have found are ones downloaded with the latest CDNSP with lots of extra delta fragments in. The original versions of those same update NSPs without all the extra delta fragments load fine.

Some examples are:

Disgaea 5 Alliance of Vengeance [UPD][0100e5f0000c0800][v196608]
Gear.Club Unlimited [UPD][010065e003fd8800][v131072]
L.A. Noire [UPD][0100830004fb6800][v131072]
NBA 2K18 [UPD][0100760002048800][v393216]
RiME [UPD][0100a62002042800][v131072]

The log shows this error on those files:

Code:
2018-08-15 22:09:59.239 [ERROR]    seems to be broken! Some info will be missing.
2018-08-15 22:09:59.313 [ERROR]      at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
   at System.IO.Directory.Delete(String fullPath, String userPath, Boolean recursive, Boolean checkHost)
   at System.IO.Directory.Delete(String path, Boolean recursive)
   at Switch_Backup_Manager.Util.GetFileDataNSP(String file)
   at Switch_Backup_Manager.Util.AddFiles(String[] files, String fileType)

It then proceeds to show stuff like this many, many times:



Before giving up

Yes, I'm aware of these files. They seem broken as when I use hactool to extract them the files I expect are not there or are worng formated.
For now, I made a minor fix to keep scanning the other files. The fix is on github already and will be on next release.
 

PrixM

Well-Known Member
Member
Joined
Apr 14, 2009
Messages
176
Trophies
1
XP
289
Country
Germany
Renaming is still buggy
Renaming files {nspversion} results in {revision}
Tested with xci

BTW: Still total crash if i click Tools/Scrap extend.....
 
Last edited by PrixM,

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
    Kirbydogs @ Kirbydogs: wait