Advertisement

Engine that is closest to Game Maker?

Started by March 17, 2024 11:04 PM
8 comments, last by a light breeze 8 months ago

Trying to quit GM. Had enough of the oppressive self-righteous moderatorship of the GMC that makes up rules as they go along. Had enough of the overly-timid and bootlicking atmosphere where you are viewed as "weird' or get ghosted for complaining about anything in GM. IRL I don't attend worship congregation services, so why would I waste my time with that online?

As an engine, GM has several serious flaws. It would take me days to list them all, but one big example is Box2D has a “ghosting” issue where you cannot have smooth movement if you have stacked walls. Might not sound like much but its a big problem, but its not the point of the thread. Other big problems include a bad and glitchy UI and other issues. Might not sound like much, and its not the point of the thread to discuss this in detail, but I can assure you these are big problems.

I mainly stuck with GM because I had fond experiences with it in my younger years, this was decades ago though and times have changed. The new era of GM feels more machine now than man. As we are expected to use the new GMS 2, with an interface that hurts my eyes and doesn't feel anything like Overmars original vision of GM. GMS 2023 doesn't even compile for me anyway so I can't use it, I still use 1.4.

Anyway, tried my hand at Godot, it seems even worse than GM. On reddit everyone talks about Unreal, Unity or Godot mostly. Godot just seems bizarre, every thing is a node and called a scene, I can't even with it. And all the devs are protesting unity so I don't want to be a Unity bootlicker and go to there. That leaves me with Unreal, they say the most difficult of the bunch, and also is too big to fit on my SSD.

There is a GM fork, Enigma I think its called, but their community is even worse.. At least the technology itself seems superior to the standard GM. I am looking for something like this… something that is almost exactly the same as GM in everyway, but is superior to GM. I am not looking for experimental prototype game engines that are super buggy and have only github communities. I am looking for a proper, robust game development engine that is the same as GM in everyway.

None

The only engine that's the same as GM in every way, is GM. Other engines are better and more powerful in various ways, but they do require that you learn a new way of doing things. If you are unable or unwilling to do that, better stick with GM.

Advertisement

@a light breeze GM reigns Supreme.

I am not trying to contradict you. There are a lot of flaws in GM, therefore there must be some truth to what you say. Yes I believe GM lags behind engines in some ways, for instance Unreal can push billions of polygons with Nanite, GM can never do that. I don't think that even the most expert coder of GM could get GM to render billions of polygons like Nanite does.

That being said, where GM seems superior is ease of use. I downloaded Godot, and immediately it seems obtuse. Can someone please explain to me why everything in Godot is a node and why every object is called a scene? Like, I just want to make an object, and put it in a room. All I see is a list of different object types, such as “animation object”. I do not want a bunch of object types, I just want to make an object, if I want to add an animation to the object then I want to do that later, what if I make an animation object, but decide I want to change it later to a different type of object? Or what if I want an object that is a mix of different object types. Immediately after using Godot for 2 minutes I want to ALT+F4/CTRL+ALT+DELETE the program.

None

ReignOnU said:
@a light breeze GM reigns Supreme.

Ok, so then just use GM? What are you expecting people to tell you? “There is ‘GameMaker: The flawless edition’, here is a download?"

What you are asking for doesn't exist. There is never going to be a product that is just like whatever you are using, exactly like it, but has less flaws. Very unlikely. No two engines are alike to such an extent. People usually make new engines to do things differently.

If you use an engine that has source-code, you can try to fix that yourself (so just check if GameMaker is open-source). If that's not an option, then you'd need to make your own engine, that has all the features you want, but none of the issues. As someone who is doing exactly that, I can say, it is an option, and it feels pretty great once you've got a working product. Altough it will take years and years, and thousands over thousands of man-hours to get something working, and depending on what you want to do, it might not work at all (duplicating something like Nanite will be nigh impossible).

Anyway, since that's probably not the way you would even want to go, where does that leave you? Eigther stick with GM and work with it's flaws, or try out different engines until you find one that you like. Just because Godot is less easy to use, doesn't mean other engines are too. Your reason for not using Unity is absurd (you don't want to be a “bootlicker”? What does that even mean in the context of using an engine); I'd personally recommend Unity, altough it also has a lot of flaws too, and if you don't like people telling you in response to problems you have: “this engine has this limitation, here is a workaround”, you won't like it eigther.

I would say use the GM forums first and try to find a solution there. Sometimes, picking a game engine is kind of like the “grass is greener on the other side” scenario. When in reality, you are going to run up against problems in all of them. If that doesn't work, then maybe take a look at BuildBox. Although, I would probably choose Unity or Unreal if you think GM is too limiting.

@Hushel What is the workflow in Buildbox like?

None

Advertisement

ReignOnU said:

That being said, where GM seems superior is ease of use. I downloaded Godot, and immediately it seems obtuse. Can someone please explain to me why everything in Godot is a node and why every object is called a scene?

In Godot, you build complex objects as trees of nodes. An individual node is just a small component of the object. The components are called nodes because that's the standard terminology for the bits that make up a tree data structure. The trees themselves are called scenes for what are probably historical reason.

Like, I just want to make an object, and put it in a room. All I see is a list of different object types, such as “animation object”. I do not want a bunch of object types, I just want to make an object, if I want to add an animation to the object then I want to do that later, what if I make an animation object, but decide I want to change it later to a different type of object?

You would usually not start with an animation node. I think of an animation as “a sequence of images played back in order”, but in Godot an animation is “a set of canned changes in some other object that occur on a timeline”. You can use animation nodes to animate anything in Godot, or you can skip them entirely and use scripts to accomplish the same thing.

Or what if I want an object that is a mix of different object types.

All but the most trivial objects in Godot use multiple nodes.

Immediately after using Godot for 2 minutes I want to ALT+F4/CTRL+ALT+DELETE the program.

That tells me that you made no effort to learn, not that there's a problem with Godot. Two minutes isn't enough time to judge anything as complex as a game engine. I'm certain that it took you longer than 2 minutes to get up to speed in GameMaker. It's just no longer fresh in your memories.

@a light breeze Here is an analogy for you…

Using GM, in 2005, was like pushing the gas pedal on a heavy and low powered car of 12 horsepower… Very slow acceleration, moving at 1 mile per hour at first, but eventually getting to a decent speed of 30 miles per hour…

Trying Godot for the first time feels like, I am trying to push a cart made of square wheels made of stone.

Keep in mind that, when I used GM decades ago, I was much younger, had less experience in dev. With as much experience as I have now compared to then, Godot should have felt easier to me.

Two minutes isn't enough time to judge anything as complex as a game engine.

Ah but it was not merely 2 minutes, I have also watched many videos about Godot. Some of the game devs have told me the engine is too limiting, its more of a “cookie cutter type tool with presets” and lacks flexibility and customization

In Godot, you build complex objects as trees of nodes. An individual node is just a small component of the object. The components are called nodes because that's the standard terminology for the bits that make up a tree data structure. The trees themselves are called scenes for what are probably historical reason.

This is extremely confusing to me.

In GM, what they call “objects” are actually classes, which is confusing, but only to those who have a strong coding background before moving to GM. It is not confusing inherently for those just starting in GM. The overall structure of how GM works feels intuitive. You create a class, inside the class you can put variables, functions, and events to apply those functions. With Godot, I do not even understand it enough to explain the difference, sounds like some odd node system where objects are made of components called nodes.

I do not understand Godot, but the impression I got so far is you get limited by scope. I will provide a GM example first to be more clear… In GM, you create an object (class) and put it into a room. A Room is like a Level or Scene. So you can create 10 rooms, to make 10 scenes in your game, and putting that same object into the rooms as much as you want. In Godot, my first impression is that every object is limited to the scope of the scene, so if you want to create a game with more than 1 level, you have to create the object again from scratch as a new node for the new scene. Idk if that's how Godot actually does it but that's what it felt like

None

ReignOnU said:

Keep in mind that, when I used GM decades ago, I was much younger, had less experience in dev. With as much experience as I have now compared to then, Godot should have felt easier to me.

Maybe, maybe not. Using one game engine (or programming language or spoken language any other complex system) for a long time is going to shape your thoughts about how things are done, what kind of things are easy to do, what kind of things are hard to do, and what kind of things simply cannot be done. To learn a new system, you need to unlearn the old system first. This is the principle of 初心.

I do not understand Godot, but the impression I got so far is you get limited by scope. I will provide a GM example first to be more clear… In GM, you create an object (class) and put it into a room. A Room is like a Level or Scene. So you can create 10 rooms, to make 10 scenes in your game, and putting that same object into the rooms as much as you want. In Godot, my first impression is that every object is limited to the scope of the scene, so if you want to create a game with more than 1 level, you have to create the object again from scratch as a new node for the new scene. Idk if that's how Godot actually does it but that's what it felt like

I thought you said you had watched tutorial videos for Godot?

In Godot, the basic unit (equivalent to “object” in GameMaker) is the scene. You can instantiate the same scene in multiple levels. You can instantiate the same scene multiple times in the same level. You can even instantiate the same scene multiple times in a second scene, and then instantiate that second scene multiple times in a level. For example, create a “torch” scene, create multiple instances of the torch in a “room” scene, and then create multiple instances of that room in a “level” scene. Edit the base torch scene and all of the torches in all of the rooms in all of the levels are updated. Edit just one instance of the torch in the room scene and just that one torch is updated, but in every instance of the room in every level. Edit one torch in the level scene, and only that particular torch in that particular level is changed. That's the power of the scene/node system in Godot.

This topic is closed to new replies.

Advertisement