Jcw87 / c2-smb1

Super Mario Bros Clone
46 stars 47 forks source link

warp zone #4

Closed rastley1 closed 1 year ago

rastley1 commented 1 year ago

only takes you to 1-1

rastley1 commented 1 year ago

also some collisions are bugged, pretty mario games have a thing where they kinda shunt you to the side if you are trying to go through a one block gap.

rastley1 commented 1 year ago

good remake tho

Jcw87 commented 1 year ago

The warp zone takes you to 1-1 because world 1 is the only world that is finished. I'm probably not going to make the rest of it. This re-make only exists because someone else did a re-make of 1-1 that invoked my pet peeves with Mario fangames, and had the audacity to claim that it was the best the engine could do. What I've made here is more representative of the engine's capability to re-make Super Mario Bros.

I'm acutely aware of the collisions not being 100% accurate. The engine is designed to have every object have a well-defined collision area that prevents other objects from intersecting. The original game wasn't quite so picky, and would allow Mario to overlap a block as he jumped into it, and push him out of the block as he rises. To fix this, I would have to ditch the platforming behavior, and do something completely custom. If I did that, would it really be a proper showcase of the engine? No.

There's also a notable issue with the firebars in 1-4. Essentially, the original game did a programming no-no and didn't properly initialize memory when creating a firebar. This results in the starting position of the firebar being determined by the enemy that was previously loaded in the same object slot. It would be ridiculous to attempt to replicate this behavior without writing the game in C or C++, imposing the same object limit, and allocating object slots in the exact same way.