ROM Hack [Release] 3ds Rom Tools (GUI)

Shadowtrance

Well-Known Member
OP
Member
Joined
May 9, 2014
Messages
2,493
Trophies
0
Location
Hervey Bay, Queensland
XP
1,807
Country
As the title says, this is a release of my 3ds Rom Tools (couldn't think of a better name) GUI frontend for ctrtool / padxorer.

It's basically for extracting rom files with a few button presses without messing with batch files and commandline like we have been for so long.
Supports encrypted games, via xorpads and of course decrypted games decrypted using Decrypt 9's rom decryptor feature. :)

So i thought I'd take a stab at it and learn a bit of C# while I'm at it. :)

Help button pretty much tells you what to do if you don't happen to figure it out by just looking at the window.

Source is here. https://github.com/Shadowtrance/3ds-Rom-Tools
And pre-built copy is here. https://github.com/Shadowtrance/3ds-Rom-Tools/releases

I'm open to suggestions for adding stuff, although i can't really think of much to add. Also open to pull requests with code optimizing, enhancements etc as I'm still pretty new to C# so I'm sure there's things that could be done better. But as it stands now it does the job i wanted it to. :)

Of course if there's any issues that come up please do let me know. :)

Anyway here's a few screenshots, not much to it really.

Thanks for reading and enjoy. :)

QbCPqvm.png


BlaM7fG.png
 
Last edited by Shadowtrance,

ayanekochan

Well-Known Member
Member
Joined
Aug 6, 2015
Messages
202
Trophies
0
Age
64
XP
133
Country
United States
On Windows 8, upon first launch of 3ds Rom Tools.exe it takes 2-3 minutes to load up, looked a bit glitchy with the window disappearing for a second and reappearing. Subsequent launches are immediate with no issues.

On rom selection, after click on Browse and then cancel, it throws up an error "Unhandled exception has occurred in your application. If you click Continue, the application will Ignore this error and attempt to continue. If you click Quit, the application will close immediately. Path cannot be the empty string or all whitespace." I can click on Browse again if I click Ignore.

Ok, there must be a step that I'm missing, because after selecting a rom, pressing any of the buttons (extract exheader, etc) gives me a window saying it's done, but all my folders are still empty in the rom directory created by the program. Are they being stored somewhere else? The buttons for unpacking remained grayed out after extracting was supposedly completed.

Before you ask, I'm running the exe with the whole zip file unpacked so it does have access to the other files in the download.
 
Last edited by ayanekochan,

Shadowtrance

Well-Known Member
OP
Member
Joined
May 9, 2014
Messages
2,493
Trophies
0
Location
Hervey Bay, Queensland
XP
1,807
Country
On Windows 8, upon first launch of 3ds Rom Tools.exe it takes 2-3 minutes to load up, looked a bit glitchy with the window disappearing for a second and reappearing. Subsequent launches are immediate with no issues.
I can't replicate this. Runs fine (few seconds from clicking to appearing), I'm on win 8.1.

On rom selection, after click on Browse and then cancel, it throws up an error "Unhandled exception has occurred in your application. If you click Continue, the application will Ignore this error and attempt to continue. If you click Quit, the application will close immediately. Path cannot be the empty string or all whitespace." I can click on Browse again if I click Ignore.
I can replicate this. Will have to fix it and put in some checks so that doesn't happen if someone happens to click cancel. I must have missed browse/cancel issue while testing.

Ok, there must be a step that I'm missing, because after selecting a rom, pressing any of the buttons (extract exheader, etc) gives me a window saying it's done, but all my folders are still empty in the rom directory created by the program. Are they being stored somewhere else? Before you ask, I'm running the exe with the whole zip file unpacked so it does have access to the other files in the download.
They shouldn't be empty, a folder with the name of the rom file (minus extension) should be created in the same folder as the program, and there should be 3 sub folders inside it (decrypted, encrypted and unpacked). And the files should be move to their respective folder once unpacked.
Also if you press unpack and the game isn't already decrypted (using the rom decryption option in Decrypt9) only the encrypted files will appear, and the unpack will do nothing. So for that to work you need to use the xorpad tab after extracting.

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

Port it to Qt (C++), which is cross-platform :)
If i knew QT or C++ i would, but i don't. :P
But the source is there on github. :)
 

ayanekochan

Well-Known Member
Member
Joined
Aug 6, 2015
Messages
202
Trophies
0
Age
64
XP
133
Country
United States
They shouldn't be empty, a folder with the name of the rom file (minus extension) should be created in the same folder as the program, and there should be 3 sub folders inside it (decrypted, encrypted and unpacked). And the files should be move to their respective folder once unpacked.
Also if you press unpack and the game isn't already decrypted (using the rom decryption option in Decrypt9) only the encrypted files will appear, and the unpack will do nothing. So for that to work you need to use the xorpad tab after extracting.

That's just it though. I see the 3 sub folders but all of them are empty after I press each of the extract buttons.

I'm testing it with a Monster Hunter 4 U (U) rom, I'm assuming it's encrypted since it's a cart dump. I selected the rom and then pressed extract, got a completed confirm window, and then nothing. No files in any of the new folders and grey buttons for unpack.
 

Shadowtrance

Well-Known Member
OP
Member
Joined
May 9, 2014
Messages
2,493
Trophies
0
Location
Hervey Bay, Queensland
XP
1,807
Country
That's just it though. I see the 3 sub folders but all of them are empty after I press each of the extract buttons.

I'm testing it with a Monster Hunter 4 U (U) rom, I'm assuming it's encrypted since it's a cart dump. I selected the rom and then pressed extract, got a completed confirm window, and then nothing. No files in any of the new folders and grey buttons for unpack.
That's quite strange. Have you tried any other games?
Also did you make sure to "unblock" the zip after downloading (if it's blocked that is) ? Seeing as windows seems to like blocking files. (right click > properties > unblock > apply > OK).
I have MH4U (E) i think so i'll check it with that.
 

ayanekochan

Well-Known Member
Member
Joined
Aug 6, 2015
Messages
202
Trophies
0
Age
64
XP
133
Country
United States
That's quite strange. Have you tried any other games?
Also did you make sure to "unblock" the zip after downloading (if it's blocked that is) ? Seeing as windows seems to like blocking files. (right click > properties > unblock > apply > OK).
I have MH4U (E) i think so i'll check it with that.

I already unzipped with no issues but I re-did it again just in case after "unblocking" the zip. Tried MH4U again with and without admin rights, both times with same results. Also tried with a different rom TFF:Curtain Call (U), with and without admin rights, same thing. It looks like it creates those folders at the time when the rom is selected, but it does not become populated with files after I press any of the extract buttons. Sometimes the extraction complete window doesn't appear but most of the time it comes up immediately.

Also, these are .3ds roms, I don't know if that makes a difference.

Edit: Just checked again, I am actually on win8.1
 
Last edited by ayanekochan,

Shadowtrance

Well-Known Member
OP
Member
Joined
May 9, 2014
Messages
2,493
Trophies
0
Location
Hervey Bay, Queensland
XP
1,807
Country
I already unzipped with no issues but I re-did it again just in case after "unblocking" the zip. Tried MH4U again with and without admin rights, both times with same results. Also tried with a different rom TFF:Curtain Call (U), with and without admin rights, same thing. It looks like it creates those folders at the time when the rom is selected, but it does not become populated with files after I press any of the extract buttons. Sometimes the extraction complete window doesn't appear but most of the time it comes up immediately.

Also, these are .3ds roms, I don't know if that makes a difference.
That's really strange. And no it doesn't matter that they're .3ds files as that's what it's looking for anyway (among other file extensions).

I'll try it with those 2 games myself in a minute, i have the eu versions here.

Edit: Well i just tried both of those games and they extracted fine. Didn't try unpack as i don't have the xorpads at the moment or a decrypted copy of either.
 
Last edited by Shadowtrance,

ayanekochan

Well-Known Member
Member
Joined
Aug 6, 2015
Messages
202
Trophies
0
Age
64
XP
133
Country
United States
That's really strange. And no it doesn't matter that they're .3ds files as that's what it's looking for anyway (among other file extensions).

I'll try it with those 2 games myself in a minute, i have the eu versions here.

Edit: Well i just tried both of those games and they extracted fine. Didn't try unpack as i don't have the xorpads at the moment or a decrypted copy of either.

Hmm, I browsed through your code a bit and it looks like there's supposed to be output displayed in the text box when the extract button is run? Mine is blank except for the folder extension which is displayed after I select the rom file. But even after I get the extraction complete window it remains blank.
 

Shadowtrance

Well-Known Member
OP
Member
Joined
May 9, 2014
Messages
2,493
Trophies
0
Location
Hervey Bay, Queensland
XP
1,807
Country
Hmm, I browsed through your code a bit and it looks like there's supposed to be output displayed in the text box when the extract button is run? Mine is blank except for the folder extension which is displayed after I select the rom file. But even after I get the extraction complete window it remains blank.
Yeah it should look like this... I really have no idea what's going wrong on your end. :(


b6nbqnw.png
 

ayanekochan

Well-Known Member
Member
Joined
Aug 6, 2015
Messages
202
Trophies
0
Age
64
XP
133
Country
United States
Yeah it should look like this... I really have no idea what's going wrong on your end. :(

Yea, that's really strange, my text box is completely empty...

Are there any additional software I need to install? Win8.1 should have all the essential requirements right?

I'm re-dumping another cart to see if its a cart issue.
 

Shadowtrance

Well-Known Member
OP
Member
Joined
May 9, 2014
Messages
2,493
Trophies
0
Location
Hervey Bay, Queensland
XP
1,807
Country
Yea, that's really strange, my text box is completely empty...

Are there any additional software I need to install? Win8.1 should have all the essential requirements right?

I'm re-dumping another cart to see if its a cart issue.
Can't think of any other requirements except .NET framework (4.5) but you obviously already have that as it probably wouldn't even run otherwise.
Only other thing i can think of is try running ctrtool from cmd and see what happens, although i don't think it requires anything else either, nor does padxorer I'm pretty sure. Only other software required is python for the merge exefs script. (i don't know how to convert python to C# otherwise that wouldn't be needed either).
 

ayanekochan

Well-Known Member
Member
Joined
Aug 6, 2015
Messages
202
Trophies
0
Age
64
XP
133
Country
United States
Can't think of any other requirements except .NET framework (4.5) but you obviously already have that as it probably wouldn't even run otherwise.
Only other thing i can think of is try running ctrtool from cmd and see what happens, although i don't think it requires anything else either, nor does padxorer I'm pretty sure. Only other software required is python for the merge exefs script. (i don't know how to convert python to C# otherwise that wouldn't be needed either).

I tried the extraction again with a new rom dump, no dice.

When I run ctrtool from cmd, it gives me an error: The program can't start because MSVCR120D.dll is missing from your computer. Try reinstalling the program to fix this problem

I'm thinking this is the reason why it's not working for me?

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

Running the dll through google gives me this page: https://msdn.microsoft.com/en-us/library/windows/hardware/dn448963(v=vs.85).aspx

I think you're supposed to include this in the code/package for it to run properly? It doesn't sound like non-development environments would have this file.
 

Shadowtrance

Well-Known Member
OP
Member
Joined
May 9, 2014
Messages
2,493
Trophies
0
Location
Hervey Bay, Queensland
XP
1,807
Country
I tried the extraction again with a new rom dump, no dice.

When I run ctrtool from cmd, it gives me an error: The program can't start because MSVCR120D.dll is missing from your computer. Try reinstalling the program to fix this problem

I'm thinking this is the reason why it's not working for me?

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

Running the dll through google gives me this page: https://msdn.microsoft.com/en-us/library/windows/hardware/dn448963(v=vs.85).aspx

I think you're supposed to include this in the code/package for it to run properly? It doesn't sound like non-development environments would have this file.
No, no need for me to include it as it's part of the Microsoft Visual C++ 2013 Redistributable. (the GUI itself doesn't need it, but ctrtool does for some reason)
So yeah that will be the problem causing you to get nothing output.
http://www.microsoft.com/en-us/download/details.aspx?id=40784
 

ayanekochan

Well-Known Member
Member
Joined
Aug 6, 2015
Messages
202
Trophies
0
Age
64
XP
133
Country
United States
No, no need for me to include it as it's part of the Microsoft Visual C++ 2013 Redistributable. (the GUI itself doesn't need it, but ctrtool does for some reason)
So yeah that will be the problem causing you to get nothing output.
http://www.microsoft.com/en-us/download/details.aspx?id=40784

Didn't work, I'm still getting the same error from trying to run ctrtool from cmd after I installed the dist pack. I also confirmed that I have the dll file in windows/system32, but interestingly it dates back to 2013...
 

ayanekochan

Well-Known Member
Member
Joined
Aug 6, 2015
Messages
202
Trophies
0
Age
64
XP
133
Country
United States
Didn't work, I'm still getting the same error from trying to run ctrtool from cmd after I installed the dist pack. I also confirmed that I have the dll file in windows/system32, but interestingly it dates back to 2013...

Found the culprit! I replaced the ctrtool file with the older one from http://gbatemp.net/attachments/ctrtool-rar.10457/ and it worked. I realized that yours came from somewhere else after digging through your github and not seeing the source code for it (it had to have come from someone else).

Text box is populated with lines of output and I'm finally able to extract all the bin files.

And...I was under the impression that this tool allowed me to extract xorpads lol...it looks like I actually need to have xorpads on hand to use this...x.x
 

Shadowtrance

Well-Known Member
OP
Member
Joined
May 9, 2014
Messages
2,493
Trophies
0
Location
Hervey Bay, Queensland
XP
1,807
Country
Found the culprit! I replaced the ctrtool file with the older one from http://gbatemp.net/attachments/ctrtool-rar.10457/ and it worked. I realized that yours came from somewhere else after digging through your github and not seeing the source code for it (it had to have come from someone else).

Text box is populated with lines of output and I'm finally able to extract all the bin files.

And...I was under the impression that this tool allowed me to extract xorpads lol...it looks like I actually need to have xorpads on hand to use this...x.x
Nope xorpad extraction/creation still needs 3ds sadly. lol
And yeah there's a few versions of ctrtool floating around and i never had any issues with the one i use so i included that one.
You don't really need the xorpads for extracting/unpacking as you can use the rom decryption option in decrypt9 to decrypt the rom file directly on the 3ds, then extract on pc, no xorpads needed.
 

Asia81

Yuri Lover ~
Member
Joined
Nov 15, 2014
Messages
6,656
Trophies
3
Age
29
XP
3,488
Country
France
Not working with decrypted roms (so no xorpad needed) by rxtool/decrypt9.
all i get it's an empty folder.
 

ayanekochan

Well-Known Member
Member
Joined
Aug 6, 2015
Messages
202
Trophies
0
Age
64
XP
133
Country
United States
Nope xorpad extraction/creation still needs 3ds sadly. lol
And yeah there's a few versions of ctrtool floating around and i never had any issues with the one i use so i included that one.
You don't really need the xorpads for extracting/unpacking as you can use the rom decryption option in decrypt9 to decrypt the rom file directly on the 3ds, then extract on pc, no xorpads needed.

Yea I got excited when I thought this can allow me to do everything on the pc instead of going back and forth.

If I decrypt directly on the 3ds, then that means I'd need to have loaded every rom on the msd first, which is not ideal if I'm planning making a lot of cias at once. But yes, I can see this being useful if I were to dump games one by one and then using decrypt9 directly afterwards.

At least we figured out the problem so it'll be helpful for others who have similar runtime environments. :lol:

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

Not working with decrypted roms (so no xorpad needed) by rxtool/decrypt9.
all i get it's an empty folder.

Try it again after replacing the ctrtool.exe with the one from here http://gbatemp.net/attachments/ctrtool-rar.10457/, worked for me.
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
    K3Nv2 @ K3Nv2: I hate these DIY furniture kits so bad