First up, a disclaimer since someone is inevitably going to read this post and determine that I'm 'bashing' other programs:
If one car is faster than another, it is not bashing the slower car to point that out, nor is it calling it a bad car. That also does not mean the slower car is worse in every way, nor that anyone is stupid for using it. I, and a lot of us here, have no problem other people using or liking other programs, but some things are simply measurable without being an insult, like the speed of GM's runtime versus construct's. Other things, however, are more of a personal preference. This post is not an insult to users of either said programs, nor do I think either of them suck. I simply think construct is better.
There. Now, reasons construct is better than MMF (This assumes C2 developed to at least C1's completeness level):
- Event system is far better. It has things like sub-events, which are much better for branching code, readability and organization, a code toggle on/off system to easily deactivate code, it's easier to work with (no bizarre limitations like you can't scroll halfway down an event, so events longer than the screen weren't usable in any way that I could determine), more picking options and more powerful (does MMF have the ability to do functions and forget selected instances in the process to work with new selected object lists mid-event and in the middle of an expression? If not, then that too)
- Working with multiple instances of an object is easier and makes more sense, no need to use any of that confusing 'spread value' stuff
- Built-in behaviors work properly (don't tell me I'm bashing here, everyone I've heard talk about them including longtime fans of MMF agree that the behaviors in MMF need some serious work and have for a long time)
- It's runtime (exe) is faster than MMF
- More than one pixel shader can be applied to an object (last I heard, MMF restricted you to one)
- Families to easily have one bit of code control multiple different objects
- Event sheet includes so every time you want to edit your game's code you don't have to copy and paste your code to every single level again and again (yes, I know you can use one frame for all of your levels by loading a level at the start of the frame with a custom level editor, but it's still handy in many ways regardless, not to mention it's nice that it doesn't require you to take that route)
- No limitations on the number of variables
- Can name the variables so you don't have to try to remember what each one does
- Intellisense for faster writing of expressions
- Better project hierarchy, makes it easier for multiple team members to collaborate (XML format, folders with animations and such)
- Configurations system for easy demo/different platform versions in the same project
- Construct is cheaper, about half the price unless you're making over 20k, at which point you can afford the ?149 version, which is still significantly cheaper than MMF2 developer
- There's two types of free versions if you really don't want to pay and aren't making money from games created with it. MMF has no free version, only a 30 day demo
It's a bit hard to explain overall as well, but after using MMF and having it impede development again and again, construct was a breath of fresh air that works the way I wanted MMF to. I felt like I was fighting MMF. Construct is a joy to use. That's an important factor when developing a game, which requires many, many hours of effort.
Why it's better than GM (I haven't used GM nearly as throughly, so I don't know as much on this front):
- Doesn't require learning a language
- Its drag-and-drop system is useful past the basics, unlike GM's (even fans of the program agree that to really use GM you have to learn GML and I have never heard anyone suggest otherwise, even in communities like TIGsource with a lot of GM users)
- The exe runtime, will be much, much faster than GM. 0.x is already drastically faster and C2 should be at least as fast or even faster. I've heard from people that construct's runtime might actually be able to handle as many as 100x the number of on screen sprites
- Behaviors for quickly adding functionality
- Superior layout/room editor (you can rotate objects and zoom)
- It's much, much easier to understand than GM (my opinion, but I've heard it echoed elsewhere. I tried using it and it simply didn't make much sense. Construct did immediately).
Both:
- Much better frame rate independence via delta time
- MUCH faster updates and bugfixes, more actively developed
- In my opinion, construct has a much better workflow and is both easier to use and makes far more sense than the others
It's been a while, so some things might not be relevant anymore (did they remove the limit on the number of variables?) and I apologize if I'm listing anything that has since been updated.
P.S. Sorry about that Mr Wolf, I didn't realize you could sell games made with GM's free version.