Well done! A few bits of constructive criticism, based on my own experiences with making platformers in GameMaker:<p>- you need to fix the gravity so it doesn't feel like it's on the moon. I used to get the gravity wrong as well, but it makes for so much more fun and snappy gameplay when you get it right (or actually, a bit <i>more</i> right, cause nobody really jumps that high anyway).<p>- assuming your game logic goes a little something like, if the player is standing on something solid, they can jump: instead doing that, give the player a few frames (3-5) of leeway while they still can jump even though they just walked off a platform ledge. it's a very subtle thing, and if you don't pay attention you won't see that most platformers do this, but it makes all the difference in gameplay (if the player feels like they would have totally made that jump, but drop off the ledge instead, it feels like their character just stumbled or something).<p>the last one is also based on one of the golden rules of gameplay: try to make the game behave as the player wants, which is <i>not</i> always necessarily exactly how the controls are input.<p>(the following stuff is not really critique of your game but some things to keep in mind as you continue)<p>similar tricks involve making the hitboxes of "good" objects larger than they actually are, and the hitboxes of "bad" objects smaller (player thinks: "phew! cool! I <i>barely</i> missed that enemy!!"). btw Flappy Bird subverts this rule, which makes part of its interesting frustratingness, but as always you gotta know the rules before you break the rules.<p>and remember, you can always make your <i>levels</i> harder, if you think such tricks make it too easy on the player. you'll find that in such cases "harder" translates to "challenging" instead of "frustrating".<p>good luck!