GameMaker (GM) is a game engine currently being developed by YoYo Games, with a wide extension of features. It is a popular choice at MFGG and has surpassed the Clickteam products as the most popular game-making program. As of GameMaker: Studio, it can export not only to Windows, but also to OS X (formerly known as Mac OS X), Ubuntu, Windows 8, iOS, Android, Windows Phone, HTML5, and more. There are also export modules for PlayStation 3/4, Vita, and Xbox One, although these are only usable for their respective licensed developers.
GameMaker runs off its own specific programming language, called the Game Maker Language (GML). GML is a programming language similar to Java syntax wise, but highly simplified. There is an alternative method of programming, consisting of "Drag-and-Drop" actions. While simpler to use, DnD is usually much more limited than strict GML, and its use is typically discouraged.
GameMaker uses "resources," "objects," and "events" to create games. The resources include sprites, sounds, paths, scripts, shaders, fonts, and time lines. While GameMaker includes built-in collision and speed functions, some advanced GameMaker users do not use them due to how limited they are.
Objects can have sprites assigned to them and execute code in events to perform actions. For example, the create event is executed when the object is created, the step event executes every frame, and the draw event is a block of code that draws the object every frame. While GameMaker does include key-press, key-release, and key-hold events, many advanced users prefer the keyboard_check() function since it gives more control on the order in which things are checked.
Legacy versions of GameMaker were free, with an optional registered version. The registered version allows for more features, including particles and limited 3D games.
Legacy versions of GameMaker are often criticized for being slower than game engines such as the Clickteam products. This is because legacy versions of GameMaker doesn't actually compile games, but creates an encrypted executable with the game code and a game player. This can cause severe lag, and also sometimes makes it difficult to achieve even a standard frame rate of 60 FPS. As well as game speed, people used to argue that because of this GameMaker games can be decompiled and games made in GameMaker are unprotected. Today there are utilities that protect GM games from being decompiled using standard decompilers, though. An increasingly-cited flaw is GM's relative lack of multiplatform support, and its ever-rising registration fees despite GM's lack of particularly innovative new features in recent updates. These problems have been taken care of in Studio.
For easier use, legacy GameMaker can run in "Simple Mode" instead of "Advanced Mode." Simple Mode leaves out more advanced settings, such as the Script resource, and is intended for use by new users that do not have prior knowledge of coding or GML. Advanced Mode consists of the same outline as Simple Mode, though it has more programming choices to choose from to fine-tune your game. Advanced Mode is intended for experienced users. This feature was removed in Studio.
A small minority of GM users continue to use older versions for various reasons. As of mid-2014, there were still more MFGGers using GM 8.x than GM Studio, despite the free version of Studio containing more features than GM 8 and the end of YoYo Games' official support for older versions. Many MFGGers stick to older versions because of the complexity of converting older games to newer versions of GM, or fears about GameMaker: Studio's occasional game-breaking bugs.
Not only GameMaker: Studio included more export options, but it also added shaders, Box2D physics, built in OGG support, and an actual compiler. In addition to this, games made in versions as of GameMaker: Studio have a much faster startup time, thanks to the new C++ runner and YoYo Compiler. Studio has a free version called Standard, which includes a "Made with GameMaker: Studio" splash screen on startup. Standard includes everything that legacy versions of GameMaker includes, minus the obsolete functions. Professional adds additional functionality such as source control and texture groups, and Master Collection gets you all the export options for a hefty price, even those that might get released after you bought Master Collection.
GameMaker: Studio often gets criticized for its poor IDE. The IDE suffers from slowdowns, glitches and instability often. Some errors even cause projects to be corrupted.
GameMaker Studio 2
Released in late 2016, the latest version of GameMaker is GameMaker Studio 2. The biggest difference it introduces is the new IDE. Unlike Studio 1, Studio 2 doesn't rely on multiple windows, instead it has a new workspace system. Backgrounds were also removed with this version. It also includes built-in autotiling, animated tiles, layers, a new camera system, better 3D support, a new image editor, and much more.
Just like how people refused to switch to GameMaker: Studio, most MFGGers didn't make the jump to GameMaker Studio 2 due to the price, and the fear of their games breaking during conversion process.