Guide to implementing 2D platformers (2012) - https://news.ycombinator.com/item?id=31450218 - May 2022 (37 comments)
A guide to implementing 2D platformers - https://news.ycombinator.com/item?id=10202275 - Sept 2015 (32 comments)
The guide to implementing 2D platformers - https://news.ycombinator.com/item?id=4065033 - June 2012 (2 comments)
The Guide to Implementing 2D Platformers - https://news.ycombinator.com/item?id=4005883 - May 2012 (2 comments)
> Character movement is limited to tiles, so you can never stand halfway between two tiles.
[…]
> Examples: Prince of Persia
That is absolutely false. You can stand on any pixel in Prince of Persia. It’s when I find stupid errors like these that I start to question the entire article they appear in.
But something always bugs me about that - we know the closest edge of the closest obstacle, we know the vector of the player’s motion, by all accounts we should be able to calculate the point of contact in one go without doing any substeps.
And yet, doing it in one pass always seems to result in a myriad of edge cases (literal!) that break the whole thing, unless you do heavy preprocessing, converting your tiles to a graph of lined surfaces, etc etc.
Yeah, acceleration is essentially infinite.
https://tasvideos.org/GameResources/NES/Rockman/Data
When moving horizontally there's very small lag at the start and then he accelerates to full speed pretty much instantly.
When moving vertically by jumping, his speed is straight up set to some constant. There is downwards deceleration by gravity though, leading to "fall faster" tricks:
https://tasvideos.org/GameResources/NES/Rockman#FallingFaste...