- Joined
- Aug 7, 2008
- Messages
- 2,494
- Trophies
- 2
- Location
- Melbourne
- Website
- vaguerant.tumblr.com
- XP
- 3,562
- Country
Many Wii games required the use of the Wiimote (or Nunchuk), while not including support for the other major Wii input device, the Classic Controller. Some games benefited from these specialized controls, while others didn't. Listed below are several Classic Controller hacks for games that seemed like they could benefit from some more flexibility in their controller options. I don't claim that all of these are improvements over their official control schemes, as the sensitivity of accelerometer input and immediacy of infra-red cannot always be replicated well on a traditional controller.
Little King's Story is a cult hit RTS/city builder/life sim/RPG from the creator of Harvest Moon/Story of Seasons, Yasuhiro Wada. It was originally released on the Wii, is currently available on Steam and briefly had a reimagined PS Vita release, which has since been delisted. In the game, you play as a child (canonically named Corobo, but chosen by the player) who comes to rule over a tiny kingdom. Tasked with expanding your empire, the moment-to-moment gameplay is somewhat reminiscent of Pikmin, with Corobo being almost powerless on his own and "Charging" recruits at different tasks (tossing them at the target like Olimar). The Wii release has no motion or pointer controls whatsoever, but can only be played with the Wii Remote and Nunchuk. This made it a good candidate for a Classic Controller hack, which you can find in the spoiler below.
If you prefer the D-Pad, you can use that to access its original functions (and to navigate menus), but its functions have all been mirrored to the face and shoulder buttons, which is closer to how the original control scheme has you mostly using the action buttons with your right hand. The most contentious change is that the Nunchuk C button has moved to the Y face button. This is how Corobo attacks and feels better with the other action buttons than it does up on the Nunchuk-equivalent L-button. Realistically, the original devs put it on C because that's the only other button you really have access to in the Wiimote and Nunchuk layout. The base game already does a lot of re-using buttons for different functions depending on whether you're in town or the field, and this hack added one more with the Wiimote 1/2 Dismiss (town)/Return (field) buttons being combined into Classic Controller Minus. It feels pretty intuitive combining these since they're both cancel/quit type inputs which are out of the way so you don't accidentally press them.
If you want to change any of these mappings, you'll need to edit the end section of the code. Here it is again with labels for the buttons from the above scheme:
I know it's a bit lopsided and confusing to look at, but each button value on the right side triggers the next button down on the left side. Just look at the first mapping, where Classic Controller
Each button is a four digit value. Here's a table of the button values you can substitute in to customize your mapping.
- Animal Crossing: City Folk / Let's Go to the City
- de Blob (also adds jump button on Nunchuk)
- Disney Universe
- Donkey Kong Jungle Beat (New Play Control!)
- Donkey Kong Country Returns (new version with analog support)
- Dragon Ball Z: Budokai Tenkaichi 3 (workaround for missing analog L/R on CC Pro)
- Endless Ocean (also adds Nunchuk support)
- Excite Truck
- Kirby's Epic Yarn
- Little King's Story (you are here)
- Madagascar: Escape 2 Africa
- Metroid: Other M (also adds Nunchuk support)
- Namco Museum Megamix
- Resident Evil 4: Wii Edition (already supports GC and CC pads, hack removes Nunchuk error)
- Rhythm Heaven Fever / Beat the Beat: Rhythm Paradise (with tutorial for how a Classic Controller hack is made)
- Speed Racer: The Videogame
- Super Paper Mario (currently missing shake support)
- Tron Evolution: Battle Grids
- Wario Land: Shake It! / The Shake Dimension
Little King's Story is a cult hit RTS/city builder/life sim/RPG from the creator of Harvest Moon/Story of Seasons, Yasuhiro Wada. It was originally released on the Wii, is currently available on Steam and briefly had a reimagined PS Vita release, which has since been delisted. In the game, you play as a child (canonically named Corobo, but chosen by the player) who comes to rule over a tiny kingdom. Tasked with expanding your empire, the moment-to-moment gameplay is somewhat reminiscent of Pikmin, with Corobo being almost powerless on his own and "Charging" recruits at different tasks (tossing them at the target like Olimar). The Wii release has no motion or pointer controls whatsoever, but can only be played with the Wii Remote and Nunchuk. This made it a good candidate for a Classic Controller hack, which you can find in the spoiler below.
USAEuropeJapan
-
Code:
Classic Controller Support [Vague Rant, crediar] 04060E74 60000000 04078FA4 28000002 04079550 28000002 04079558 C0230178 04079580 28000002 04079588 C023017C C242A1B4 00000029 7C0802A6 80BF0060 48000041 809F0000 7CA52378 90BF0000 80BF0064 4800002D 809F0004 7CA52378 90BF0004 80BF0068 48000019 809F0008 7CA52378 90BF0008 7C0803A6 4E800020 38C00000 70A40800 2C040000 41820008 60C68000 70A40001 2C040000 41820008 60C60008 70A44000 2C040000 41820008 60C60004 70A40002 2C040000 41820008 60C60001 70A48000 2C040000 41820008 60C60002 70A40010 2C040000 41820008 60C60800 70A40040 2C040000 41820008 60C60400 70A40008 2C040000 41820008 60C60004 70A40020 2C040000 41820008 60C64000 70A42000 2C040000 41820008 60C60001 70A40200 2C040000 41820008 60C60002 70A40080 2C040000 41820008 60C62000 70A40004 2C040000 41820008 60C60008 70A40400 2C040000 41820008 60C60010 70A41000 2C040000 41820008 60C60300 7CC53378 4E800020 00000000
-
Code:
Classic Controller Support [Vague Rant, crediar] 04060B3C 60000000 0407837C 28000002 04078928 28000002 04078930 C0230178 04078958 28000002 04078960 C023017C C2428858 00000029 7C0802A6 80BF0060 48000041 809F0000 7CA52378 90BF0000 80BF0064 4800002D 809F0004 7CA52378 90BF0004 80BF0068 48000019 809F0008 7CA52378 90BF0008 7C0803A6 4E800020 38C00000 70A40800 2C040000 41820008 60C68000 70A40001 2C040000 41820008 60C60008 70A44000 2C040000 41820008 60C60004 70A40002 2C040000 41820008 60C60001 70A48000 2C040000 41820008 60C60002 70A40010 2C040000 41820008 60C60800 70A40040 2C040000 41820008 60C60400 70A40008 2C040000 41820008 60C60004 70A40020 2C040000 41820008 60C64000 70A42000 2C040000 41820008 60C60001 70A40200 2C040000 41820008 60C60002 70A40080 2C040000 41820008 60C62000 70A40004 2C040000 41820008 60C60008 70A40400 2C040000 41820008 60C60010 70A41000 2C040000 41820008 60C60300 7CC53378 4E800020 00000000
-
Code:
Classic Controller Support [Vague Rant, crediar] 04060CB0 60000000 04078F98 28000002 04079544 28000002 0407954C C0230178 04079574 28000002 0407957C C023017C C2429B74 00000029 7C0802A6 80BF0060 48000041 809F0000 7CA52378 90BF0000 80BF0064 4800002D 809F0004 7CA52378 90BF0004 80BF0068 48000019 809F0008 7CA52378 90BF0008 7C0803A6 4E800020 38C00000 70A40800 2C040000 41820008 60C68000 70A40001 2C040000 41820008 60C60008 70A44000 2C040000 41820008 60C60004 70A40002 2C040000 41820008 60C60001 70A48000 2C040000 41820008 60C60002 70A40010 2C040000 41820008 60C60800 70A40040 2C040000 41820008 60C60400 70A40008 2C040000 41820008 60C60004 70A40020 2C040000 41820008 60C64000 70A42000 2C040000 41820008 60C60001 70A40200 2C040000 41820008 60C60002 70A40080 2C040000 41820008 60C62000 70A40004 2C040000 41820008 60C60008 70A40400 2C040000 41820008 60C60010 70A41000 2C040000 41820008 60C60300 7CC53378 4E800020 00000000
Button (Re-)Mapping
The button mapping used here is a combination of common sense, the Steam version button layout and advice from Deadweight in the Little King's Story community. That said, the code is relatively easy to customize if you want to use a different layout. First off, here's our layout as set up in the above codes:Wii Remote/Nunchuk | Classic Controller | Game Function |
---|---|---|
Home | Home Classic Controller analog stick is not supported in the Home Button Menu, you will need to use a Wii Remote to quit | Open/Close Home Button Menu |
D-Pad Up | D-Pad Up ZR | Change Formation |
D-Pad Down | D-Pad Down X | Change Rank (party order, i.e. selected job type) |
D-Pad Left/Right | D-Pad Left/Right L/R | Camera Rotation |
Wiimote A | A | Confirm/Action/Charge |
Wiimote B | B | Cancel Recruit (town) Call Back (field) |
Nunchuk C | Y | Zoom Camera (town) Scepter Attack (field) |
Nunchuk Z | ZL | Target |
Plus/Minus | Plus | Open/Close Field Menu |
Wiimote 1 Wiimote 2 | Minus | Dismiss Party (town) Return to Castle (field) |
If you prefer the D-Pad, you can use that to access its original functions (and to navigate menus), but its functions have all been mirrored to the face and shoulder buttons, which is closer to how the original control scheme has you mostly using the action buttons with your right hand. The most contentious change is that the Nunchuk C button has moved to the Y face button. This is how Corobo attacks and feels better with the other action buttons than it does up on the Nunchuk-equivalent L-button. Realistically, the original devs put it on C because that's the only other button you really have access to in the Wiimote and Nunchuk layout. The base game already does a lot of re-using buttons for different functions depending on whether you're in town or the field, and this hack added one more with the Wiimote 1/2 Dismiss (town)/Return (field) buttons being combined into Classic Controller Minus. It feels pretty intuitive combining these since they're both cancel/quit type inputs which are out of the way so you don't accidentally press them.
If you want to change any of these mappings, you'll need to edit the end section of the code. Here it is again with labels for the buttons from the above scheme:
Code:
| Wii Output | xxxx xxxx | Classic Input
------------------------------------------------------
1 | | 70A40800 | Home
2 | | 2C040000 41820008 |
3 | Home | 60C68000 70A40001 | D-Pad Up
4 | | 2C040000 41820008 |
5 | D-Pad Up | 60C60008 70A44000 | D-Pad Down
6 | | 2C040000 41820008 |
7 | D-Pad Down | 60C60004 70A40002 | D-Pad Left
8 | | 2C040000 41820008 |
9 | D-Pad Left | 60C60001 70A48000 | D-Pad Right
10 | | 2C040000 41820008 |
11 | D-Pad Right | 60C60002 70A40010 | A
12 | | 2C040000 41820008 |
13 | A | 60C60800 70A40040 | B
14 | | 2C040000 41820008 |
15 | B | 60C60400 70A40008 | X
16 | | 2C040000 41820008 |
17 | D-Pad Down | 60C60004 70A40020 | Y
18 | | 2C040000 41820008 |
19 | C | 60C64000 70A42000 | L
20 | | 2C040000 41820008 |
21 | D-Pad Left | 60C60001 70A40200 | R
22 | | 2C040000 41820008 |
23 | D-Pad Right | 60C60002 70A40080 | ZL
24 | | 2C040000 41820008 |
25 | Z | 60C62000 70A40004 | ZR
26 | | 2C040000 41820008 |
27 | D-Pad Up | 60C60008 70A40400 | Plus
28 | | 2C040000 41820008 |
29 | Plus | 60C60010 70A41000 | Minus
30 | | 2C040000 41820008 |
31 | 1+2 | 60C60300 00000000 |
I know it's a bit lopsided and confusing to look at, but each button value on the right side triggers the next button down on the left side. Just look at the first mapping, where Classic Controller
0800
Home on line 1 (right) triggers Wiimote 8000
Home on line 3 (left), to get a feel for how it works. Personally, I'd suggest changing the left column if you want to customize this layout, keeping the Classic Controller inputs in their default order. Otherwise, it gets confusing really fast.Each button is a four digit value. Here's a table of the button values you can substitute in to customize your mapping.
Wii Remote/Nunchuk | Classic Controller |
---|---|
0001 D-Pad Left0002 D-Pad Right0004 D-Pad Down0008 D-Pad Up0010 +0020 // no button0040 // no button0080 // no button0100 20200 10400 B0800 A1000 -2000 Z4000 C8000 Home | 0001 D-Pad Up0002 D-Pad Left0004 ZR0008 X0010 A0020 Y0040 B0080 ZL0100 // no button0200 R0400 +0800 // no button1000 -2000 L4000 D-Pad Down8000 D-Pad Right |
General Notes
Just stuff you might want to know about the hack and underlying game.- this is specifically a hack of the way Little King's Story handles Nunchuk inputs; it can't really be generalized to other games (barring perhaps other games on the same engine, assuming they exist)
- this code breaks the original Nunchuk input; turn off the code if you want to go back to playing with the original controls
- sorry, I don't have the slightest idea how to map camera rotation to the right stick
- has also been tested and works on Wii U as a Wii VC injection with Classic Controller emulation, for semi-portable play
- if you have the choice, you should probably play the USA or Japan versions, which came out after the European game and include extra content and 60 Hz support
- fans regard the Steam and Vita versions as inferior to the original Wii release
Technical Notes
Slightly nerdier stuff. The code is basically made up of 4 main parts. The first three are King-specific while the last can basically be ported to other games as long as you can figure out the rest yourself.- the first line patches out the code which determines that the Classic Controller is not an acceptable extension
- the second line tells the game that it should accept Nunchuk button values when they're "pressed" by a Classic Controller (extension type
2
) - the next four lines again tell the game to use extension
2
and force it to read the Classic Controller left analog offset instead of the Nunchuk when reading the joystick X/Y values - the remainder is crediar's original button remapping hack which injects into the SDK
read_kpad_acc()
function; it reads the CC button values then translates and injects them into the Wiimote/Nunchuk button field
Credits
- DeadweightLKS, the world's #1 Little King's Story expert, for advising on the ideal button layout
- crediar: creating the original Classic Controller hacks for sideways Wii Remote games, in particular Kirby's Return to Dream Land
- Vague Rant: hacking Nunchuk inputs (C, Z and the analog stick) and disabling "wrong extension" error
Last edited by Vague Rant,