Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- So the reason this ( https://www.youtube.com/watch?v=Gos-JBZdb2c&ab_channel=Exchord ) warps you to Cranky's lab is not in the slightest bit intended, but infact an edge case in the parent map code.
- Upon voiding, the game clears your submap data and brings you to a pre-determined location. However, when you die inside a battle crown, the game uses the submap to get where it sends you. If the game doesn't think you are in a submap, then the game will not write a new location to the stack for your new map & exit. As such, when the game decides to warp you after death in the battle crown, it will use the values from those stack locations *even if* no new data has been written from checking the submap.
- The warp to Cranky is because something else in the code wrote the value 5 to that stack location (Specifically, upon getting the item count for your Crystals, it wrote 5 to that stack location because 5 is the item index for Crystal Coconuts).
- The VERY fun part comes from that the game will not perform this item check if you press Z and C-Left on the frame before the game puts you in the death process (Not when you're just about to warp, but when the kong goes "oomph"). As such, the game takes different data in terms of where to warp you.
- In particular, the previous write to that stack location (before the Item index write) is a float value for your camera rotation/position. As such, it is potentially possible to Warp to *any* map in the game from Cranky's lab. The downside is that you will need to get the angle to a floating point precise value and that value will have to be extremely small (eg. 1 in float is 0x3F800000, maps in this game go anywhere between 0x00000000 and 0x000000D7)
- For TASers/Glitch Hunters, here's what you need to do to replicate this easily:
- Overwrite the parent map boolean (0x76A160) to 0
- Set 0x7FD63C to 0x0002 (Newly pressed input, press C-Left)
- Set 0x7FD63A to 0x2002 (Currently pressed input, press Z)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement