Advertisement
imbued

Why the Deku Guard stops moving when SRM warping

Apr 5th, 2020
117
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.63 KB | None | 0 0
  1. pot - guard = 0x200
  2.  
  3. The first 2 bytes in the guard's instance that get overwritten by the pot's X Position (i.e. the 2 bytes at guard + 0x224) appear to be a timer (or something) that counts up from 0 all the way to B (and skips 9 apparently, but whatever) whenever a guard stops moving and the guard resumes moving once it increments back to 0 after becoming B (don't understand this completely, if I freeze it to be 000B while the guard is frozen, then the guard is stuck forever, but if I poke it to be 000C then the guard can move again; 000C is the only value that works that I could find).
  4.  
  5. So if those 2 bytes are stuck at anything other than 000C (presumably) forever, then as soon as the guard stops, it will be stuck.
  6.  
  7. In this room of deku palace, it is impossible (without going far out of bounds) for the first two bytes of our X Position to be 000C, so my guess as to what happens is that the guard moves in the room until it randomly decides to stop and once it stops it is stuck forever because of the value of the first 2 byte of the pot's X position. If the guard is still running by the time you get to it, that is because you threw/dropped the pot before the guard ever decided to stop moving and thus it never became stuck.
  8.  
  9.  
  10. It is worth noting that the A Button action only being Throw is caused by data in the guard that changes as the guard moves, so if the guard is frozen then this will most likely not cause the Throw issue. However, since when the guard stops moving appears to be random, we definitely have no practical way of avoiding the Throw issue and thus it is best that all Guard SRM setups Throw the pot instead of drop it.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement