If my memory serves correctly, the way the flyhack works is by making it think you are swimming even when you're not in water. There's two pieces to this:
- Set the "player is swimming" flag
- Disable any code that modifies the swimming flag
You'll want to start by finding the swimming flag. You can do this by searching for a byte value that changes when you enter and exit water. I believe the value should be
4
when you are swimming; not sure if it is 0 or 1 when on land.
Once you've found the value, then the next step is code modification. Use Cheat Engine's debugging to find out what code is modifying that value (right-click it in your address list, "Find what writes to this address").
Once you've found the right assembly code that's responsible to changing the value, you'll NOP (aka NOOP, "No Operation") it out (
0x90
in hex,
nop
in assembly) so that it doesn't do anything at all.
Now, the game will be unable to change the value controlling if your character is swimming or walking on land. So it's up to you to set the flag to 4 and now you're able to "swim" through the air.
To disable it, you'll just set the assembly code back to its default value.
And if any of this isn't obvious to you of how to do it, please see this thread:
https://solarstrike.net/phpBB3/viewtopic.php?t=7396