The image point so I can position the inside marker at the edge of the character. The InsideMarker is not a nose lol, Its needed to test collision when doing an inside corner rotate. All three markers can be set invisible and it will run the same.
Self is just an easier way to refer to current object your giving commands to. Rather then write Sprite2.Angle I can do Self.Angle if my condition already refers to the object.
The Angle is just an expression of the sprite object.
Do a little reading in the manual about objects and expressions to get yourself familiarized.
Try this for the jumping off the ledge problem.
The purple half circle are what I call the gravity field. By increasing the size of those you can change how far your character can jump while still getting sucked down to the platform. Those can be set invisible. Easier to see the effect when they are visible.