ROM Hack [Release - WIP] 3DS Toolkit

fafaffy

Well-Known Member
OP
Member
Joined
Sep 1, 2012
Messages
345
Trophies
0
XP
716
Country
United States
So, let me make sure that I understand this right. I could use this to install a homebrew program to the SD card the same way that I would using FBI, except though the computer rather than the 3DS? That sounds incredibly useful. Does it have a way to determine the difference between a CIA of a game and a homebrew CIA?

If I had to make a recommendation to the program, would it be possible to have the option on the 3DNUS plugin to let us search for things using their name rather than their Title ID? For instance, if we were to put in something like "Firmware" into the search bar, have a list come up to certify whether we wand "N3DS Firmware 9.1.0", "O3DS Firmware 9.1.0", etc?

The only recommendation that I could think of for the SD card management would be to have a list of recommended homebrew programs that we could download. For instance, a list of programs such as GameYob, FTBrony, BlargSNES. Clicking a download button would either automatically open a window to the site or forum page for that particular program, or link directly to the download itself. (Although I think that the latter would be more work and require permission and setup with the people making each individual program.)
That's what I'm currently implementing is a homebrew downloader :). This will not install CIA's to your 3DS as that is overly complicated and I'm sure I need access to the NAND as well.

Also, for the title downloader, I will eventually have a little section where you'll be able to browse preset items (such as firmwares, etc..) from an online database.
 

Melon__Bread

~It's A Magik~
Member
Joined
Dec 9, 2013
Messages
833
Trophies
0
Age
30
XP
928
Country
United States
Instead of attaching zips via temp/filetrip, why not just do releases on github and link to those. A lot cleaner since you do change logs and such
 
  • Like
Reactions: kactusss

fafaffy

Well-Known Member
OP
Member
Joined
Sep 1, 2012
Messages
345
Trophies
0
XP
716
Country
United States
Update 1.2 released

Changelog:
  • Users can now actually open the utility without having a blank screen (oops)
  • Homebrew tab is a little more robust; users can now download homebrew from an online database HOWEVER
    • Homebrew is currently downloaded, but can not currently be installed to SD cards
    • The download button won't properly rename itself to "Extract" once you first download, not sure why... (bug)
Changes have been submitted to github

Instead of attaching zips via temp/filetrip, why not just do releases on github and link to those. A lot cleaner since you do change logs and such
Now, I'm using copy, and the reason is I can do direct linking, which is something I'll soon require for my automatic update checker.
 

fafaffy

Well-Known Member
OP
Member
Joined
Sep 1, 2012
Messages
345
Trophies
0
XP
716
Country
United States
If you enter a firmware version into the 3DNUS plugin, 3DS Toolkit crashes. :O
I promise you it was working! D: I even tested it thoroughly before releasing it ;_;.

Anyway, I fixed the issue (it was literally a 2 line fix because I "fixed" something else), so V1.2.0.1 is released
 

fafaffy

Well-Known Member
OP
Member
Joined
Sep 1, 2012
Messages
345
Trophies
0
XP
716
Country
United States
99 little bugs in the code, 99 little bugs in the code, take one down, patch it around, 117 little bugs in the code! :3
If only it wasn't so true...

But yeah, you got me paranoid and I downloaded it like 3 different times making sure it works.
Here's my proof in case any of you guys go breaking it:
YORd6VH.png
 
  • Like
Reactions: ChaosEternal

ChaosEternal

Well-Known Member
Member
GBAtemp Patron
Joined
Jul 27, 2015
Messages
556
Trophies
1
XP
2,569
Country
United States
Don't worry, it's working on my end too. I'll keep poking around and see if I can break anything else, lol.

Edit: I'm guessing this one is intentional, but it you force a version it packs it as a .cia regardless of whether Pack as CIA is pressed. Is the version modified during the packing process? Regardless, you might want to make checking Force Version check Pack as CIA as well. I'm just nitpicking at this point though, I really like what you have so far! :grog:
 
  • Like
Reactions: fafaffy

fafaffy

Well-Known Member
OP
Member
Joined
Sep 1, 2012
Messages
345
Trophies
0
XP
716
Country
United States
Don't worry, it's working on my end too. I'll keep poking around and see if I can break anything else, lol.

Edit: I'm guessing this one is intentional, but it you force a version it packs it as a .cia regardless of whether Pack as CIA is pressed. Is the version modified during the packing process? Regardless, you might want to make checking Force Version check Pack as CIA as well. I'm just nitpicking at this point though, I really like what you have so far! :grog:
Didn't notice, thanks for letting me know :D.
Anyway, I forced it to be checked now when using that option, however I'll put the update later.
 

fafaffy

Well-Known Member
OP
Member
Joined
Sep 1, 2012
Messages
345
Trophies
0
XP
716
Country
United States
Hey, im currently working on the 3DNUS Project. So do you need the latest version as a .dll file?
Umm it's preferable if you can just give me the source directly so I can directly incorporate it into the plugin since my dll's are made in a specific way/interface. If you want, I can help you set up the coding environment so you make the compatible dll yourself (the source for this program is readily available if you have any desire to take control of it). Though, please note that if you choose to take control of the dll, this uses WPF which is vastly different (in coding style/gui) than WinForms which is what I'm assuming you're using.
 

Dr.Hacknik

Ashley | Developer | Trans
Member
Joined
Mar 26, 2014
Messages
1,773
Trophies
1
Age
23
Location
inside your fridge
Website
dochacknik.keybase.pub
XP
2,208
Country
United States
Umm it's preferable if you can just give me the source directly so I can directly incorporate it into the plugin since my dll's are made in a specific way/interface. If you want, I can help you set up the coding environment so you make the compatible dll yourself (the source for this program is readily available if you have any desire to take control of it). Though, please note that if you choose to take control of the dll, this uses WPF which is vastly different (in coding style/gui) than WinForms which is what I'm assuming you're using.
Yes, im using C# WinForms, It's a little simpler than WPF. Also a more Visual Design. But any ways i'll just PM you a link to the code.
 

fafaffy

Well-Known Member
OP
Member
Joined
Sep 1, 2012
Messages
345
Trophies
0
XP
716
Country
United States
Yes, im using C# WinForms, It's a little simpler than WPF. Also a more Visual Design. But any ways i'll just PM you a link to the code.
Alright!
And yeah, I agree... WinForms are easier, but I love the freedom of WPF too much; it's quite a double-edged sword. Right now I'm struggling with renaming a button on a listview after an event which would have taken me 2 seconds on WinForms, but for some reason being annoying in WPF.
 

Dr.Hacknik

Ashley | Developer | Trans
Member
Joined
Mar 26, 2014
Messages
1,773
Trophies
1
Age
23
Location
inside your fridge
Website
dochacknik.keybase.pub
XP
2,208
Country
United States
Alright!
And yeah, I agree... WinForms are easier, but I love the freedom of WPF too much; it's quite a double-edged sword. Right now I'm struggling with renaming a button on a listview after an event which would have taken me 2 seconds on WinForms, but for some reason being annoying in WPF.
That's WPF for you, like i said it's a bit more complicated. I think it aims more towards Professionals, while WinForms is for more Beginners or People who like to be
Efficient like me. And about that button, it does seem odd that it won't rename something as simple as a Button text (Ex: Button1.Text = "Whatever"); That's for C# <---- or i can use the Visual designer to change the Text, instead of using code to change the button's text.
 

fafaffy

Well-Known Member
OP
Member
Joined
Sep 1, 2012
Messages
345
Trophies
0
XP
716
Country
United States
That's WPF for you, like i said it's a bit more complicated. I think it aims more towards Professionals, while WinForms is for more Beginners or People who like to be
Efficient like me. And about that button, it does seem odd that it won't rename something as simple as a Button text (Ex: Button1.Text = "Whatever"); That's for C# <---- or i can use the Visual designer to change the Text, instead of using code to change the button's text.
Oh, the WPF I'm writing in is C# however, this is where it gets bad:
I'm using the MVVM standard, which means the Models, Views, View Models standard.
In essence, models are simply classes that contains fields (e.g. an Employee model will have a first name, last name, etc...)

Views are the visual aspect, and it should only contain visual information (such as buttons, etc...) and should not contain any sort of logic (e.g. if this happens, then do that) unless it's directly visual (if I checked this box, then refresh the state of another box. Note, I'm refreshing and not directly updating it's information). Now, the view is bound to a view-model which runs the logic. The view model, now, must do all the logic under the assumption that there is no view. This means I can't simply do "Button1.Text = 'Whatever'"; instead, I have to update a string called "Button1Text" then do an "OnPropertyChange" method which will tell the UI to refresh the text on that button.

To put quite frank: It's annoying, which is why simple features on here take forever to properly code :\
 
  • Like
Reactions: Dr.Hacknik

Dr.Hacknik

Ashley | Developer | Trans
Member
Joined
Mar 26, 2014
Messages
1,773
Trophies
1
Age
23
Location
inside your fridge
Website
dochacknik.keybase.pub
XP
2,208
Country
United States
Oh, the WPF I'm writing in is C# however, this is where it gets bad:
I'm using the MVVM standard, which means the Models, Views, View Models standard.
In essence, models are simply classes that contains fields (e.g. an Employee model will have a first name, last name, etc...)

Views are the visual aspect, and it should only contain visual information (such as buttons, etc...) and should not contain any sort of logic (e.g. if this happens, then do that) unless it's directly visual (if I checked this box, then refresh the state of another box. Note, I'm refreshing and not directly updating it's information). Now, the view is bound to a view-model which runs the logic. The view model, now, must do all the logic under the assumption that there is no view. This means I can't simply do "Button1.Text = 'Whatever'"; instead, I have to update a string called "Button1Text" then do an "OnPropertyChange" method which will tell the UI to refresh the text on that button.

To put quite frank: It's annoying, which is why simple features on here take forever to properly code :\

And that's why i use C# WinForms. Not that i hate WPF, sure it's a more Open & Free. But, i still prefer C# WinForms.
Anyways, i have put together the Open-Source version of 3DNUS. I'll PM you the link (Filetrip).
 

fafaffy

Well-Known Member
OP
Member
Joined
Sep 1, 2012
Messages
345
Trophies
0
XP
716
Country
United States
looks amazing... trying it out now.
Alright, thanks for giving it a try! Unfortunately, 3DNUS won't work very well due to Nintendo removing a bunch of files from their server and I'm busy with college and life atm so I'm not sure if I'll be able to work on the homebrew aspect anytime soon :(. So for now the project is currently in a hiatus state
 

Megalegacy98

Well-Known Member
Member
Joined
Aug 11, 2015
Messages
505
Trophies
0
Location
United States
XP
420
Country
United States
Alright, thanks for giving it a try! Unfortunately, 3DNUS won't work very well due to Nintendo removing a bunch of files from their server and I'm busy with college and life atm so I'm not sure if I'll be able to work on the homebrew aspect anytime soon :(. So for now the project is currently in a hiatus state
I'm not into 3DSNUS mostly because I don't think I can use it with Ironhax anyways. I was looking into downloading homebrew from a single program. That will be mighty useful for me.
Also, good luck with life and college! I really hope you get back into this, I think there is great potential for this.
 
General chit-chat
Help Users
    Skelletonike @ Skelletonike: wth happened during lunch break?