I have found myself needing more collision conditions. Most importantly, I suggest a condition that checks if an object instance would collide with a solid/any object of a certain/any type if placed at a certain position. If I were to describe this condition as a function, it would be [color=darkblue:35k89qgs]place_free(x,y,object,solid)[/color:35k89qgs]. The condition would return true if the current instance (self) placed at [color=darkblue:35k89qgs]x,y[/color:35k89qgs] would not overlap [color=darkblue:35k89qgs]object[/color:35k89qgs]. [color=darkblue:35k89qgs]object[/color:35k89qgs] could be a certain object, a "superclass" (I'm still not entirely sure how Construct's "families" and "containers" work.), or "any object". If [color=darkblue:35k89qgs]solid [/color:35k89qgs]is [color=brown:35k89qgs]true[/color:35k89qgs], only solid instances of [color=darkblue:35k89qgs]object[/color:35k89qgs] are taken into account.
Just to test Construct, I was creating a Pacman game, and I saw that by using the default movement systems, an object's speed ceases when the player presses a key that would move him into a solid object. But think of the game of Pacman. If Pacman is moving right and you press up while there is a wall on his top side, he won't just stop in his tracks. Since he would collide with a wall by moving up, the up keypress is "ignored", and his horizontal speed continues moving him to the right.
I was able to simulate this kind of "place free" function by placing a collision sprite on Pacman's (and the Ghosts') left, top, right, and bottom sides, Always attaching those collision sprites to each object's position (This was repetitive, since I am still not entirely sure how object inheritance and Function objects work, and copying and pasting events and actions ceased to work after running Construct a few times), and checking if a collision sprite was overlapping a collision block when the corresponding key was pressed to move in a certain direction. Doing all of this has allowed me to achieve the movement I need, but I hope that simpler mechanisms are eventually built into Construct.
So, in addition to more collision conditions such as place_free(x,y,object,solid), I suggest that the movement systems have an option to ignore the player's key press if he attempts to move in a direction that is blocked with a solid object.