Design Looking for detailed tutorials on the Room Editor (building stages)


I've been away from the forum for quite some time, but have been using GMS2 since it debuted. Back then there was only 1 bare bones tutorial available on how to use the Room Editor to build stages. I've built some test rooms but am ready to start making proper well organized Rooms/Levels for my game. I am wondering if there are now any video tutorials that explain what each option does, and lays out the basics of good layer design to create 2d side scroller stages (foreground elements, background elements, parallaxing back ground layers, character and item layer orders, etc). Any links would be greatly appreciated. I'll be searching google and youtube, but sometimes coming to the forums also turns up great results. Thanks!


Friendly Tyrant
Forum Staff
I'm afraid that I don't think there really is anything that covers this anywhere that I've seen... I mean, there are tutorials on the basics of the room editor (like this one:
) but I don't remember seeing any that actually link the editor with the level design process. I mean, there are LOADS of articles and videos on general level design, but none really go into any detail on how it's being implemented in GMS.


Yea the way I have been doing it is searching for every instance of what I want to accomplish step by step, just hooping to find more in depth tutorials that walk through some of the actual building of complex stages. I'm sure I can figure it out otherwise, halfway there!


🍋 *lemon noises*
GMC Elder
One of the most important recommendations I have is "look up the new GUI variables interface". Basically, you can set up variables so they're changeable through the GM GUI, including being "pick from a list of valid values", and with support for inheritance and default values. It's perfect for things like enemy stats, an NPC's dialogue data, or initial facing and movement - you can drop down the object, set the stuff, and then just click it to get a full list of what's unique with this particular instance. Things that are using default values are grayed out, so you can instantly tell they're the default value.