Jump to content
xisto Community
MediYama

How Hard Is C++ Compared To Gml GML is the built-in language of Game Maker

Recommended Posts

I am right now considering to move on to C++ or maybe VB, since I'm now using the program Game Maker. This program has a built-in programming language. And I noticed that many languages somewhat have the same syntax, so I wonder how hard it is compared to GML.Anyone here who has used Game Maker before, and has moved on to a different language? If so, was it a hard change?

Share this post


Link to post
Share on other sites

I would imagine it's much much more complicated. I've never used a version of game maker with any sort of code in it, but the whole point of it is to make game creation easy. Creating games of any real quality in true code is much more in depth and difficult. If you aren't looking for a challenge VB would be easier to learn then C++ but C++ is cooler haha. Either way I still suggest trying to learn them just don't expect them to be on the same level as what you saw in GMAgain this is all an assumption based off the fact that game maker is made specifically to take the coding OUT of game creation.

Share this post


Link to post
Share on other sites

I would imagine it's much much more complicated. I've never used a version of game maker with any sort of code in it, but the whole point of it is to make game creation easy. Creating games of any real quality in true code is much more in depth and difficult. If you aren't looking for a challenge VB would be easier to learn then C++ but C++ is cooler haha. Either way I still suggest trying to learn them just don't expect them to be on the same level as what you saw in GM
Again this is all an assumption based off the fact that game maker is made specifically to take the coding OUT of game creation.


Actually Game Maker works the other way around. Someone who has no idea about coding starts by using Game Maker to drag and drop syntax into place - soon they realize that coding is much faster and off they are, coding everything with GML, until they are hardly dragging and dropping at all. There comes a point where they outgrow game maker and then they seek out a genuine language or professional engine that they can use. The person who created Game Maker teaches game making at university. His software is designed as a learning platform, one which far from limiting individuals allows them to grow. It gives priceless experience. I would argue that sending someone to C++ or Visual Basic from the onset is counter productive. What they going to do with C++ or VB in a short enough time? In Game Maker they can throw together working games very quickly - then they can make much better games... Being able to make many working games is going let someone hold onto their passion far longer than working for six months on a game engine in C++ and then giving up because it doesn't seem to be going anywhere. I've seen it all before... new coders are impatient to get started... before they are ready.. before they've learned the basics... they are off and at it with their own gaming engine.

And besides, what gaming company builds their one engine these days? Especially not the smaller ones. Most license another engine and modify it. I['d say start with Game Maker, learn with it, then move on to a language such as C++.

Further more "creating games of any real quality" isn't about C++ at all... it's all about graphics... look around at all the open source 2D games we've got out there, (the ones started by enthusiasts, not the ones developed professionally and later released) and 99% of them look s***, and that's because a bunch of coders got together to make a game - but they forgot to look for decent artists while they were at it. The battle of wesnoth is the only decent looking 2D open source game I can think of.

Share this post


Link to post
Share on other sites

i have used game maker before but i am hopeless at gml. but i can say that like c++ looks alot more complicated than gml.a member on this forum called habble used to use game maker like all the time and knows gml but hes pretty much just gone to web developing i gather.

Share this post


Link to post
Share on other sites

I am right now considering to move on to C++ or maybe VB, since I'm now using the program Game Maker. This program has a built-in programming language. And I noticed that many languages somewhat have the same syntax, so I wonder how hard it is compared to GML.
Anyone here who has used Game Maker before, and has moved on to a different language? If so, was it a hard change?


Fraid I can't help you much with the last question since I studied programming at university before I used gamemaker.

What exactly is it you're hoping to do?

GML is very much like C and C++, which is itself very much like Java. Visual Basic is entirely different... Of course it doesn't really make much difference. C++ has the advantage of speed, but it is more difficult. Anything programmed in Visual Basic will run slower (although that's becoming a negligible concern as computers increase in speed). But if it's games you want to make, then you might be better off going to a language such as Dark Basic, which is specifically for creating games. If you go down the C++ route, then you will have no problems there either; professional gaming engines such as Torque are available on cheap indie licenses and like gamemaker take care of all the drudgery. If you want to go for pure C++ or visual basic, then be prepared for a lot of work if you want to make games with them. It's easy to start romanticizing about building your own game from the ground up, but 95% of indie games are never finished. There are literally millions of unfinished game engines floating about the net.

However, whatever you decide, I wish you the best of luck. Stick at it.

Share this post


Link to post
Share on other sites

...

 

And besides, what gaming company builds their one engine these days? Especially not the smaller ones. Most license another engine and modify it. I['d say start with Game Maker, learn with it, then move on to a language such as C++.

 

Further more "creating games of any real quality" isn't about C++ at all... it's all about graphics... look around at all the open source 2D games we've got out there, (the ones started by enthusiasts, not the ones developed professionally and later released) and 99% of them look s***, and that's because a bunch of coders got together to make a game - but they forgot to look for decent artists while they were at it. The battle of wesnoth is the only decent looking 2D open source game I can think of.


I couldn't agree more with the top quoted paragraph. Game Maker is a fantastic learning resource, and by the time you've learned enough so that you're limited by what you can do with it you're more than ready to move on to another language anyway. The fact that it's similar in some respects to C++ naturally makes that a great one to pick next, and although initially it's a very steep climb most of it is just learning how to do something in C++ that you did in Game Maker. I didn't use Game Maker to make games, I used it to learn the ideas behind games.

 

Before I used Game Maker I had little to no knowledge about programming. Sure, I knew what it was and what it could lead to but I had no idea where to start. After a few years of tinkering with Game Maker during my teens I've managed to get a decent grip on some of the basic ideas behind programming (if statements - and all of the others that I can't be bothered to list in such a nice format :blink: - loops and how to use them, arrays (both 1D and 2D, although Game Maker doesn't support 3D arrays), and a whole stack of other stuff that's proved invaluable).

 

Sure, if I now go on to learn another programming language (which I am - C++ has drawn me at last) I won't be able to do anything at first as I get to grips with how I can tell it what to do, but that's far better than being thrown in the deep end and struggling with C++ without a hope in hell of getting anything decent out of it (unless you've got someone to give you a hand or a hefty list of tutorials) before your patience runs out and you decide that programming isn't for you. In terms of getting something to work in C++ compared to getting something to work in GML, I wouldn't say it's that much harder. You just need to really know what you're doing and have it clearly outlined in your mind, rather than the far more easy-going attitude you can have with GML and still get things to work. Sure, if you want something decent out of GML it's no easier than any other language (if nothing else it's harder, as you're limited in what you can do), but the point is Game Maker is meant as an introductory language. No industry uses Game Maker (that I know of), and although you can make some pretty great games with it they just don't compare to the power of more advanced and complex languages. Make the shift once you're comfortable with GML, else you'll just flounder in the new world of C++ and lose confidence.

 

As for making "quality" games, I can't picture any team of a handful of coders being able to make anything that makes a substantial amount of money these days simply because of the sheer volume of different skills needed to appeal to the modern gamer. Back when computers were first released, the hardware limited the programmer so much that a lot of "industry standard" games could be made by people at home, simply because there was only so much you could do. The old Amstrad, for example (64 KB of RAM, I believe) was great for its time, but I don't care how many programmers, graphics artists, audio engineers and so on that you throw at it, you really won't be able to do anything more spectacular than Joe Bloggs sitting at home coding long in to the night. These days the reverse is true. Manpower means more resources: you don't just have one-man game developers who can compete with industry because even if they could do everything they just wouldn't have the time.

 

Graphics are great, but I still don't understand everyone's insistence that they're what defines a "quality" game. With the games you mentionned above, the handful of coders sat down and came up with the entire game leaving a load of god-awful graphics for users to grimace at, but I personally just don't care. Today, when lifelike 3D graphics are basically required, that'd cripple a company. Back then, 99% of games were like that, but that's why no one cared. Sure, those 1% of games were "great" (and I use the term lightly) to look at, but I'd rather have an ugly game than one with lots of pretty images that was fundamentally flawed in something else. Eye candy is getting more important, so that's why people are specialising.

 

In Game Maker, most of the time you could get away with some fairly shoddy graphics. Failing that you could always get an artist in to make you a few, but with C++ you've got to start thinking about a path you want to take. I'm far more interested in coding than animation etc., so while I'm happy to work with someone who thinks the other way around I'm not going to start telling them how to do their job just as I don't want them to tell me how to do mine. I can give a few requirements (size, frames, whatever), and I work with what they give me. If it's not quite right I ask them to tinker it a bit until it's more usable and go from there. The point is, I couldn't possibly do the tinkering myself, so while C++ is harder than GML, the kind of community that's associated with the latter just wouldn't work anymore. You can't just create a game on your own and expect it to both play well and look good. The more involved you get, the more you discover that. I'm still relatively new to the whole thing, but I know that I just haven't got the time to do everything in my games anymore (if I want them done before I get arthritis and can't type anymore, anyway), so I'm learning to accept that. Sure, I dabble in a few other fields (it would be foolish not to, as then you can tailor your work to fit nicely with someone else's as you know roughly what they're doing), but I haven't done any audio work for a few years just because I'm not as good at is as someone else is.

 

Anyway, that's a new C++er's view on the transistion. Flame away. :D

Share this post


Link to post
Share on other sites

i have used game maker before but i am hopeless at gml. but i can say that like c++ looks alot more complicated than gml.a member on this forum called habble used to use game maker like all the time and knows gml but hes pretty much just gone to web developing i gather.


No, I still use Game Maker.

C++ is a lot harder than GML. GML is pretty much designed for games, and just to be used in Game Maker. C++ is used for all kinds of programs (I think you can also use it for Web Scripting)
I've used a lot of different languages, and GML was one of my first. C++ is a big step up from GML, and if you wanted to try learning a new language, I'd recommend trying something a bit easier before going on to C++.

Share this post


Link to post
Share on other sites

As for making "quality" games, I can't picture any team of a handful of coders being able to make anything that makes a substantial amount of money these days simply because of the sheer volume of different skills needed to appeal to the modern gamer. Back when computers were first released, the hardware limited the programmer so much that a lot of "industry standard" games could be made by people at home, simply because there was only so much you could do. The old Amstrad, for example (64 KB of RAM, I believe) was great for its time, but I don't care how many programmers, graphics artists, audio engineers and so on that you throw at it, you really won't be able to do anything more spectacular than Joe Bloggs sitting at home coding long in to the night. These days the reverse is true. Manpower means more resources: you don't just have one-man game developers who can compete with industry because even if they could do everything they just wouldn't have the time.

I agree with everything else you've said, except above.

W can forgive old games for looking like that because the designers were pushing the limits of what computers could actually do, pushing the limits of hardware and game play, and latterly graphics. But I don't think that we have to put up with crap looking games, just because they have other redeeming qualities. Take Darwinia for example, that was made by three people in a bedroom, and it looks amazing. (It doesn't look amazing because they had a team of 50 people working on it including 20 artists like most modern big budget games,) it looks amazing because the designers, knowing they were at a disadvantage because there was only 3 of them - took that disadvantage and turned it into an advantage by making very stylistically, reto, cool looking graphics. Most indie developers are in the same boat in comparison to the big developers, but they all manage. They find a way to do it. There are many other examples of games that look brilliant, and it was just one person working on it. But there's still a lot of crap out there... you know all the ones that look good in a thumbnail screen shot, but once you start playing it you realized that there's something unpleasant about the graphics, and it's not something you can bear to play?

Share this post


Link to post
Share on other sites

C++ is a very complicated language that goes very deep in design if you choose to take it. You will probably have more problems compiling your code without having syntax then actually worrying about if what you wrote will work and get you any visual outcome. I have written in C++ for probably 4 years during my college years and were only able to make a text game. This text game was very basic in which the user was only allowed to choose the numbers 1 or 2 and used the probability of random to justify the results that the user has chosen. Once you have achieved and compiled and executed a simple program, and once you dive deeper in the language you will understand its complexity come about. Where you would start to learn about stacks and memory, arrays, and design patterns, etc. But once you obtain a good understanding of this language you would probably be able to understand any language out there because all other languages carry the same concept only different syntax.C++ is a very powerful language in the minds that can create something from it, but those that cannot grasp its complexity will find it very hard to do almost anything with the language.

Share this post


Link to post
Share on other sites

I agree with everything else you've said, except above.

 

W can forgive old games for looking like that because the designers were pushing the limits of what computers could actually do, pushing the limits of hardware and game play, and latterly graphics. But I don't think that we have to put up with crap looking games, just because they have other redeeming qualities. Take Darwinia for example, that was made by three people in a bedroom, and it looks amazing. (It doesn't look amazing because they had a team of 50 people working on it including 20 artists like most modern big budget games,) it looks amazing because the designers, knowing they were at a disadvantage because there was only 3 of them - took that disadvantage and turned it into an advantage by making very stylistically, reto, cool looking graphics. Most indie developers are in the same boat in comparison to the big developers, but they all manage. They find a way to do it. There are many other examples of games that look brilliant, and it was just one person working on it. But there's still a lot of crap out there... you know all the ones that look good in a thumbnail screen shot, but once you start playing it you realized that there's something unpleasant about the graphics, and it's not something you can bear to play?

A fair enough point, but we are talking about a majority of games, here. Most games lack something, and unless the development "team" (even if it is a handful of people) is very switched on and do something to address it then that'll be a flaw in the game. I agree that not all games have to have cutting-edge graphics, in fact personally I think graphics are one of the things that matter least when it comes to games unless it's vital that they look good, but even if they're stylistc they still need someone to create them.

 

Every time I design a game I work out what the graphics should look like (very roughly), and design crude polygons (I work almost exclusively in 2D) to represent that object. Once the gameplay works brilliantly I go back and look through all the graphics and ask someone to create them for me. I've never released a game commercially, and it's purely a hobby based thing, but the finished product is a nice blend of gameplay (done entirely by me) and pretty pictures (done by someone else). Gameplay's what I'm after when I'm looking for a game, and provided that the graphics are either acceptable by default or able to be adjusted (my poor little 64MB graphics card doesn't appreciate all these latest games) to keep the frames per second up then I'm happy. :blink:

Share this post


Link to post
Share on other sites

I've used C++, VB, GML, Java, and I prefer VB. I started off my computer experience with QBasic, so that helped me get the logic part of programming down... C++ was boring to learn because my classes never got around to the graphics side of it (bubble sorting, oh yey :blink: ). Java was taught to me by an Asian professor with a thick accent, so I didn't really get far in it... Plus, I had to keep referencing the commands on Java's site, which was tedius. GML, I don't have much experience with.VB just seems to make most sense. I like the built in controls, and you can see what you're creating (In form design).I don't know how easy it is to program DirectX games, (or openGL) in VB though, I know most game programmers use C and C++ for that, so it has to have some positive aspect to it :D

Share this post


Link to post
Share on other sites

I've used C++, VB, GML, Java, and I prefer VB. I started off my computer experience with QBasic, so that helped me get the logic part of programming down... C++ was boring to learn because my classes never got around to the graphics side of it (bubble sorting, oh yey :o ). Java was taught to me by an Asian professor with a thick accent, so I didn't really get far in it... Plus, I had to keep referencing the commands on Java's site, which was tedius. GML, I don't have much experience with.VB just seems to make most sense. I like the built in controls, and you can see what you're creating (In form design).

I don't know how easy it is to program DirectX games, (or openGL) in VB though, I know most game programmers use C and C++ for that, so it has to have some positive aspect to it :blink:


Bubble sorts are awesome. :angry:

As for which language you should learn, it entirely depends on how much you're planning on doing with it. As you said, C and C++ are great for games because of DirectX. I'd imagine you can make pretty much anything you like out of most major languages, but some are better suited to certain types of job than others. For quick, simple games Game Maker is fantastic. If I wanted to make, for instance, a Pacman clone I'd use Game Maker simply because it's ideal for that sort of game. Sure C/C++ could do it as well, but why bother going for that layer of complexity when you don't need to?

Similarly, for multiplayer games (online), GM is far outclassed by pretty much every other language out there. If you use some DLLs for it then you can make a pretty decent game, but that's only because you brought another language in to make the DLL. The difficulty of a programming language compared to another depends on what you want out of it. Machine code is capable of doing everything, and is almost certainly more efficient at it than any language you care to mention, but the difficulty in making anything out of it when there's other methods of doing it out there just doesn't make it worthwhile for most projects. In terms of learning a programming language, the more complex languages will, of course, be harder to learn than simpler ones. It opens up more doors for those who want to do more, however, so I reckon it's still worth it. I wouldn't dream of making a MMOFPS with GML, for example. :D

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

Terms of Use | Privacy Policy | Guidelines | We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.