All floors can be dropped through (and ceilings can be passed through) like standard platforms.
I haven't even had a chance to try playing with this yet (well, with an actual controller), but I think it'll be pretty fun on certain stages.
All Floors Are Drop-Through
All floors can be dropped through (and ceilings can be passed through) like standard platforms.
<https://smashboards.com/threads/all-floors-are-drop-through.513411/>
[DRGN]
Revision ---- DOL Offset ---- Hex to Replace ---------- ASM Code -
NTSC 1.02 --- 0x8004CBD4 ---- 546305EE -> 38600100 # rlwinm r3,r3,0,23,23(00000100) -> li r3, 0x100
------------- 0x8004FD24 ---- AB240006 -> 3B200000 # lha r25, 0x0006 (r4) -> li r25, 0
All floors can be dropped through (and ceilings can be passed through) like standard platforms.
<https://smashboards.com/threads/all-floors-are-drop-through.513411/>
[DRGN]
Revision ---- DOL Offset ---- Hex to Replace ---------- ASM Code -
NTSC 1.02 --- 0x8004CBD4 ---- 546305EE -> 38600100 # rlwinm r3,r3,0,23,23(00000100) -> li r3, 0x100
------------- 0x8004FD24 ---- AB240006 -> 3B200000 # lha r25, 0x0006 (r4) -> li r25, 0
$All Floors are Drop-through [DRGN]
0404CBD4 38600100
0404FD24 3B200000
0404CBD4 38600100
0404FD24 3B200000
The first instruction this replaces is normally responsible for masking out and storing a floor's (collision link's) ground property drop-through flag. So instead of masking out bits, this sets a specific one to tell the function that the player is standing on a platform that has fall-through enabled. The second edit basically short-circuits a collision area calculation loop; it overwrites the loading of the number of ceiling collision links in the current area (line group) to be 0, so it always thinks there are no ceilings nearby.
I can add support for other game revisions if anyone would like. Or others can go ahead and add them using MCM's Code Offset Conversion tool.
Enjoy! ^_^
Last edited: