Mario Kart Wii Gecko Codes, Cheats, & Hacks
Trick Timing + Difficulty Modifier [Vega] - Printable Version

+- Mario Kart Wii Gecko Codes, Cheats, & Hacks (https://mariokartwii.com)
+-- Forum: Cheat Codes (https://mariokartwii.com/forumdisplay.php?fid=51)
+--- Forum: Offline Non-Item (https://mariokartwii.com/forumdisplay.php?fid=53)
+--- Thread: Trick Timing + Difficulty Modifier [Vega] (/showthread.php?tid=1968)



Trick Timing + Difficulty Modifier [Vega] - Vega - 06-06-2022

Trick Timing + Difficulty Modifier [Vega]

Video~



This code edits 3 variables of the Trick:

  1. Frame Window required to be within from the time of pressing your Trick Button (or swinging remote) while on Trickable Surface to the time of when you get into Air
  2. Latest Possible Frame in Air that you can still get a Trick performed
  3. When the Trick Animation will Start

This may not make sense at first, so please be sure to also read the explanation below.

Under normal conditions, once you are on a trickable surface and you press your trick button (or swing remote), you have to be within 14 frames to the point of getting airtime or else the trick won't occur.

At this point the game will wait til the 3rd frame you are suspended in the air to generate your trick. So this means if you press your Trick Button (or swing remote) before the 4th air-frame, you will execute the earliest trick animation possible.

Obviously a player can wait to do 'late tricks'. You can wait up to 10 frames being suspended in the air. Once you go past 10 frames, you can no longer be able to generate a trick.

The reason I'm explaining all of this is for you to understand how to use this code correctly and how each value will effect your Tricks. With all of that being said here for Code values and their ranges

XXXX = Button Trickable Surface Frame Window (Default is 000E aka 14)
YYYY = Button Air Frame Window Upper Bound (Default is 000A aka 10)
ZZZZ = Button Trick Animation Frame Start Value (Default is 0003)

XXXX can be anything from 0001 thru 7FFF (8000+ are treated as negative numbers, can't use those values)
YYYY & ZZZZ can be anything from 0000 thru FFFF (8000+ are still treated as positive numbers)

ZZZZ must be lower than YYYY, and ZZZZ cannot be zero. XXXX also cannot be 0 or else you simply disable tricks entirely, lol.

NTSC-U
0456F31C 3800XXXX
0456F348 2805YYYY
0456F374 2805ZZZZ

PAL
04575B80 3800XXXX
04575BAC 2805YYYY
04575BD8 2805ZZZZ

NTSC-J
04575500 3800XXXX
0457552C 2805YYYY
04575558 2805ZZZZ

NTSC-K
04563BD8 3800XXXX
04563C04 2805YYYY
04563C30 2805ZZZZ



Code creator: Vega
Code credits: Stebler (player.h), Seeky (mkw-structures github repo)



Sources~
1st RAM Write: 'li r0, 0x000E' has its 16-big signed value changed. This sets the Trickable Surface Frame Window which gets decremented til it hits 0
2nd RAM Write: 'cmplwi r5,  0x000A' has its 16-bit logical/unsigned value changed. This is the upper bound check for longest allow time you've been in the Air (frames)
3rd RAM Write: 'cmplwi r5,  0x0003' has its 16-bit logical/unsigned value changed. This is the earliest the game can start a trick animation in regards to how long it waits for you to stay suspended in the air.