Talk:CTGP Revolution

From Custom Mario Kart
Jump to navigation Jump to search
Attention!

Old talk is archived at Talk:CTGP Revolution/Archive. Please continue discussion on this page.

The Track Wishlist has moved here: CTGP Revolution/Track Wishlist. Track suggestions and reports of bugged tracks go on the Track Wishlist.

CTGP V 1.03

One question. Is it a problem to deactivate the fast aiparam cpu for one player mode?? On some tracks the cpu are to fast. And some tracks are not update on ctgp from wiimm he has to processed with much time.--Snake 18:58, 19 January 2014 (UTC)

A couple of things to ask here. Can I actually have 215 different songs (not 216 because of Mario Circuit and Luigi Circuit same brstm)? And if so, where can I get all of the correct files names? And for tracks that are initially played with songs that require multichannel brstms, do i need to use a multichannel brstms for that particular track? And if so, since I'm completely confused about it, how do i do it? --Aleuuhhmsc 1:59 PM CST, 1/21/2014

Copyright Violation

It seems a lot of code has been ripped directly from Riivolution and included in packages/chan/main.dol (inside blob.bin). Can the authors please explain this (without pretending to be innocent please - the code is byte-for-byte identical) ? Tueidj (talk) 05:20, 20 January 2014 (UTC)

Seems we're not the only people who like reverse engineering! Yes, a small section of the code base is from Riivolution, specifically the exploit which enables it to install on Wii U. Following a conversation with one of the development team at the Riivolution IRC, I got the impression this would be acceptable, however if you wish to pursue the matter we could remove the code. We don't actually have credits on our channel yet, but we were intending to add a mention on them. Can we come to some agreement? I can come by the IRC again if that would be more convenient for discussion.
Chadderz (talk) 18:35, 20 January 2014 (UTC)
Who exactly did you talk to/where did you talk to them? Because nobody has any memory of any such conversation occurring. Tueidj (talk) 23:54, 20 January 2014 (UTC)
I honestly don't recall; it was probably around 2 years ago when development of our channel was first starting. The CTGP-R Mod previously used Riivolution as its back end, so I went to the IRC to ask if it would be possible to either obtain the source or for you to add the necessary features yourselves. It became clear that neither of those options would happen, however they seemed happy for me to reverse engineer anything necessary from Riivolution (this was specifically mentioned). We were able to do almost everything else without need of your code, but Riivolution 1.05+ is one of the only channels with a Wii U exploit, so this was the only time it was necessary to look at your code.
Chadderz (talk) 05:31, 21 January 2014 (UTC)
There is reverse engineering and then there is stealing; this a plain case of the latter since the code has been copied exactly, including the SNEEK workaround and the crafted TMD/Ticket signatures that took nearly a week of computing power to bruteforce. It's actually pretty dangerous to run that code without first verifying the authenticity of the IOS, the code for which you didn't copy or implement at all. I also don't understand your explanation of it pertaining to the Wii U only; there is nothing specific to the Wii U regarding that code and the alternative workarounds available for the Wii apply just as well to the Wii U. Tueidj (talk) 05:52, 21 January 2014 (UTC)
Yes, I can't argue with that, we did take the code directly. I still don't know how the code works, it's just a black box to me, so maybe we did copy more than just Wii U specific methods, however that was the only reason it was used. If there is any danger associated with the code, that is obviously a top priority for us, so I would appreciate you elaborating on that. I was certainly not aware of a public Wii U exploit that would allow us to install a title, but if there is one then obviously we can switch to that. As I said at the beginning, we can remove this code if you insist, but at the end of the day all we really want to do is play Mario Kart. We did take some of your code, and maybe that was wrong, but we didn't do so out of any malice, we are just trying to make a game mod here. I have nothing but respect for Riivolution, and it is a pity it could no longer meet our needs, so I hope this can be peacefully resolved.
Chadderz (talk) 06:43, 21 January 2014 (UTC)

Sorry to butt in, but may I recommend more suitable private methods of communication? The Wiiki isn't exactly the best of places to have a long winding conversation. Thanks! --Torran (talk) 06:46, 21 January 2014 (UTC)

True that, @Tueidj would email be acceptable?
Chadderz (talk) 06:48, 21 January 2014 (UTC)

I would rather finish this conversation here in public rather than have it turn into another case of "he said this, we said that" at some point in the future.

Using the exploit is dangerous because unlike the "runtimeiospatch" patches (which simply look for a known pattern and modify it), it triggers a stack overflow to redirect the CPU's execution path. When the nasty stuff is done, you can't just return to where you came from (due to the stack being trashed) so it jumps directly to a known "safe" point. If the IOS has been modified that point may not be safe at all, it might be in the middle of the "update boot2" routine for example or it may trigger the ES module's "failsafe" mode which causes it to wipe the wii's NAND.

Regardless, you still haven't given a proper explanation of why you need the exploit. All it does is disable AHBPROT which HBC already does for you. Installing a custom title (on either Wii or Wii U, they are no different in this regard) requires patching the signature check which the exploit does not do. Perhaps you could explain why you think installing a custom title on a Wii U is different from installing a custom title on a Wii, and why the patches you're "borrowed" from other GPL projects are insufficient. Tueidj (talk) 05:40, 24 January 2014 (UTC)

That does sound pretty dire, although rather unlikely. Most likely the core would just encouter a bad instruction/address and die. What we need to be done to ensure this wouldn't happen?
Like Riivolution a large portion of our userbase don't necessarily have/want HBC. We could just rely on the AHBPROT from HBC, but then those users who don't wish to use it (often stating they fear it is associated with piracy) wouldn't be able to install the channel. We use AHBPROT to get MEMPROT, which we use to install the runtimeios patch, allowing fakesigning. This is the only IOS work we do in the whole channel, we designed the rest of it to stay exclusively on the PPC core, since that's a much safer and neater design. We have not taken any code from a project which stated it was GPL, so if the code is originally from a GPL project, someone somewhere along the line must've removed the license.
Chadderz (talk) 06:36, 24 January 2014 (UTC)
So the use of the exploit has nothing specifically to do with the Wii U as you earlier claimed, but is just a workaround for being able to install a custom title without first installing HBC. That doesn't make logical sense, if a user is going to install your channel then they have no reason not to install HBC first (which would remove the need for executing the dangerous exploit) since it is no more illegitimate than the CTGP-R channel. Or they could just run CTGP-R from Riivolution, which you already provide instructions for. I think the real reason you included the exploit code was simply for bragging rights ("A homebrewless-method of loading Custom Tracks on v4.3 for any region is now available!") and since you didn't actually do that work yourself (plus the possible safety issue), I'm inclined to insist you remove Riivolution's code from your release. Tueidj (talk) 07:44, 24 January 2014 (UTC)
The exploit is to get AHBPROT to get MEMPROT to install the channel, specifically on Wii U since Wii install can be done by other means, but we couldn't find another way of doing it on Wii U. We have only ever done PPC side work on the Wii up to this point, the IOS remains largely a mystery to us, so if there is another way to do it on Wii U I'm simply not aware of it. Our distribution always used to work from Riivolution which was capable of installing itself without HBC, so our users have come to expect this. Whether this makes logical sense to you or not, this is what they have told us they want. I promise you bragging rights have nothing to do with this, as I said all we're trying to do is make a great game mod here, I honestly don't care what people think of me, I'm just trying to give our users what they have asked for and expect, and have a good time playing the game. All that said, it's your right to ask us to remove it so we will. It may take us about a week to get the update tested and out. I sincerely apologise for all this, I honestly did not think you would mind.
Chadderz (talk) 07:55, 24 January 2014 (UTC)

See, I still don't understand how installing a custom channel on a Wii "can be done by other means" that don't apply to the Wii U? The process is the same on both. Tueidj (talk) 09:22, 24 January 2014 (UTC)

Pardon me, but does this mean that Wii U compatibility will be removed for the time being? Many people who play this prefer to do so on a Wii U so no doubt this will be a massive blow for the community. I ask this politely and with the utmost respect, but @Tueidj: apart from these possible NAND dangers you speak of, and of course your right to protext your intellectual property, is there some reason in particular why your work can't be used in collaboration with Chadderz' if proper credit is given? As I said, I'm not here to troll or beg if your mind is made up, I'm just a regular guy who loves Mario Kart and the joy it brings to others. My apologies if this question is stupid or was already answered without me noticing, many thanks. -- WorldsBoss (talk) 09:47, 24 January 2014 (UTC)