Item Cycler v2 [Ro]
#1
Item Cycler v2 [Ro]

Allows cycling through all items with buttons. You can cycle to the left (previous item) and to the right (next item). Items are infinite. Very simple to use, useful for debugging and for fun!

This is v2 of the code, remade from scratch. Like every item hack that writes the item ID and amount, spamming and dropping items in v1 caused issues. Another issue would cause CPUs to throw usable items instead of using them, causing the game to freeze sometimes (Could've been the Item Use Flash Fix).

This version calls a function instead, eliminating the triple item problems. Hook location was changed so item flashes when used (Hooking where I used to would make item not flash, too fast?). Had to make it only call when cycling or using items, if calling every frame, issues would occur when dropping items. All fixed now and I am satisfied with this version.

v1 was deleted.

If you don't want to make the item infinite, replace 41820048 with 60000000 - You will cycle through items but it will disappear once used, allowing you to obtain items from boxes normally. Pressing the cycle button again will give you the hacked item back.

Or if you want crazy item cycling every frame (items automatically changing, you will use a "random item"), replace 41820048 with 48000020

And if you want to give items to CPUs too, replace 41820088 with 60000000

DO NOT USE MORE THAN ONE BUTTON AT SAME TIME (Example: B and D-Pad Left. Use one: D-Pad Left for example)
XXXX: Controller Address
803Q: Change Q to 5 for GameCube controller, 4 for all other controllers
YYYY: Both cycle to previous and next item buttons masked together. E.g: (Wiimote): D-Pad Left (0001) cycles item to the left < and D-Pad Right (0002) cycles item to the right >, therefore YYYY will be 0003 (0001 + 0002 = 0003)
ZZZZ: Button to cycle item to previous item (cycle to the left <)

https://mariokartwii.com/archive/index.p...ad-44.html

NTSC-U
C278E9B4 00000014
819D0000 818C0004
818C0014 718C0002
41820088 3D808034
A16CXXXX 809D008C
2C040014 889D00B3
41820048 716CYYYY
41820060 899D00B2
2C0C0000 4082005C
716CZZZZ 41820018
2C040000 3884FFFF
4082001C 38800012
48000014 2C040011
38840001 40810008
38800000 989D00B3
387D0088 38A00000
3D80807A 618CDEE0
7D8903A6 4E800421
39800001 48000008
39800000 999D00B2
807D0000 00000000

PAL
C27979C0 00000014
819D0000 818C0004
818C0014 718C0002
41820088 3D80803Q
A16CXXXX 809D008C
2C040014 889D00B3
41820048 716CYYYY
41820060 899D00B2
2C0C0000 4082005C
716CZZZZ 41820018
2C040000 3884FFFF
4082001C 38800012
48000014 2C040011
38840001 40810008
38800000 989D00B3
387D0088 38A00000
3D80807B 618CC940
7D8903A6 4E800421
39800001 48000008
39800000 999D00B2
807D0000 00000000

NTSC-J
C279702C 00000014
819D0000 818C0004
818C0014 718C0002
41820088 3D808034
A16CXXXX 809D008C
2C040014 889D00B3
41820048 716CYYYY
41820060 899D00B2
2C0C0000 4082005C
716CZZZZ 41820018
2C040000 3884FFFF
4082001C 38800012
48000014 2C040011
38840001 40810008
38800000 989D00B3
387D0088 38A00000
3D80807B 618CBFAC
7D8903A6 4E800421
39800001 48000008
39800000 999D00B2
807D0000 00000000

NTSC-K
C2785D80 00000014
819D0000 818C0004
818C0014 718C0002
41820088 3D808033
A16CXXXX 809D008C
2C040014 889D00B3
41820048 716CYYYY
41820060 899D00B2
2C0C0000 4082005C
716CZZZZ 41820018
2C040000 3884FFFF
4082001C 38800012
48000014 2C040011
38840001 40810008
38800000 989D00B3
387D0088 38A00000
3D80807A 618CAD00
7D8903A6 4E800421
39800001 48000008
39800000 999D00B2
807D0000 00000000

Code creator: Ro
Reply
#2
Is it possible to add a Deactivator/Re-activator
Reply
#3
For having infinite items but also be able to deactivate the code, you can use this:

2834XXXX YYYYZZZZ
C278E9B4 00000015
819D0000 818C0004
818C0014 718C0002
4182008C 809D008C
2C040014 889D00B3
41820050 3D808034
A16CXXXX 716CYYYY
41820058 899D00B2
2C0C0000 4082004C
716CZZZZ 41820018
2C040000 3884FFFF
4082001C 38800012
48000014 2C040011
38840001 40810008
38800000 989D00B3
387D0088 38A00000
3D80807A 618CDEE0
7D8903A6 4E800421
716BYYYY 39800001
40820008 39800000
999D00B2 807D0000
60000000 00000000
CC000000 00000000
0478E9B4 807D0000
E0000000 00000000

Set XXXX YYYYZZZZ to your button, press it to enable code, and press it again to disable code (You'll need to use the current item you have for it to disappear once the code is deactivated)
Reply
#4
It works. Thank you ur a legend
Reply
#5
I think the upper values for controller adresses are wrong, at least in PAL and NTSC-K:

For PAL it should be "3D80803P" with

P = 5 in case of GCN controller (because lhz is SIGNED)
P = 4 else

For NTSC-K it should be "3D808033" no matter which controller.
Reply
#6
Thank you. Fixing it
Reply
#7
Updated once again and for the last time. Code is one line shorter and only has one YYYY value for less confusion
Reply
#8
Is there a way to cycle through items by using just one button? For example, instead of having to use two separate buttons to go left/right (for example, the GCN's Z and Y buttons), you'd simply use one of them to be able to go through every item. I attempted to do this before with the Y button, but after using the triple shrooms I'd press Y, get a green shell, press the button again, and the item wouldn't change. (not sure if this would matter either, but I'm using a GCN Adapter, so maybe the ZZZZ was incorrect, but I doubt it.)
Reply
#9
For one item, change XXXX to the only one burton value and change 41820018 to 48000018. ZZZZ can be 0000 or any value
Reply
#10
Hi there, I appreciate the quick reply! I did as you instructed, and for whatever reason it still doesn't work. I've tried different combinations of ZZZZ and/or XXXX, but it doesn't seem to be working as it should. Here's what I have so far:

I have each of the values set to the following here:
X: 0880 (Set as the GCN's Y button, as you instructed before as the singular button. Yes, I tried it as 3E80, the first GCN Slot.)
Y: 0000 (just that button(s) pressed)
Z: 0000 (I tried this and 0880 as well, but nothing worked.)

C278E9B4 00000014
819D0000 818C0004
818C0014 718C0002
41820088 3D808034
A16C0880 809D008C
2C040014 889D00B3
41820048 716C0000
41820060 899D00B2
2C0C0000 4082005C
716C0880 48000018
2C040000 3884FFFF
4082001C 38800012
48000014 2C040011
38840001 40810008
38800000 989D00B3
387D0088 38A00000
3D80807A 618CDEE0
7D8903A6 4E800421
39800001 48000008
39800000 999D00B2
807D0000 00000000


I appreciate the help thus far. Basically what happens (like before,) The race starts up as normal. After the "GO!!!" appears, I press the activator (Y), and the item doesn't change (unless you're meant to use the first set of 3 shrooms before the item cycler is able to be used). Without even pressing the button, the item moves onto a single green after the final shroom is used, and no matter what button I press (whether it be L to use the item or Y to use the cycler) the single (yet infinite) green doesn't go away.

Sorry for the trouble, and once again, I appreciate the help.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)