Uploaded July 2022 | Updated September 2026, 17 hours ago
This basics video tutorial shows you what rooms are in GameMaker and how they work, how to set the start room, how to jump into other rooms and finally what persistence means for rooms in GameMaker.
Image rooms to be like levels, each time you enter a room/level GameMaker is loading all the necessary things in there to be used and played. Rooms have properties and hold layers which also hold their respective assets ( instance layer holds instance, tileset layer has tiles etc. ). Besides having layers rooms also have properties like height and width and hold camera/view values and an inbuild physics system.
So how does it work? Well, you define the start room (default is the first room1) visible by the icon and this is how the game starts by loading in the (firsts) start room. When you want to transitions/jump to other rooms, you simply use room_goto() which will unload the current room and all its content and load in the new room with fresh content.
Persistence for rooms means that you save the last state of the room and when you jump back into it, you don't create a fresh version of it but with updates values (positions, instance, etc.). This is not recommened though because it makes sense to have a persistent instance which stores all the necessary values you want to inject into the freshly created room.
And lastly, you can customize rooms during runtime but not in the current room you are in. That means you need to set those instructions in advance.
Offical manual on rooms:
manual.yoyogames.com/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Rooms.htm
๐ Support me and get fresh game art and game maker projects every month:
patreon.com/1upindie
Follow me on:
๐ธ Instangram: instagram.com/1upindie
๐ฆ Twitter: twitter.com/1upIndie
๐ฌ Discord: discord.gg/gvr98nb
๐ Udemy: udemy.com/course/become-a-video-game-developer-with-gms-23 (See youtube about page for discount)
CHAPTERS
-------------------------------------------------------------------------------------------------------
0:00 What will discuss
0:29 Subscribe
0:41 How rooms work in GameMaker
4:42 Room values to read out
5:32 Room start/end events in instances
6:22 How to jump/transition to another room
8:18 Editing rooms during runtime
This basics video tutorial shows you what rooms are in GameMaker and how they work, how to set the start room, how to jump into other rooms and finally what persistence means for rooms in GameMaker.
Image rooms to be like levels, each time you enter a room/level GameMaker is loading all the necessary things in there to be used and played. Rooms have properties and hold layers which also hold their respective assets ( instance layer holds instance, tileset layer has tiles etc. ). Besides having layers rooms also have properties like height and width and hold camera/view values and an inbuild physics system.
So how does it work? Well, you define the start room (default is the first room1) visible by the icon and this is how the game starts by loading in the (firsts) start room. When you want to transitions/jump to other rooms, you simply use room_goto() which will unload the current room and all its content and load in the new room with fresh content.
Persistence for rooms means that you save the last state of the room and when you jump back into it, you don't create a fresh version of it but with updates values (positions, instance, etc.). This is not recommened though because it makes sense to have a persistent instance which stores all the necessary values you want to inject into the freshly created room.
And lastly, you can customize rooms during runtime but not in the current room you are in. That means you need to set those instructions in advance.
Offical manual on rooms:
manual.yoyogames.com/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Rooms.htm
๐ Support me and get fresh game art and game maker projects every month:
patreon.com/1upindie
Follow me on:
๐ธ Instangram: instagram.com/1upindie
๐ฆ Twitter: twitter.com/1upIndie
๐ฌ Discord: discord.gg/gvr98nb
๐ Udemy: udemy.com/course/become-a-video-game-developer-with-gms-23 (See youtube about page for discount)
CHAPTERS
-------------------------------------------------------------------------------------------------------
0:00 What will discuss
0:29 Subscribe
0:41 How rooms work in GameMaker
4:42 Room values to read out
5:32 Room start/end events in instances
6:22 How to jump/transition to another room
8:18 Editing rooms during runtime
![Shader wizard Xor - Learn from the best [Interview]
This video is an interview with Xor who is an expert in his niche field of graphical shaders.
Shaders are not just a gizomo that is being used to manipulate a given image. My interview partner Xor is giving us a view into how he became proficient with shaders, an overview on GameMaker and why this is his ide of choise, followed up by some really wide speculation where the future might take us and lastly a technical showcase of what you can do with shaders.
So if you find this field shader writing and computation as fascinating as he does, well you can follow him on social media or learn on this bog post the fundamentals on shaders. The world of shaders is hard road but a rewarding one (even as a future career). All those background videos you see in the interview are his own shader creations which you can see for yourself on Shadertoy.
๐ฆ https://twitter.com/XorDev
๐ป https://gmshaders.com
๐ https://www.youtube.com/c/XorDev
๐ฌ https://discord.com/invite/RAC79Ud
๐ https://xordev.itch.io/
๐ธ https://www.shadertoy.com/user/Xor
// The audio is a bit wonky, sorry for that. Hopefully that doesnt
CHAPTERS
0:00 Who is Xor
1:30 Tools Xor uses
2:50 What is good about GameMaker
4:50 GameMaker in comparison to other engines
8:40 GameMakers updated roadmap
11:10 Particles vs shaders
12:30 Gamemaker particle editor
14:10 Risk of cookie cutters systems
15:35 GameMaker bought by Opera - pros and cons
18:45 Future of GameMaker
21:29 GameMaker 2D and 3D
23:45 GameMaker popularity
25:05 GameMaker fx layer
29:25 Graphical trends - raytracing
31:02 Shaders now and in the past
32:12 New technical fields in graphical computation
33:30 Unreal Engine 5
35:22 Mobiles, augmented reality
38:05 A thing of the past, developers with screens
39:27 Will the robots replace us
45:05 Xors plans in the future
34:00 Xors voxel engine exclusive content
44:41 Xors voxel engine 2
45:21 Numbos vaporwave shader
45:44 Xors fireworks shaders
47:30 Xors 3D water shader
48:20 CPU vs GPU
51:30 GMshaders.com and a series on learning about shaders
53:13 If you have questions or want another specific talk with Xor, write it in the comments Shader wizard Xor - Learn from the best [Interview]](https://i.ytimg.com/vi/Ppg8wfNW0AA/mqdefault.jpg)
![Record/tutorial Ghost for cutscenes [GameMaker | Advanced]
This advanced video tutorial shows you how to use create a shadow/replay functionality in GameMaker.
The idea here is to play once and record the input values in that time frame. That means that you create a clone of the player where the input is coming from a record. For that we need the startpoint (x,y) of the recording as well as each frame the input. These we replay/use in the player clone.
Thats it!
Tldr: Yes
Character used in game play and thumbnail by DanVelasquezArt CC3by:
https://dan-velasquez-art.itch.io/dvas-characters-thicc-n-juicy
Video on saving with .ini (text) files:
https://youtu.be/r6N_mAmpT7s
// link to the project file on my discord for free use:
https://discord.com/channels/582918792145928202/1205513075273502740
๐ Support me and get fresh game art and game maker projects every month:
https://www.patreon.com/1upindie
Follow me on:
๐ธ Instangram: https://www.instagram.com/1upindie
๐ฆ Twitter: https://twitter.com/1upIndie
๐ฌ Discord: https://discord.gg/gvr98nb
๐ Udemy: https://www.udemy.com/course/become-a-video-game-developer-with-gms-23/ (See youtube about page for discount)
0:00 What we will do
1:51 Subscribe
2:01 Setup, a fully functional player object
2:40 Copy the entire player object
2:52 Recolor him and add an index variable that is used replaying
4:35 Record the x,y value of the start point
4:55 Create array of the values to be recorded
5:10 Have an index that adds up and is the time spend recording
5:30 Have a variable that togges recording off/on
5:47 Fill the arrays with values in the step event
6:30 Increase the index which is the time spend recoding (for each step)
6:38 Block/enable recording
7:10 Recolor the recorder object to see if we do record
7:40 Replace the player input with the recorded values
8:30 Advance the recorded values by increasing the index
9:12 Limit the index to actual array length
10:15 Record functionality: Record
11:40 Record functionality: Stop recording
12:05 Record functionality: Create recorded shadow/clone
13:00 Storing/copying from recorded data into an .ini file Record/tutorial Ghost for cutscenes [GameMaker | Advanced]](https://i.ytimg.com/vi/Q48_z6qfAz8/mqdefault.jpg)
![1 click effects [GameMaker Studio 2 | Vfx]
This vfx video tutorial shows the newest patch on GameMaker Studio. They changed a lot concerning their whole ide but most importantly added a really cool feature which is the fx layer.
This layer is a godsend because it allows to preview and set screen filling effects on the fly by just selecting the effect you want and playing around with the menue bars. This normally was and still is rather a complex things to achieve with shaders but now you can do that on the fly and in the future you can ajust the layers effect properties by hand.
What can it do?
Blur, colorize, pixelate, desaturize, distort, posterize etc.
These layer effects are common practise with shaders and will give regular usesr aswell as veterans an additional convenient way to apply these effects on the screen instantly. They are instanlty seen as a preview which makes this feature a really welcomed addition.
Note: This feature is only available for paid subscribers as a preview. So if you have only the free version you will have to wait until they release it. There is also no documention in the online manual, which is a bit of a bummer.
The patchnotes also changed their rendering from OpenGl to Direct3d, so if you had issues (like me) with 2.3.4 and 2.3.5, this could be patched out now.
Patch release notes
https://gms.yoyogames.com/ReleaseNotes.html
https://www.yoyogames.com/de/blog/gamemaker-studio-2-version-2-dot-3-6-release-and-more
0:00 Best feature of the newest patch 2.3.6
1:10 Subscribe
1:20 Fx layer under the hood
10:18 Other patchnotes
13:50 Game shown: Industria
๐ Support me and get fresh game art and game maker projects every month:
https://www.patreon.com/1upindie
Follow me on:
๐ธ Instangram: https://www.instagram.com/1upindie
๐ฆ Twitter: https://twitter.com/1upIndie
๐ฌ Discord: https://discord.gg/gvr98nb
๐ Udemy: https://www.udemy.com/course/become-a-video-game-developer-with-gms-23/ (See youtube about page for discount) 1 click effects [GameMaker Studio 2 | Vfx]](https://i.ytimg.com/vi/QNJOrKDnaiQ/mqdefault.jpg)
![Analyse Vampire Survivors [#1Vampire Survivors Remake in GameMaker ]
This is the 1st video in a series on remaking Vampire Survivors in GameMaker.
The video tutorial shows you an analysis part of Vampire Survivors and Zombie Survivors from the point of view of a Game designer. What we do in this none coding part is having a closer look at Vampire Survivors and Zombie Survivors to see what systems are in place, what the core loop looks like and what we can build in a short video series that tackles the most important things for a solid remake in Gamemaker.
๐ง For the future: This series will will build expanded the further we go into the series.
๐ปProject + assets found here: This will be found on my itch.io or on my patreon, for not, it is under construction
// video on damage number:
https://www.youtube.com/watch?v=PQ8FZHprqOw
๐ Support me and get fresh game art and game maker projects every month:
https://www.patreon.com/1upindie
Follow me on:
๐ธ Instangram: https://www.instagram.com/1upindie
๐ฆ Twitter: https://twitter.com/1upIndie
๐ฌ Discord: https://discord.gg/gvr98nb
๐ Udemy: https://www.udemy.com/course/become-a-video-game-developer-with-gms-23/ (See youtube about page for discount) Analyse Vampire Survivors [#1Vampire Survivors Remake in GameMaker ]](https://i.ytimg.com/vi/QxL9jjNSz98/mqdefault.jpg)
![๐ดMonster Maw - The easy way [GameMaker | Vfx]
This visual effects video tutorial shows you in general how monster maw in no time for neat looking horror effect.
The idea is to stylelize with the little we have, a scrolling background image of a forest. That image we take and use the panorama effect to create a circling aswell as a going into the center/retreating motion. Thats it!
๐ฎPlay (and wishlist please) my newest game Guncade (demo now):
Steam: https://store.steampowered.com/app/2398950/Guncade/
๐ Support me and get fresh game art and game maker projects every month:
https://www.patreon.com/1upindie
Follow me on:
๐ธ Instangram: https://www.instagram.com/1upindie
๐ฆ Twitter: https://twitter.com/1upIndie
๐ฌ Discord: https://discord.gg/gvr98nb
๐ Udemy: https://www.udemy.com/course/become-a-video-game-developer-with-gms-23/ (See youtube about page for discount)
Sun art found here:
https://opengameart.org/content/space-game-art-pack-extended
// link to the project file on my discord for free use:
https://discord.com/channels/582918792145928202/1205513075273502740
CHAPTERS
0:00 Preview
0:35 Subscribe
0:49 Placing a controller instance that will change the panorama effect values
1:10 How the panorama effect can be used
2:20 The image assigned should be flagged as having own texture page
2:48 Other effects used
4:30 Code part ๐ดMonster Maw - The easy way [GameMaker | Vfx]](https://i.ytimg.com/vi/RSaAqPT5y24/mqdefault.jpg)
![Pathfinding #1 - One line [Game Maker Studio 2 | Basics]
This basics video tutorial shows you how to create a very simple follow a target Ai/pathfinding in one line of code for GameMaker Studio 2.
These linear functions you can find under motion planning in the GameMaker manual. By using mp_linear_step, mp_linear_step_object, mp_linear_path or mp_linear_path_object in the step event the instance in question tries to get to the target point assigned. And that is pretty much it. If a direct path isnt possible (because some instances are flagged as solid and you set checkall as true) it will get stuck if it collides.
In part Pathfinding #2 we will discuss a more versatile function the, mp_potential_step which can be used to avoid collision and actually go around instances blocking the path. This is of course a bit limited if you have maze like structures which require a bit more complex approaches. This will be solved in Pathfinding #3.
// General video on paths in GameMaker:
https://youtu.be/2xpqQ9rqFLI
๐ Support me and get fresh game art and game maker projects every month:
https://www.patreon.com/1upindie
Follow me on:
๐ธ Instangram: https://www.instagram.com/1upindie
๐ฆ Twitter: https://twitter.com/1upIndie
๐ฌ Discord: https://discord.gg/gvr98nb
๐ Udemy: https://www.udemy.com/course/become-a-video-game-developer-with-gms-23/ (See youtube about page for discount)
0:00 Introduction to the pathfinding series
1:00 Subscribe
1:16 Concept of motion planning explained
3:32 Using the mp linear functions for homing
6:37 Bonus content - using a path with mp_linear_path/mp_linear_path_object
8:25 Game shown: Narita Boy Pathfinding #1 - One line [Game Maker Studio 2 | Basics]](https://i.ytimg.com/vi/RmOqnp5d33Q/mqdefault.jpg)

![Screen shake with one line [Game Maker | Basics]
This basics video tutorial shows you how to make a screen shake and toggle it off and on with just one line of code.
This is the quick and dirty/easy way how to make it. You simply create an effect layer and set the effect to screen shake. To toggle it off and on you simply set the visibility of this effect layer to on or off (which enables/disables this effect). Thats it!
Note: I have done a video years before by taking the camera view and shake that up. YoYo Games inserted this neat (and easier to use) functionality inside GameMaker, so you can use this one also.
https://youtu.be/HQG91LgxNpk
Graphics shown:
https://holder-anibat.itch.io/holders-animated-battlers-free-enemies-pack-1
https://free-game-assets.itch.io/2d-battle-backgrounds
https://opengameart.org/content/hit-animation-frame-by-frame
https://opengameart.org/content/animations-blood-hit-and-both-d
๐ Support me and get fresh game art and game maker projects every month:
https://www.patreon.com/1upindie
Follow me on:
๐ธ Instangram: https://www.instagram.com/1upindie
๐ฆ Twitter: https://twitter.com/1upIndie
๐ฌ Discord: https://discord.gg/gvr98nb
๐ Udemy: https://www.udemy.com/course/become-a-video-game-developer-with-gms-23/ (See youtube about page for discount)
CHAPTERS
0:00 What we will do
0:34 Create an effect layer and set it to screen shake
0:54 What magnitute and shake speed mean
1:20 Toggle sceen shake on/off by setting it to visible/invisible
2:07 Game shown - Narita Boy Screen shake with one line [Game Maker | Basics]](https://i.ytimg.com/vi/TgeYFXgtsyk/mqdefault.jpg)
![Pathfinding #2 - Better one liner [Game Maker Studio 2 | Basics]
This basics video tutorial shows you how to create a very simple follow a target Ai/pathfinding in one line of code for GameMaker Studio 2.
These potential functions you can find under motion planning in the GameMaker manual. By using mp_potential_step, mp_potential_step_object, mp_potential_path or mp_potential_path_object in the step event of the instance in question it tries to get to the target point assigned plus avoid solid instances/the instance to check. And that is pretty much it.
This method is very easy and powerful in levels that have no difficult terrain like rocks or tree where the potential function is good enough to guide the enemy instance around it. Mazes or more complex level structures will be a challenge to impossible to guide through.
In part Pathfinding #3 we will discuss a more versatile function the, mp_potential_step which can be used to avoid collision and actually go around instances blocking the path. This is of course a bit limited if you have maze like structures which require a bit more complex approaches. This will be solved in Pathfinding #3.
// previous video:
https://youtu.be/RmOqnp5d33Q
// General video on paths in GameMaker:
https://youtu.be/2xpqQ9rqFLI
๐ Support me and get fresh game art and game maker projects every month:
https://www.patreon.com/1upindie
Follow me on:
๐ธ Instangram: https://www.instagram.com/1upindie
๐ฆ Twitter: https://twitter.com/1upIndie
๐ฌ Discord: https://discord.gg/gvr98nb
๐ Udemy: https://www.udemy.com/course/become-a-video-game-developer-with-gms-23/ (See youtube about page for discount)
0:00 Introduction to the pathfinding series part 2
1:20 Subscribe
1:33 Recap and concept of potential motion planning explained
3:17 mp potential settings roughly explained
4:10 Bonus content - using a path with mp_potentail_path/mp_potential_path_object Pathfinding #2 - Better one liner [Game Maker Studio 2 | Basics]](https://i.ytimg.com/vi/UZhLV13HAno/mqdefault.jpg)
![Metroidvania Map the easy way - Code [GameMaker]
This video tutorial covers the concept of how to create a metroidvana map in GameMaker. Every good sidescroller/metroidvania has it and now I can offer a simple, scaleable and performative version to you without tanking your performance.
The idea is quite simple, you need two things: Data and an instance displaying that data
first a data structure that holds all your maps information which hold each cells internal values like x,y position, color, if discovered, room id and each walls index (none, simple wall, connector).
Second you need an instance that get the correct center postion and in used event draws 1:1 each cells on a surface with the size of rows/columns of the data structure. That drawing is being stored in the vram as a sprite and once not needed destroyed afterwards. This is how the map becomes very fast and performative since you only have one draw event.
The following parts will be adding extra features like start location, visited/not explored cells aswell as map movement and zooming.
You can find the project file in my discord server under this section:
free-stuff_gamemaker or the first pinned comment by me
๐ Support me and get fresh game art and game maker projects every month:
https://www.patreon.com/1upindie
Follow me on:
๐ธ Instangram: https://www.instagram.com/1upindie
๐ฆ Twitter: https://twitter.com/1upIndie
๐ฌ Discord: https://discord.gg/gvr98nb
๐ Udemy: https://www.udemy.com/course/become-a-video-game-developer-with-gms-23/ (See youtube about page for discount)
0:00 What we will build in 2 parts
2:13 Subscribe
2:29 Need two objects, one holding all data and one using that data to draw the map
3:31 Creating the data structure via constructor with how many columns and rows we need
4:40 Store each new map into an array (here array_Map) or a single variable depending how many maps you want
5:46 Store how many columns and rows this map has
5:58 Create all possible cells and their internal values via a double loop, these are defined as empty and to be overritten by active cells
7:01 Create cell value for x,y postion on the map grid
7:20 Create cell value for color, which defines if this is an active or empty cell
7:50 Create cell value for room to jump to and if discovered
8:56 Create a function overitting a specific cell to turn to active
12:10 Making active map cells with the setup_MapValues function
13:31 part 2, having a user event draw all the stored map values (empty or active) and creating one big sprite from that via sprite_create_from_surface
14:25 Get center x,y, positions of the window or display based on fullscreen mode
15:50 Grab the stored map array and its internal values, for now the rows and columns
18:15 Create a surface width and height based on the colums/rows times the size of one cell (here 32px), then create a surface with these values, draw all cells, store it into variable to hold the newly create sprite and clear it afterwards
18:02 Define the a center x,y fixpoint where the map sprite has to be drawn based on the window/display center minus the sprites width/heigtht divided by half multiplied by the zoom factor
18:53 get through double loop all cells, get their map grid x,y values times 32 to draw each cell correctly
19:28 Get each cells color, discovered value
20:03 If this cell has a color assigned, it is active and draw a colored rectangle plus the walls with their sprite indexes
21:15 If the cell has no color assigned, draw the default empty sprite
22:05 Always get rid of the sprite created in the destroy event later on to avoid memory leaks Metroidvania Map the easy way - Code [GameMaker]](https://i.ytimg.com/vi/UpWgv-_RJUA/mqdefault.jpg)
![Update V2022.11 - Functional content [GameMaker]
The newest patch V2022.11 comes with some good quality updates for strings and arrays plus new sound filters and some new vfx filters.
This update is more a technical one, where we get new ways to use strings and arrays with new functionality. The idea is to insert your own functions into GameMakers new array functions/scripts for sorting or manipulating values. There are also more new ways to change/manipulate strings also, which is now more efficient to chain/concatenate. The new sounds effects are for me a new field, so I leave that to more experienced users. Binary literals are in a nutshell other ways to write, which will be most like only used to write long numbers visually easier. And last but not least we got new filters to play around with. These appear to be more niche, but time will tell what the community does with them.
Tldr:
- array and string functions make a programmers life more easy
- new niche filters
- new sound filter system
// more detailed infos on binary literals, array and string function in DragonSpams channel:
https://www.youtube.com/watch?v=ySy-oX4B054
https://www.youtube.com/watch?v=xhDKj87g6p8
Offical blog and release notes:
https://gms.yoyogames.com/ReleaseNotes.html
https://gamemaker.io/de/blog/release-2022-11
๐ Support me and get fresh game art and game maker projects every month:
https://www.patreon.com/1upindie
Follow me on:
๐ธ Instangram: https://www.instagram.com/1upindie
๐ฆ Twitter: https://twitter.com/1upIndie
๐ฌ Discord: https://discord.gg/gvr98nb
๐ Udemy: https://www.udemy.com/course/become-a-video-game-developer-with-gms-23/ (See youtube about page for discount)
CHAPTERS
0:00 What the new update is all about
01:05 If your 2022.08 doesnt work on updating, reinstall
01:40 New filter - Blocks Background
02:27 New filter - Hue
03:05 New filter - Ripples
03:40 New filter - Panorama
04:30 New filter - Parallax Background
05:20 New filter - Film Grain
05:50 Binary literals - write long numbers easier to read
06:25 New string functionality
07:40 New array functionality
09:13 New Audio effects system
10:35 Game shown: Doors Arums Afterlife Adventure Update V2022.11 - Functional content [GameMaker]](https://i.ytimg.com/vi/V2PsSz2Q5aY/mqdefault.jpg)