Hacking [release] FunKiiU 2.0 - complete content + ticket python tool

datahoarder

Organized.
Member
Joined
Jul 7, 2007
Messages
567
Trophies
1
XP
749
Country
United States
:wub:; Debating getting Python 2. Holding out for the fix still though!

No worries, I'm really busy myself as well. Getting FunKiiU to not break with those unicode chars is really simple now. But then I decided that I could just redirect almost all print statements to the existing log function and actually log some stuff. I created a log buffer that my gui could read from as well to provide info to the user. Everything works flawless on Python 2 but writing from the log buffer to an external log file breaks Python 3 when it has those damn unicode characters. I think I could fix it by making my code uglier than it already is, taking one approach for Python 2 and a different for Python3. I really just need time to finish everything I've been working on. I will get to it "soon", hopefully lol.
 

dojafoja

life elevated
Member
Joined
Jan 2, 2014
Messages
696
Trophies
1
XP
2,607
Country
:wub:; Debating getting Python 2. Holding out for the fix still though!
OK so I've sent a pull request to @cearp that properly handles this unicode bug in both Python2 and Python3, at least with all my testing today on various known problematic titles. For now, until he accepts the pull request, you can get it from this branch of my repo here https://github.com/dojafoja/FunKiiU/tree/properly-handle-unicode-issues please report back if it's working for you or not.
 
  • Like
Reactions: nexusmtz

datahoarder

Organized.
Member
Joined
Jul 7, 2007
Messages
567
Trophies
1
XP
749
Country
United States
  • Like
Reactions: dojafoja

pelago

Member
Member
Joined
Feb 20, 2006
Messages
1,019
Trophies
0
XP
565
Country
- By default demos will be patched to remove any play count limits. (does Wii U have this?)
In case you ever want to update the OP, yes, most Wii U game demos do have play limits. See:
wonderful_101_demorestrict.jpg


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

As far as I can see there is only a maximum of one DLC title listed for any game, even if in the game itself, different bits of DLC are separately purchasable. Does downloading DLC using this method download all the DLC for the game? If so, how do we check if new DLC has been released?

Similarly, updates - each game only has one update available. I guess most of the time we would want the latest update, but what if there was a reason to deliberately want to run an older update? I'm familiar with Xbox 360/PS3 scene where there are good reasons to use non-latest updates on some games. Is this a limitation of the Nintendo CDN (I mean, do they delete older updates on their server when they release new ones), or a limitation of that key site?
 

nexusmtz

Well-Known Member
Member
Joined
Feb 17, 2016
Messages
1,386
Trophies
0
XP
1,425
Country
United States
As far as I can see there is only a maximum of one DLC title listed for any game, even if in the game itself, different bits of DLC are separately purchasable. Does downloading DLC using this method download all the DLC for the game? If so, how do we check if new DLC has been released?
DLC is all in one file. The values in your ticket determine which DLC items are available to you. If you want to know if you have the latest, you'd have to compare your tmd to the one you get from the server. I suspect that Nintendo only looks for a DLC update when there's a title update, since the code would have to support the DLC.
Similarly, updates - each game only has one update available. I guess most of the time we would want the latest update, but what if there was a reason to deliberately want to run an older update? I'm familiar with Xbox 360/PS3 scene where there are good reasons to use non-latest updates on some games. Is this a limitation of the Nintendo CDN (I mean, do they delete older updates on their server when they release new ones), or a limitation of that key site?
Funkiiu doesn't expose the other updates, but funkiiu aside, if you know which version you want, you get /tmd.versionnumber instead of just /tmd and use that to determine which files you need. Older versions aren't deleted from the server because they are all part of the same folder. In other words, tmd.16 might say to use files 1,2,3,4; tmd.48 might say to use files 1,2,10,11,12; and tmd.96 might say to use 1,10,11,26,27,28. This lets Nintendo only change the archive files that need to be changed.
 
  • Like
Reactions: pelago

mitroux

Well-Known Member
Member
Joined
Sep 12, 2007
Messages
266
Trophies
0
XP
343
Country
Macau
@cerap
will there be any updates to funkii-u? since that key site went down , there is no way to change it or sibsitute a replacement , it always fails
thank you
 

dojafoja

life elevated
Member
Joined
Jan 2, 2014
Messages
696
Trophies
1
XP
2,607
Country
i know , but the program doesn't know XD
there is an md5 check , but still the program keeps asking about the old page
Until it is properly fixed and pushed as an update you can do it yourself very easily. Open FunkiiU.py with any text editor and change line 35 so that it reads
Code:
KEYSITE_MD5 = '3cbe074f2b138e86d15cd9a5e1082893'
(For the url that ends with .gq)
OR you can use
Code:
KEYSITE_MD5 = '391d6099013f9e1953ba8c79cf2b7582'
(For the url that ends with .xyz)
Either one should work. Then you will also need to change line 290 so it reads
Code:
tikurl = 'http://{}/ticket/{}.tik'.format(keysite, title_id)
and change line 355 so it reads
Code:
if not download_file('http://{}/json'.format(keysite), 'titlekeys.json', retry_count):
You will also need to delete your old config.json file.
If you are too lazy to edit the file yourself, I've done it already. Download it here http://www.mediafire.com/file/27qw0aqurqgm4po/FunKiiU.py, it uses the url that ends with .gq
 
Last edited by dojafoja,

mitroux

Well-Known Member
Member
Joined
Sep 12, 2007
Messages
266
Trophies
0
XP
343
Country
Macau
thank you ,i tried you modified program ,but ui get an error : could not download data file :(
did you try it , or maybe the new site is down?
 

dojafoja

life elevated
Member
Joined
Jan 2, 2014
Messages
696
Trophies
1
XP
2,607
Country
thank you ,i tried you modified program ,but ui get an error : could not download data file :(
did you try it , or maybe the new site is down?
I am not at my pc, im just typing all this from my phone. I assumed it would work since all I did was change the md5 hash and replace https references with http. I will check in about 30 minutes when I'm get home. Did you delete config.json file and re enter the url as wiiu.xxxxxxxxx.gq?
 

mitroux

Well-Known Member
Member
Joined
Sep 12, 2007
Messages
266
Trophies
0
XP
343
Country
Macau
yep n deleted the json file , and reentered the new site . no luck.
i will wait till you get back home ;.thank you
 

dojafoja

life elevated
Member
Joined
Jan 2, 2014
Messages
696
Trophies
1
XP
2,607
Country
  • Like
Reactions: mitroux

pelago

Member
Member
Joined
Feb 20, 2006
Messages
1,019
Trophies
0
XP
565
Country
Until it is properly fixed and pushed as an update you can do it yourself very easily. Open FunkiiU.py with any text editor and change line 35 so that it reads
Code:
KEYSITE_MD5 = '3cbe074f2b138e86d15cd9a5e1082893'
(For the url that ends with .gq)
OR you can use
Code:
KEYSITE_MD5 = '391d6099013f9e1953ba8c79cf2b7582'
(For the url that ends with .xyz)
Seems to me it would be better if the code didn't check the MD5 of the site address at all, to protect against any future address changes. Obviously it won't work with the wrong address anyway, so I don't see what value checking the MD5 adds.
 

dojafoja

life elevated
Member
Joined
Jan 2, 2014
Messages
696
Trophies
1
XP
2,607
Country
Seems to me it would be better if the code didn't check the MD5 of the site address at all, to protect against any future address changes. Obviously it won't work with the wrong address anyway, so I don't see what value checking the MD5 adds.
I agree. It would only require a few try:except blocks to make that happen. Maybe I will screw around with it tonight and remove the hash check
 

dojafoja

life elevated
Member
Joined
Jan 2, 2014
Messages
696
Trophies
1
XP
2,607
Country
OK so I modified FunKiiU to accept ANY URL for the keysite. One difference is that you MUST provide the full URL address INCLUDING the 'http://' or 'https://'. If connecting to the provided URL fails or the JSON can't be downloaded, the user is asked if they would like to enter a different URL and try again. I will submit a pull request tomorrow sometime. Since @cearp has been away for quite some time, there is no telling if/when he will pull this into his master branch. In the meantime you can grab it from my github here https://github.com/dojafoja/FunKiiU/tree/accept-any-keysite Thank you folks, let me know how it works and have a nice day :)

EDIT: This does not include my last pull request to handle all the Unicode errors properly. I will update it tomorrow, I'mtoo damn tired right now.

Edit: I've applied the Unicode error fix from my last pull request to this branch. Everything should be working good now.
 
Last edited by dojafoja,

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • No one is chatting at the moment.
    Veho @ Veho: The cybertruck is a death trap.