I've been struggling with this problem for the past few days, and it doesn't really make much sense to me.
I'm using fastloops for the movement of two objects. The movement itself works as intended, with floating point movement and pixel perfect collisions for all static objects such as backdrops. The problem is that when two moving objects overlap, they never have pixel perfect accuracy, even though technically they should (and no, this isn't a duplicates problem, since i'm using separate objects and loops to move both).
On each move loop, an object will move 1 pixel forward. If overlapping another object after that move forward, it will immediately move back 1 pixel, reset all of its velocities etc and then close the group so no further movement can be completed until the next tick. Theoretically, both objects should never be moving at the exact same time, since one has its movement loops above the other in the event editor like so Please login to see this link.
When the first object moves forward, it should detect the second object (which should NOT be moving) on the first pixel overlapped, then move back. Then, the second object will attempt to move and detect the first object right above it, and move back. What actually happens, is that they are seeming to move at the same time, and perform their collision checks wrong, leaving a few pixels overlapping: Please login to see this link.
If anyone can help me, it would be much appreciated. I have even tried abandoning loops and just using duplicated instances of the movement, and stacking them on top of each other so they read 1-2-1-2 as many times as they need. The problem still happens, even doing that!
MFA attached