What is the point of this post, other than to introduce GM by making it look bad? You're giving it a bad reputation, by suddenly showing up acting defensively and talking about 'newbs'.
Not put so well, but how many people know what Game Maker is, and why people think it is a horrid program that only newbs use. It is truly a great program, it can produce amazing games, people like JakeX and Fredfredrickson and some of the best game creators I know, and they use Game Maker 7.0 for all of them, well, 6.0 also.
But who here uses Game Maker and it's programming language, GML, which is the sister to C++.
I've never really heard anyone bad mouth Game Maker. But if you are a developer RPG Maker or Flash or any other game making software--then there may be reason not to use Game Maker.
Truth be told, there are a plethora of options to explore... But not everyone has to drink out of the same cup of tea
In my experience, Game Maker tends to offer sub-par performance. You're also tossing out Mac and Linux support by using it. I'm sure you can make some really nice games with it, though. I'd just rather use something else.
I use Game Maker, it's okay. I'm not perfectly happy with it because of a few minor things (performance issues when you have too many objects on screen, the resolution change feature messing up the desktop windows the player already had open, etc.) but overall I think you get the most punch for the least money (it's like $20) of any 2D engine out there.
My partner uses GM and seems to like it quite a bit. However, he's only ever used it for prototyping; I'm not sure what he thinks of it as a final game solution.
I agree that lack of Mac/Linux support is a real bummer.
It won't be *that* amazing -- rewriting it in C++ does not mean that it would be as fast as C++ machine code, it'll still be an interpreted language. So the performance increases, if any, will be due to the actual re-writing process, not due to the language.
Personally, the thing that turned me off about GM was the community of 6-8year olds. That, and anything really innovative (loose sense of the term) is harder to do with GM. I'm not saying that when you post your game, I'm going to be all like "Oh wow. This newb wrote a game in GM which automatically makes it super-gay". I won't, I promise. Anyone and I mean anyone who posts a game here I respect, because the only thing I've ever written game-wise is a simple dodge-the-falling-rocks game. It was intense
Interested in some custom music for your game? PM to discuss it with me.
PS - Mainly techno / rock No classical.
I don't see how GM reduces innovation really -- it's not a cookie-cutter engine like MUGEN or RPGMaker XP (those are designed for specific genres), but much more general-purpose. There is a lot of innovation in it -- have you tried Cactus's games? (Clean Asia is one, it was an IGF finalist this year).
Well, I never really got into it, and I guess if you take the time to master GML, then you can do some pretty neat stuff with it. I once tried to get the mouse to become a cross hair, I even used GML, and it took waaayyyy longer then it should have. I then programmed the same thing in DarkGDK with visual C++, and it took me about 2 mins to look up the command and implement it.
Interested in some custom music for your game? PM to discuss it with me.
PS - Mainly techno / rock No classical.
That's the problem with these level editor-type packages, in my opinion. Sure, you gain some productivity in certain areas--whatever ones the developer of the tool focused on--but you lose productivity when you're trying to do anything they didn't decide to implement as a built-in feature.
You probably just didn't know the engine that well. I can make the mouse into a cross-hair in less than 2 minutes. All it takes is this:
- open up the options and disable 'show the cursor'.
- create an object (or put this in an existing object if you already have one).
- if your cross-hair is a sprite, use this line of code in an object's draw event:
draw_sprite(spr_crosshair, -1, mouse_x, mouse_y);
Of which GM isn't one. It does have a full scripting language. It is not limited to built-in features.That's the problem with these level editor-type packages, in my opinion.
Figuring that out can be a little confusing, though, with a community full of little kids and a reference document that isn't always laid out as helpfully as one might hope.
... there's a function for changing to the windows crosshair cursor, if you don't want to use a sprite.Code:window_set_cursor(curs) Sets the mouse cursor used in the window.
My partner has done some pretty amazing things with the scripting language. I don't get the impression that GM is that limiting if you are using GML.
But again, take my words with a grain of salt as I don't have much first-hand experience with it.
IMO GM is getting better and better with each new versions and I've seen some great games released recently.
It sure is tempting for gamedev, especially considering the gain in time and the fact that you don't have to waste time and efforts with programming the game engine (and thus, you are not tempted by engine feature creep: when you are develloping a game and always imagining new features to add to the engine).
It's true that you won't be able to create radically innovative games with it, but if you restrain yourself to simple 2D games, it's good.
There are indeed some performance problems, but most of the crippling problems I think have been fixed with time, at least it seems to me that the current version is much better than the prvious ones.
The main problem is the lack of access to the source code (well I am assuming here that you don't have access to the source, I didn't actually check). This is really problematic because you can be confronted to bugs that you don't have the means to fix, and if you intend to sell your game to people this opens the door to serious support problems.
And before starting devellopment you would have to make really torough performance checks, because there's nothing worse than to waste several months designing a game with a tool like that and be obliged to scrap it all because the engine can't keep up after the 4th stage or sthg like that.
Using GM for a 3D game wouldn't be such a good idea, in my honest opinion (because you can better results easier with different engines).
Other than that, I think GM is great for its purpose.
The only problems I have is performance and cross-platform compatibility. The latter is being resolved with a Mac version of GM which is being developed right now.
Anyways, the only that I hate about GM is performance, but ofcourse, if you have a PC of this generation, speed shouldn't be an issue.
I have some experience working with GameMaker. Overall my experience has been favorable. I am more of a game designer than a programmer, although I have some programming experience. GML is just high level enough for me to utilize, but low level enough to do trickery(hackery) to get the job down when I need it to.
I have needed an environment where I can work on my game ideas without having to rely on a programmer to implement to my vision. Then finding they haven't embraced or understood the end goal. GameMaker makes it easier for me to get closer to a fleshed out idea quicker. It is really fast in my mind. Granted, I have little to no experience with other development environments of this nature.
I suggested that we use this program at my job to prototype ideas. I told my boss that I think someone could learn it within a week and start prototyping. He set one person on the task of implementing an initial game design. He had the prototype with the base mechanics up and running within one week. I was amazed and reaffirmed in the flexibility and freedom of the tool. One week? That's awesome. Iteration is king. Speed in creation is paramount.
Now, the person who did it in a week found a fair amount of frustration working with the tool. It wasn't all roses. There were aspects about the interface that were clunky and inflexible. In my own experience I have had trouble getting things to work. Documentation for GML is absolutely horrendous. I find it nearly impossible to fully understand the use of all the functions from the documentation. Thank goodness for their forums. Without them it would have been much more painful. People are generally helpful and quick to respond to questions. There I found a fondness for the tool.
Overall, as a tool to implement ideas fairly quickly, it is pretty awesome. It's only 20 bucks! That was cool for me. As with most tools it has upsides and down sides. I do take offense to the idea that "innovation" is limited by the tool/program used to create it. Design transcends the tool. At least in my game design focus, innovation can be created with just about anything.
The one problem now I beleive with GM is the Java based systems that put it back into the editable version from the executable.
Yeah, but there are ways around that, like using GM6 and the GM6->Vista converter (which prevents decompilation); also, you can remove whitespace and such to make programs less easy to understand if you really worry about it, but, any program in any language or engine can be easily edited/hacked with a hex editor anyway.
I did something similar to this with a game our group made for the Make Something Unreal contest. Ibasically created a VB program that ran after compile that replaced all variable names(excluded key words) to GUIDs, removed all comments, and removed all white space. Some people out there were upset because they felt it was their right to be able to get to our code.Yeah, but there are ways around that, like using GM6 and the GM6->Vista converter (which prevents decompilation); also, you can remove whitespace and such to make programs less easy to understand if you really worry about it,
It didn't stop people from hacking it, but caused alot of people alot of headache to try and understand it.
If Game Maker actually compiled, instead of using a runner, things would be different.
Last edited by e_barroga; 03-21-2008 at 09:16 AM.
I have worked with GM for a good many years. I have experienced some creativity crushing performance problems int the past which was the main reason I stopped using it as my primary development tool. I recently decided to try it again and I did a simple test last night of 100 entities path finding and collision checking every game "step". I did not have any frame rate drop at all (constant 80 FPS). It could soon be the case that the performance problems are becoming non-issues as computer power increases.
Could also be that you are just better at coding now and the methods you used before were slower than the methods you used after experience elsewhere?
I've found that GM *can* work relatively fast as long as you know what you're doing. It's an interpreted language, so what kills the speed (contrary to compiled languages) is usually the amount of code that's executed each step, not what is drawn each step.
Example: If you use the built-in pathfinding functions, it works relatively fast, because those functions are compiled. But if you coded your own pathfinding routines in GML, even if those routines used the exact same algorithms as the built-in functions, it'd slow it to a crawl because it'd be interpreting a lot of code each step.
So GM really appeals to people (like me) who don't care about doing low-level things our own way, but find the built-in ways good enough.