A new approach to Gamemaker Platform games
Platform games are popular, and there seems to be no shortage of platform "engines", however I was unable to locate one with the exact feature set I wanted. Also having found an engine it is usually impractical to drop it into a game as it requires special actions in several events.
What is needed is a "Move_Platform" command that would automatically make an object fall until it landed on something solid.
To achieve this I propose adding a script to the "End Step" event, after collisions but just before drawing takes place.
First it is important to understand the order events are processed in Gamemaker...
...and how the event sequence affects the design of a platform engine
A simple platform engine. This uses a simple script to ensure that the player slides down walls properly and does not fall through the floor.
There are plenty of engines that provide basic movement. Good slope handling is rarer. This engine allows the player to move and slide up and downhill.
Note that the effect of gravity is ignored on slopes.