XCI Organizer (based on XCI Explorer)

u/gibajr on reddit is taking XCI management to the next level. His initial release here.

grv1mCK.jpg


"My Idea was to make a way of listing all my XCI files and show their info without need to open file by file. I'm a newbie on C# so the code is not beauty." - u/gibajr

To be fair, I'm a noob too. My C#/coding skills are sub-par. Any help would be appreciated!
DISCONTINUED IN FAVOR OF https://gbatemp.net/threads/switch-backup-manager-1-0.511143/
Changelog
v0.1r1 FINAL

  • Game icon properly sized
  • Batch rename now takes less than 5 seconds
  • Cache changes (will have to be rewritten)
  • This is probably the last release for this project (a better version coming soon)
v0.0.9rev1 [PRE-RELEASE]
  • [FEATURE] Custom batch file renaming schemes thanks to RedSparr0w
  • [FEATURE] Basic ascending sorting by ID or Game Name
  • Added more information to list
v0.0.8rev004 [PRE-RELEASE]
  • [FEATURE] Added cache to reduce load times
  • Program won't freeze while loading files! (needs testing with large library)
  • Added status indicator in the Tools tab
  • Properly sort list by game name
  • Reorder columns (won't save)
  • Other fixes and changes I already forgot
  • [NOTE] A lot has changed under the hood, there may be bugs and so this is a PRE-RELEASE
  • [DEV-NOTE] The code is getting messy fast. We need to take some time and organize things
v0.0.7 [PRE-RELEASE]
  • New user interface for listing games!
  • Highlights when files are not trimmed
  • Context menu available in the games list (Right click on it!)
  • Some code refactoring
  • Some under the hood improvements
  • [KNOWN ISSUE] Struggles loading with larger game libraries
v0.0.6
  • You can now choose between Simple, Detailed, and Scene naming schemes for batch renaming
  • Note: If you are getting errors related to XML, try using the "Update NSWDB" button in the Tool menu.
v0.0.5
  • [FEATURE] By default, uses scene release name from NSWDB for batch rename
  • Faster solution for downloading missing files
v0.0.4
  • [FEATURE] Click on picture to save it to current directory
  • Fix batch renaming files incorrectly (temporary renaming solution)
  • Fix batch trimming destroying files
  • Minor bug fixes
  • NSWDB renaming support coming soon(tm)
v0.0.3
  • Batch file renaming/trimming
  • Fixed potential crash
v0.0.2
  • Game names are displayed instead of path names
  • Fixed bug where base directory with folders would only display folder contents
  • Disabled cert import/clear buttons while extracting NCA (latest XCI Explorer)
v0.0.1
  • Initial release

As always, I haven't extensively tested this release. I'm curious how long it takes to batch trim/rename 200 files, but I don't have the time or bandwidth to test that. If you find a bug or something isn't working right, submit an issue on GitHub or reply here!

My Latest Release: GitHub Download
 

Attachments

  • ucOuiuY.png
    ucOuiuY.png
    397.7 KB · Views: 1,181
Last edited by NotMii,

uzi

Well-Known Member
Member
Joined
Mar 21, 2006
Messages
100
Trophies
1
XP
308
Country
kinda liked seeing file name with the actual name on file
.6v loads folders faster then v7 [actually hung loading 200 files] but it eventually loads
 

Attachments

  • Screen Shot 2018-07-05 at 11.54.10 AM.png
    Screen Shot 2018-07-05 at 11.54.10 AM.png
    152.7 KB · Views: 363

NotMii

Active Member
OP
Newcomer
Joined
Jun 18, 2018
Messages
41
Trophies
0
XP
186
Country
United States
kinda liked seeing file name with the actual name on file
.6v loads folders faster then v7 [actually hung loading 200 files] but it eventually loads
Just woke up and am going to review the code and think of a more optimized way to do it. v0.0.7 is pretty intensive from what I can see on load.
 

uzi

Well-Known Member
Member
Joined
Mar 21, 2006
Messages
100
Trophies
1
XP
308
Country
maybe next update, a collection tab. compares db with files in hd if you have it or missing? lol
idk just throwing it out there as a collector ;p

have program make a txt file db of said collection / export list
 

GibaBR

Well-Known Member
Newcomer
Joined
Jul 2, 2018
Messages
89
Trophies
0
Age
114
XP
475
Country
Brazil
Just woke up and am going to review the code and think of a more optimized way to do it. v0.0.7 is pretty intensive from what I can see on load.

Thats because it reads info from all files to populate the list. We can use that information to, for example, sort files by Title ID, Masterkey Revision, Developer, and so on...
Indeed, I know we can improve the code and make it faster.
 

NotMii

Active Member
OP
Newcomer
Joined
Jun 18, 2018
Messages
41
Trophies
0
XP
186
Country
United States
Thats because it reads info from all files to populate the list. We can use that information to, for example, sort files by Title ID, Masterkey Revision, Developer, and so on...
Indeed, I know we can improve the code and make it faster.
I see that. I was experimenting with ObjectListView too since it's a better version of ListView, but haven't used it before. Will probably scrap it, and I've heard XmlReader is faster so it might help the load time.
wgXJaLN.jpg
 
Last edited by NotMii,

GibaBR

Well-Known Member
Newcomer
Joined
Jul 2, 2018
Messages
89
Trophies
0
Age
114
XP
475
Country
Brazil
I see that. I was experimenting with ObjectListView too since it's a better version of ListView, but haven't used it before. Will probably scrap it, and I've heard XmlReader is faster, so it might help the load time.

The slowdown is because it needs to decrypt the XCI and get info there. I could not find a way to bypass that, its beyond my knowledge.
What I was thinking is:

a) Make a thread that populates the list while de main window stills usable (Not good...)
b) Save info into a XML and then load that on next execution of the program. This way it should be slow only on the first use.
 
  • Like
Reactions: WiiuGold

NotMii

Active Member
OP
Newcomer
Joined
Jun 18, 2018
Messages
41
Trophies
0
XP
186
Country
United States
The slowdown is because it needs to decrypt the XCI and get info there. I could not find a way to bypass that, its beyond my knowledge.
What I was thinking is:

a) Make a thread that populates the list while de main window stills usable (Not good...)
b) Save info into a XML and then load that on next execution of the program. This way it should be slow only on the first use.
Just noticed that util function. Damn, this requires understanding of XCI/NCA :/. We need need an efficient way to get the titleid from XCI files.
 
Last edited by NotMii,

straumli

Well-Known Member
Newcomer
Joined
May 17, 2018
Messages
47
Trophies
0
Age
124
XP
1,000
Country
Netherlands
Works (very) fine but indeed it is slow starting up and switching between titles. Perhaps you could introduce a caching mechanism?
Also, for the batch renamer, perhaps you could show an example based on the first title in your list so you get an idea what the end result will be?

Bug: After renaming files the gamelist needs to be refreshed/updated as they can no longer be found (results in error when selecting)
 
Last edited by straumli,

NotMii

Active Member
OP
Newcomer
Joined
Jun 18, 2018
Messages
41
Trophies
0
XP
186
Country
United States
Check out the new version guys. As always, I try to test every case but sometimes things slip past me. Let me know if you notice any glaring bugs.
 

uzi

Well-Known Member
Member
Joined
Mar 21, 2006
Messages
100
Trophies
1
XP
308
Country
i dig the cachin , but can we sort by id?
is it possible to hide columns? or drag then around
i would like to put mine as,

id, game , size
 
Last edited by uzi,

NotMii

Active Member
OP
Newcomer
Joined
Jun 18, 2018
Messages
41
Trophies
0
XP
186
Country
United States
i dig the cachin , but can we sort by id?
is it possible to hide columns? or drag then around
i would like to put mine as,

id, game , size
Allowing you to move columns is easy to do, but it won't save on exit (maybe in the future, but you can move columns in v0.0.8rev4). Sorting is a little different and requires more work because things depend on the list order.
 
Last edited by NotMii,

uzi

Well-Known Member
Member
Joined
Mar 21, 2006
Messages
100
Trophies
1
XP
308
Country
while trying to load a folder of 200 files
 

Attachments

  • Screen Shot 2018-07-08 at 3.40.58 PM.png
    Screen Shot 2018-07-08 at 3.40.58 PM.png
    8 KB · Views: 286

NotMii

Active Member
OP
Newcomer
Joined
Jun 18, 2018
Messages
41
Trophies
0
XP
186
Country
United States
What does it really do sorry I’m new to this
Nothing revolutionary. It just lists your XCI files from a folder into a list with info about each file. You can trim/inject certs too.
i loaded 224 games on it , took about 4 mins :) there some errors on games with rev 1 or 2 0001 it makes it
Yep, it's a known issue. Thanks for testing with a large list!
 
Last edited by NotMii,

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
    Xdqwerty @ Xdqwerty: https://www.youtube.com/watch?v=WvojgRvNriw