Tomvita's tools

Do not combine cheat code file unless you know what you are doing

TomSwitch

Well-Known Member
OP
Member
Joined
Jan 10, 2019
Messages
4,461
Trophies
1
Age
44
XP
14,533
Country
United States
Firstly read the documentation on the commands, understand what all the codes are doing. Make sure you understand all dependencies.

Here are a few pitfalls (may not be everything) that you may want to keep in mind when you do.
1. There can only be one master code. If both file has master code you need to combine them and make sure there is no conflict.
2. ASM cheats may use the same memory. You must check that they don't hack the same memory and if they do you have to rewrite the cheat to resolve the conflicts.
3. ASM cheats may use the same hook.
4. ASM cheats may change the behaviour of the game and break other ASM cheats.
5. All registers are set to zero when the CheatVM cycle starts. Cheat code may assume certain registers to be zero which is no longer true when you add cheats above it.

This is one specific example
04000000 01778A88 11002109
If you go read the documentation you will learn that this code means:
[Main+R0+0x01778A88] = 0x11002109
I use this kind of code regularly and guess what? I do not clear R0, I can just assume R0 has 0 cause I don't create code on top of this code that changes R0. If you get a code from another person's file and paste it on top of this code the code will of course not work if that code make use of R0. People normally don't do that when they create code unless their own code need it.

If you see another code like this
04000000 01778A88 14C6EC36
This code may be writing to the same address as the first example if there isn't code above it that changes R0. In this case you may have a conflict.

Here is an example with dependency on R15
{Master} this code set up R15
580F0000 03494558
580F1000 000000B8
580F1000 00000000
780F0000 00000150

If any code that modify R15 is inserted here then the two codes below won't work

[L Hover] this code make use of R15 value created by the master code
80000040
640F0000 00000000 00000000
20000000

If any code that modify R15 is inserted here then the following code won't work

[ZL Hover off ZL+B MoonJump] this code make use of R15 value created by the master code
80000100
640F0000 00000000 C1200000
80000002
640F0000 00000000 41200000
20000000
20000000
 
Last edited by TomSwitch,

Site & Scene News

Group statistics

Members:
211
Threads:
44
Messages:
138