Not at the level of Undertale by any means, but some popular games made in Godot include Brotato, Cassette Beasts, & Dome Keeper, all with 1000s of positive reviews on Steam.
Working in Game Maker and having separate named events that run in specific definable circumstances such as Create, Step, Room End, ect is intuitive and helpful for organizing code. Outside GM going through separate txt files containing each event does sound unweildy, but you can work on the code in GM, so I'm not sure what the point of editing it that way is.
I switched from Godot to GameMaker cause the gamemaker feels like you are programming more and are in control of your code. And it's a nightmare to work with tilemaps in Godot.
Signals in Godot are not going to be an easy thing for someone just starting. The ability to access any object from any other object in Game Maker Studio 2 gives it a strong advantage. Additionally, a nod system in Godot may be more confusing for a new developer, where as in GMS2 each part of the game is a different (well defined) thing, i.e. object, room, sound... etc...
Signals may appear difficult in direct comparison to GM's approach, but in a more general sense signals are actually extremely intuitive. Try interaction between entities in Unreal Engine for example 😅
The code comparison is hugely unfair visually with a comment on every single line in GameMaker lol. Also GameMaker has several huge successes- Hotline Miami, Hyper Light Drifter, Spelunky, Risk of Rain and Katana Zero were all hugely successful (in addition to Undertale, which you mentioned)
The commercially released version of Spelunky with more features didn't use Game Maker. I think the pretty advanced "prototype" was on GM8. As far as I know the rest did release on GM and were definitely successful games.
As somebody who uses both, I would have to suggest going with Game Maker Studio 2 when making 2D games. It has a lot of built in tools and is far more polished than Godot. Both are fast and easy to learn, however finishing a game and exporting/delivering a game once you are done is far easier using Game Maker Studio 2. That said, for practicing, use any of these two...
How is GML like C#? It's much closer to something like javascript. C# is very staunchly OOP and GML has very little of that in it's design. Also a little feedback, it seems like you didn't prepare a script, in the future it might make the video more concise and to the point if you prepare what you are going to say beforehand. Additionally, if you're going to rate these engines maybe give a small overview of your credentials, why do we care about your opinion? Have you completed projects with both? Got a degree in game dev or cs? etc. Good luck on the youtube journey!
GML does diverge to its own conventions but is very syntactically close to C languages. However, I agree that JavaScript can be a good comparison as well. Thanks for the feedback! My goal was definitely to spend more time on post production versus initial speech preparation.
GameMaker has had a good chunk of commercial success - you have Risk of Rain, Katana Zero, Hotline Miami 1/2, Webbed and a bunch of others. Not used GMS a lot just did a bit of research on engines :D
Hi. I've dabbled a little with both. I prefer GameMaker Studio 2 because it's faster to develop with and easier to port games to console if you decide to do that but both are good engines. Use the one that meets your needs. Some small bits of info I disagree with: Game Maker Language (GML) in my opinion is more like javascript than C#. Both JavaScript and C# are C-like languages and have very similar syntax, but C# is more suited for OOP That's not to say you can't do OOP with JavaScript or GML, as OOP is a programming paradigm, not a language type, and you can use OOP with just about any language. It's just that the tools C# give you are more suited for OOP. You mention that objects in Game Maker have different event types that separate code into different files, and state it as though it were a downside. However, I think of this as a plus side. Doing it this way the code is well organized. Furthermore, even though they are separate files in the project folder, within the Game Maker program they're all easily accessible through tabs, so it's not like you're opening multiple files in your text editor. Some have mentioned the lack of OOP as a downside to Game Maker, and I disagree with that as well. OOP is a programming paradigm, not a type of language. Game Maker doesn't have OOP in the same way that Unity does, but I think it's unfair to say it is devoid of tools that can be used for OOP. For one, game objects share some similarities with programming objects, and you can access "member variables" through dot notation, such as "my_variable = player.hspeed". Also, there's nothing stopping you from organizing a lot of your code using the OOP paradigm (using features such as object variables, creation variables, instance variables, structs, etc), granted it works quite a bit differently than it would for people who are accustomed to C#. It doesn't have all the features of C++, C#, Java-like OOP (such as private variables and methods), and that is certainly a downside when it comes to organizing code and working in large teams (unless you create and enforce very clear and strict coding rules for your team). But Game Maker was always the engine that was best for beginners, non-programming majors, and for fast development, and adding every OOP feature to the language would work against that goal. That's why if your team needs those features, Unity exists. But for solo developers making small games, I think Game Maker is the better option.
You can use structs for that. They're basically classes, they support constructors, member functions, member variables, static variables and inheritance. The first thing I've done is creating a vector struct with basic operations like normalize, multiply by scalar, addition and subtraction of vectors. That works like expected and using it is just like in any random OOP language. Example: var _direction_vector = new Vector() if (keyboard_check(ord("W"))) { _direction_vector.y -= 1; } if (keyboard_check(ord("S"))) { _direction_vector.y += 1; } if (keyboard_check(ord("A"))) { _direction_vector.x -= 1; } if (keyboard_check(ord("D"))) { _direction_vector.x += 1; } _direction_vector.normalize() This is looks basically the same as any godot tutorial apart from a bit of syntax difference. With the inbuilt docstrings gamemaker has, it's pretty neat to organize things and get a quick explanation when hovering your mouse over things you've documented nicely. So, I think it does have all the features you need to have a nicely organized codebase.
Suppose I only want to make 2D games, do you still think it is a better option to switch to a real engine? I ask because I'm going to start learning and I'm trying to decide on one (I clarify that I am already a programmer with several years of experience, I just have never created a game)
@@azuso2398 Unreal engine is massive, deep and complex.. Sure you'll get easy things going quick with BP but once you start getting in the thick of your project, you'll get bogged down pretty quickly. Also it's paper 2d subsystem has not been updated in years. my 2c
@@azuso2398 Definitely not. While unreal CAN do 2d games, it doesn't have the host of features specifically made for 2d game making like godot or gamemaker. But it largely depends what perspective you're going for.
gamemaker is one slice better than godot but godot is more friendly so that is a 100+ so yeah these are two great engines. But for me its better game maker so yeah
@@rildianTheGreatest I personally find the lack of bracket notation and "loose" nature leads to much less logical structure a lot of the time. People are divided overall on bracket notation but I find it really helps to create logical blocks in a way that simple tabs and spaces don't indicate as much at a glance. Also the lack of semicolons etc. Do you code in anything other than python-like languages?
Truth of the matter is, if you're writing readable code, python and C#/JavaScript look very similar (at least to me it does). I think the reason people consider python more readable is because the interpreter uses white spaces and indentation to separate statements and blocks of code, essentially forcing you to write readable code. Since C# uses brackets and semicolons one could do something egregous like write an entire program in one line of code and it would still compile, but would be very difficult to read. But since most people don't code like that it doesn't really matter. Just choose whichever one you like.
Lol python much readable, lmao me who's programming for years with Java, JavaScript, C# doesn't agree with a programming language that doesn't have semi;colon or if elif
@@zitronekoma30 yeah that's why his comment about "readable" doesn't sit quite right to me because I've been programming for many years and with different type of languages, then here comes python with Elif.
@@berserker7091 I see, yeah it's definitely a bit odd. But if you have a CS degree you can't deny that python looks almost exactly like the pseudocode your professors probably scribbled on the board so it's readable in that sense. But I see what you mean.
...coming from a background in C++, Python, C#, etc. - you're just wrong on both accounts. Python supports both semicolons and if elif statements... For semicolons, it's just bad practice in Python, but something like: print('hello'); print('world'); is perfectly valid Edit: reading your reply - sounds like you need more help with readability than Python does ;)
@@ZemikianUchiha Elif is readable. alright... i'll stick with else if. Python is a great language but readability, elif is readable? if you were a beginner you wouldn't even know what elif even mean.
Not at the level of Undertale by any means, but some popular games made in Godot include Brotato, Cassette Beasts, & Dome Keeper, all with 1000s of positive reviews on Steam.
Buckshot Roulete is also made using Godot
KinitoPET and Windowkill too.
Working in Game Maker and having separate named events that run in specific definable circumstances such as Create, Step, Room End, ect is intuitive and helpful for organizing code. Outside GM going through separate txt files containing each event does sound unweildy, but you can work on the code in GM, so I'm not sure what the point of editing it that way is.
Weird thing to say, but I clicked on your video because your smile looked so genuine and kind.
I switched from Godot to GameMaker cause the gamemaker feels like you are programming more and are in control of your code. And it's a nightmare to work with tilemaps in Godot.
Signals in Godot are not going to be an easy thing for someone just starting. The ability to access any object from any other object in Game Maker Studio 2 gives it a strong advantage. Additionally, a nod system in Godot may be more confusing for a new developer, where as in GMS2 each part of the game is a different (well defined) thing, i.e. object, room, sound... etc...
As somone just starting i completely agree. Gamemaker seems easier and more intuitive for me
Signals may appear difficult in direct comparison to GM's approach, but in a more general sense signals are actually extremely intuitive. Try interaction between entities in Unreal Engine for example 😅
The code comparison is hugely unfair visually with a comment on every single line in GameMaker lol. Also GameMaker has several huge successes- Hotline Miami, Hyper Light Drifter, Spelunky, Risk of Rain and Katana Zero were all hugely successful (in addition to Undertale, which you mentioned)
The commercially released version of Spelunky with more features didn't use Game Maker. I think the pretty advanced "prototype" was on GM8. As far as I know the rest did release on GM and were definitely successful games.
As somebody who uses both, I would have to suggest going with Game Maker Studio 2 when making 2D games. It has a lot of built in tools and is far more polished than Godot. Both are fast and easy to learn, however finishing a game and exporting/delivering a game once you are done is far easier using Game Maker Studio 2. That said, for practicing, use any of these two...
How is GML like C#? It's much closer to something like javascript. C# is very staunchly OOP and GML has very little of that in it's design.
Also a little feedback, it seems like you didn't prepare a script, in the future it might make the video more concise and to the point if you prepare what you are going to say beforehand. Additionally, if you're going to rate these engines maybe give a small overview of your credentials, why do we care about your opinion? Have you completed projects with both? Got a degree in game dev or cs? etc.
Good luck on the youtube journey!
GML does diverge to its own conventions but is very syntactically close to C languages. However, I agree that JavaScript can be a good comparison as well. Thanks for the feedback! My goal was definitely to spend more time on post production versus initial speech preparation.
GameMaker has had a good chunk of commercial success - you have Risk of Rain, Katana Zero, Hotline Miami 1/2, Webbed and a bunch of others. Not used GMS a lot just did a bit of research on engines :D
Hi. I've dabbled a little with both. I prefer GameMaker Studio 2 because it's faster to develop with and easier to port games to console if you decide to do that but both are good engines. Use the one that meets your needs.
Some small bits of info I disagree with:
Game Maker Language (GML) in my opinion is more like javascript than C#. Both JavaScript and C# are C-like languages and have very similar syntax, but C# is more suited for OOP That's not to say you can't do OOP with JavaScript or GML, as OOP is a programming paradigm, not a language type, and you can use OOP with just about any language. It's just that the tools C# give you are more suited for OOP.
You mention that objects in Game Maker have different event types that separate code into different files, and state it as though it were a downside. However, I think of this as a plus side. Doing it this way the code is well organized. Furthermore, even though they are separate files in the project folder, within the Game Maker program they're all easily accessible through tabs, so it's not like you're opening multiple files in your text editor.
Some have mentioned the lack of OOP as a downside to Game Maker, and I disagree with that as well. OOP is a programming paradigm, not a type of language. Game Maker doesn't have OOP in the same way that Unity does, but I think it's unfair to say it is devoid of tools that can be used for OOP. For one, game objects share some similarities with programming objects, and you can access "member variables" through dot notation, such as "my_variable = player.hspeed". Also, there's nothing stopping you from organizing a lot of your code using the OOP paradigm (using features such as object variables, creation variables, instance variables, structs, etc), granted it works quite a bit differently than it would for people who are accustomed to C#. It doesn't have all the features of C++, C#, Java-like OOP (such as private variables and methods), and that is certainly a downside when it comes to organizing code and working in large teams (unless you create and enforce very clear and strict coding rules for your team). But Game Maker was always the engine that was best for beginners, non-programming majors, and for fast development, and adding every OOP feature to the language would work against that goal. That's why if your team needs those features, Unity exists. But for solo developers making small games, I think Game Maker is the better option.
Jorange you glad I didn't say banana.
Gamemaker what frustrates me the most is not having OOPS. No classes.
You can use structs for that. They're basically classes, they support constructors, member functions, member variables, static variables and inheritance.
The first thing I've done is creating a vector struct with basic operations like normalize, multiply by scalar, addition and subtraction of vectors. That works like expected and using it is just like in any random OOP language. Example:
var _direction_vector = new Vector()
if (keyboard_check(ord("W"))) {
_direction_vector.y -= 1;
}
if (keyboard_check(ord("S"))) {
_direction_vector.y += 1;
}
if (keyboard_check(ord("A"))) {
_direction_vector.x -= 1;
}
if (keyboard_check(ord("D"))) {
_direction_vector.x += 1;
}
_direction_vector.normalize()
This is looks basically the same as any godot tutorial apart from a bit of syntax difference.
With the inbuilt docstrings gamemaker has, it's pretty neat to organize things and get a quick explanation when hovering your mouse over things you've documented nicely. So, I think it does have all the features you need to have a nicely organized codebase.
Does GameMaker have nodes and an easy way dor composition like Godot?
@@tik2243 short answer, no the structure is pretty different from godot's nodes
I’ve moved from Game maker to unreal 5, the Blueprint in Unreal 5 feels like a higher level programming language like GML
Suppose I only want to make 2D games, do you still think it is a better option to switch to a real engine? I ask because I'm going to start learning and I'm trying to decide on one
(I clarify that I am already a programmer with several years of experience, I just have never created a game)
@@azuso2398 Unreal engine is massive, deep and complex.. Sure you'll get easy things going quick with BP but once you start getting in the thick of your project, you'll get bogged down pretty quickly. Also it's paper 2d subsystem has not been updated in years. my 2c
@@azuso2398 Definitely not. While unreal CAN do 2d games, it doesn't have the host of features specifically made for 2d game making like godot or gamemaker. But it largely depends what perspective you're going for.
gamemaker is one slice better than godot but godot is more friendly so that is a 100+ so yeah these are two great engines. But for me its better game maker so yeah
how is python more human readable?
how it is not? It's literally high-level programming language, wtf
@@rildianTheGreatest I personally find the lack of bracket notation and "loose" nature leads to much less logical structure a lot of the time. People are divided overall on bracket notation but I find it really helps to create logical blocks in a way that simple tabs and spaces don't indicate as much at a glance. Also the lack of semicolons etc. Do you code in anything other than python-like languages?
Truth of the matter is, if you're writing readable code, python and C#/JavaScript look very similar (at least to me it does). I think the reason people consider python more readable is because the interpreter uses white spaces and indentation to separate statements and blocks of code, essentially forcing you to write readable code. Since C# uses brackets and semicolons one could do something egregous like write an entire program in one line of code and it would still compile, but would be very difficult to read. But since most people don't code like that it doesn't really matter. Just choose whichever one you like.
I cant run godot for some reason :/
Is gamemaker opensourced?
No
@@F4hk3n Yeah, I figured a wile back
GameMaker is not owned by Yoyo Games
It used to be
how was the unity drama "recent" ?
i love godot
if for sore wild reason you can't use unity for 2d even rpg maker is more capable than godot.
Game maker you gotta pay godot free
"Use legs and hands vs brain" kind of video
Use Godot or Unreal Engine and thats all
c# is better than phyton
Lol python much readable, lmao me who's programming for years with Java, JavaScript, C# doesn't agree with a programming language that doesn't have semi;colon or if elif
? python specifically *does* have "elif" all your other example *don't* use "elif" but rather "else if"
@@zitronekoma30 yeah that's why his comment about "readable" doesn't sit quite right to me because I've been programming for many years and with different type of languages, then here comes python with Elif.
@@berserker7091 I see, yeah it's definitely a bit odd. But if you have a CS degree you can't deny that python looks almost exactly like the pseudocode your professors probably scribbled on the board so it's readable in that sense. But I see what you mean.
...coming from a background in C++, Python, C#, etc. - you're just wrong on both accounts. Python supports both semicolons and if elif statements...
For semicolons, it's just bad practice in Python, but something like:
print('hello'); print('world');
is perfectly valid
Edit: reading your reply - sounds like you need more help with readability than Python does ;)
@@ZemikianUchiha Elif is readable. alright... i'll stick with else if.
Python is a great language but readability, elif is readable? if you were a beginner you wouldn't even know what elif even mean.