Hacking [Release] FunkyCIA2 - build CIAs from your eShop content. Super easy and fast! (**2.1 FIX!**)

cearp

瓜老外
OP
Developer
Joined
May 26, 2008
Messages
8,728
Trophies
2
XP
8,520
Country
Tuvalu
Ok, now this is interesting. I dont know what the heck is up with python but it seems to not even get to the "if (typecheck == '0000'):" section of if statements.
I'm not much of a python program but i am converting this script into a java program that will give a gui interface to all of this but currently stuck at the part of bytes and needing to yank out the stuff in hex... so it's going to take a while... XP
it would be far easier to just install python 2.7, rather than rewriting it for 3.0, let alone rewriting the whole thing in java and creating a gui... :)
 

alatnet

Member
Newcomer
Joined
Aug 13, 2007
Messages
11
Trophies
0
XP
218
Country
United States
it would be far easier to just install python 2.7, rather than rewriting it for 3.0, let alone rewriting the whole thing in java and creating a gui... :)
Eh, true.
But I do like a challenge.
This does give me an insight into binary files which will be useful.

EDIT:
got it to read and sort the ticket.db.
had to adjust offsets apparently... XP
but im getting all tickets and getting the correct data from them.
 
Last edited by alatnet,

cearp

瓜老外
OP
Developer
Joined
May 26, 2008
Messages
8,728
Trophies
2
XP
8,520
Country
Tuvalu
well, a challenge is something a bit difficult maybe, but i think this would simply be a waste of (my) time :)
anyway, good luck!
 

alatnet

Member
Newcomer
Joined
Aug 13, 2007
Messages
11
Trophies
0
XP
218
Country
United States
well, i got it to work mostly.
had to compile the make_cdn_cia file in visual studio since the one that you provided keeps crashing on me for some reason.
anyway, code to download and make cia's are in place and all i need to do is create the system to download what the user wants selected.
did try out my download and make code but maybe i have the offsets wrong or something but it gave me an invalid cia?
i'll see about uploading what i have to github after i finish so that you can check it out and see if there's anything wrong.
 

cearp

瓜老外
OP
Developer
Joined
May 26, 2008
Messages
8,728
Trophies
2
XP
8,520
Country
Tuvalu
well, i got it to work mostly.
had to compile the make_cdn_cia file in visual studio since the one that you provided keeps crashing on me for some reason.
anyway, code to download and make cia's are in place and all i need to do is create the system to download what the user wants selected.
did try out my download and make code but maybe i have the offsets wrong or something but it gave me an invalid cia?
i'll see about uploading what i have to github after i finish so that you can check it out and see if there's anything wrong.
why not rewrite make_cdn_cia in java too, and have one nice complete program that only requires java and is platform independent? that would be very cool!
and nice, on github it would be very useful for many people i think, thanks
 

alatnet

Member
Newcomer
Joined
Aug 13, 2007
Messages
11
Trophies
0
XP
218
Country
United States
why not rewrite make_cdn_cia in java too, and have one nice complete program that only requires java and is platform independent? that would be very cool!
and nice, on github it would be very useful for many people i think, thanks
that's an idea. but i'll make that for the next update, i guess.
The only drawback to my version is that it takes a while to open and read the ticket.db file.
this is due to me having to read every single byte once at a time and see if i can find that Root string.
but... the benefits outweigh it when you run this thing as it gives out ALL relevant data AND multithreads the download and building of cia's. XD

EDIT:
god... what the hell is with this git stuff...
it wont let me push the code...

it worked better in android studio... TT.TT

EDIT2:
after messing with it so freaking much, i got it to commit.
all the code is up in my repository.
help will be appreciated with enhancing this program.
 
Last edited by alatnet,
  • Like
Reactions: cearp

VerseHell

Well-Known Member
Member
Joined
Jun 29, 2014
Messages
3,073
Trophies
1
Age
30
XP
1,662
Country
France
I guess it's because of make_cdn_cia ? The one provided in the first post is an old version, you have to compile the last version from the git. (I also posted an already compiled version some pages ago.)
 

Cavioe

Well-Known Member
Member
Joined
May 28, 2015
Messages
308
Trophies
0
Age
52
XP
190
Country
United States
I need some help. I got my tickets from Cearps old post thread of funky cia and got the ticket and ticket gw emu files. I used the gw emu ticket to dump a personal copy of sonic the hedgehog 3d to use up an eshop balance I had. I am on windows 7 64 bit and ran the line in command prompt of this:

FunkyCIA2.py ticket.db_gwemu -type ALL -personal

It did give me my 4 dsiware and the eshop sonic 3d hedgehog game. But when I use PBT cfw to install in sysnand with Big Blue Menu or FBI it both gives a error saying invalid.

Any idea what I may have done wrong?
 

Smellyfinger

Active Member
Newcomer
Joined
Mar 21, 2015
Messages
29
Trophies
0
Age
35
XP
105
Country
United States
I'm getting an error saying too few arguments and it closes the window right away. I have python 2.7 installed on windows 8. Anyone know what im doing wrong?
 

BerserkLeon

Not-so-new member
Member
Joined
Mar 22, 2010
Messages
460
Trophies
1
Age
34
Location
Pennsylvania
XP
538
Country
United States
I'm getting an error saying too few arguments and it closes the window right away. I have python 2.7 installed on windows 8. Anyone know what im doing wrong?
It's a python script without a gui. You run it from the command line.
You've got python installed, so in the directory of funkycia2, type python funkyCIA2.py ticket.db -type ALL
Or you could 'python funkycia2.py -h' to get help.
It's probably a little overwhelming if you've never used a command line utility before, but at least you can't screw anything up by messing with it.

also if you've never opened cmd before, the way I like the most and consider quickest is the windows key, hold that, hit r, then a little dialog box'll come up, type cmd or cmd.exe there and it'll open the terminal.
To get to the directory you have funkycia in, the command is cd.
so cd C:\path\to\funkycia
THEN the python funkycia command.

There's a shell registry hack in win7.. there may be a version for win 8 where you can do the same...
it opens the terminal at your location, it's an entry in your menu when you right click in explorer.
It would get rid of the need to use the cd command entirely.
 
Last edited by BerserkLeon,

NAND0

Well-Known Member
Newcomer
Joined
Nov 24, 2014
Messages
85
Trophies
0
Age
35
XP
95
Country
United States
It's a python script without a gui. You run it from the command line.
You've got python installed, so in the directory of funkycia2, type python funkyCIA2.py ticket.db -type ALL
Or you could 'python funkycia2.py -h' to get help.
It's probably a little overwhelming if you've never used a command line utility before, but at least you can't screw anything up by messing with it.

also if you've never opened cmd before, the way I like the most and consider quickest is the windows key, hold that, hit r, then a little dialog box'll come up, type cmd or cmd.exe there and it'll open the terminal.
To get to the directory you have funkycia in, the command is cd.
so cd C:\path\to\funkycia
THEN the python funkycia command.

There's a shell registry hack in win7.. there may be a version for win 8 where you can do the same...
it opens the terminal at your location, it's an entry in your menu when you right click in explorer.
It would get rid of the need to use the cd command entirely.
Awesome thanks
 

Smellyfinger

Active Member
Newcomer
Joined
Mar 21, 2015
Messages
29
Trophies
0
Age
35
XP
105
Country
United States
Finally got it working. How to we tell which cia is what? I see tons of file names like: 0004000e000c9b00 for example. is there a site to type them in at? i tried 3ds.essh.co but i get nothing. Im guessing that site is just to check save file names.
 

BerserkLeon

Not-so-new member
Member
Joined
Mar 22, 2010
Messages
460
Trophies
1
Age
34
Location
Pennsylvania
XP
538
Country
United States
Finally got it working. How to we tell which cia is what? I see tons of file names like: 0004000e000c9b00 for example. is there a site to type them in at? i tried 3ds.essh.co but i get nothing. Im guessing that site is just to check save file names.
the e denotes 0004000e000c9b00 is an update. Googling that exact TID brings me to a thread on gbatemp saying it's the update for poke bank.
Remove the e and replace it with a 0 to get the original TID for the base app.
Googling that shows me more pokebank related results, so it works.
3ds.essh.co is/was having some issues, if I'm not mistaken. If you examine the site some, you can see it currently only has 50 entries listed.
 
  • Like
Reactions: Smellyfinger

ccfman2004

Well-Known Member
Member
Joined
Mar 5, 2008
Messages
2,843
Trophies
2
XP
3,229
Country
United States
@cearp, is there a way to remove bad/non legit tickets from ticket.db? There are a couple of games that I want to legitimately purchase but can't due to the invalid ticket. I wish this was like the Wii where each game had a separate ticket and they weren't all in one file.
 
Last edited by ccfman2004,

ccfman2004

Well-Known Member
Member
Joined
Mar 5, 2008
Messages
2,843
Trophies
2
XP
3,229
Country
United States
Read the second thread in the link I posted.
I did, but like I said I need a method that doesn't reformat my emuNand as I don't want to loose my Mii Plaza data which is stored there. Mii Plaza progress is not stored on the SD card it is stored on the Nand.
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
    S @ salazarcosplay: good morning everyone