• Hey Guest! Ever feel like entering a Game Jam, but the time limit is always too much pressure? We get it... You lead a hectic life and dedicating 3 whole days to make a game just doesn't work for you! So, why not enter the GMC SLOW JAM? Take your time! Kick back and make your game over 4 months! Interested? Then just click here!

GameMaker Programming tutorials that are actually for beginners

A

Alex IE

Guest
I think I have a pretty good handle on why things aren't working out for you: You need to work on your reading comprehension.

One thing that frequently riles me up in the Q&A is people blatantly missing instructions laid out in the open. If you don't know what I mean by tracing code, it means you haven't read either of these from my previous post that clearly demonstrate what tracing code is:


chameleon and I don't look eye-to-eye on a lot of things, but even he got my point.

If you could miss both the external link teaching you how to trace and the example of a trace in my previous post, how many of the main points would you miss in something the length of an average tutorial or book? How many blatant problems in your code can hide in plain sight?
Actually, chameleon answered my question. Your link and explanation explained "how" to do a trace, but first I wanted to understand "what" a trace even is and why you should do it. I find many tutorials do this same thing and jump a step; maybe it's just me, but I usually want to understand what a thing is and why its useful before trying to use it.

Hmm, ok. Are you comfortable with Drag and Drop coding, or do you just use whatever is in the tutorials? Honestly, you may just need to use Drag and Drop for a bit until you're comfortable using GM to make simple games.

Let's put it this way: With learning there are two aspects we could look at: Learning pure programming, and learning to use GM (or learning Game Design).

When you're making a game in GM, you're not just writing a simple code that stands alone: you're actually just adding a piece to an existing game engine: The GM 'game engine' is underneath your game: You've got pre-built Rooms, Objects, Sprites, and other such objects, with built-in functionality. When you create a new Object, you're creating a new piece of an existing engine: And that Object doesn't exist by itself. It has to live in a Room, it has to have a Sprite set to it. That Room itself has a framerate set (30 or 60 frames per second), so you have to make sure that the Object moves well within that, and Sprites can have different attributes, too.. Angles, and Animation Speed.

So: For purely learning 'programming'.. loops, arrays, variables: This is actually kind of a messy environment to try learn in, which makes it not ideal for learning pure programming. Because you might just want to test how an Array looks, but you've got to have Objects, and Rooms, and Events set up just to get a bit of code to look at an Array.

But for learning Game Design: It's great! Just by doing the basics, you are already learning about the process of designing a simple game. Create a Game Room, Creating a few objects in the room, add some Events (clicking/keyboard) so the player can interact with them, etc. These are all common elements in just about every Game Engine.

Creating games with Drag n Drop is fairly easy. Because it's intuitive: Sure, you can make mistakes, but you don't have to sit reading a manual, and make sure you spell everything exactly right: You can just use your mouse, check, drop, run the game to see, try again, etc. You don't really need to know what a block does before trying it. So 1 hour development is you actually playing around in GM learning, rather than 1 hour staring at a Youtube video. You'll develop a better understanding of the Events for Objects, and about setting up. When you're fairly comfortable in the GM environment, and you think you've got a fair idea of how all the pieces tie together, you might find transitioning to a pure code-based development easier.


Note: Don't be put off Dragn'Drop and think you can't make some nice designs with it because it's simple.

I started with drag and drop back when I was using the trial version of GM, but now that I think about it it may be useful to play around with it some more.
 
I started with drag and drop back when I was using the trial version of GM, but now that I think about it it may be useful to play around with it some more.
Yeah, maybe give that a go and see if you enjoy it. Drag and Drop is still pretty powerful: People on the forum will tell you 'learn code, learn code', but no need to force yourself if you're not quite ready for that yet. Dnd is still a style of coding: Just a visual style. I used Drag and Drop, what, at least for 6 months after I got serious with GM,( or probably longer) before moving into adding code in my games. And then when you can start with adding simple codes: Something to make an object rotate, or shoot in a direction.

If I recall The Power(vid) (download page)was all DnD: It's creator (Alexitron) was really good game designer, and used DnD for years before learning GML. I don't really know any of the new GMS2 developers, but I'm sure there are some good designs still being done with DnD.

Yoyo's got a few DnD tutorials/learning resources:
https://www.yoyogames.com/blog/540/education-learning-to-program

And you could poke around on their website to find more.

Here are also a few on this forum:
https://forum.yoyogames.com/index.php?threads/dnd-platformer-series.61650/#post-381610
https://forum.yoyogames.com/index.php?threads/scrolling-shooter-tutorial-using-drag-and-drop.47984/

But these two are video tutorials: It's ok, but Drag n' Drop is not so scary as you can't just try thing out in GM yourself.
 

TheouAegis

Member
The only thing I don't like about GMS2's DnD is yuo have to constantly search for something because most actions are hidden by default, meaning you need to know what you want to search for, and it has a higher learning curve than older versions (even I had to open the manual to figure out how to add arguments.

That said, GMS2 DnD is amazingly robust, at least compared to the previous versions. I'm not exaggerating when I say there's a DnD action for nearly anything a rookie could want. Variable declarations are built into actions that call functions wtih returns; data structure functions get actions; tile handling gets actions; buffers and surfaces even get actions. Things you needed to work around DnD for you can now work in DnD. The one thing I like AND dislike at the same time is how you don't need to put START and END markers around branching code anymore, just drag the branch to the right of the action. It's faster, but I think detrimental for beginners who don't know the importance of { }. *shrugs*
 

Toque

Member
Actually, chameleon answered my question. Your link and explanation explained "how" to do a trace, but first I wanted to understand "what" a trace even is and why you should do it. I find many tutorials do this same thing and jump a step; maybe it's just me, but I usually want to understand what a thing is and why its useful before trying to use it.




I started with drag and drop back when I was using the trial version of GM, but now that I think about it it may be useful to play around with it some more.

The problem I quickly came to with drag and drop is when you are stuck there isn’t much help on the forums. Most experienced users know GML.
 
Top