Similar Posts

15 Comments

  1. Good tutorial! I’ve modified the moving platform code to follow paths and move in a circular motion – I’m curious to see how you’d implement such cases. Where can you go from here with the series?

    1. Well you just gave me two interesting ideas to explore. I am still experimenting with moving blocks (pushables) but I’m not satisfied with the results so I’ll take a break from that topic and explore these circular/path following platforms instead. Then I guess it’s time to implement some input mapping, game mechanics, enemies, doors, pickups/powerups, world design, a proper camera, room transitions and more. I’ll probably start to use some graphics as well (very soon indeed). I know this doesn’t sound like a plan, but I want to make a simple action/adventure platformer people can use as a base to build their own games from. Nothing really complex but I’d love to give it a polished feel with menus and so on. Sounds cool?

      1. No worries, the least I could give. You’ve done the majority of the hard work needed for the base of a platformer so everything on top of this is just a bonus really. I look forward to seeing where you’re going with all this

  2. Thank you so much for these amazing tutorials. You have no idea how much this has helped an amateur like me who declared moving platforms the bane of my existence, despite being essential to a proper 2D-platformer (imo). As Luke mentioned, this is definitely a solid base for a good platformer and everything else will be a very appreciated bonus.

    Keep up the amazing work.

  3. Hi and thanks for your tutorial! They’re very useful and helped me a lot. As Luke said, it truly is a solid base for a proper 2D-platformer and anything extra would be an appreciated bonus.

    Keep up the great work!

    I do have one question though: How would I proceed to implement friction (acceleration/deceleration) to the player’s movement?

    I understand if this is not the place to ask for such things but I wanted to try and ask anyways.
    Good day.

    1. Thanks for your support and for your kind words. I’m glad these posts helped you.

      About accelerations and deceleration, I’ll have a new post in a couple of days specifically about that but to give you an idea it works like this: wherever you set the speed of your player, you’d use a lerp function or an approach script (link) to set the x velocity, instead of setting it directly to the maximum. Basically you want the x velocity to “approach” the maximum speed by a given value over a short period of time (the greater the approach value, the faster the acceleration). The same is valid whenever you set the x velocity to zero; you’d want the velocity to “approach” zero to simulate deceleration.

      Hope this helps but anyway I’ll write a post about it very soon!

      Again, thanks for your support!

      1. Thanks for the quick reply and sorry for the double message (had some trouble with the spam filter)! I got it to work using lerp but I am still excited to see how you’ll do it and will be looking forward to anything you post in the future. Really great content!

        Have a good day.

    1. Hey Savernish, thanks for the kind words.

      What do you mean by scale up? If you’re looking into expanding the engine into a game, there’s a lot of stuff to consider such as adding multiple levels (and connecting them), adding graphics and animations, sounds, menus, gamepad inputs, game mechanics such as saving/loading/spawning/restarting, enemies and lots of different things. There’s a great course on udemy that covers A LOT and it’s really well made: How to Make Tile Based Platform Games in Gamemaker Studio 2. Most of the time it’s heavily discounted (like 80-90% off). It uses tile based collisions but you could switch the collision system easily once you understand the underlying mechanics.

      If Udemy’s not your thing, there’s a lot of complete platformer courses on youtube as well. I went through most of them myself and they’re good!

      There’s really a lot to cover and right now it’s impossible for me to write about each aspect involved in making a full scale game (especially now that I got less and less time to do gamedev AND write about it), but I hope I gave you some direction. If not, feel free to get in touch directly (even via twitter, I have my DMs open) 🙂

      Having said that, I really hope I can find some time on weekends to get back to this series and write new stuff. Until then, let me know if you found the links useful. Cheers!

  4. Really looking forward to the 2.3 update, my current platformer is a bit clunky and I’d love to get the mechanics smoother. Any chance you could cover ladders in the future?

    1. Hey Ian, I’m porting this engine to GameMaker Studio 2.3. Not much going on, just converting the scripts into functions. Pretty much everything else is applicable to GMS2.3 – you might give it a try. I will definitely cover ladders in the future as I’m planning to make a series about state machines and ladders are, indeed, just a separate player’ state (like water, air, ground…) in which you enable/disable certain physics features (e.g. no gravity). Hit me up via contact form/twitter if you need immediate help with this. Cheers 🙂

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.