adr990
Newbie
Karma: 10
Posts: 37
|
|
« Reply #15 on: May 31, 2010, 09:37:29 PM » |
|
Thanks Romaap, I did forgot about this a little. Now I might just start making real cheats again, yay. Adr990
|
|
|
Logged
|
~I'm not responsible for any damage any of my cheats will be caused to you or your console~ (In fact nobody is, but you.)
|
|
|
zfan121
Jr. Member
Karma: 1
Posts: 95
|
|
« Reply #16 on: June 05, 2010, 06:09:33 PM » |
|
Hmm okay, I was thinking of maybe getting into this hacking thing, since it seems to make games fun and I have some very minor experiance with C+ and the visual basic programming.(I used it to mess around with a game maker program) I would like links to like some super simple tutorials if someone would be kind enough to link me to some. I also have like all freetime, so I got plenty of time for requests XD
If I wanted to make simple one lined codes, how should I go about doing so to make them work as if they were like a six lined code. I know the more rows of code the more complex the action, but still it's a good spot to start. And what about choosing what the hell I want the cheat to do. For example if I wanted to make mario look like princess peach, would I just simply type that in and the code would do so after I've figured said code out :s
|
|
|
Logged
|
|
|
|
superman
Hacker
Newbie
Karma: 1
Posts: 18
will be iso modding after my birthday
|
|
« Reply #17 on: December 20, 2010, 07:19:42 AM » |
|
Spoiler for Hiden: OK, i'm a bit bored so i'll try to show you guys how to make some simple ASM codes. Introduction to ASMFirst you need to know, what is assembly? Well, assembly is a low-level programming language. (languages like C and Java are high-level programming languages) An example of an assembly instruction: li rA, valueWhat this does is, it tells the Wii to load value to rA. (li means 'Load immediate') But what is rA? rA is a register, the Wii has 31 registers. A register is sort of a temporary space to store values, like RAM but the registers are easier to access by the CPU. So if we have li r16, 0x14 then the Wii will write 0x14 to r16. Another example is 'Add immidiate': addi rD, rA, value What this does is add value to the value at rA and store it in rD. So if we have addi r16, r20, 0x3 and the value of r20 is 0x2 then 0x5 is stored to r16. (This is the same as 'Subtract immediate': subi rD, rA, value) rD is in most examples the destination register, the destination register is almost always the first register. The other registers are not altered (in this example r20 stays 0x2).
Another example is 'Subtract': sub rD, rA, rB This one subtracts the value in rB from rA and store it in rD (and again, only rD is altered). So if we have sub r16, r20, r21 and the value of r20 is 0x9 and r21 is 0x3 then 0x6 will be stored to r16. (This is the same as 'Add': add rD, rA, rB)
The last example is 'Store word', which will store the value in a register to the RAM: stw rS, d(rA) This will store the value in rS to the address in rA + d. So if we have stw r20, 100(r0) and the value of r20 is 0xA and r0 is 0x80605040 then 0xA will be stored to 0x806050A4 (0x80605040 + 100 (0x64)) If you want to load a value from an address then you use 'Load word and Zero': lwz rD, d(rA) which works like stw but the opposite, the value from the address in rA + d will be stored to rD.
This concludes the introduction to ASM, I hope you understand it
First you'll need the address of the thing you want to hack, like health. (If you dont know this basic stuff I recommend you to read/watch some other tutorials first) I use Klonoa for example in this tutorial.
Health hack (using nop) So, if you found the address of the health you right click it and press ->Breakpoint.
Go to the breakpoint tab and click the write button and click Set Breakpoint. Now get hit in the game, the game will freeze. WiiRd will show some numbers, the numbers in the top box are the registers. The 2nd box shows the ASM instructions that were about to be executed. Now go to the disassembler tab and you will see something that looks like the second box in the breakpoint tab. In this tab you can edit the ASM instructions. Now i'll introduce another ASM instruction: nop, wich does... nothing It tells the CPU to just wait one cycle. So... we have an ASM instruction that writes the health to the health address, and we know how to change instructions... and we know an instruction that does nothing... Lets replace some instructions Click on the box wich has the stw intruction and replace it with nop, and click update. Now click run and try to get hit in the game no damage So, now to make it a code: right click on the instruction and click ->gct codes Add a new code and replace the first 80 with 04 click add code. Simple ASM RAM WritesSoon?Money is worth twice its valuesoon?Please give some feedback If you dont understand something, or have something to add please tell me ok umm how would you make a inf health say for world at war wii and say you want it host only and only works for you. And how would i make a inf ammo host only that only works for you and not all players?
|
|
|
Logged
|
|
|
|
doomkaiber001
Hacker In Training
Full Member
Karma: 1
Posts: 163
One day I'll be a hacker! Using ASM too!
|
|
« Reply #18 on: December 21, 2010, 09:54:30 AM » |
|
I have a little experience in ASM, so maybe I could help? lis r5, 0x80E4 ori r5, r5, 0x6BC7 lwz r29, 0(r5) cmpwi r29, 200 ble LowAmmo bgt HighAmmo LowAmmo: addi r29, r29, 100 cmpwi r29, 200 blt LowAmmo b End HighAmmo: subi r29, r29, 100 cmpwi r29, 100 bge HighAmmo End: stw r29, 0(r5) If you could make something like that? I don't play WaW so I can't really be of much help...
|
|
|
Logged
|
|
|
|
superman
Hacker
Newbie
Karma: 1
Posts: 18
will be iso modding after my birthday
|
|
« Reply #19 on: December 21, 2010, 04:05:55 PM » |
|
I have a little experience in ASM, so maybe I could help? lis r5, 0x80E4 ori r5, r5, 0x6BC7 lwz r29, 0(r5) cmpwi r29, 200 ble LowAmmo bgt HighAmmo LowAmmo: addi r29, r29, 100 cmpwi r29, 200 blt LowAmmo b End HighAmmo: subi r29, r29, 100 cmpwi r29, 100 bge HighAmmo End: stw r29, 0(r5) If you could make something like that? I don't play WaW so I can't really be of much help... ya i get it. is there a program to turn that into a gecko format
|
|
|
Logged
|
|
|
|
Bully@Wiiplaza
Hacker
Legendary Member
Karma: 93
Posts: 1853
|
|
« Reply #20 on: January 01, 2011, 03:16:25 PM » |
|
@superman: ASM WiiRD Tool or PyiiASMH
|
|
|
Logged
|
|
|
|
-LeetGamer-
Elite PSP Coder
Newbie
Karma: 0
Posts: 14
|
|
« Reply #21 on: January 23, 2011, 05:17:28 AM » |
|
Thanks for posting this, I code in assembly for the PSP and I was looking for a tutorial on Wii assembly. This looks exactly like the MIPS assembly language, is it MIPS? If so, when I get a Wii, most of my favorite game's online modes will be turned into dust. Don't mean to brag though, but look at what I've done to some PSP games: http://www.youtube.com/user/LeetGamer4L#g/c/8921CD6BF7555D93 ^__^ EDIT: Some of these might be a bit old, but I'll still reply: Thanks Romaap! THIS NEEDS TO BE MOVED TO THE COLLECTIVE!! I hope you update it, because I want to know how to do the double money codes! To do double money try this: li r0 [Upper 16bits of "Flag" address.] lwz r1 [Lower 16bits of "Flag" address.](r0) bgt r1 [To the end of the code. Not sure how to do this for Wii yet.] li r2 [Upper 16bits of the "Money" address.] lwz r3 [Lower 16bits of the "Money" address.](r2) add r3 r3 r3 stw r3 [Lower 16bits of the "Moeny" address.](r2) li r1 1 stw r1 [Lower 16bits of "Flag" address.](r0) I use a flag address to check for a value. Make sure that this value is zero (ASM of nop) by default, and it isn't changed by anything besides this code. After the code has ran one time I store 1 to the value of the flag address, the bgt command will then branch to the end of the code the next time the routine is ran. So it only doubles one time, and doesn't continue to double all the time. The rest of the code is just loading the value at the memory address for the money, then adding it to itself (doubling it) and then storing it back. Note: I'm new to Wii ASM so I'm not 100% sure about that, if you see that I made an error please correct me. Spoiler for Hiden: OK, i'm a bit bored so i'll try to show you guys how to make some simple ASM codes. Introduction to ASMFirst you need to know, what is assembly? Well, assembly is a low-level programming language. (languages like C and Java are high-level programming languages) An example of an assembly instruction: li rA, valueWhat this does is, it tells the Wii to load value to rA. (li means 'Load immediate') But what is rA? rA is a register, the Wii has 31 registers. A register is sort of a temporary space to store values, like RAM but the registers are easier to access by the CPU. So if we have li r16, 0x14 then the Wii will write 0x14 to r16. Another example is 'Add immidiate': addi rD, rA, value What this does is add value to the value at rA and store it in rD. So if we have addi r16, r20, 0x3 and the value of r20 is 0x2 then 0x5 is stored to r16. (This is the same as 'Subtract immediate': subi rD, rA, value) rD is in most examples the destination register, the destination register is almost always the first register. The other registers are not altered (in this example r20 stays 0x2).
Another example is 'Subtract': sub rD, rA, rB This one subtracts the value in rB from rA and store it in rD (and again, only rD is altered). So if we have sub r16, r20, r21 and the value of r20 is 0x9 and r21 is 0x3 then 0x6 will be stored to r16. (This is the same as 'Add': add rD, rA, rB)
The last example is 'Store word', which will store the value in a register to the RAM: stw rS, d(rA) This will store the value in rS to the address in rA + d. So if we have stw r20, 100(r0) and the value of r20 is 0xA and r0 is 0x80605040 then 0xA will be stored to 0x806050A4 (0x80605040 + 100 (0x64)) If you want to load a value from an address then you use 'Load word and Zero': lwz rD, d(rA) which works like stw but the opposite, the value from the address in rA + d will be stored to rD.
This concludes the introduction to ASM, I hope you understand it
First you'll need the address of the thing you want to hack, like health. (If you dont know this basic stuff I recommend you to read/watch some other tutorials first) I use Klonoa for example in this tutorial.
Health hack (using nop) So, if you found the address of the health you right click it and press ->Breakpoint.
Go to the breakpoint tab and click the write button and click Set Breakpoint. Now get hit in the game, the game will freeze. WiiRd will show some numbers, the numbers in the top box are the registers. The 2nd box shows the ASM instructions that were about to be executed. Now go to the disassembler tab and you will see something that looks like the second box in the breakpoint tab. In this tab you can edit the ASM instructions. Now i'll introduce another ASM instruction: nop, wich does... nothing It tells the CPU to just wait one cycle. So... we have an ASM instruction that writes the health to the health address, and we know how to change instructions... and we know an instruction that does nothing... Lets replace some instructions Click on the box wich has the stw intruction and replace it with nop, and click update. Now click run and try to get hit in the game no damage So, now to make it a code: right click on the instruction and click ->gct codes Add a new code and replace the first 80 with 04 click add code. Simple ASM RAM WritesSoon?Money is worth twice its valuesoon?Please give some feedback If you dont understand something, or have something to add please tell me ok umm how would you make a inf health say for world at war wii and say you want it host only and only works for you. And how would i make a inf ammo host only that only works for you and not all players? Not sure why Wii games are programed to be able to access other people's health. Like a code that gives everyone infinite health (That is what I think you are talking about?) If this is true then I can make codes where everyone dies instantly like I did here on the PSP: http://www.youtube.com/watch?v=Q-P4fAFLv3Ihttp://www.youtube.com/watch?v=T5n_2qO4sT0http://www.youtube.com/watch?v=jp10NuQnavIhttp://www.youtube.com/watch?v=61FJo_ETjDUBut those don't actually just store 0 to an enemy value, they use function calls in ASM (If you want to know more PM me)
|
|
« Last Edit: January 23, 2011, 07:48:26 AM by -LeetGamer- »
|
Logged
|
|
|
|
dcx2
Computer Engineer
Moderator
Legendary Member
Karma: 165
Posts: 3468
|
|
« Reply #22 on: January 23, 2011, 04:30:07 PM » |
|
FYI, a significant portion of this community has a hatred for online hacks that is best described as "rabid". In addition, many online codes are forbidden on the forum and in the GeckoCodes database. Please read the following thread to ensure you don't trip over the rules. http://wiird.l0nk.org/forum/index.php/topic,5664.0.htmlBTW, thanks for outing yourself as a griefer. One less person for me to help.
|
|
|
Logged
|
|
|
|
-LeetGamer-
Elite PSP Coder
Newbie
Karma: 0
Posts: 14
|
|
« Reply #23 on: January 23, 2011, 08:57:44 PM » |
|
FYI, a significant portion of this community has a hatred for online hacks that is best described as "rabid". In addition, many online codes are forbidden on the forum and in the GeckoCodes database. Please read the following thread to ensure you don't trip over the rules. http://wiird.l0nk.org/forum/index.php/topic,5664.0.htmlBTW, thanks for outing yourself as a griefer. One less person for me to help. This community is actually about preserving online games? lol awesome, no one on the PSP scene cares about the safety of online games, so I just destroyed them . I guess I can try to not release huge game killing ones, but I'll make some videos of them instead ^_^. I'll read over the rules a few times, make sure I know them. And I'm not a griefer, I just like to code ¬_¬.
|
|
|
Logged
|
|
|
|
Deathwolf
Hacker
Legendary Member
Karma: 62
Posts: 1795
|
|
« Reply #24 on: January 23, 2011, 09:12:34 PM » |
|
FYI, a significant portion of this community has a hatred for online hacks that is best described as "rabid". In addition, many online codes are forbidden on the forum and in the GeckoCodes database. Please read the following thread to ensure you don't trip over the rules. http://wiird.l0nk.org/forum/index.php/topic,5664.0.htmlBTW, thanks for outing yourself as a griefer. One less person for me to help. This community is actually about preserving online games? lol awesome, no one on the PSP scene cares about the safety of online games, so I just destroyed them . I guess I can try to not release huge game killing ones, but I'll make some videos of them instead ^_^. I'll read over the rules a few times, make sure I know them. And I'm not a griefer, I just like to code ¬_¬. I'm sure you would be a nice online hacker
|
|
|
Logged
|
lolz
|
|
|
Sh0tGuN2197
Hacker
Newbie
Karma: 0
Posts: 34
|
|
« Reply #25 on: February 25, 2011, 10:53:22 PM » |
|
Thanks Rommap Very helpful. In some games though, the game freezes right when the "set breakpoint" button is pressed. I know it is the right address too =\ any ideas?
|
|
|
Logged
|
|
|
|
Deathwolf
Hacker
Legendary Member
Karma: 62
Posts: 1795
|
|
« Reply #26 on: February 25, 2011, 10:54:20 PM » |
|
Click on RUN
|
|
|
Logged
|
lolz
|
|
|
Sh0tGuN2197
Hacker
Newbie
Karma: 0
Posts: 34
|
|
« Reply #27 on: February 25, 2011, 10:55:59 PM » |
|
I do that... But then it doesn't freeze to get the addresses... Or the info... Whatever you want to call it.
|
|
|
Logged
|
|
|
|
Deathwolf
Hacker
Legendary Member
Karma: 62
Posts: 1795
|
|
« Reply #28 on: February 25, 2011, 11:00:25 PM » |
|
Click after the freez RUN
|
|
|
Logged
|
lolz
|
|
|
dcx2
Computer Engineer
Moderator
Legendary Member
Karma: 165
Posts: 3468
|
|
« Reply #29 on: February 26, 2011, 12:36:19 AM » |
|
When you hit a breakpoint, the game will freeze. This is normal. A breakpoint tells the CPU "Stop executing instructions and wait while I take a look at things". You can press Step to have the CPU execute a single instruction and then go back to waiting. You can press Run to have the CPU continue executing instructions normally without waiting.
|
|
|
Logged
|
|
|
|
|