How to use Button-Combination to activate cheat?

Started by lindtec, July 26, 2008, 10:23:06 PM

Previous topic - Next topic

Romaap

the if should be on top, so it checks if it is true, if it isn't then it doesn't execute the code.
86000000 is add XXXXXXXX to gecko register 0

OnkelLes

#31
Both on top?

And got it. Its this:
CST3 : Gecko Register / Direct Value operations

86TY000N XXXXXXXX: Direct value operations
86T0 : grN = (grN ? XXXXXXXX)
86T1 : grN = ([grN] ? XXXXXXXX)
86T2 : grN = (grN ? [XXXXXXXX])
86T3 : grN = ([grN] ? [XXXXXXXX])

? = T :
0 : add (+)
1 : mul (*)
2 : or (|)
3 : and (&)
4 : xor (^)
5 : slw (<<)
6 : srw (>>)
7 : rol (rotate left)
8 : asr (arithmetic shift right)
A : fadds (single float add)
B : fmuls (single float mul)

And 8600 because 0 is add? Right

But why not 8601 or 8602?

edit: Ok. Now it works. It increases. But not 1 hour. And the decrease doesn't work. Is there no command for subtracing? Adding FFFFF1F0 is too much. Because the day changes and this doesn't work. It makes problems...

Romaap

for subtracting, just open calculator, type in the value you want to subtract, an click NOT.
so subtracting E10 would be F1EF.

QuoteBut why not 8601 or 8602?

86T1 : grN = ([grN] ? XXXXXXXX)
86T2 : grN = (grN ? [XXXXXXXX])

everything between [] is an address
so if you use 8601 it adds XXXXXXX to the address of grN
if you use 8602 it adds [XXXXXXX] to grN

OnkelLes

Thx. What does grN stand for? I'll test that. :)

Romaap

its GeckoRegister, its a place where you can safely store values without crashing the game

OnkelLes

I see. Thx soo much.

Can u also tell me what if i got another increase code?

QuoteBe aware, that you should avoid using different codes together, that use the same register
(you can use up to 16 different gecko-registers).

And the thing with the NOT code doesn't work. Don't know why. Maybe someone can tell me where the problem is...
The code looks like that:

[Time increase/decrease]
283ADB6A 00000200
82200000 8047F060
86000000 00000E10
84200000 8047F060
E0000000 80008000
283ADB6A 00000100
82100000 8047F060
86000000 FFFFF1EF
84100000 8047F060
E0000000 80008000

Greetings

lindtec

#36
If you got another code, that uses Gecko-Register 0 then just change one of the codes to Register 1.
For your code this would be:

283ADB6A 00000200  <-- Checks if (1) is pressed, if yes
2647F060 001D4750  <-- Checks if the value is lower than 001D4750, if yes
82200001 8047F060  <-- Loads the value of 8047F060 in Gecko-Register 1 (last number indicates register-number (0 - F))
86000001 00000E10  <-- Adds 00000E10 to the value stored in Gecko-Register 1
84200001 8047F060  <-- Writes the value stored in Gecko-Register 1 to 8047F060
E0000000 80008000
283ADB6A 00000100  <-- Checks if (2) is pressed, if yes
2447F060 001C03E0  <-- Checks if the value is higher than 001C03E0, if yes
82200001 8047F060  <-- Loads the value of 8047F060 in Gecko-Register 1 (last number indicates register-number (0 - F))
86000001 FFFFF1EF  <-- Substracts 00000E10 of the value stored in Gecko-Register 1
84200001 8047F060  <-- Writes the value stored in Gecko-Register 1 to 8047F060
E0000000 80008000


I added a check so, you won't go lower or higher than the desired values.

You also forgot to change the OFF-Code to 32bit (instead of 82100000 you have to use 82200000, same with 84100000),
thats maybe why the OFF-Code didn't work.

OnkelLes

#37
Thanks. Now i got it. I'll test them when i get the televison back. That means when the movie ends. :)

Greetings

OnkelLes

#38
Ok. I think i found the problem. Time Code got 2 codes. So i need to increase a second code at the same time...

Can u help me? What do i have to do when there are 2 codes?

Everythings same but the codes are now:

8047F060
8047F064
both increased by same value: E10

So, thats what i got:
[Time increase/decrease]
283ADB6A 00000200
82200000 8047F060
86000000 00000E10
84200000 8047F060
82200001 8047F064
86000001 00000E10
84200001 8047F064
E0000000 80008000
283ADB6A 00000100
82200000 8047F060
86000000 FFFFF1EF
84100000 8047F060
82200001 8047F064
86000001 FFFFF1EF
84100001 8047F064
E0000000 80008000

Now... When i press button 1 time increses by 1 hour, but when i release the button it goes back to the previous position.
Example: Its 8:00. I press 1 and its 9:00 as long as i press the button. I release the button and its 8:00 again. Same with button 2.

edit: Finally i made it work. :D :D :cool: :cool: :D :D
I had to make 2 different codes. One for increasing and one for decreasing. Now it works. But... (Why has there always to be a but?) It increases/decreases much to fast. I tryed with the following code and tested a little bit, but i don't know how it works. Or is there an other way to tell my Gecko just to use it once? I lowered the value it increases each time and so it works. But thats not what it should be... :)

Hope someone can help me.

CST4 : 16bits (endif, then) If counter value equal

A80XXXX0 ZZZZYYYY : 16bits If equal 16bits compares if (XXXX and not(ZZZZ))==YYYY. If yes, codes are executed (else code execution set to false).

A80XXXX1 NM00YYYY : Endif, then 16bits If equal Makes one endif, then 16bits compares if (XXXX and not(ZZZZ))==YYYY. If yes, codes are executed (else code execution set to false).

Here what both codes now look like:
[Time increase]
283ADB6A FDFF0200
A8000000 F1EE0E11 -> just one of my tests (didn't work so deactivated it)
82200000 8047F060
86000000 00000384
84200000 8047F060
82200001 8047F064
86000001 00000384
84200001 8047F064
E0000000 80008000

[Time decrease]
283ADB6A 00000100
A800E0F0 F1F00E10 -> another test (also didn't work, also deactivated)
82200000 8047F060
86000000 FFFFFC7B
84200000 8047F060
82200001 8047F064
86000001 FFFFFC7B
84200001 8047F064
E0000000 80008000

Greetings

Romaap

maybe if you make a counter, so make a code that adds 1 to a geckoregister, and when it is 10 it goes back to 1, and in your time increase, just make a if geckoregisterN is equal to 10, that makes it 10 times slower.

lindtec

Try using this as your second line in each code:

A8000000 FFFC0003

This is a counter, like Romaap suggested it.

Each time you press the button combination, the counter is raised by one.
When the counter reaches the desired number (in this case 3), the code is executed.
In other words, the code is executed 3 times slower, if you keep pressing a button
(normally you have to press the buttion just a split second, to execute it just once).

If it still goes to fast, just raise the counter, like

A8000000 FFFB0004
or
A8000000 FFFA0005

Hope, that helps.

OnkelLes

#41
Thx... Now i got it. :)

I'll test it, but i think thats it.

Greetings

edit: It works. Everything works exactly the way i want it. :) Thanks soooo much.

rafalfaro_18

I want this code work with (-) or (z and -) but i don't know how to do it, please someboady help me!


RMCE01
Mario Kart Wii

[Cycle Through Items]
XXXXXXXX XXXXXXXX
22001510 00000001
04001510 00000001
48000000 809BD118
DE000000 80008180
58010000 00000008
DE000000 80008180
4A100000 0000008C
92210000 00000000
86000000 00000001
94210000 00000000
36000000 00000010
14000004 00000001
30000001 00000005
14000004 00000003
34000001 0000000F
14000004 00000003
34000001 00000012
14000000 00000000
14000004 00000001
E0000000 00000000
YYYYYYYY YYYYYYYY
04001510 00000000
E0000000 80008000

[X Values]
Standard Button Activator

[Y Values]
Same as X's but with A for second digit (ex.

2A341462 00000002)

mdmwii

#43
Quote from: rafalfaro_18 on December 08, 2008, 05:16:08 PM
I want this code work with (-) or (z and -) but i don't know how to do it, please someboady help me!


RMCE01
Mario Kart Wii

[Cycle Through Items]
XXXXXXXX XXXXXXXX
22001510 00000001
04001510 00000001
48000000 809BD118
DE000000 80008180
58010000 00000008
DE000000 80008180
4A100000 0000008C
92210000 00000000
86000000 00000001
94210000 00000000
36000000 00000010
14000004 00000001
30000001 00000005
14000004 00000003
34000001 0000000F
14000004 00000003
34000001 00000012
14000000 00000000
14000004 00000001
E0000000 00000000
YYYYYYYY YYYYYYYY
04001510 00000000
E0000000 80008000

[X Values]
Standard Button Activator

[Y Values]
Same as X's but with A for second digit (ex.

2A341462 00000002)


Try this and let me know if it works, please. I can't test it.



28343e80 FF7e0081 <-- Left D-Pad on GCN controller
a8000008 fdff0200
8600000f 00000001
8000000e 00000001
28343e81 FF7d0082 <-- Right D-Pad on GCN controller
a8000008 fdff0200
8600000f FFFFFFFE
8000000e 00000001
28341847 00000013
8000000f 00000000
28341847 0000ffff
8000000f 00000012
28341847 00000005
8000000e 00000003
28341847 00000010
8000000e 00000003
28341847 00000011
8000000e 00000003
28341847 00000012
8000000e 00000003
28341847 00000000
8000000e 00000001
e0000000 00000000
48000000 809BD118
DE000000 80008180
58010000 00000008
DE000000 80008180
4A100000 0000008C
9421000f 00000000
9421000e 00000004
e0000000 80008000


rafalfaro_18

Quote from: mdmwii on December 09, 2008, 02:18:27 AM
Quote from: rafalfaro_18 on December 08, 2008, 05:16:08 PM
I want this code work with (-) or (z and -) but i don't know how to do it, please someboady help me!


RMCE01
Mario Kart Wii

[Cycle Through Items]
XXXXXXXX XXXXXXXX
22001510 00000001
04001510 00000001
48000000 809BD118
DE000000 80008180
58010000 00000008
DE000000 80008180
4A100000 0000008C
92210000 00000000
86000000 00000001
94210000 00000000
36000000 00000010
14000004 00000001
30000001 00000005
14000004 00000003
34000001 0000000F
14000004 00000003
34000001 00000012
14000000 00000000
14000004 00000001
E0000000 00000000
YYYYYYYY YYYYYYYY
04001510 00000000
E0000000 80008000

[X Values]
Standard Button Activator

[Y Values]
Same as X's but with A for second digit (ex.

2A341462 00000002)


Try this and let me know if it works, please. I can't test it.



28343e80 FF7e0081 <-- Left D-Pad on GCN controller
a8000008 fdff0200
8600000f 00000001
8000000e 00000001
28343e81 FF7d0082 <-- Right D-Pad on GCN controller
a8000008 fdff0200
8600000f FFFFFFFE
8000000e 00000001
28341847 00000013
8000000f 00000000
28341847 0000ffff
8000000f 00000012
28341847 00000005
8000000e 00000003
28341847 00000010
8000000e 00000003
28341847 00000011
8000000e 00000003
28341847 00000012
8000000e 00000003
28341847 00000000
8000000e 00000001
e0000000 00000000
48000000 809BD118
DE000000 80008180
58010000 00000008
DE000000 80008180
4A100000 0000008C
9421000f 00000000
9421000e 00000004
e0000000 80008000



Thanks for the help... And for classic controller a good combination, please...