Getting started - best/quickest way to learn?


What's the most efficient way to learn to use GameMaker? I watched the provided tutorial videos, and afterwords figured that I would being by trying to use the DnD system, as well as my (extremely rudimentary) understanding of coding to try to create a specific system of movement. I know what I want to happen, but trying to code it... did not work out, and after many hours and only getting about halfway there, I'm feeling both frustrated and incompetent.

Should I just chain-watch a ton of youtube videos with the aim of gathering enough general knowledge that I can create what I specifically want to? How did you guys learn?

Another very novice question I have is: should I be writing all of this code for myself, or is it common for people to copy code from one another for basic things, like player movement for example?

I apologize if this is not the right place to ask - obviously, I am new to this.


You should do neither. If you think either would get you there fast, that's why you're destined to lose.

First of all, forget about "quickest". By watching tutorial videos and copying off them blindly, you are already on the quickest and most ineffective way to learn. I see everyday how haste makes waste, and how this strategy breeds dependency instead of understanding.

Second of all, forget about direct copy-and-pastes. If something is big enough to have something to show for, it likely carries assumptions that makes it copy-and-paste-incompatible with other chunks carrying different assumptions. Something as minor as a different variable name is enough to put this naive copy-and-paste strategy to bed. Skilled users look for general patterns to adapt, not specific material to copy.

Now that I've told you what doesn't work, let me tell you what does work.

Forget about Drag and Drop and get a primer on GML from the Manual's Language Overview section. GML is where most tutorials and learning material are, and without a basic understanding of it, you end up only copying off tutorials instead of understanding them. You should also have a full grasp of at least the 6 basic events before proceeding. As a Q&A responder, I see everyday how rookies struggle simply because they are completely uneducated and mindless in what kind of code goes where. Inadequate foundations is a foundation for inadequacy.

It's OK to start with video tutorials, but binge-watching them is an ineffective way to use them. Instead, take a deliberate approach emphasizing non-verbatim adaptation, independent thought and gradual understanding. That approach is documented in this post.

Catch up on what you missed first, then redo all the tutorials you watched using my approach. Then you will get somewhere.