[quote:1hdneyrp]Problem 1 is the player will occasionally land a pixel or 2 inside of the platform.
One solution would be to not use "Custom Movement" and just move the Sprite manually.
Use "overlapping at offset" to check if it will collide after the next move. If it doesn't, move it. If it does then do a loop moving 1 pixel at a time in the direction of motion until it is right against the obstacle.
[quote:1hdneyrp]Also, you will see in event 2 that I round the player's x and y positions every tick. I did this because it results in smoother movements and scrolling, and is essential with such a small resolution. Problem is, now the player won't move at all when I use unlimited framerate mode.
Unlimited framerate makes tiny steps in position, which end up getting rounded away every tick.
say Player's X is 100 and horizontal speed is 50 pixels/sec.
newposition = oldposition + speed * time
Vsync 60 fps, time=1/60 sec
newposition = 100 + 50 * 1/60
=100.83 which rounds to 101
Unlimited ~ 900 fps, time=1/900 sec
newposition = 100 + 50 * 1/900
=100.05 which rounds to 100. No motion.
Here is your cap modified with a no behavior approach:
http://dl.dropbox.com/u/5426011/examples4/nobehavior%20platform.cap made in 0.99.97