Hacking New Classic Controller Hacks

  • Thread starter Thread starter Vague Rant
  • Start date Start date
  • Views Views 283,336
  • Replies Replies 733
  • Likes Likes 42
I dont think trimming would work since the button injector is probably mixed with the nunchuk remappings too.

Currently, nunchuk and classic controller assemblies work sort of like "Is there a nunchuk connected? Branch to nunchuk remappings. Is there a classic controller connected? Branch to classic controller remappings. Nothing? Return"

And its in 1 assembly, not seperate ones so trimming would just break it

I tried looking myself and i probably wouldnt be able to fix it. Its more complicated
Post automatically merged:

Update: The GCN support codes apparently only work on emulators. I apologize
Done! I was able to edit the gct code, removing any wiimote+nunchuk remappings. Took me quite a bit of time and a lot of "google prime", but it is tested and working in my wiiu. This was also only possible because of the excellent modularity of the cheat code by Vague Rant, as well as his excellent explanations of the whole process of making these mods.

All remappings are done in the second to last C2 code, with 2C040001 being the wiimote and 2C040002 the CC. Just trimmed everything inside the 2C040001 command, added padding to maintain code structure, and updated C2 commands size (22 -> 1B).

Only Classic Controller Support [Vague Rant]
C20BC6D0 00000002
28000001 41820008
28000002 00000000
C2147A7C 00000002
28000001 41820008
28000002 00000000
C2147E88 00000002
28040001 41820008
28040002 00000000
C2253270 00000002
28000001 41820008
28000002 00000000
C22A3C58 00000002
28150001 41820008
28150002 00000000
C22532B0 00000003
801F0018 28000001
C05F1184 41820008
C05F1190 00000000
C225337C 00000003
801F0018 28000001
C05F1188 41820008
C05F1194 00000000
04419904 48000010
C2067278 00000007
C03E04AC 801E0004
70000080 41820024
48000009 C059999A
7C6802A6 C0230000
2C0F0003 4082000C
FC200850 D0230000
60000000 00000000
C2068248 0000001F
80030000 70000040
418200E8 80030004
70000040 41820010
38000000 90030020
90030024 38000002
9803005E 9421FFF0
7C0802A6 90010014
90610008 48000015
800811DC 3FAAAAAB
3C23D70A 3F800000
7CA802A6 90A1000C
81850000 7D8803A6
4E800021 2C030001
80610008 80A1000C
C0450004 40820008
EC4200B2 C0650008
C0030020 C023006C
FC211024 48000039
D0030020 C0030024
C0230070 FC200850
48000025 D0030024
38000000 9003006C
90030070 80010014
7C0803A6 38210010
4E800020 FC0100FA
C025000C FC000800
4180000C FC000890
48000014 FC200850
FC000800 41810008
FC000890 4E800020
9421FFC0 00000000
C2068B74 00000013
4E800421 C01E0014
4800000D 3F000000
00000000 7CA802A6
C0450000 809EFFA0
80BEFFA4 80DEFFA8
80FE0004 39000002
FC001040 48000029
FC000050 39000001
FC001040 48000019
909EFFA0 90BEFFA4
90DEFFA8 90FE0004
48000038 41800024
7CE34039 40820008
7CA54378 7C844378
7D0340F8 7CC61838
7CE74378 48000010
7CE34039 41820008
7CE74278 4E800020
60000000 00000000
C206922C 0000001B
60000000 2C040002
408200B8 71200800
41820008 60E78000
71200001 41820008
60E70008 71204000
41820008 60E70004
71200002 41820008
60E70001 71208000
41820008 60E70002
71200010 41820008
60E70800 71200040
41820008 60E70080
71200008 41820008
60E70020 71200020
41820008 60E70800
71202000 41820008
60E74000 71200200
41820008 60E70044
71200080 41820008
60E72000 71200004
41820008 60E70400
71200400 41820008
60E70010 71201000
41820008 60E71000
801FFFFC 7CE70278
7CE83B78 70E09FFF
60000000 00000000
C206924C 00000004
901F0004 70000020
41820010 801FFFFC
68000800 901FFFFC
60000000 00000000
 
Done! I was able to edit the gct code, removing any wiimote+nunchuk remappings. Took me quite a bit of time and a lot of "google prime", but it is tested and working in my wiiu. This was also only possible because of the excellent modularity of the cheat code by Vague Rant, as well as his excellent explanations of the whole process of making these mods.

All remappings are done in the second to last C2 code, with 2C040001 being the wiimote and 2C040002 the CC. Just trimmed everything inside the 2C040001 command, added padding to maintain code structure, and updated C2 commands size (22 -> 1B).

Only Classic Controller Support [Vague Rant]
C20BC6D0 00000002
28000001 41820008
28000002 00000000
C2147A7C 00000002
28000001 41820008
28000002 00000000
C2147E88 00000002
28040001 41820008
28040002 00000000
C2253270 00000002
28000001 41820008
28000002 00000000
C22A3C58 00000002
28150001 41820008
28150002 00000000
C22532B0 00000003
801F0018 28000001
C05F1184 41820008
C05F1190 00000000
C225337C 00000003
801F0018 28000001
C05F1188 41820008
C05F1194 00000000
04419904 48000010
C2067278 00000007
C03E04AC 801E0004
70000080 41820024
48000009 C059999A
7C6802A6 C0230000
2C0F0003 4082000C
FC200850 D0230000
60000000 00000000
C2068248 0000001F
80030000 70000040
418200E8 80030004
70000040 41820010
38000000 90030020
90030024 38000002
9803005E 9421FFF0
7C0802A6 90010014
90610008 48000015
800811DC 3FAAAAAB
3C23D70A 3F800000
7CA802A6 90A1000C
81850000 7D8803A6
4E800021 2C030001
80610008 80A1000C
C0450004 40820008
EC4200B2 C0650008
C0030020 C023006C
FC211024 48000039
D0030020 C0030024
C0230070 FC200850
48000025 D0030024
38000000 9003006C
90030070 80010014
7C0803A6 38210010
4E800020 FC0100FA
C025000C FC000800
4180000C FC000890
48000014 FC200850
FC000800 41810008
FC000890 4E800020
9421FFC0 00000000
C2068B74 00000013
4E800421 C01E0014
4800000D 3F000000
00000000 7CA802A6
C0450000 809EFFA0
80BEFFA4 80DEFFA8
80FE0004 39000002
FC001040 48000029
FC000050 39000001
FC001040 48000019
909EFFA0 90BEFFA4
90DEFFA8 90FE0004
48000038 41800024
7CE34039 40820008
7CA54378 7C844378
7D0340F8 7CC61838
7CE74378 48000010
7CE34039 41820008
7CE74278 4E800020
60000000 00000000
C206922C 0000001B
60000000 2C040002
408200B8 71200800
41820008 60E78000
71200001 41820008
60E70008 71204000
41820008 60E70004
71200002 41820008
60E70001 71208000
41820008 60E70002
71200010 41820008
60E70800 71200040
41820008 60E70080
71200008 41820008
60E70020 71200020
41820008 60E70800
71202000 41820008
60E74000 71200200
41820008 60E70044
71200080 41820008
60E72000 71200004
41820008 60E70400
71200400 41820008
60E70010 71201000
41820008 60E71000
801FFFFC 7CE70278
7CE83B78 70E09FFF
60000000 00000000
C206924C 00000004
901F0004 70000020
41820010 801FFFFC
68000800 901FFFFC
60000000 00000000
Nice work! I knew it was definitely possible, I just wasnt quite sure since the assembly looked more complicated to me. Hopefully you enjoy the hack with vanilla nunchuk controls now.
 
Another idea I have is expanding the Mario Bros. Wii hack to instead pretend to be a nunchuk.

For some reason the current code breaks Nunchuk support which is odd.

But I do want to make another thread with detailed documentation on these hacks.
 
Hello,

I don't know if someone else in this thread has already asked this, but would anyone be willing to try and add classic controller support for Yu-Gi-Oh! 5D's Master of the Cards?

As far as I know, the game doesn't use motion controls at all but still requires you to use Wiimote+Nunchuck.

I would really like to play this game with a normal controller.
 
Hi, does anyone know if Mario Party 9 is possible? Or if there's already a hack code?

Mario Party would be a kinda pointless (ish) one. The mini games are designed to use motion controls so it would be too hard to implement for every game

But if I get the game, I’ll definitely try making a hack that covers horizontal / vertical ones, with little motion 👍 and IR pointer since that should be easy to do
 
  • Like
Reactions: KirbyChyn
1788739290016.png
Need for Speed: ProStreet was a racing game. What a shame it didnt support anything other than the Solo Wii Remote.

Nunchuk and Classic Controller Support (awesome, Vague Rant)
C2537B78 00000031
2C040001 41820014
2C040002 418200B4
7CE63B78 4800016C
38C00000 70E08000
41820008 60C68000
70E00008 41820008
60C60002 70E00004
41820008 60C60001
70E00001 41820008
60C60008 70E00002
41820008 60C60004
70E00800 41820008
60C60200 70E00400
41820008 60C60100
70E00200 41820008
60C60008 70E00100
41820008 60C60004
70E00010 41820008
60C60010 70E01000
41820008 60C61000
70E04000 41820008
60C60400 70E02000
41820008 60C60800
7CC73378 480000C4
38C00000 38800000
71200800 41820008
60C68000 71200001
41820008 60C60002
71204000 41820008
60C60001 71200002
41820008 60C60008
71208000 41820008
60C60004 71200010
41820008 60C60100
71200040 41820008
60C60200 71200008
41820008 60C60800
71200020 41820008
60C60400 71202000
41820008 60C60200
71200200 41820008
60C60100 71200080
41820008 60C60002
71200004 41820008
60C60001 71200400
41820008 60C60010
71201000 41820008
60C61000 7CC73378
70C09FFF 00000000
C2535964 00000011
90010044 8803005C
2C000001 4182003C
2C000002 40820070
48000009 3F99999A
7CA802A6 C0050000
C023006C EC000072
D0030058 FC400850
D0430014 C0230070
D023000C 48000030
48000009 3F99999A
7CA802A6 C0050000
C0230060 EC000072
D0030058 FC400850
D0430014 C0230064
D023000C 80010044
7C0803A6 38210040
4E800020 00000000
C25367C8 00000024
90010024 2C040000
40820110 8803005C
2C000002 40820104
48000021 805159A8
3FAAAAAB 3C75C28F
00000000 00000000
3DCCCCCD 3F800000
7CA802A6 90A1000C
5727083C 38E7000C
C0030074 FC000210
C0230078 FC200A10
FC00082A C0450014
FC001040 4180000C
38C0012C 48000014
7CC53AAE 28060000
408100A0 38C6FFFF
7CC53B2E 38C00002
98C3005E 81850000
7D8803A6 4E800021
2C030001 7FE3FB78
80A1000C C0450004
40820008 EC4200B2
C0650008 C0030020
C0230074 FC211024
4800002D D0030020
C0030024 C0230078
FC200850 48000019
D0030024 80010024
7C0803A6 38210020
4E800020 FC0100FA
C0250018 FC000800
4180000C FC000890
48000014 FC200850
FC000800 41810008
FC000890 4E800020
60000000 00000000

Currently a bit unfinished and needs drag racing support. I will get to that later.
If the tilting feels off PLEASE tell me, i also suspect it feels a bit wrong.
 
Last edited by awesomeee,
  • Like
Reactions: JorgeV
View attachment 589379Need for Speed: ProStreet was a racing game. What a shame it didnt support anything other than the Solo Wii Remote.

Nunchuk and Classic Controller Support (awesome, Vague Rant)
C2537B78 00000031
2C040001 41820014
2C040002 418200B4
7CE63B78 4800016C
38C00000 70E08000
41820008 60C68000
70E00008 41820008
60C60002 70E00004
41820008 60C60001
70E00001 41820008
60C60008 70E00002
41820008 60C60004
70E00800 41820008
60C60200 70E00400
41820008 60C60100
70E00200 41820008
60C60008 70E00100
41820008 60C60004
70E00010 41820008
60C60010 70E01000
41820008 60C61000
70E04000 41820008
60C60400 70E02000
41820008 60C60800
7CC73378 480000C4
38C00000 38800000
71200800 41820008
60C68000 71200001
41820008 60C60002
71204000 41820008
60C60001 71200002
41820008 60C60008
71208000 41820008
60C60004 71200010
41820008 60C60100
71200040 41820008
60C60200 71200008
41820008 60C60800
71200020 41820008
60C60400 71202000
41820008 60C60200
71200200 41820008
60C60100 71200080
41820008 60C60002
71200004 41820008
60C60001 71200400
41820008 60C60010
71201000 41820008
60C61000 7CC73378
70C09FFF 00000000
C2535964 00000011
90010044 8803005C
2C000001 4182003C
2C000002 40820070
48000009 3F99999A
7CA802A6 C0050000
C023006C EC000072
D0030058 FC400850
D0430014 C0230070
D023000C 48000030
48000009 3F99999A
7CA802A6 C0050000
C0230060 EC000072
D0030058 FC400850
D0430014 C0230064
D023000C 80010044
7C0803A6 38210040
4E800020 00000000
C25367C8 00000024
90010024 2C040000
40820110 8803005C
2C000002 40820104
48000021 805159A8
3FAAAAAB 3C75C28F
00000000 00000000
3DCCCCCD 3F800000
7CA802A6 90A1000C
5727083C 38E7000C
C0030074 FC000210
C0230078 FC200A10
FC00082A C0450014
FC001040 4180000C
38C0012C 48000014
7CC53AAE 28060000
408100A0 38C6FFFF
7CC53B2E 38C00002
98C3005E 81850000
7D8803A6 4E800021
2C030001 7FE3FB78
80A1000C C0450004
40820008 EC4200B2
C0650008 C0030020
C0230074 FC211024
4800002D D0030020
C0030024 C0230078
FC200850 48000019
D0030024 80010024
7C0803A6 38210020
4E800020 FC0100FA
C0250018 FC000800
4180000C FC000890
48000014 FC200850
FC000800 41810008
FC000890 4E800020
60000000 00000000

Currently a bit unfinished and needs drag racing support. I will get to that later.
If the tilting feels off PLEASE tell me, i also suspect it feels a bit wrong.
OMG MY GAME RYAAAAN COOOOPEEEEER

((Later you could add a GameCube controller support???))
 
Mario Party would be a kinda pointless (ish) one. The mini games are designed to use motion controls so it would be too hard to implement for every game

But if I get the game, I’ll definitely try making a hack that covers horizontal / vertical ones, with little motion 👍 and IR pointer since that should be easy to do
Better than nothing
 
Checking out Need for Speed on StrategyWiki, I see it's got a sideways control scheme that's mostly physical buttons but with tilt steering, and a vertical control scheme that is more motion-based, with flicking the Wiimote to shift gears and stuff. If I look into this game, I'd definitely be doing the former because motion stuff is probably the hardest part of any of these. No guarantees but I'll chuck it on the list. Resident Evil 4 definitely sounds very interesting, a game where you can just hack it to remove the Nunchuk check and it just works? That's the dream. I'll definitely have a look at that one because it just sounds fun to fix.


I don't mind suggestions but of course that doesn't mean a) I'll definitely look at a game or b) that I'll be successful in hacking it if I do. Looking over my hacks folder, I've looked into 17 games but only completed 9 Classic Controller hacks, so my hit rate is like 50%. Some games just do weird complicated things I don't understand (e.g. complex motion inputs), some games use the libraries in odd ways (e.g. not using the KPAD library to read buttons at all), etc.

I know Thomas83Lin did do a Classic Controller hack for NSMB Wii which does handle shaking but not tilting. I can probably take another run at it and see if I can get tilting working as well so the full experience works on CC, but obviously no promises. Super Paper Mario seems pretty similar to Other M in the scheme of things: alternating between horizontal Wiimote and pointer controls. In an ideal world I might be able to just throw the Metroid hack at it and that works. I also own that game, so I'll probably take a look at SPM, but if it proves tougher than just copying over a previous hack then who knows. Kirby and Donkey Kong were definitely done, those were crediar's original CC hacks which all of the others have built upon.

Metroid Prime Trilogy is an interesting idea, but I don't think that's one I'll get to. I wouldn't be able to make it play like the original GameCube games at all because moving a pointer around the screen with a stick is fundamentally very different to the way it works on GameCube where the target is just the middle of the screen at all times and you move the whole character to aim. I agree it'd be interesting to play with traditional controls, but the controls are so fundamentally different on Wii that that's far beyond me, and not in a Metroid: Other M kind of way where it's something I can learn by practicing on other games.

And yep, they should work on the vWii identically to on a real Wii. The only real thing to note with Wii U specifically is that some games don't like being run with Classic Controller support as Wii VC injections. Namco Museum Megamix from the previous page is sort of one of these, if you let the Wiimote "disconnect" (don't touch the GamePad for five minutes), sometimes it won't reconnect again when you "wake" the Wiimote. This isn't a problem with real Classic Controllers in the vWii mode (or on a real Wii), it's specific to how Nintendo emulates a Classic Controller in injections, so it's not something I can fix on my end.



View attachment 458207

Donkey Kong Jungle Beat is a trick-based 2D platformer in the Donkey Kong universe. This was the first game from the newly-established EAD Tokyo, who would go on to helm the mainline Mario games starting with Super Mario Galaxy. While it's very different to their next project, many elements of this game made their way into the Galaxy series, from the springy flower stems to floating in a bubble to jumping between floating cubes of water. Originally released on GameCube with support for the DK Bongos, players would drum and clap to interact with the game, even for the simplest things like moving and jumping. When it came to the Wii as a New Play Control title, they made it quite a bit more traditional, with a jump button and movement control on the Nunchuk, making this the only New Play Control game that has less unique controls than the original game. With that said, let's finish the job Nintendo started and give it entirely traditional controls. Welcome to Old Play Control.

USAEuropeJapan

  1. Code:
    Classic Controller Support v1.1 [Vague Rant, crediar]
    04229EC0 3BE00001
    C22399CC 00000002
    28000001 41820008
    28000002 00000000
    C2239F04 00000005
    881C005C 2C000002
    40820018 C01C000C
    D0010014 C01C0014
    D0010018 C01C0010
    D001001C 00000000
    C223C104 00000003
    28000002 4082000C
    C0DF0070 C0BF006C
    EC261828 00000000
    C234BCF4 00000017
    88040028 2C000002
    408200A4 7C0802A6
    48000005 7CA802A6
    7C0803A6 3CC080C2
    80C61040 54C0273E
    2C000008 40820024
    80C60008 3CC63A16
    2806E845 40820014
    C003006C FC000050
    D003000C 4E800020
    80030004 70000040
    C0050094 80C30084
    41820008 4800002C
    80030000 70000080
    41820018 38C60001
    2C060003 40810014
    FC000050 D0050094
    C0050090 38C00000
    D003000C D0030010
    D0030014 90C30084
    4E800020 00000000
    4059999A 9421FFB0
    60000000 00000000
    C234CE50 00000019
    88A40028 2C050002
    408200B8 9421FFF0
    7C0802A6 9001000C
    90610008 98A3005E
    3CC08033 60C695D8
    7CC803A6 4E800021
    2C030001 80610008
    48000005 7CA802A6
    C0450078 40820008
    EC4200B2 C065007C
    C0030020 C023006C
    FC211024 4800002D
    D0030020 C0030024
    C0230070 FC200850
    48000019 D0030024
    8001000C 7C0803A6
    38210010 4E800020
    FC0100FA C0250080
    FC000800 4180000C
    FC000890 48000014
    FC200850 FC000800
    41810008 FC000890
    4E800020 3FAAAAAB
    3CA3D70A 3F800000
    9421FFC0 00000000
    C234B980 00000022
    90030068 7C0802A6
    80C30060 48000039
    80830000 7CC62378
    90C30000 7CC630F8
    80830008 7C863038
    90C30008 80C30064
    48000015 80830004
    7CC62378 90C30004
    480000C4 38A00000
    70C40800 41820008
    60A58000 70C40001
    41820008 60A50008
    70C44000 41820008
    60A50004 70C40002
    41820008 60A50001
    70C48000 41820008
    60A50002 70C40010
    41820008 60A50800
    70C40040 41820008
    60A50800 70C40008
    41820008 60A50080
    70C40020 41820008
    60A50040 70C42000
    41820008 60A52000
    70C40200 41820008
    60A50400 70C40080
    41820008 60A52000
    70C40004 41820008
    60A50400 70C40400
    41820008 60A50110
    70C41000 41820008
    60A51200 7CA62B78
    4E800020 7C0803A6
    60000000 00000000
  2. Code:
    Classic Controller Support v1.1 [Vague Rant, crediar]
    0422A500 3BE00001
    C223A00C 00000002
    28000001 41820008
    28000002 00000000
    C223A544 00000005
    881C005C 2C000002
    40820018 C01C000C
    D0010014 C01C0014
    D0010018 C01C0010
    D001001C 00000000
    C223C744 00000003
    28000002 4082000C
    C0DF0070 C0BF006C
    EC261828 00000000
    C234C3B4 00000017
    88040028 2C000002
    408200A4 7C0802A6
    48000005 7CA802A6
    7C0803A6 3CC080C2
    80C64B80 54C0273E
    2C000008 40820024
    80C60008 3CC63A16
    2806E845 40820014
    C003006C FC000050
    D003000C 4E800020
    80030004 70000040
    C0050094 80C30084
    41820008 4800002C
    80030000 70000080
    41820018 38C60001
    2C060003 40810014
    FC000050 D0050094
    C0050090 38C00000
    D003000C D0030010
    D0030014 90C30084
    4E800020 00000000
    4059999A 9421FFB0
    60000000 00000000
    C234D510 00000019
    88A40028 2C050002
    408200B8 9421FFF0
    7C0802A6 9001000C
    90610008 98A3005E
    3CC08033 60C69C98
    7CC803A6 4E800021
    2C030001 80610008
    48000005 7CA802A6
    C0450078 40820008
    EC4200B2 C065007C
    C0030020 C023006C
    FC211024 4800002D
    D0030020 C0030024
    C0230070 FC200850
    48000019 D0030024
    8001000C 7C0803A6
    38210010 4E800020
    FC0100FA C0250080
    FC000800 4180000C
    FC000890 48000014
    FC200850 FC000800
    41810008 FC000890
    4E800020 3FAAAAAB
    3CA3D70A 3F800000
    9421FFC0 00000000
    C234C040 00000022
    90030068 7C0802A6
    80C30060 48000039
    80830000 7CC62378
    90C30000 7CC630F8
    80830008 7C863038
    90C30008 80C30064
    48000015 80830004
    7CC62378 90C30004
    480000C4 38A00000
    70C40800 41820008
    60A58000 70C40001
    41820008 60A50008
    70C44000 41820008
    60A50004 70C40002
    41820008 60A50001
    70C48000 41820008
    60A50002 70C40010
    41820008 60A50800
    70C40040 41820008
    60A50800 70C40008
    41820008 60A50080
    70C40020 41820008
    60A50040 70C42000
    41820008 60A52000
    70C40200 41820008
    60A50400 70C40080
    41820008 60A52000
    70C40004 41820008
    60A50400 70C40400
    41820008 60A50110
    70C41000 41820008
    60A51200 7CA62B78
    4E800020 7C0803A6
    60000000 00000000
  3. Code:
    Classic Controller Support v1.1 [Vague Rant, crediar]
    04228FD0 3BE00001
    C22389FC 00000002
    28000001 41820008
    28000002 00000000
    C2238F34 00000005
    881C005C 2C000002
    40820018 C01C000C
    D0010014 C01C0014
    D0010018 C01C0010
    D001001C 00000000
    C223B134 00000003
    28000002 4082000C
    C0DF0070 C0BF006C
    EC261828 00000000
    C234ABB4 00000017
    88040028 2C000002
    408200A4 7C0802A6
    48000005 7CA802A6
    7C0803A6 3CC080C2
    80C60360 54C0273E
    2C000008 40820024
    80C60008 3CC63A16
    2806E845 40820014
    C003006C FC000050
    D003000C 4E800020
    80030004 70000040
    C0050094 80C30084
    41820008 4800002C
    80030000 70000080
    41820018 38C60001
    2C060003 40810014
    FC000050 D0050094
    C0050090 38C00000
    D003000C D0030010
    D0030014 90C30084
    4E800020 00000000
    4059999A 9421FFB0
    60000000 00000000
    C234BD10 00000019
    88A40028 2C050002
    408200B8 9421FFF0
    7C0802A6 9001000C
    90610008 98A3005E
    3CC08033 60C68498
    7CC803A6 4E800021
    2C030001 80610008
    48000005 7CA802A6
    C0450078 40820008
    EC4200B2 C065007C
    C0030020 C023006C
    FC211024 4800002D
    D0030020 C0030024
    C0230070 FC200850
    48000019 D0030024
    8001000C 7C0803A6
    38210010 4E800020
    FC0100FA C0250080
    FC000800 4180000C
    FC000890 48000014
    FC200850 FC000800
    41810008 FC000890
    4E800020 3FAAAAAB
    3CA3D70A 3F800000
    9421FFC0 00000000
    C234A840 00000022
    90030068 7C0802A6
    80C30060 48000039
    80830000 7CC62378
    90C30000 7CC630F8
    80830008 7C863038
    90C30008 80C30064
    48000015 80830004
    7CC62378 90C30004
    480000C4 38A00000
    70C40800 41820008
    60A58000 70C40001
    41820008 60A50008
    70C44000 41820008
    60A50004 70C40002
    41820008 60A50001
    70C48000 41820008
    60A50002 70C40010
    41820008 60A50800
    70C40040 41820008
    60A50800 70C40008
    41820008 60A50080
    70C40020 41820008
    60A50040 70C42000
    41820008 60A52000
    70C40200 41820008
    60A50400 70C40080
    41820008 60A52000
    70C40004 41820008
    60A50400 70C40400
    41820008 60A50110
    70C41000 41820008
    60A51200 7CA62B78
    4E800020 7C0803A6
    60000000 00000000

Button Mapping​

[TABLE=full]
[TR]
[th]Wii Remote[/th][th]Classic Controller[/th][th]Game Function[/th]
[/TR]
[TR]
[td]Home[/td][td]Home
Home Menu works as normal[/td][td]Open/Close Home Button Menu[/td]
[/TR]
[TR]
[td]D-Pad[/td][td]D-Pad[/td][td]Menu
Navigation[/td]
[/TR]
[TR]
[td]Wiimote A[/td][td]A/B[/td][td]Menu
Confirm
Gameplay
Jump[/td]
[/TR]
[TR]
[td]Wiimote B[/td][td]R/ZR[/td][td]Menu
Next Page
Gameplay
Crouch[/td]
[/TR]
[TR]
[td]Plus/Minus[/td][td]Plus/Minus[/td][td]Gameplay
Pause[/td]
[/TR]
[TR]
[td]Wiimote 1/2[/td][td]Minus/Plus[/td][td]Menu
Hints[/td]
[/TR]
[TR]
[td]Wiimote Swing[/td][td]Y[/td][td]Gameplay
Clap[/td]
[/TR]
[TR]
[td]Wiimote Shake[/td][td]X[/td][td]Gameplay
Various[/td]
[/TR]
[TR]
[td]Wiimote Tilt[/td][td]Left Stick[/td][td]Gameplay
Bubble Float Direction[/td]
[/TR]
[TR]
[td]Wiimote IR Pointer[/td][td]Left Stick[/td][td]Home Menu
Navigation[/td]
[/TR]
[TR]
[td]Nunchuk Stick[/td][td]Left Stick[/td][td]Menu
Navigation
Gameplay
Movement[/td]
[/TR]
[TR]
[td]Nunchuk C[/td][td][/td]
[td]Not used[/td]
[/TR]
[TR]
[td]Nunchuk Z[/td][td]L/ZL[/td][td]Menu
Previous Page
Gameplay
Crouch[/td]
[/TR]
[/TABLE]

General Notes​

  • The original (Wii) game makes no distinction between a Wiimote swing and a Wiimote shake; a shake is just swinging a bunch of times in a row. However, for this hack I split them into separate buttons because it's fairly easy to accidentally trigger multiple claps in a row when you may have only meant to do one. This way, you've got a clap button which is your general action button and then a shake button when you need to shake repeatedly.
  • The menuing in this game is just kinda weird. There's no Back/Cancel button except in the save select itself, so once you've loaded a save file, you're in that save file and have to reset the game if you want to go back to the title screen/save select. It might feel like I forgot to map the cancel button or something, but that's just how the game is. "I didn't f%#&ing do this!"
  • Having a dedicated shake button means sections based around shaking ala button mashing (like boss battles and the banana grab minigame ["Look, a seagull!"]) are trivially easy, but you know ... tough, that's what you get for playing a motion-controlled game on a controller. What did you expect?
  • This game is genuinely fascinating, if you're a fan of the Galaxy games I absolutely recommend checking it out. It doesn't play much like Galaxy (it's more like a trick-based extreme sports game but in the form of a 2D platformer), but it feels so weird every time you encounter something you know from Galaxy and realize it actually comes from Jungle Beat.
  • Obviously, also check it out if you're a Donkey Kong fan and missed it. Keep in mind though, even with this hack, it's still not a traditional platformer. This is not Donkey Kong Country Returns (I already told you, it's Donkey Kong Galaxy /s), it's very much its own game that oozes with charm and character. Stages are short and based around combo-building, with you trying to grab as many bananas as possible while pulling off as many different backflips and walljumps and rocket barrel fires as you can without ever touching the ground and ending your combo. While it's not a Donkey Kong Country, it definitely builds on the fluidity of movement in those games in a way that Retro also seized on for Returns and Tropical Freeze. You can still play "normally" if you want, but the intention is that you get a smooth flow going and see how long you can keep a 300 pound gorilla airborne.

Changelog​

  • v1.1 adds a mapping for the Wiimote 2 button because that gives a separate hint to Wiimote 1

Technical Notes​

This one is seven codes; an 04 and six C2s. The first four are Kong-specific and the last three are in KPAD. As usual, these hacks don't break the actual Nunchuk support, they're all based on adding Classic Controller support as an option. Let's briefly go through the codes.

04
Disable the "insert a Nunchuk" error when Classic Controller is inserted.

C2 1
Another Nunchuk check, this one determines whether data from the Nunchuk's analog stick, buttons and accelerometer should be used based on whether a Nunchuk is inserted; we add the condition that a Classic Controller is fine too, because we're going to be faking all of those inputs later.

C2 2
This is where the game reads in the Nunchuk accelerometer data. We don't have one of those, so if we detect a CC is attached, we tweak the Wiimote accelerometer data slightly and feed that into the game as Nunchuk accelerometer data. Later we'll be injecting fake motion data into the Wiimote, so this allows us to shake both the Wiimote and Nunchuk at the same time with a single button press. There's never any reason not to shake both, so they can just share.

C2 3
This is where the game reads in the Nunchuk analog stick. Now, if a CC is attached, the game will read from that instead.

C2 4: read_kpad_acc()
This was definitely the most complicated part of this game. First up, let's address the bubble mode. Several stages in the game have Donkey Kong floating inside a bubble, controlled by tilting the Wii Remote. In the whole rest of the game, "tilting" is handled with the swing/shake buttons we mapped on the controller, but we need fine movement control here, so when we detect that we're in the bubble mode, the shake buttons are disabled and replaced with tilting via the left analog stick. To do the detection of what gameplay mode we're in currently, we have to locate the EventDirector data which tells the game various things including what Kong is doing currently. EAD Tokyo were kind enough to put the actual text EventDirector right below where the data starts, so it was pretty simple finding it across the three regions. From there, we can pull whether Kong is in a bubble right now and use that to toggle the accelerometer from button-shake to analog-tilt mode.

Beyond that, the shaking is quite different from how it's detected in Wario Land. This one doesn't bother checking the total motion value at all, it checks the three (six counting Nunchuk) axes of motion and if they've changed enough since the last frame, a shake is counted. I haven't mentioned this before, but the SDK analog stick, accelerometer and pointer functions run 3-4 times every frame and then get averaged out, which is done to smooth out the inputs so they're less shaky. This means we can't trigger a shake every time the function gets called, because every 3-4 polls is only one frame of gameplay. So for this game, we swing in one direction for 3 polls, then stop for 1 poll, then swing in the opposite direction for 3 polls, rinse and repeat. This basically amounts to shaking in all three (six) directions once per frame of gameplay.

C2 5 and 6: read_kpad_dpd() and read_kpad_button()
Pretty boilerplate stuff, pointer for the Home Menu, buttons for ... buttons. Most interesting thing in the latter is that we have 0x40 (single swing) and 0x80 (continuous shake) buttons but that's not really anything new.
Hi, I'm new to the platform and I originally created this account to ask a question in this thread.

I have a question about this patch because I'm having an issue using it. I placed it in the “codes” directory on my USB drive, using the patch corresponding to my game's region, but when I run it, it freezes immediately after turning on the Wii Remote with the Classic Controller Pro connected. Maybe I'm missing a step, but out of all the patches, this is the only one that has given me trouble so far.

I'm playing on a US Wii running version 4.3U via USB Loader GX. I'd appreciate any help you can give me on this.

I'm editing this to point out that I made a mistake when replying to the thread and accidentally replied to the wrong game. My issue is with Donkey Kong Jungle Beat. I apologize for my mistake.
 

Site & Scene News

Popular threads in this forum