Thank you for the continuing assistance.
I see... You're using a rounded off angle from the Rectangle_Tile pivot to the Player_Tile to shift it back... This works, but the more the tile becomes stretched, the more that shift will become, leading to problems.
In the interim, I had come up with something which similarly avoids making use of the Rectangle_Tile data - basically, Player_Tile.XY is recorded to a PV at every tick and as soon as a collision is detected, Player_Tile is shifted back to the last recorded position, which is always a tick before the overlap.
This is fullproof in terms of collision testing, but I lose your wall sliding effect, which is what I'm after as well...
After seeing your file, I seem to have achieved a solution that fully satisfies all my requirements. The pre-requisite is knowing which condition/actions pick which objects ... Based on my testing:
Conditions - Sprite - Is Overlapping and On Colision always picks only the pair of objects that are currently colliding.
Conditions - System - Collision/Overlap conditions always pick all the object instances that collide in the whole cycle/tick
Actions - CustomMovement Bounce always picks all the object instances that collide in the whole cycle/tick.
So, what I did was to create a Collision_Tile that gets positioned exactly over the Rectangle_Tile once a Rectangle_Tile Overlaps With condition is passed. Then, Player_Tile is bounced off the Collision_Tile with 0 friction, which positions it right outside the collision mask, preserving the sliding motion.
Sorry for the wall of text. Here's a modified .cap which illustrates all the above. Thanks again for your help.
http://www.sendspace.com/file/kdx70uFunky Koval2012-04-12 19:17:28