This page started life using the Creative Commons Licensed content from this Wikipedia article.
Don't be afraid to rewrite sections in a more original style!
The game maker logo

GameMaker: Studio (originally named Animo and later Game Maker) is a game creation system originally developed by Mark Overmars in the Delphi programming language.[1] It is currently developed and published by YoYo Games.[2] GameMaker allows an easy entry point to game design through its integrated design tools. It is distinguished from earlier game creation systems by a comprehensive scripting language (referred to as Game Maker Language, or GML) that allows detailed modification of game elements well beyond its integrated tools.

                              .o""            ""..                       
                            ,,''                 ``b.                   
                           d'                      ``b                   
                          d`d:                       `b.                 
                         ,,dP                         `Y.               
                        d`88                           `8.               
  ooooooooooooooooood888`88'                            `88888888888bo, 
 d"""    `""""""""""""Y:d8P                              8,          `b 
 8                    P,88b                             ,`8           8 
 8                   ::d888,                           ,8:8.          8 
 :                   dY88888                           `' ::          8 
 :                   8:8888                               `b          8 
 :                   Pd88P',...                     ,d888o.8          8 
 :                   :88'dd888888o.                d8888`88:          8 
 :                  ,:Y:d8888888888b             ,d88888:88:          8 
 :                  :::b88d888888888b.          ,d888888bY8b          8 
                     b:P8;888888888888.        ,88888888888P          8 
                     8:b88888888888888:        888888888888'          8 
                     8:8.8888888888888:        Y8888888888P           8 
 ,                   YP88d8888888888P'          ""888888"Y            8 
 :                   :bY8888P"""""''                     :            8 
 :                    8'8888'                            d            8 
 :                    :bY888,                           ,P            8 
 :                     Y,8888           d.  ,-         ,8'            8 
 :                     `8)888:           '            ,P'             8 
 :                      `88888.          ,...        ,P               8 
 :                       `Y8888,       ,888888o     ,P                8 
 :                         Y888b      ,88888888    ,P'                8 
 :                          `888b    ,888888888   ,,'                 8 
 :                           `Y88b  dPY888888OP   :'                  8 
 :                             :88.,'.   `' `8P-"b.                   8 
 :.                             )8P,   ,b '  -   ``b                  8 
 ::                            :':   d,'d`b, .  - ,db                 8 
 ::                            `b. dP' d8':      d88'                 8 
 ::                             '8P" d8P' 8 -  d88P'                  8 
 ::                            d,' ,d8'  ''  dd88'                    8 
 ::                           d'   8P'  d' dd88'8                     8 
  :                          ,:   `'   d:ddO8P' `b.                   8 
  :                  ,dooood88: ,    ,d8888""    ```b.                8 
  :               .o8"'""""""Y8.b    8 `"''    .o'  `"""ob.           8 
  :              dP'         `8:     K       dP''        "`Yo.        8 
  :             dP            88     8b.   ,d'              ``b       8 
  :             8.            8P     8""'  `"                 :.      8 
  :            :8:           :8'    ,:                        ::      8 
  :            :8:           d:    d'                         ::      8 
  :            :8:          dP   ,,'                          ::      8 
  :            `8:     :b  dP   ,,                            ::      8 
  :            ,8b     :8 dP   ,,                             d       8 
  :            :8P     :8dP    d'                       d     8       8 
  :            :8:     d8P    d'                      d88    :P       8 
  :            d8'    ,88'   ,P                     ,d888    d'       8 
  :            88     dP'   ,P                      d8888b   8        8 
  '           ,8:   ,dP'    8.                     d8''88'  :8        8 
              :8   d8P'    d88b                   d"'  88   :8        8 
              d: ,d8P'    ,8P""".                      88   :P        8 
              8 ,88P'     d'                           88   ::        8 
             ,8 d8P       8                            88   ::        8 
             d: 8P       ,:  -hrr-                    :88   ::        8 
             8',8:,d     d'                           :8:   ::        8 
            ,8,8P'8'    ,8                            :8'   ::        8 
            :8`' d'     d'                            :8    ::        8 
            `8  ,P     :8                             :8:   ::        8 
             8, `      d8.                            :8:   8:        8 
             :8       d88:                            d8:   8         8 
  ,          `8,     d8888                            88b   8         8 
  :           88   ,d::888                            888   Y:        8 
  :           YK,oo8P :888                            888.  `b        8 
  :           `8888P  :888:                          ,888:   Y,       8 
  :            ``'"   `888b                          :888:   `b       8 
  :                    8888                           888:    ::      8 
  :                    8888:                          888b     Y.     8, 
  :                    8888b                          :888     `b     8: 
  :                    88888.                         `888,     Y     8: 

Development history Edit

GameMaker was originally titled Animo,[3] and began as a program for creating 2D animations. Mark Overmars released the first public version of GameMaker on 15 November 1999. While this version of GameMaker had a built-in scripting language, which was not as complex as it is in more recent versions, it and the next few versions of GameMaker did not have DirectX support, a separate runner to run games independently from GameMaker, or the ability to compile games into executable files.[3]

On 26 January 2007, Mark Overmars announced his partnership with YoYo Games, a company based in the United Kingdom.[4] The company, headed by CEO Sandy Duncan (former Vice President of Xbox Europe),[5] was founded to support the future development of GameMaker and to build a community for developers and casual gamers. The motive behind the cooperation is that it would bring improved development to the software as well as provide a better website for its users. This was done in part by creating a free hosting service for any GameMaker games.

On 2 October 2012, YoYo Games and Valve Software announced a partnership to make the GameMaker: Studio family of products easily available to more than 45 million users of Steam with the launch of the Steam Software Store.[6]

Design and uses Edit

Template:Video game requirements GameMaker is designed to allow its users to easily develop video games without having to learn a complex programming language such as C++ or Java. It is also possible to create add-ons for the games created with GameMaker. Such extensions, as they are known to GameMaker users, provide features such as advanced 3D (via an Ogre Rendering Engine port) and better sound. Extensions to the main IDE are limited to the creation of new scripted drag and drop actions (see below).

GameMaker's development interface uses a drag-and-drop system, allowing users unfamiliar with traditional programming to intuitively create games by visually organizing icons on the screen. These icons represent actions that would occur in a game, such as movement, basic drawing, and simple control structures. Users also have the ability to create their own "action libraries" using the Library Maker. GameMaker aids in the creation of many types of games, including platform games, first-person shooters, third-person shooters, massively multiplayer online games and construction and management simulation.

Game Maker LanguageEdit

Main article: Game Maker Language

GML is the primary scripting language that is interpreted similarly to Java's Just-In-Time compilation used in GameMaker. It allows users to further enhance and control the design of their game through conventional programming, as opposed to the drag-and-drop system. The syntax of GML borrows aspects from other languages such as C, C++ and Java, effectively making use of object-oriented programming.[7] Originally, GML was designed to supplement the drag-and-drop interface, allowing advanced users to add greater functionality to their games or programs. Newer versions of GameMaker actually use GML as their base, with all drag-and-drop functions as pre-written GML scripts.Template:Citation needed GML is an interpreted programming language instead of a compiled language. When GameMaker creates a stand-alone game, all GML (including drag and drop functions) is packed into the game executable. Every time the generated program is executed, an included interpreter carries out the commands indicated by the GML code; this makes GameMaker-created games able to be easily decompiled and reverse engineered. (Game makers wishing to limit this must use encryption.) Being an interpreted language, GML is usually significantly slower than compiled languages such as C++ or Delphi. Implementation of LLVM compiler to fully compile GML code for each target OS is planned and being worked on for the upcoming 1.2 version of GameMaker : Studio. It is claimed that the code execution speed will increase around 10 times.[8]

Graphics capabilitiesEdit

GameMaker primarily runs games that use 2D graphics. GameMaker's graphics capabilities underwent significant improvements with each major release version, allowing for additional functionality including more efficient alpha adjustments and blending settings for sprites and other shapes.[9] By version 6.0 (Windows), Game Maker incorporated DirectX, allowing more advanced graphics functions. Version 7.0 (Mac OS X) uses OpenGL to render sprites.[10]

Starting with version 6.0 (Windows), Game Maker added Direct3D, allowing the use of limited 3D graphics. For versions 7.0 (Macintosh) and up, OpenGL is used for 3D graphics and also allows limited support for simple 3D models. Converters used to make it possible to use more popular 3D formats such as .3ds, and .obj for use in a 3D project. Extension packages such as OGRE used to be used to expand Game Maker's basic functionality. It also supports the ability to create particle effects such as rain, snow and clouds, however not natively in 3D except through use of Dynamic Link Library. Support for the editing of 32-bit .png files was added in the 8.0 version of the software which has also enabled users to use images with alpha channels.[11][12] Upcoming 1.2 version update of GameMaker : Studio will allow vertex- and fragment shaders to be used using both GLSL and HLSL.[13]

Engine compatiblityEdit

Games built with Game Maker 6 became incompatible with Windows Vista and later, while Game Maker 5 and Game Maker 7 games are compatible. While YoYo Games recommends rebuilding the games with a recent Game Maker engine, also a patch software to fix the executables was released.[14] Recently support for version 8.1 and lower have been deprecated, GameMaker is no longer backwards compatible.[15]

Extension packagesEdit

GameMaker games can load and use DLLs for additional functionality. The community has developed a variety of DLLs to extend GameMaker with things such as socket support and MySQL connectivity. As of version 7, the new extension mechanism allows users to include DLLs, GML scripts and action libraries in pre-built extension packages.[16]

GameMaker community Edit

The GameMaker community is an online forum made to discuss the program and games created with it. It also discusses more general game design topics as well as game graphics, sound, and game distribution methods. The current forum was created by Mark Overmars[17] on 18 September 2003,[18] a month after the first release and is now a subdomain of the official YoYo Games website.


Free version
The Free version allows users to have a look at the basic features of GameMaker and has a limit to the number of resources allowed.
MIPS version
On 4 January 2013, YoYo Games & MIPs Technologies announced the release of GameMaker: Studio™ MIPS edition which allows fast and easy game development software for MIPS-Based™ products such as tablets and other devices.[19]
Standard version
Standard is the first paid version; it gives the user access to unlimited resources, the chance to change the splash screen and other icons and access to the Windows 8 export.
Professional version
Professional allows users to add Export Modules to their licence and therefore export to additional platforms; it also gives access to texture management and in-game advertising and purchases.
Master Collection version
The Master Collection includes all of the export modules which give users a large range of platforms to choose from as well automatic upgrades when new export modules are released.

Studio is also available on Steam and has the same versions as stand-alone Studio, but in addition, it can export to the GameMaker: Studio Steam Workshop.

Export modules Edit

GameMaker allows for redistribution on multiple platforms. There is a "free" version of GameMaker: Studio which limits the user from using more than 10 types of any resource, and excludes features from the other versions, which must be pay for. Currently Game Maker: Studio can export to 8 platforms from a single codebase: Windows, Mac OS X, iOS, Android, HTML5, Windows 8, Windows Phone 8 and Linux Ubuntu.[20][21][22][23][24][25][26][27][28][29]

Criticism Edit

Digital rights management Edit

Game Maker License Check

Game Maker 7 (Mac) DRM

Game Maker Studio DRM Misfire screenshot

Screenshot showing the DRM misfiring on a paid customer.

On 5 January 2011, YoYo Games posted their interpretation of a formal cease and desist letter to their blog. The post scolded the creators of a decompilation software which would allow users to bypass YoYo Games and independently publish their iOS apps, posing as a financial threat.Template:Citation needed

In late 2012/early 2013, YoYoGames released a version of their new Studio IDE for cross-platform development that would import games and destroy much of the image type resources for some legitimate purchasers of the software by inserting a symbol of a pirate on top of the image. This was due to a fault in their Digital Rights Management software implementation which they use as a method of combating pirated copies of the software. The issue was addressed and fixed a few weeks later by removing the DRM.[30][31][32][33] There has also been controversy regarding the Steam method of DRM in which several consumers have not been able to get the program working.Template:Citation needed The DRM misfire was originally introduced by Mike Dailly as a pun on the movie Pirates of Silicon ValleyTemplate:Citation needed.

2013 April Fools' Day joke Edit

On 30 March 2013, Mike Dailly announced that YoYoGames was being purchased by the Valve Steam developers. The joke drew much criticism from the community and led to widespread arguments within the community and a large removal of several users from the Game Maker community.[34] YoYoGames Chief Executive Officer, Sandy Duncan, later learned of the prank and promptly had it removed from the site, however several moderators continued reposting the topic. An apology was later given.[35]

Hacking scandals Edit

In March 2013 it was discovered that the GameMaker Community forum, which is owned and operated by YoYo Games, had been hacked unknowningly for an unknown period of time, allowing the hacker to gain access to accounts and personal information including passwords and other data.[36][37] A person claiming to be the hacker later contacted a moderator of the forum, True Valhalla, and was subsequently interviewed on the moderator's independent news website Game Maker Blog.[38] In the interview, the hacker claimed that he had stolen over 221,000 passwords which he had decrypted, and that he had sold them to at least one person for the purpose of exploiting Runescape accounts. He also claimed that forum administrator Trollsplatterer enabled the attack when his own website was hacked, which resulted in his GameMaker Community forum password being compromised. True Valhalla was removed from his moderating position soon after publishing the interview though other reasons were quoted as the reason for the demotion.[39] YoYo Games did not notify users who had their details compromised, a move which was criticized by some members of the community.

On May 9, 2013 it was revealed the same person was hacking the Game Maker community again using similar exploits to Invision Power Board software.[40] The hack involved a zero-day attack involving a Twitter feed and an IRC chat link where the hacker could be found.[41] A formal apology was released by the company.[42]

References Edit

External links Edit

Template:Wikibooks Template:Commons category

Template:Video game engines