How JavaScript beats GameMaker Language (GML)

You're viewing a single comment in a conversation. View all the comments
  • 5 Comments

  • Order by
  • As it goes with these things, there is always some sort of a catch:

    • Although GML is not very best nor very fastest (VM is just a bytecode interpreter, YYC is AST compiled to variable-typed C++), it does win in size by more than an order of magnitude - a brand new GameMaker game is mere 2.5MB when zipped, while NWJS is 100MB and Electron is only slightly less than that.
    • As andreyin pointed out, C3's reliance on third parties ultimately costs developers a lot when coming to consoles - many stop using C3 for future work.
    • It is not entirely fair to speak of inconsistencies of GML without mentioning the JS type system ('5'+5 vs '5'-5 vs '5'- -5 etc.)
    • Ultimately, to say "you could be using these advanced JS features in a C3 game!" is not unlike "you could be doing unthinkable things by compiling GML from haxe!" - you could, but majority of people won't, as they'd probably just use the language then - without your engine.
      • [-] [+]
      • 0
      • Ashley's avatar
      • Ashley
      • Construct Team Founder
      • 0 points
      • (3 children)

      I'd point out the new Windows WebView2 exporter is just ~650kb for a zipped empty project - even smaller than GameMaker. Also the cross-platform inconsistencies were about whether things work the same across platforms - JS may have its quirks, but at least they're exactly the same on all platforms so they don't become porting hurdles.

      • I wouldn't see WebView2 as too much of a victory at this time - although the bootstrapper is tiny, the user will still have to download those 100MBs on first interaction, and use of evergreen version means that your application may eventually break into pieces once the web standards move on or bugs are introduced to Chromium. As result, I've not seen non-fixed version used in any complex (read: WebGL, WebAudio, Shadow DOM, etc.) applications.

        In what can be seen as comical lack of improvement over the last time GM performance was compared here (was that in 2011?), the post ceases to mention Construct's objective advantages over GM - use for rapid prototyping and the Remote Preview with live reloading (which is something that as of yet takes a $30 asset to somewhat replicate in GM).

          • [-] [+]
          • 1
          • Ashley's avatar
          • Ashley
          • Construct Team Founder
          • 1 points
          • (0 children)

          WebView2 is shipped with Windows 11, so the extra download won't be necessary in future. The auto-updating browsers/webviews hasn't really proven to be a big problem on the web or on other platforms like Android, so I wouldn't expect that to be a significant issue with WebView2 either.

          I agree Construct has lots of other benefits! This post only focuses on the programming languages. We may be doing more to highlight other Construct benefits in future.

      • Honestly just sounds like you are extremely biased against GameMaker. Others point out its strengths and weaknesses vs C3 and you simply harp back with well C3 does this or that better. Just acknowledge while both products are great each is much superior and better to use in one aspect or the other over each other.