I've been dealing with this bug for quite some time and even when I use the restore function on lunar magic or use a clean ROM, the bug still persists, making me think that something's wrong with the custom blocks in question. It has to do with their collision behavior regarding Super Mario.
When Mario bumps his head into a block (a solid one, like 130, the cement block) while big, he stops at the side of the block. This is how it's supposed to be.
But custom blocks that have an 'Acts like' setting of 25 with code that makes them solid (like this block that's only solid when the ON/OFF switch is set to ON) don't stop Mario like that. He can freely walk up to half way into the block if it isn't foot level with him.
It gets worse. With a solid block directly under Mario, a solid block head level with him and nothing directly in front and below him, he's still stopped properly.
Replace the solid blocks with the aforementioned custom blocks and the higher block tries to push Mario down while the lower block tries pushing Mario forward when he's pushed down into it... resulting in a highly unfortunate case of Mario being forced through a gap he should be too big to fit through!
The most extreme case happens when you combine these kinds of custom blocks with the purple triangle... when Mario tries to run up the custom blocks like a wall, the game outright denies him and he's pushed INTO the blocks, which then proceed to push Mario DOWN... typically to his doom.
I've redownloaded these blocks and tried various others and they all end the same, even though their code is extremely simple, the game seems to screw it up very easily. Has anyone encountered anything like this? Is there a fix for this? Or should I just try editing the blocks to 'reverse' their behavior so that I can use 130 as their Acts Like setting? Or would that not work? Thanks for any responses.