WiiRd forum

Wii & Gamecube Hacking => WiiRD Remote Debugger => Topic started by: Cory321 on April 10, 2009, 02:30:17 AM

Title: My hacking questions :P
Post by: Cory321 on April 10, 2009, 02:30:17 AM
Hi, i hope this question doesn't sound too stupid :-[

Well, i already know how to hack stats, score (i.e. like the life,number of lives, coins and those things in a game). But i don't know how to do a physical code. I mean, a code involving an object, the camera, the stage, the speed, and such. For example: How do you do a Moon Jump Code? How do you find the values for that. Or how do you do a camera hack? Or even a speed code?

Please tell me how to do those kind of codes. And how they work.

Thanks for your time!  ;)

Title: Re: How to make physical codes?
Post by: Romaap on April 10, 2009, 10:27:38 AM
All the objects have properties, like x coordinates, y coordinates, z coordinates, x speed, y speed, z speed, size and such.

moonjump is easy, just stand on the ground, search for an 32 bit unknown value, then jump, and search for higher in mid air, when you're back search for lower, and so on... that way, you will find the y coordinate
when you've found the address go to the memory viewer and check auto-update, then jump and look if a value that was 00000000 goes higher when you jump, that will be the y speed.
Title: Re: How to make physical codes?
Post by: hetoan2 on April 10, 2009, 06:20:29 PM
You could look into the ASCII and change that up. Sometimes the game will load specific files based off of it. so just change a %d or %s.xxxx to the file you want. Most of the time it will be a number. So instead of loading the normal model, it will always load your chosen model.

A good example is my AC:CF Special Character Modifier.
Title: Re: How to make physical codes?
Post by: Cory321 on April 11, 2009, 10:53:08 PM
Thanks! :) I think i almost understand it.

But isn't there a general way or a Tutorial for these kind of codes?

If not, then could someone explain me his own way to do these codes?

Or at least how to do the camera hacks and speed hacks :-\

Thanks again...
Title: Re: How to make physical codes?
Post by: ssbbdude on April 11, 2009, 11:04:22 PM
speed hacks are quite simple start with an unknown, equal search, then go faster (so search for more than). Then go back normal (less than). And repeat till you find the correct address
Title: Re: How to make physical codes?
Post by: hetoan2 on April 12, 2009, 12:31:47 AM
Just so you know, In Floating points it's kinda weird. If your speed is a floating point then it may be backwards. At a certain point the Floating point value will be less in hex than another even though it's faster.

If you don't get anything using more or less than for faster and slower just invert them and hope you get it.
Title: Re: How to make physical codes?
Post by: Cory321 on April 13, 2009, 07:27:57 PM
So, the Camera Hacks are the same process as the others to find the values?

Or is it different? :confused:
Title: Re: How to make physical codes?
Post by: hetoan2 on April 13, 2009, 08:33:30 PM
I've never made a camera hack but i assume so. I tried to in ACCF but failed. >_<
Title: Re: How to make physical codes?
Post by: Romaap on April 13, 2009, 09:19:53 PM
I'm not sure but I thingk the camera in 3D games have x,y and z coordinates for  where the camera is and x,y and z coordinates for its focuspoint, those values are floating point.
Title: Re: How to make physical codes?
Post by: Cory321 on April 15, 2009, 05:41:54 PM
How can I make a Size Modifier Code with a game that hasn't that freature by default? (For example: How can I make a Size Modifier Code for Link in Zelda Twilight Princess? Because he never increases his size normally in the game...)

Thanks :p
Title: Re: How to make physical codes?
Post by: Romaap on April 15, 2009, 06:47:49 PM
I would first search for some other data from that character.
then in memory viewer go up some pages and search for "3F8000003F8000003F800000".
because all the data for a character/object is most likely at the same place in memory, and the size is almost always 3F800000 (1 in floating point). so "3F8000003F8000003F800000" is the x,y and z size.
if you've found it, just poke one of the 3 addresses to eg: 40000000 (2 in floating point)

i'm sorry if you don't understand... its hard to explain >_<
Title: Re: How to make physical codes?
Post by: Cory321 on July 08, 2009, 07:51:10 PM
Hi again ;)

I need some help, but I won't make a new thread, i think that this one is enough for writing my questions :P

Here it goes:

I found the X, Y and Z value in a game, and I want to make a Teleport code (You know, for example, Press A + B to save coordinates, and Press 2 + A to teleport!). I have already made some codes that teleport you to a specific place, but i want to make one that allows you save the coords. and then teleport!!  ;D

Thanks :smileyface:
Title: Re: How to make physical codes?
Post by: James0x57 on July 09, 2009, 01:29:54 AM
Sure thing man. I love codes like that.

Here's how:
First find some open memory that doesn't get written over to save the coords.
Let's say you found free memory at 80003A00 and your X, Z, and Y coords at 80C24004, 8, C respectively.
Coords are almost always 32 bits (4 bytes) and almost always found right next to each other like that.


28______ xxxxxxxx //buttons to press when saving coords
80000000 80C24004 //CT4, CST0 : Set Gecko Register to (http://"http://wiird.l0nk.org/codetypes.html#c40")
8A000C0F 00003A00 //CT4, CST5 : Memory Copy 1: copy 000C (4*3=12=0xC) bytes from [r0] to ba+00003A00 (ba = 80000000) (http://"http://wiird.l0nk.org/codetypes.html#c45")
28_____1 yyyyyyyy //(endif) buttons to press when teleporting (restoring coords)
80000000 80003A00 //sets r0 to our free memory (where the coords are saved)
8A000C0F 00C24004 //copies our saved ones to the actual location (teleports)
E2000001 80008000 //endif

You should do a check to make sure that they've actually saved coords before restoring them (or just make a good note ;)).

Good luck, have fun!
Title: Re: How to make physical codes?
Post by: Cory321 on July 09, 2009, 08:31:33 PM
Hey! Thx for helping.

I tried to do it, but it doesn't work completely well..

Here are the Values for te Coords:

---------

---------

---------

And I found free memory here:

---------


How would the code be?


EDIT: In the code I made, the coordinates saved in the free memory, but when I want to teleport, the original coord. values just doesn't change.

EDIT 2:

I got the code to work!!! :D But i didn't make it exactly as you said, can you tell me if there is any difference in the way I made it and the way you told me???????

-------- --------
-------- --------
-------- --------
-------- --------
-------- --------
-------- --------
-------- --------
-------- --------

Thanks

I EDITED IT BECAUSE I DONT WANNA RELEASE THE CODES YET ;)
Title: Re: How to make physical codes?
Post by: James0x57 on July 09, 2009, 10:48:16 PM
When I said "28_____1" you probably put "281B6361" instead of "281B6363". If you did put 3 though, they're the same code. ;)

Good work though! Should be a fun code. :)
Title: Re: How to make physical codes?
Post by: Cory321 on July 10, 2009, 02:19:35 AM
Yes I did that xD Thank you

I also used the Memory Copy 2 and added it another Teleport Save!

I got another crazy idea LOL:

I want to do an Airbreak code ( It's like a ''Go through anything'' code, incluiding the floor, and its kinda moonjump, cuz you dont fall or anything, you are like static in the air, and can go anywhere through everything!) in the same game (CoD: WaW)

Anyone has an idea on how to do it? (how to find the values and make the code)

I think the hack is made with the coordinates values, but i'm not sure. And if so, then how could I make it? (Like increase the coordinates slowly (or fast) by pressing a button)

Oh and another thing more, is there possible to make Button-Activated codes with the Stick in the Nunchuk??


The airbreak code i want to make for cod waw is like this hack:

http://www.youtube.com/watch?v=Sa6NuQOIvQo (http://www.youtube.com/watch?v=Sa6NuQOIvQo)

Did u see? he can go trough anything and get static.

So, any suggestions/ideas?
Title: Re: How to make physical codes?
Post by: James0x57 on July 10, 2009, 09:18:19 AM
That's a bit more complicated, you'd have to find the values for the joystick and translate it into changes for the x and z coords. Making a slightly different code to walk in air might be as simple as only increasing the Y coord.
Like, hold A to rise, 1 to drop, 2 to return to ground. Could be done but I'll let you figure out the logic on that one.
Using load/save gecko register and gecko register operations (add and subtract) this code can be done with just the codetypes available.
Title: Re: How to make physical codes?
Post by: Cory321 on August 01, 2009, 08:15:23 AM
Thx for all. But i got a problem xD

I can't find the subtract operation in gecko registers :(

These are the ones in the Codetype documment:

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)

Where's the subtract operation?

Thanks again :P
Title: Re: How to make physical codes?
Post by: Full Metal Kirby on August 01, 2009, 09:42:49 AM
Quote from: Cory321 on August 01, 2009, 08:15:23 AM
Thx for all. But i got a problem xD

I can't find the subtract operation in gecko registers :(

These are the ones in the Codetype documment:

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)

Where's the subtract operation?

Thanks again :P

Use Add with 0xFFFF values or whatever, works like subtracting 1 from a 16-bit value in my examples case.
Title: Re: How to make physical codes?
Post by: Cory321 on August 02, 2009, 06:42:25 AM
Sorry i think i didn't understand  :(

Could you explain it more please?

And if what i thought was right, I tested what u said putting: 86010000 0001FFFF in a Direct Value operation and didn't work... But i think that i got the wrong idea :-[

Oh and another question, how do i keep the values that I'm changing (the coords in this case, with gecko operations) blocked? Becuase when I go in the air, I fall down again, so I want to keep there and don't fall, I need to make the coordinates values to not be changed when I'm changing them with the code I'm trying to make!

Please help!
Title: Re: How to make physical codes?
Post by: Romaap on August 02, 2009, 10:05:44 AM
if you want to subtract 1 on a 8bit value you just add 0xFF
if you want to subtract 1 on a 16bit value you just add 0xFFFF
if you want to subtract 1 on a 32bit value you just add 0xFFFFFFFF

you can make the values stop changing by noping the opcode :) a.k.a. ASM :P
Title: Re: How to make physical codes?
Post by: Cory321 on August 02, 2009, 10:33:06 PM
Quote from: Romaap on August 02, 2009, 10:05:44 AM
if you want to subtract 1 on a 8bit value you just add 0xFF
if you want to subtract 1 on a 16bit value you just add 0xFFFF
if you want to subtract 1 on a 32bit value you just add 0xFFFFFFFF

Thanks!! ;D

Quote from: Romaap on August 02, 2009, 10:05:44 AMyou can make the values stop changing by noping the opcode :) a.k.a. ASM :P

How?  :confused:
Title: Re: How to make physical codes?
Post by: Romaap on August 02, 2009, 10:49:30 PM
Quote from: Cory321 on August 02, 2009, 10:33:06 PM
Quote from: Romaap on August 02, 2009, 10:05:44 AMyou can make the values stop changing by noping the opcode :) a.k.a. ASM :P

How?  :confused:
You can watch this video tutorial (http://wiird.l0nk.org/forum/index.php/topic,2663.0.html) or read this written tutorial (http://wiird.l0nk.org/forum/index.php/topic,3473.0.html).
Title: Re: How to make physical codes?
Post by: Cory321 on August 05, 2009, 04:58:36 PM
Thanks a lot Romaap! I have some simple questions left:

How do I subtract 1 in floating point (With the gecko register/direct value operations)?

Thanks :D

Oh and by the way:

Quote from: Romaap on August 02, 2009, 10:05:44 AM
if you want to subtract 1 on a 8bit value you just add 0xFF
if you want to subtract 1 on a 16bit value you just add 0xFFFF
if you want to subtract 1 on a 32bit value you just add 0xFFFFFFFF

Then how can I subtract 2 or 7, not just 1?