User:Orcaaaaa/GameMaker Page Rewrite

GameMaker
Original author(s)Mark Overmars
Developer(s)YoYo Games
Initial release15 November 1999; 25 years ago (1999-11-15)
Stable release
v2024.2 / 29 February 2024; 8 months ago (2024-02-29)
Written in
Operating system
Platform
Available in
LicenseProprietary
Websitegamemaker.io

GameMaker (originally Animo, Game Maker (until 2011) and GameMaker Studio) is a series of cross-platform game engines created by Mark Overmars in 1999 and developed by YoYo Games since 2007. The latest iteration of GameMaker was released in 2022.

GameMaker accommodates the creation of cross-platform and multi-genre video games using either a custom programming language known as GameMaker Langauge (GML), or via a drag-and-drop visual language known as GML Visual. GameMaker was originally designed to teach novice computer programmers to create games without requiring much programming knowledge by using an earlier iteration of this system.

Overview

edit

GameMaker is primarily intended for making games with 2D graphics, allowing out-of-box use of raster graphics, vector graphics (via SWF),[1] and 2D skeletal animations (via Esoteric Software's Spine)[2][3] along with a large standard library for drawing graphics and 2D primitives.[4] While the software allows for limited use of 3D graphics, this is in form of vertex buffer[5] and matrix functions, and as such not intended for novice users.

The engine uses Direct3D on Windows and Xbox One; OpenGL on macOS and Linux; OpenGL ES on Android and iOS, WebGL or 2d canvas on HTML5, and proprietary APIs on consoles.

Supported platforms

edit

GameMaker supports building for Microsoft Windows, macOS, Ubuntu, HTML5, Android, iOS, Amazon Fire TV, Android TV, Raspberry Pi,[6] PlayStation 4, Nintendo Switch[7], Xbox One[8][9][10], with support for PlayStation 5 and Xbox Series X|S announced in February 2021[11] and added later.[when?][12]

In the past, GameMaker supported building for Windows Phone, UWP, Tizen, PlayStation 3, and PlayStation Vita (not supported in GMS2 "largely for business reasons").[13]

PlayStation Portable support was demonstrated in May 2010,[14] but never made publicly available (with only a small selection of titles using it).[15]

Between 2007 and 2011, YoYo Games maintained a custom web player plugin for GameMaker games[16] before releasing it as open-source mid-2011[17] and finally deprecating in favor of a HTML5 export target.

Platform Licensing

edit

Prior to August 2021, users had to obtain a single-purchase license for one of five different platforms, excluding consoles, depending on the target platform they wanted to publish on (such as desktop or mobile). An annual license was required to publish for consoles, which was also contained in an all-encompassing annual Ultimate license that covered all supported platforms.

YoYo Games announced a change to the licensing approach in August 2021, allowing GameMaker to be used for free to learn, and eliminating the single-purchase options. Instead, it simplified the license scheme to only two tiers, one that supported publishing on all non-console platforms, and a higher tier that added in console platform publishing support at a lower rate than the prior Ultimate license. These changes were aided by the financial investment of Opera into YoYo Games to help reduce costs for GameMaker users.[18]

On 22 November 2023, GameMaker announced that it would be "free for non-commercial use on all platforms (excluding console)," and the current subscription system would be replaced by a one-time license.[19]

GameMaker's IDE encompasses a selection of built-in editors covering raster graphics, level creation, scripting, shaders (notably supporting both GLSL and HLSL via transpilation)[citation needed], including external files for installation with the game, among other engine-specific tools.

Historically, GameMaker's IDE and Runtime versions have always been tightly coupled, and updating one required updating the other. This was the case through to GameMaker Studio 2, though this has seen a shift recently[citation needed] in favour of decoupling the engine and IDE; the first of which being in the introduction of a Runtime Feed selection, and a planned package manager[20] using npm.

GameMaker Language

GameMaker Language (GML) is GameMaker's scripting language. It is an imperative, dynamically typed language commonly likened to JavaScript and C-like languages.[21][22][23]

The language's default mode of operation on native platforms is via a stack machine; it can also be source-to-source compiled to C++ via LLVM for higher performance, via the YoYo Compiler.[24] On HTML5, GML is source-to-source compiled to JavaScript with optimizations and minification applied in non-debug builds.[25]

GML Visual

edit

GML Visual (originally called "Drag and Drop"[26]) is GameMaker's visual scripting tool.

GML Visual allows developers to perform common tasks (like instantiating objects, calling functions, or working with files and data structures) without having to write a single line of code. It remains to be largely aimed at novice users.[27]

Historically, Visual remained fairly limited in capability[28][29] allowing for many simple pre-made actions and as a substitute for more robust user-written GML. On the release of GameMaker Studio 2 - along with a renaming to GML Visual - the system was reworked to more directly map to GML code with a new interface, and can be directly converted into code from the IDE.[30]

Syntax

edit

The syntax of GML has evolved over its history - firstly tracing its roots to that of Delphi; being the language the engine itself was initially programmed in. This manifested most notably today in the option to use the keywords begin, end, and then, which have since seen criticism[citation needed] by users of modern versions for using up valuable variable names.

The most well-cited comparison in syntax to modern GML is JavaScript[citation needed], both sharing C-like traits, the function keyword, among others. [TODO: flesh this section out!]

GML received its largest upgrade to its syntax to date in GameMaker Studio release 2.3, which implemented an array of modern features for the langauge [TODO: flesh this section out!]

// TODO: some syntax here!
// Using JS highlighting as the closest match for GML's keywords.

Current Releases

edit

[TODO: this will contain info about modern GM.]

History

edit

GameMaker was originally developed by Mark Overmars. The program was first released on 15 November 1999 under the name of Animo. At the time, it was just a graphics tool with limited visual scripting capabilities.[31] The first versions of the program were being developed in Delphi.[32]

Subsequent releases saw the name changed to Game Maker and software moving towards more general-purpose 2D game development.

Versions 5.0 and below were released as freeware; version 5.1 introduced an optional registration fee; version 5.3 (January 2004) introduced a number of new features for registered users, including particle systems, networking, and possibility to extend games using DLLs.[33]

Version 6.0 (October 2004) introduced limited functionality for use of 3D graphics, as well as migrating the runtime's drawing pipeline from VCL to DirectX.[34]

Growing public interest led Overmars to seek help in expanding the program, which led to partnership with YoYo Games in 2007.[35] From this point onward, development was handled by YoYo Games while Overmars retained a position as one of the company's directors.[36] Version 7.0 was the first to emerge under this partnership.

The first macOS compatible version of program was released in 2009,[37] allowing games to be made for two operating systems with minimal changes.

Version 8.1 (April 2011) sees the name changed to GameMaker (lacking a space) to avoid any confusion[38] with the 1991 software Game-Maker. This version also saw the runtime rewritten in C++ to address performance concerns[39][failed verification][contradictory] with previous versions.

September 2011 sees the initial release of GameMaker: HTML5 - a new version of software with capability to export games for web browsers along with desktop.[40] This release also introduced the first iteration of a new IDE for the engine.[citation needed]

GameMaker: Studio entered public beta in March 2012[40] and enjoyed a full release in May 2012.[41] Initial supported platforms included Windows, Mac, HTML5, Android, and iOS. Additional platforms and features were introduced over the years following;[42][43][44][45] Late 2012 there was an accident with anti-piracy measures misfiring for some legitimate users.[46]

In February 2015, GameMaker was acquired by Playtech together with YoYo Games. Announcement reassured that GameMaker will be further improved and states plans to appeal to broader demographic, including more advanced developers.[47][48]

November 2016 saw the initial release of GameMaker Studio 2 beta,[49] with full release in March 2017.[50] This version spots a completely redesigned IDE rewritten in C#[51], and a number of new editor and runtime features.

With the move to focus on GameMaker Studio 2, in June 2017 GameMaker: Studio was officially discontinued.[52], releasing a final update 1.4.9999 in August[53] which removed now obsoleted online integrations among other final bugfixes.

In August 2020, major update 2.3 was released, bringing a host of new features to IDE, runtime, and the scripting language.[54] The version of GML that released with this update has been subsequently referred to as "GMLv2"[citation needed], and most notably contained the addition of garbage-collected Structs and the promotion of the Array type to a first-class data type; closing the gap in the integration of more complex Data structures into the language, which had previously only supported these via the manually memory managed DS indices[citation needed]. 2.3 also introduced functions in a form more familiar to other languages such as JavaScript - with a function keyword, named arguments, and use as instance-bound methods.[55]

In January 2021, YoYo Games was sold to Opera Software for roughly 10 million USD. The development team of GameMaker remained unchanged, and has not caused any major development changes to GameMaker.[56][57][58]

In August 2021, YoYo Games announced a change to their licensing, switching from a license-per-export model to a subscription of four tiers: Creator, offering Desktop exports, Indie, offering all non-console exports, and Enterprise, offering all exports and engine source access; and introduced a permanent free tier.[59][60]

In January 2022, YoYo Games changed GameMaker Studio 2's numbering scheme so the version corresponds to the year and the month it was released (For example, 2022.1 for January 2022).[61]

October 2022 saw the first Long-term stable release of the engine[62], and will be supported until October 2024[63].

In April 2022, YoYo Games dropped the GameMaker Studio 2 name in order to match the new version numbering scheme, changing it to simply GameMaker.[64]

In May 2023, YoYo Games announced a new selection of features and improvements to both the Runtime and IDE, including an overhauled code editor, IDE plugins, IDE AI features for the Manual (in collaboration with OpenAI), a rebuilt GameMaker Marketplace, Prefabs, and the announcement of a closed beta for a rebuilt engine runtime to address long-running technical debt within the aging runtime[citation needed], dubbed GMRT.[65] Many of these features have since been delayed for Quality assurance and are not yet ready for public use.[citation needed]

Two years after introduction, in November 2023 YoYo Games scrapped the subscription model for all but Enterprise tiers, replacing it with a new model allowing for permanent free non-commercial use, and a single-time license fee for publishing games commercially on all platforms excluding consoles.[66] Users with previous subscriptions were offered discounts on this commercial license directly proportional to the amount paid previously on subscriptions. Users of the original GMS2 platform licenses may still publish under these licenses indefinitely on the current GMS2 Runtimes, but must pay for the new license for commercial use of the New Runtime.[67]

In February 2024, GameMaker 2024.2 released, marking the first large change to the engine's internal metadata format since GMS2's release. This change was made to accomodate parser changes needed to make way for the introduction of Prefabs later in the year.[68]

References

edit
  1. ^ Kerr, Chris. "GameMaker Studio 2 gets new low-cost 'Creators Edition'". Retrieved 9 May 2018.
  2. ^ "GDC17: GameMaker Studios 2.0 Takes On Industry Titans | Broken Joysticks". Broken Joysticks. 12 March 2017. Archived from the original on 7 September 2018. Retrieved 9 May 2018.
  3. ^ "Skeletal Animation Sprites Using Spine | Blog | YoYo Games". Yoyo Games. Archived from the original on 1 June 2019. Retrieved 9 May 2018.
  4. ^ "Drawing". GameMaker Manual. Retrieved 1 April 2024.{{cite web}}: CS1 maint: url-status (link)
  5. ^ "Drawing And Creating Primitives". docs2.yoyogames.com. Retrieved 9 May 2018.
  6. ^ "YoYo Games expand their Linux support in GameMaker Studio 2 to the Raspberry Pi". GamingOnLinux. 21 December 2020.
  7. ^ Good, Owen (9 March 2018). "Undertale coming to Switch brings indie games' GameMaker Studio engine with it". Polygon. Retrieved 9 March 2018.
  8. ^ Evan Lewis (6 November 2014). "Learn how to make your own video games with GameMaker: Studio at RetroGameCon". Syracuse Media Group. Retrieved 2 December 2014.
  9. ^ "This will let you say 'Happy Birthday,' 'Get Well Soon' with a video game". Alexa Ray Corriea. 22 January 2014. Retrieved 23 January 2014.
  10. ^ Moore, Bo (31 July 2014). "No coding required: How new designers are using GameMaker to create indie smash hits". PC Gamer. Retrieved 15 January 2015.
  11. ^ "GameMaker Studio 2 launches support for PS5 and Xbox Series X|S | Development News". MCV/DEVELOP. 25 February 2021.
  12. ^ "Building via Command Line". manual.gamemaker.io. Retrieved 1 April 2024.
  13. ^ "We are YoYoGames, we recently announced GameMaker Studio 2. Ask us anything. • r/gamemaker". reddit. 15 November 2016. Retrieved 9 May 2018.
  14. ^ "Create games for your PSP with Game Maker". Pocket Gamer. Retrieved 8 May 2018.
  15. ^ "Indie platformer They Need To Be Fed coming to PSP". Pocket Gamer. Retrieved 8 May 2018.
  16. ^ "GMking's MarkUp Magazine - Issue 12".
  17. ^ "YoYo Website plans | Blog | YoYo Games". Yoyo Games. Archived from the original on 30 June 2018. Retrieved 9 May 2018.
  18. ^ Dealessandri, Marie (10 August 2021). "YoYo Games streamlines GameMaker licenses, offers new free version". GamesIndustry.biz. Retrieved 10 August 2021.
  19. ^ "GameMaker Free for non-commercial use". twitter.com. 22 November 2023. Retrieved 22 November 2023.
  20. ^ "Package Manager · Issue #3164 · YoYoGames/GameMaker-Bugs". GitHub. Retrieved 1 April 2024.
  21. ^ Christian, Brian; Isaacs, Steven (28 December 2015). GameMaker Programming By Example. Packt Publishing Ltd. ISBN 978-1-78588-847-2.
  22. ^ Ford, Jerry Lee Jr. (1 June 2009). Getting Started with Game Maker. Cengage Learning. ISBN 978-1435455214.
  23. ^ Habgood, Jacob; Overmars, Mark (31 December 2006). The Game Maker's Apprentice: Game Development for Beginners. Apress. ISBN 978-1-4302-0159-5.
  24. ^ "GameMaker: Studio introduces YoYo Compiler and cross-platform Shader support". Retrieved 9 May 2018.
  25. ^ Elliott, Jason Lee (22 April 2013). HTML5 Game Development with GameMaker. Packt Publishing Ltd. ISBN 978-1-84969-411-7.
  26. ^ "What New Features Are Included In GameMaker Version 2022.3?". GameMaker.
  27. ^ "Interview: James Cox of YoYo Games about GameMaker Studio 2 | This Is Xbox". This Is Xbox. Archived from the original on 6 January 2020. Retrieved 9 May 2018.
  28. ^ "Drag-and-Drop icons to GameMaker Language reference" (PDF).
  29. ^ "No coding required: How new designers are using GameMaker to create indie smash hits". pcgamer. Retrieved 9 May 2018.
  30. ^ "GameMaker Studio creators look back at 17 years of development". VentureBeat. 4 September 2017. Retrieved 9 May 2018.
  31. ^ Ford, Jerry Lee Jr. (1 June 2009). Getting Started with Game Maker. Cengage Learning. ISBN 978-1435455214.
  32. ^ "Game Maker Studio engine". Desura. Retrieved 29 May 2013.
  33. ^ "Game Maker Pages". 10 January 2004. Archived from the original on 10 January 2004. Retrieved 8 May 2018.
  34. ^ Ford, Jerry (2010). Getting Started with Game Maker. Course Technology, a part of Cengage Learning. ISBN 978-1-59863-882-0.
  35. ^ Stanton, Rich (23 July 2015). A Brief History Of Video Games: From Atari to Virtual Reality. Little, Brown Book Group. ISBN 9781472118813.
  36. ^ Habgood, Jacob; Overmars, Mark (31 December 2006). The Game Maker's Apprentice: Game Development for Beginners. Apress. ISBN 978-1-4302-0159-5.
  37. ^ Ford, Jerry Lee Jr. (1 June 2009). Getting Started with Game Maker. Cengage Learning. ISBN 978-1435455214.
  38. ^ Eric-Jon Rössel, Tairne (30 April 2010). "The Original Game-Maker". Archived from the original on 1 March 2014. Retrieved 15 January 2015.
  39. ^ Ford, Jerry (2009). Getting Started with Game Maker. Cengage Learning. p. 333. ISBN 978-1133168966.
  40. ^ a b Rose, Mike. "YoYo Games Releases GameMaker: HTML5 Tools". Retrieved 8 May 2018.
  41. ^ "YoYo Games unveils GameMaker: Studio for cross-platform development". VentureBeat. 22 May 2012. Retrieved 8 May 2018.
  42. ^ "Game Maker Studio 1.1 released - csanyk.com". csanyk.com. 6 September 2012. Retrieved 8 May 2018.
  43. ^ "YoYo Games updates GameMaker: Studio to speed development time". VentureBeat. 27 August 2013. Retrieved 8 May 2018.
  44. ^ "GameMaker est disponible en version 1.3 et apporte un nouveau débogueur et le support des consoles de Sony". Developpez.com (in French). Retrieved 8 May 2018.
  45. ^ "Welcome to GameMaker: Studio 1.4 | GameMaker Blog". 18 June 2016. Archived from the original on 18 June 2016. Retrieved 8 May 2018.
  46. ^ Chapple, Craig (29 November 2012). "Gamemaker anti-piracy bug destroys developer assets | Game Development | News by Develop". Develop. Intent Media. Archived from the original on 27 January 2013. Retrieved 28 April 2019.
  47. ^ Vinciguerra, David; Howell, Andrew (16 October 2015). The GameMaker Standard. CRC Press. ISBN 978-1-317-51469-5.
  48. ^ "YoYo Games is Acquired by Playtech plc | YoYo Games". 26 March 2015. Archived from the original on 26 March 2015. Retrieved 8 May 2018.
  49. ^ "GameMaker Studio 2 enters beta". PCGamesN. Retrieved 8 May 2018.
  50. ^ GameFromScratch.com, Copyright (9 March 2017). "GameMaker Studio 2 Released". www.gamefromscratch.com. Retrieved 8 May 2018.
  51. ^ "GameMaker Studio 2: Remade to Stay Up-to-date - Gamesauce: Global Inspiration for Game Developers". www.gamesauce.biz. Retrieved 8 May 2018.
  52. ^ Smart, Gavin (8 June 2017). "Moving From GameMaker Studio 1.4 To GameMaker Studio 2". GameMaker. Retrieved 1 April 2024.
  53. ^ Manthorp, Ross (30 August 2018). "GameMaker: Studio 1.4.9999 Released". GameMaker. Retrieved 1 April 2024.{{cite web}}: CS1 maint: url-status (link)
  54. ^ Miller, George (20 August 2020). "YoYo Games launches GameMaker Studio 2 version 2.3". European Gaming Industry News.
  55. ^ Alexander, Mark (18 August 2020). "Introducing The Latest GML Features in GameMaker 2.3". GameMaker. Retrieved 1 April 2024.
  56. ^ "Opera bought the owner of GameMaker for its new gaming division – Destructoid". 20 January 2021.
  57. ^ "Opera acquires YoYo Games for $10 million and launches Opera Gaming division | VentureBeat". 20 January 2021.
  58. ^ "Opera Acquires YoYo Games, Launches Opera Gaming" (Press release).
  59. ^ Manthorp, Ross (10 August 2021). "Export Your Games To More Platforms With GameMaker". GameMaker. Retrieved 1 April 2024.
  60. ^ Dealessandri, Marie (10 August 2021). "oYo Games streamlines GameMaker licenses, offers new free version". gamesindustry.biz. Gamer Network Limited, a ReedPop company.
  61. ^ "Version 2022.1 Release & "Feather" Reveal". GameMaker. Retrieved 29 July 2022.
  62. ^ Bramble, Ross (22 April 2022). "GameMaker Update: What's Coming To GameMaker In 2022 And Beyond?". GameMaker. Retrieved 1 April 2024.
  63. ^ Teunis, Bart (31 October 2022). "GameMaker Update 2022.0 Now Available". GameMaker. Retrieved 1 April 2024.
  64. ^ "GameMaker Brand Guidelines | Download The PDF". GameMaker. Retrieved 29 July 2022.
  65. ^ Manthorp, Ross (2 May 2023). "Check Out The Biggest Changes Coming To GameMaker In 2023". GameMaker. Retrieved 1 April 2024.
  66. ^ Kay, Russell (21 November 2023). "GameMaker Is Growing - Celebrate With More Free Options This Thanksgiving". GameMaker. Retrieved 1 April 2024.
  67. ^ "November 2023 Pricing/Terms Change FAQ". GameMaker Help Centre. November 2023. Retrieved 1 April 2024.
  68. ^ Matharoo, Gurpreet S. (4 March 2024). "GameMaker Update 2024.2 Now Available". GameMaker. Retrieved 1 April 2024.{{cite web}}: CS1 maint: url-status (link)
edit