i know this thread is old, but since you still need help with this, i will do it gladly.
first make a parent object called objMovingPlatform, and make its parent object your platform parent object(if you dont use one, just make the your solid parent object its parent).
next, in the create event of objMovingPlatform, put in this code:
previous_x = x; previous_y = y; [/CODE] after that in the end step event put this: [CODE] previous_x = xprevious; previous_y = yprevious; [/CODE] now, make a new object and call it objlvl1Platform, and make objMovingPlatform its parent. also give it whatever sprite/mask you want it to have. next, in your player's step event, put this code: [CODE] // ---- Moving platforms --------------------------------------------------------------------- objHandle = instance_place(x,y+2, objmovingPlatform)// change the y+2 part to suit your character's collision mask; if (objHandle != noone && onGround) { x -= objHandle.previous_x - objHandle.x; y -= objHandle.previous_y - objHandle.y; }[/CODE] next, place your platform and fire up your game. change varaible/object names to suit your game.