Hacking Post your WiiU cheat codes here!

Megabyte918

Member
Newcomer
Joined
Jun 1, 2017
Messages
22
Trophies
0
Age
23
XP
54
Country
United States
Does anyone by chance know how to compare two values from two different addresses using a conditional?
For example I load the float located at address XXXXXXXX, then later want to see if the float inside of address YYYYYYYY is equal to the float inside of XXXXXXXX.

12000000 XXXXXXXX
03020000 YYYYYYYY
???????? 00000000

What would I put in for ???????? that would compare YYYYYYYY it to the float I just loaded from address XXXXXXXX? (Sorry if my question is a bit confusing)
 
Last edited by Megabyte918,

skoolzout1

Well-Known Member
Member
Joined
Mar 16, 2017
Messages
538
Trophies
0
Location
The Maple Syrup Aisle
XP
953
Country
Canada
Does anyone by chance know how to compare two values from two different addresses using a conditional?
For example I load the float located at address XXXXXXXX, then later want to see if the float inside of address YYYYYYYY is equal to the float inside of XXXXXXXX.

12000000 XXXXXXXX
03020000 YYYYYYYY
???????? 00000000

What would I put in for ???????? that would compare YYYYYYYY it to the float I just loaded from address XXXXXXXX? (Sorry if my question is a bit confusing)

you'd have to do it in raw assembly i believe if youre comparing two values pulled from addresses.

it would look something like this.

xor r1,r1,r1
xor r2,r2,r2 #this clears r1 and r2

lis r1, 0xXXXX #load the Higher 4 digits of XXXXXXXX
ori r1, r1, 0xXXXX #load the Lower 4 digits of XXXXXXXX
lis r2, 0xYYYY #do the same.. but put YYYYYYYYY into R2
ori r2, r2, 0xYYYY

lwz r1, 0(r1) #Take the value inside of the address XXXXXXXX and put it in R1
lwz r2, 0(r2) #Take the value inside the address of YYYYYYYY and put it in R2

cmpw r1, r2 #compare full 32 bit word of r1 to 32 bit word in r2
beq- DoStuff # if R1 = R2, jump down to the "DoStuff" Label
#if R1 does NOT = R2, code entered here willl be executed
b AfterDoStuff #jump to the code after the DoStuff, since you do not want to execute the "DoStuff" code unless the Cmpw is true
DoStuff: IfEqualDoThis

AfterDoStuff: Other stuff to do


when writing assembly, use the Assembler Utility under the miscellaneous tab in Jgecko to put your assembly into, then copy the bytes when finished and paste them into an "Execute ASM" code in Jgecko.

Feel free to ask for clarification if you need.
 
Last edited by skoolzout1,

Megabyte918

Member
Newcomer
Joined
Jun 1, 2017
Messages
22
Trophies
0
Age
23
XP
54
Country
United States
you'd have to do it in raw assembly i believe if youre comparing two values pulled from addresses.

it would look something like this.

xor r1,r1,r1
xor r2,r2,r2 #this clears r1 and r2

lis r1, 0xXXXX #load the Higher 4 digits of XXXXXXXX
ori r1, r1, 0xXXXX #load the Lower 4 digits of XXXXXXXX
lis r2, 0xYYYY #do the same.. but put YYYYYYYYY into R2
ori r2, r2, 0xYYYY

lwz r1, 0(r1) #Take the value inside of the address XXXXXXXX and put it in R1
lwz r2, 0(r2) #Take the value inside the address of YYYYYYYY and put it in R2

cmpw r1, r2 #compare full 32 bit word of r1 to 32 bit word in r2
beq- DoStuff # if R1 = R2, jump down to the "DoStuff" Label
#if R1 does NOT = R2, code entered here willl be executed
b AfterDoStuff #jump to the code after the DoStuff, since you do not want to execute the "DoStuff" code unless the Cmpw is true
DoStuff: IfEqualDoThis

AfterDoStuff: Other stuff to do


when writing assembly, use the Assembler Utility under the miscellaneous tab in Jgecko to put your assembly into, then copy the bytes when finished and paste them into an "Execute ASM" code in Jgecko.

Feel free to ask for clarification if you need.
Thanks for explaining :)
Now all I need to do is learn assembly lol, where would you recommend is the best place to learn?
 

skoolzout1

Well-Known Member
Member
Joined
Mar 16, 2017
Messages
538
Trophies
0
Location
The Maple Syrup Aisle
XP
953
Country
Canada
Thanks for explaining :)
Now all I need to do is learn assembly lol, where would you recommend is the best place to learn?
I won't lie to you.. It's not fun trying to learn assembly the first time around. Since it's very uncommon to want to use and therefore it's hard to find tutorials for it sometimes. I would recommend practising x86 assembly on Windows first and using cheat engine because there's a great tutorial playlist on cheat engine and writing assembly scripts in x86 that you can watch here:

youtube.com/playlist?list=PLNffuWEygffbbT9Vz-Y1NXQxv2m6mrmHr

If you know how to use cheat engine already a little bit you can skip the first few episodes. But he shows some awesome techniques that are great to use over all for any form of hacking.

I pretty much learned 90% of what I know from practising on cheat engine using these tutorials.

Then once you understand the assembly in x86 enough to know what certain things do. Then you can start learning PPC for the Wii u. Which will just be different syntax.

And if you have questions about anything I'm more then happy to try and answer questions if I can :P I'm still learning myself.

There aren't really many if not any tutorials on PPC so that's why I recommend starting on x86 first if you have the time
 
Last edited by skoolzout1,
  • Like
Reactions: Magnus Hydra

skoolzout1

Well-Known Member
Member
Joined
Mar 16, 2017
Messages
538
Trophies
0
Location
The Maple Syrup Aisle
XP
953
Country
Canada
To anyone that cares, i updated my pointer follower on github to now be able to check a text file full of pointers and be able to check if the pointers are valid or not.

i created a thread and explained a bit more about what it can do and the "features" it has.

Here: https://gbatemp.net/threads/hex-file-pointer-checker-and-follower.475000/

The program itself can be downloaded from github from the link in my signature.

essentially it can be really useful for checking tonnes of pointers, even across other dumps to see which ones stay consistent and valid.

it is a MUCH faster and more efficient way to check pointers than throwing 10 dumps into Bully's pointer searcher and checking which pointers work on all 10 of those dumps. This is because Bully's pointer searcher is looking for pointers every single time, once you've found a list of pointers you can just start checking which pointers stay working later on, and you can reduce your list of working pointers after that.

I did one search using bully's pointer searcher on a full game dump of Botw, in order to obtain like 5000 pointers for a certain address, as a test.
then i tested all 5000 pointers using my program on a different full game dump to see which pointers worked on that dump. The result was 596, which was the same result as Bully's pointer searcher got when putting both of those full game dumps in and searcher from scratch for pointers.

My point is, avoid using Bully's pointer searcher if you're only trying to check which pointers still work on a different dump. You'll save tonnes of RAM and your computer would thank you if you could.

:3
 

Jackson Dunning

Member
Newcomer
Joined
Jul 8, 2016
Messages
5
Trophies
0
Age
20
XP
71
Country
United States
@PandaOnSmack remember in an old version of the botw trainer v2.7 when you could set the amount of relic uses can you bring that back please or send me the codes for jgecko u to change it I will attach a screenshot
 

Attachments

  • Picture1.png
    Picture1.png
    74 KB · Views: 197

0100100001001001

Well-Known Member
Member
Joined
Mar 11, 2017
Messages
124
Trophies
0
Age
42
XP
121
Country
United States
Whew! Finally back, my motherboard had leaking caps and I had to replace the caps. Anyhow, a few pages back there was a large lists of request for BOTW, but a few I don't remember seeing were.

1.) Bomb area multiplier
2.) Bomb damage multiplier
3.) magnesis works on everything. ( esp guardians )
4.) magnesis works on items your standing on
 

skoolzout1

Well-Known Member
Member
Joined
Mar 16, 2017
Messages
538
Trophies
0
Location
The Maple Syrup Aisle
XP
953
Country
Canada
Whew! Finally back, my motherboard had leaking caps and I had to replace the caps. Anyhow, a few pages back there was a large lists of request for BOTW, but a few I don't remember seeing were.

1.) Bomb area multiplier
2.) Bomb damage multiplier
3.) magnesis works on everything. ( esp guardians )
4.) magnesis works on items your standing on


1.) This could be found by searching for changes in the 43800000 area of the game after buying the bomb upgrade. But since i already upgraded, ill never be able to find it.
2.) You could probably just use the Damage Multiplier code i made, its in the Trainer too. as far as finding the damage of the bombs individually... That'd be really hard to find since it never changes or does anything that could help you search for it.
3.) I managed to make Any Item "Appear" to be able to be magnesis'd, so basically i could make any item light up Red/Yellow just like when you are targeting a normal object to Magnesis, but it doesnt actually allow you to pick it up. Maybe someday ill get lucky and find something, but i searched pretty extensively and that was the best i was able to do that day.
4.) This might require Breakpoints. Nothing about the Object youre standing on's properties seem to change regardless of whether you're standing on the object or not. My guess is, it determines whether link is standing on the object the instant that the Tether makes contact with the object.

Ive been quite busy with school for a while now, (less so now but still fairly busy) so i haven't been able to dedicate too much time to this game. But when i do have time im usually working on finding cross update pointers so that ill never have to update my codes again even after future updates.

Ive had to find a lot of pointers by hand so far since i have no way of running a pointer scan for pointers larger than 2 stages, but as of now i really only need to find 2 or 3 more pointers and i should be done.

I need 1 to point to Link's coordinates, 1 to point to the Weather/HUD area of memory and a couple to deal with Horses and stuff.

It's a slow process but it'll be worth it in the end.
 

TheWord21

Well-Known Member
Member
Joined
Jun 8, 2014
Messages
811
Trophies
0
Age
30
XP
398
Country
United States
Been a long time, @skoolzout1... but the pointers for the Revali's Gale/Urbosa's Rage/Daruk's Protection quantities are kinda outdated. I have a new pointer that just might work for Daruk's Protection.

[[0x41F44F70] + 0x10C] + 0x3C8
 

skoolzout1

Well-Known Member
Member
Joined
Mar 16, 2017
Messages
538
Trophies
0
Location
The Maple Syrup Aisle
XP
953
Country
Canada
Been a long time, @skoolzout1... but the pointers for the Revali's Gale/Urbosa's Rage/Daruk's Protection quantities are kinda outdated. I have a new pointer that just might work for Daruk's Protection.

[[0x41F44F70] + 0x10C] + 0x3C8
Yeah I never bothered to update them since I made codes to refresh all the champion abilities instantly when they run out. So they are basically infinite.

I've also made Version Free pointers for many of my codes including those ones, so hopefully I'll never need to update many of my pointers ever again.


Also, you were always keen on wanting to fly around and get near the Divine beasts right? Well I found a way to remove cutscene based triggers a long time ago in order to allow you to get near the Beasts if you want. You still can't teleport into their real bodies yet unfortunately.

I called it something like "spoof coordinates" on my pastebin if you wanna try it out.

Since it disables cutscene based triggers when the code is active, you can also walk into the final boss fight area and the cutscene won't load so you can explore.

You can also jump into Voids off the map and it won't warp you back out. It's kinda cool I thought but yeah
 
  • Like
Reactions: TheWord21

TheWord21

Well-Known Member
Member
Joined
Jun 8, 2014
Messages
811
Trophies
0
Age
30
XP
398
Country
United States
Yeah I never bothered to update them since I made codes to refresh all the champion abilities instantly when they run out. So they are basically infinite.

I've also made Version Free pointers for many of my codes including those ones, so hopefully I'll never need to update many of my pointers ever again.


Also, you were always keen on wanting to fly around and get near the Divine beasts right? Well I found a way to remove cutscene based triggers a long time ago in order to allow you to get near the Beasts if you want. You still can't teleport into their real bodies yet unfortunately.

I called it something like "spoof coordinates" on my pastebin if you wanna try it out.

Since it disables cutscene based triggers when the code is active, you can also walk into the final boss fight area and the cutscene won't load so you can explore.

You can also jump into Voids off the map and it won't warp you back out. It's kinda cool I thought but yeah

Thanks for the info... but, I was also sorta thinking on going back inside of the Dungeon once it was cleared. Is that possible to do with your Spoof Coordinates, or no? Either way, I'll give it a whirl.
 

skoolzout1

Well-Known Member
Member
Joined
Mar 16, 2017
Messages
538
Trophies
0
Location
The Maple Syrup Aisle
XP
953
Country
Canada
Thanks for the info... but, I was also sorta thinking on going back inside of the Dungeon once it was cleared. Is that possible to do with your Spoof Coordinates, or no? Either way, I'll give it a whirl.
No you cannot go back inside the dungeon sadly. You can just go near them. Make sure you grab the correct code for your version of the game and I think the instructions for it are in the 1.1.2 section since thats where I first made it.

if you need help let me know.
 

0100100001001001

Well-Known Member
Member
Joined
Mar 11, 2017
Messages
124
Trophies
0
Age
42
XP
121
Country
United States
1.) This could be found by searching for changes in the 43800000 area of the game after buying the bomb upgrade. But since i already upgraded, ill never be able to find it.
.

I have multiple savegames, so if I load one from before the upgrade I may be able to find something, but I'm totally clueless as to what I need to search for, and I know pointers will be needed also, and so I would be very lost. Oh well, no biggie.
 

skoolzout1

Well-Known Member
Member
Joined
Mar 16, 2017
Messages
538
Trophies
0
Location
The Maple Syrup Aisle
XP
953
Country
Canada
I have multiple savegames, so if I load one from before the upgrade I may be able to find something, but I'm totally clueless as to what I need to search for, and I know pointers will be needed also, and so I would be very lost. Oh well, no biggie.
you could start a search between 43800000 - 43900000, with a size of 32 bit. And i would think its just a float value representing its radius. so id do an initial search before upgrading, and the search would be a "Greater or Equal" search for the value of "3F800000." Assuming its a float value, it'll be greater than 0 and probably equal or greater to the value of 1.. So thats where i got those numbers from.

Then i would upgrade the bomb radius through Purah.

then Switch the search type to Unknown, and then do a "Greater Than" Search and see which values remain.

after doing the greater than search, i would switch to the Unknown, Equal Search type, and run around a bit and keep clicking the search button to filter out junk values that are still changing.

Hopefully there wont be many values left, And hopefully every value that is left in the list should be greater than 40000000 ish.

then id go and poke a bunch of values and make the values Larger (so if a value is like 40400000 id make it 41000000) and see what happens with my bombs after doing so.


That's what id do, you could try that and see if you find anything.
 
Last edited by skoolzout1,

skoolzout1

Well-Known Member
Member
Joined
Mar 16, 2017
Messages
538
Trophies
0
Location
The Maple Syrup Aisle
XP
953
Country
Canada
botw

VF - Speed of Time [skoolzout1]
00020000 13000180
XXXXXXXX 00000000
00020000 13000184
3C088889 00000000
30000000 101C1D40
10000000 50000000
31000000 00001F40
30100000 00000000
10000000 50000000
31000000 FFFFFB50
30100000 00000000
10000000 50000000
31000000 FFFF7B88
30100000 00000000
10000000 50000000
31000000 FFFFDF34
12000000 13000180
12000001 13000184
15020001 00000000
13100000 00000000
D0000000 DEADCAFE

Replace the X's in the Second line with desired speed of time.

BF800000 would be Backwards (Time will not go back to previous days. it stops at 12am)
3F000000 would be Half as Fast.
3F800000 is Normal Speed
40000000 is Twice as fast
40800000 is 4x
41000000 is 8x
41800000 is 16x

if you want faster times or something in between what ive given you, go to the conversions tab in Jgecko and use the Floating Point to Hexidecimal button to find the value for whatever multiplier you want.

This code is Version Free (Hence the VF) and should work on any version of the game. I had to find this 4 Stage pointer entirely by hand, and it took hours to find.. but yeah.



I discovered this by accident today, figured it was kinda cool because its the closest thing we have to the Song of Time from Majora's Mask lol.

The game takes the value at the address of 407CBB90, which by default is 3C088889 (which is 1/120) and it adds this to the current time every frame. I can prove this since the game runs at 30fps that means it adds 1 unit of time to the current time every 4 seconds. Through Past experience i know that one hour in game is 15 units. Since we know there are 15 Units/Hour and 1 unit takes 4 Seconds, we can conclude that 1 Hr in game should be 60 Seconds. And if you time out 1 Hour in game, it is 60 seconds. So basically 1 Second in real life is 1 minute in Link's life. This obviously isnt rocket science, but it proves that 3C088889 is added every single frame.


If you understood what i just said, then congratulations, now you can go tell all of your friends that you know exactly how BoTW keeps track of time, lol.
 
Last edited by skoolzout1,

0100100001001001

Well-Known Member
Member
Joined
Mar 11, 2017
Messages
124
Trophies
0
Age
42
XP
121
Country
United States
you could start a search between 48000000 - 49000000, with a size of 32 bit. And i would think its just a float value representing its radius. so id do an initial search before upgrading, and the search would be a "Greater or Equal" search for the value of "3F800000." Assuming its a float value, it'll be greater than 0 and probably equal or greater to the value of 1.. So thats where i got those numbers from.

Then i would upgrade the bomb radius through Purah.

then Switch the search type to Unknown, and then do a "Greater Than" Search and see which values remain.

after doing the greater than search, i would switch to the Unknown, Equal Search type, and run around a bit and keep clicking the search button to filter out junk values that are still changing.

Hopefully there wont be many values left, And hopefully every value that is left in the list should be greater than 40000000 ish.

then id go and poke a bunch of values and make the values Larger (so if a value is like 40400000 id make it 41000000) and see what happens with my bombs after doing so.


That's what id do, you could try that and see if you find anything.


I will do that beginning of next month. :creep:
 

Jackson Dunning

Member
Newcomer
Joined
Jul 8, 2016
Messages
5
Trophies
0
Age
20
XP
71
Country
United States
No you cannot go back inside the dungeon sadly. You can just go near them. Make sure you grab the correct code for your version of the game and I think the instructions for it are in the 1.1.2 section since thats where I first made it.

if you need help let me know.
Can you make the code for 1.2.0
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • No one is chatting at the moment.
    OctoAori20 @ OctoAori20: Nice nice-