# Game-Maker

Game-Maker (aka RSD Game-Maker) is an MS-DOS-based suite of game design tools, accompanied by demonstration games, produced between 1991 and 1995 by the Amherst, New Hampshire based Recreational Software Designs and sold through direct mail in the US by KD Software. Game-Maker also was sold under various names by licensed distributors in the UK, Korea, and other territories including Captain GameMaker (Screen Entertainment, UK) and Create Your Own Games With GameMaker! (Microforum, Canada). Game-Maker is notable as one of the first complete game design packages for DOS-based PCs, for its fully mouse-driven graphical interface, and for its early support for VGA graphics, Sound Blaster sound, and full-screen four-way scrolling.
Primary distribution for Game-Maker was through advertisements in the back of PC and game magazines such as Computer Gaming World and VideoGames & Computer Entertainment. At release Game-Maker was priced at $89, and shipped on 5.25" diskette with seven or eight demonstration or tutorial games. Later releases were less expensive, and shipped on CD-ROM with dozens of sample games and a large selection of extra tools and resources.
After some consultation with the user base, on 12 July 2014 original coder Andy Stone released the Game-Maker 3.0 source code on GitHub, under the MIT license.

## Construction

Game-Maker consists of a text-mode wrapper, tying together a collection of WYSIWYG design tools. The tools produce proprietary resources that are compiled together and parsed with RSD's custom XFERPLAY game engine. The design tools include:
* Palette Designer – for designing and editing custom 256-color .PAL palette files (for sprites, color #255 is clear)
* Block Designer – for designing 20x20 pixel .BBL background tiles and .CBL/.MBL animation frames for characters and monsters
* Character Maker – for animating and sequencing .CHR character sprites
* Monster Maker – for animating and sequencing .MON "monster" (i.e., non-player) sprites
* Map Maker – for designing 100x100 tile .MAP files (10 screens tall; 6-1/4 screens across)
* Graphics Image Reader – for importing visuals from .GIF files, produced with external painting programs
* Sound Designer – for designing PC speaker .SND files, assigning Sound Blaster .VOC samples, and formatting .CMF music files
* Integrator – for compiling and organizing resources together into a playable .GAM file
Game-Maker involves no scripting language; all design tools use a mouse-driven 320x200 VGA display, with a shared logic and visual theme. Users draw background tiles pixel-by-pixel in an enlarged window, and can pull tiles from the palette to arrange in a "sandbox" area. A further menu allows users to set physical properties—solidity, gravity, animation, various counter values—for each block. The user draws maps by pulling blocks from the palette and painting with them using simple paintbrush, line, shape, and fill tools.
Characters can have up to 15 keyboard commands, plus idle, death, and injury animations. They can hold an inventory and money, earn score, gain and lose hit points and lives, and track several counters—often used for keys and similar functions. Monsters have simple animations and movements, and can also change behavior in response to the player.
Playable games can be exported complete with a portable version of the XFERPLAY engine, sound drivers, and configuration files. All games record high scores and (in later versions) attract mode replays. All games also feature instant save and load, and support standard PC joysticks.
In later versions of the software, games also can incorporate several formats including ASCII text data, CompuServe .GIF files, and Autodesk Animator .FLI animations into multimedia presentations during menus and between levels. Although Game-Maker includes no tools for developing these files, the formats are standardized enough to allow the user a choice of standalone utilities. In addition, image data produced with outside programs such as Deluxe Paint is easily imported and split into background tiles or sprites.

### Game engine

Through RSD's proprietary XFERPLAY engine, all Game-Maker games run in 256-color full-screen VGA, at an eccentric 312x196 resolution (switching to the more standard 320x200 for menu screens). Game-Maker games are also distinguished by their eccentric 20x20 tile and sprite size (as opposed to the more standard 8x8 or 16x16 dimensions), populating a standard 100x100 tile (2000x2000 pixel) map size. Transition between scenes is achieved through a slow fade to or from black.
All games share a common interface, with a menu screen offering six options: Play, Read Instructions, Read Storyline, See Credits, See Highest Scores, and Quit. Pressing F2 brings up an inventory screen, while F5 and F6 bring up save and load screens. Although most of these menus can be customized with .GIF backgrounds, their basic layout, labeling, and content are constant across all games.
All games track player score and display a high score table upon the game's end (whether through completion or failure). Later versions of Game-Maker allow multimedia sequences between levels, including .GIF images, .FLI animations, and ASCII text files.
The engine allows one player at a time, with the screen automatically scrolling in any of the four cardinal directions when the character comes within 1/3 screen width or height of the screen's edge. All Game-Maker games lack an on-screen display (of hit points, score, lives, etc.), though much of this information can be tracked in the inventory screen.

## History

Game-Maker developed from a series of modification tools for a top-down competitive maze game called Labyrinth, designed by Andrew Stone in January 1991. Although the engine is different, Labyrinth shared code and file formats with the later XFERPLAY engine and graphical resources with several later first-party games.
   Graphically it was 320x200 8-bit (like Game-Maker). It split the screen in half, putting two players' top-down views of the maze side-by-side on the screen. ... Every time someone trod over the grass, it would droop and get a little more brown until after about ten times there was a clearly defined brown path. ... To make all these subtle grass changes, I needed a block editor. So, BLOCEDIT was born.
Whereas Labyrinth grew out of Andrew's interest in NetHack and Piers Anthony novels, one of Andrew's first goals was to expand his tools and engine to permit side-scrolling action-adventure games. "In fact, making something like Metroid was sort of the bar I set myself for version 1.0. Which is why I added the secret passage features, and gravity, early on."
In July 1991 Andrew and his father G. Oliver Stone incorporated Recreational Software Designs to pursue Game-Maker as a business venture—with Oliver as president and Andrew as CEO. Through Oliver's business acumen RSD made deals with KD Software and GameLynk to distribute Game-Maker and host its online community. Through 1992-1994 RSD placed a series of full-sized ads (and some smaller sizes) in major computer magazines, and in 1994 they sub-leased a booth at the Consumer Electronics Show in Chicago.
At the time of Game-Maker's release the software was revolutionary both in concept and technology; although there were earlier game creation systems, Game-Maker was the first general-purpose graphical GCS for the dominant DOS/Windows-based PC. Throughout the design process Andrew was adamant that Game-Maker's tools remain entirely visual, involving absolutely no programming from the end user. Its engine also supported full-screen four-way VGA scrolling, and later full-screen double buffered redraws, well before these were the standard.
Several updates followed over the next three years, adding Sound Blaster support, improving the design interface, and refining the game engine—yet many features kept being pushed back. Although his brother Oliver Jr. spent a summer on the project, and wrote the code for the sound and Monster editor, Andrew handled the bulk of the coding and updates – a task that, thanks to the lack of standardized drivers or libraries at that time, became all-encompassing and difficult to maintain. Over the software's lifetime Andrew found himself so "waylaid by video driver and [engine] problems" that he was unable to focus as much as he wanted on adding and refining features.
By the mid-1990s the advent of 3D video cards and the introduction of Windows 95 meant that to keep up with the marketplace Game-Maker would need great changes both in concept and in coding. Furthermore, the continued lack of standardization meant a large investment in coding ever more complicated drivers and libraries—work that would be thrown away as soon as standards were established. Despite plans for a radical professional-quality update, RSD ceased support for Game-Maker around 1995.
In a 2011 interview Andrew mused about Game-Maker, stating that by his own principles he was surprised he hadn't released the source code years earlier.
   Yeah, you know I should have OSSed a long time ago as I am a proponent of open source. At first there was the possibility that I might jump back into it. And later the fear that whatever startup company I worked for at the time would try to claim it. But upon mature reflection I think that is impossible.
Later, on 1 July 2014, Andrew posted to the Game-Maker Facebook page, asking for community input on releasing the code. On 12 July he posted the Game-Maker 3.0 source to GitHub, under the MIT license, suggesting that although people were free to use the code how they liked, "if there is interest in preserving the old games you guys made then porting Game-Maker to modern OSes is the first step."

### Release history

* Game-Maker 1.0: Includes one 1.44 MB microfloppy disk containing the full set of RSD tools plus the games Sample, Terrain, Houses, Animation, Pipemare, Nebula, and Penguin Pete. Also included, beginning in version 1.04, is a separate diskette containing the GameLynk game Barracuda: Secret Mission 1. All 1.X iterations of Game-Maker include a square-bound 75-page user manual and several leaflets about the use of the software. Later versions (1.04, 1.05) also include leaflets explaining recent changes and updating the user manual.
* Game-Maker 2.0: Includes both 1.2 MB floppy and 1.44 MB microfloppy disks containing the full set of RSD tools plus the games Tutor (a replacement for Animation), Sample, Terrain, Houses, Pipemare, Nebula, and Penguin Pete. Both versions 2.0 and 2.02 include a square-bound 94-page user manual and several leaflets about the use of the software. The latter version also includes a leaflet explaining recent changes and updating the user manual.
* Game-Maker 3.0, floppy: A three-microfloppy (1.44 MB) package contains the full set of RSD tools, the in-house developed games Tutor, Sample, and Nebula, and three licensed games developed by the independent designer A-J Games: Zark, The Patchwork Heart, and Peach the Lobster. Both packages of version 3.0 include a square-bound 104-page user manual and several leaflets about the use of the software.
* Game-Maker 3.0, CD-ROM: this package includes the contents of the floppy package, plus first-party games Pipemare, Penguin Pete, Houses, and Terrain; A-J Games productions Glubada Pond, Crullo: Adventures of a Donut, Cireneg's Rings, and Linear Volume; two games by Sheldon Chase of KD Software, Woman Warrior and the Outer Limits and Woman Warrior and the Attack from Below; and the GameLynk game Barracuda: Secret Mission 1. In addition, the CD-ROM includes a large collection of images, sounds, music, animations, and gameware elements, and a Shareware directory holding demo versions of fourteen games by various independent designers.
* Create Your Own Games With GameMaker!: In 1995, the Canadian company Microforum rebranded and repackaged the CD-ROM version of Game-Maker 3.0 for release to a worldwide market. This version includes a spiral-bound user manual. The disc contents are the same as the original RSD release.

## Game distribution

During Game-Maker's lifetime, users could distribute their games through the Gamelynk (aka Night Owl, later Frontline) BBS in Kennebunkport, Maine or through the Game-Maker Exchange program – an infrequent mailing to registered users, compiling submitted games to a floppy disk with occasional commentary from RSD president G. Oliver Stone. Many user-generated games also wound up on public bulletin boards, and thereby found wide distribution and eventual salvation on shovelware CD-ROMS.
RSD's initial terms of use were rather restrictive. To quote from a pamphlet titled "Distributing Your GAME-MAKER Games" and dated 9 May 1993:
   Under your Game-Maker license agreement, you may distribute any game you create to up to ten people and your gameware to any number of people. You may not distribute the Game-Maker design tools, but you may include Game-Maker's gameware (picture blocks, monsters, characters, sounds, etc) along with your games or gameware.
   Commercial distribution of games is not covered by your license agreement and such distribution requires a commercial distribution license, since games contain valuable software owned by Recreational Software Designs.
The pamphlet goes on to detail standalone games, promotional games, and shareware and BBS distribution. For standalone games (which is to say, games that are meant as an end unto themselves), RSD asks a royalty of $500 for the first 200 games sold or distributed, then a small fee for each subsequent copy. The higher the number, the smaller the fee. For promotional software (distributed as part of a promotional kit), RSD asks $1000 for the first 1000 copies and then smaller fees for every copy up to 25,000. Beyond that, RSD asks no additional charge.
Shareware and BBS distribution is a curious case. Although RSD prohibits free distribution, the license does allow a loophole for shareware so long as the author requests the user to pay a minimum registration or license fee of $5.00, then makes a quarterly payment of 10% of all collected fees. These restrictions were rarely enforced; as a 15 June 1993 pamphlet titled "Distributing Games" suggests, freeware games were common and tolerated despite the license agreement:
   To distribute a game via Shareware, simply place a text file statement along with your files letting the user know your terms. You can find example statements in any Shareware product. For Freeware, include a statement that says that you own the product but will allow others to distribute it freely, or even that users can incorporate your work into their games.

### Open format

Despite the limitations on distribution, Game-Maker's design format is notoriously open. From its outset Game-Maker was designed as a collaborative tool, with the intent that users not only trade design tips but pick apart and freely sample from each other's work. A series of full-page magazine ads, run in the early 1990s, spends nearly as many words selling Game-Maker as a modification tool, along the lines of Galoob's Game Genie accessory, as it does describing the software's design features, promising that users can "modify and enhance Game-Maker games". "Is a game too easy? Increase the speed. Too boring? Add danger, sounds and monsters. Too plain? Dress up the graphics, add animation. Too short? Add new levels."
This "remix" philosophy stems partly from the Stones' own collaborative family dynamic, and – as with the insistence on an entirely visual, code-free interface – partly from concern about overwhelming the end user. "[W]e realized that it would be pretty hard for a ten to twelve-year-old to do it all himself so there were practical considerations."
To that end Game-Maker games are distributed as an unprotected bundle of resource files, both specialized (i.e., Game-Maker's unique graphic and animation formats) and common (including CompuServe .GIF, Creative .VOC, Autodesk .FLI, and ASCII text files), making it a simple task to identify and edit most Game-Maker games. The decision was a defiant one on the part of programmer G. Andrew Stone, who argued that any user concerned about protecting, rather than sharing, his work should take on that burden himself.
   I deliberately (in fact I remember an argument about it) made no effort to protect a game's content -- anyone could load up anyone else's game in the editors. My feeling was that if you were sophisticated enough to build a game that really needed protection, you could wrap it in your own encrypted .zip file or something.
As it happens, one of the earliest games distributed with Game-Maker was GameLynk's Barracuda: Secret Mission 1, a user-derived project that is most distinguished by its presentation whereby its file structure is hidden by LHarc compression and the portable Deluxe Paint Animation player is tacked onto the Game-Maker executable to provide intro and exit animations.

## Limitations

Through its history several aspects of Game-Maker's engine, design interface, and feature set have experienced scrutiny from its user base.
One of Game-Maker's more notorious qualities is its exclusive use of Creative's proprietary .VOC and .CMF sound and music formats, and its absence of integrated design tools for those formats (or recommendations as to external tools), leaving users to work out their own solutions – or often not.
The use of .CMF was a last-minute decision; Andy had been working on a .MOD-style tracker format, but development was indefinitely delayed. As a temporary measure his brother Ollie plugged in code provided by Creative Labs.
   I got waylaid by video driver and XFERPLAY [game engine] problems. The music was going to be completely dropped, but then my brother pulled this free code up and made it work!
Other common frustrations include a lack of multi-key mapping for character behaviors, such as pressing Z + a directional arrow to jump in the direction pressed (a problem stemming from a lack of standardized keyboard electrical layouts at that time); the extreme simplicity of monster behaviors (partially due to a desire to eliminate programming from the design tools); a lack of persistent flags for game events (partially due to memory constraints); and the lack of on-screen displays for health, lives, and other counters (due to Andrew's emphasis on full-screen rendering).
   I just felt that the full screen greatly increased the game quality. I guess I just hated staring at the action through a fifteen-inch monitor already when playing video games. I mean, try it in real life. Get a big piece of cardboard, cut a fifteen-inch square in it, and then walk around your house with it held at arm’s length for a day.
Monsters are a particular point of contention. Compared to characters, monsters have only limited interaction with their environments. For instance, monsters are not affected by gravity or other physics—and have no contextual AI to speak of, aside from a limited awareness of the character. Monsters also lack variable counters, such as hit points. Instead each monster (including NPCs, character shots, and some kinds of power-up) has a fixed "power level" between 0 and 255, and a collision between unequal monsters is resolved by destroying the weaker monster. The engine therefore does not lend itself to graduated damage (i.e., sword 1 does twice the damage as sword 2). Rather, collisions are all binary; either a weapon works, or it doesn't.

### Workarounds

For advanced users, many of the engine's limitations have workarounds. One can approximate gravity's effect on a monster by defining a heavy diagonal path; the monster will move horizontally until it reaches a ledge, at which point it will fall until it hits the ground again. Similarly, although monsters lack hit counters, the user can create chains of identical (or successively injured-looking) monsters to approximate the same effect.
In later years users have found ways to subvert or play along with the system's properties to achieve effects, mechanisms, and even genres unaccounted for in the engine's basic features—including extensive in-engine cutscenes, boss sequences, AM2-style sprite scalers, RPG style battles, parallax scrolling, shooting galleries, and destructible terrain.

## Influence

As one of the first complete game design suites for IBM-based PCs, and the only one devoted to action games during the early '90s Shareware boom, Game-Maker "anticipated the thriving indie game community we have today with countless game engines, web sites and indie game companies." Several of its users went on to later note in indie or commercial game development, such as renowned Seiklus author cly5m, Slender: The Eight Pages designer Mark Hadley, Liight programmer Roland Ludlam, Warhammer Online background artist Justin Meisse, and Bionic Commando associate producer James W. Morris.
Some games produced with RSD's tools, such as Jeremy LaMar's Blinky series, have become cult favorites. Others, like A-J's Quest, Die Blarney!, and Matt Bell's Paper Airplane, reached a wide circulation during the 1990s Shareware boom, appearing on many CD compilations. Game-Maker seems also to have made an impression in the Benelux, with references in various academic papers, coverage in the largest game magazine in the region, and dissection by the local demoscene.

### Notable games

* A-J's Quest (A-J Games, 1992) – A widely distributed side-scrolling platformer that was also incorporated into an early slideshow demo of Game-Maker.
* Barracuda (GameLynk, 1992) – An action simulation game, involving deep sea diving. The shareware episode, distributed on a separate floppy disk with early versions of Game-Maker, incorporates external functions such as LHarc auto-compression and the portable Deluxe Paint Animation player, into the game's presentation.
* Blinky 2 (Jeremy LaMar, 1994) – A top-down action game inspired by The Legend of Zelda: A Link to the Past. Through its distribution on AOL Kids, Blinky 2 and its sequel achieved a small cult status.
* Blinky 3 (Jeremy LaMar, 1995) – A side-scrolling platformer featuring multiple characters and a branching level structure. Of the two distributed Blinky games, Blinky 3 has received the bulk of attention.
* Nebula (RSD, 1991) – Game-Maker programmer Andy Stone's Metroid-influenced action-adventure platformer, that was always first to demonstrate any new features to the software.
* Parsec Man 3D (Mark Hadley, 1994) – A minimalist free-floating/platform shooter by Slender: The Eight Pages designer Mark Hadley, that uses red/cyan anaglyphic 3D glasses to add both atmosphere and functional design. Parsec Man was also distributed on the Game-Maker 3.0 CD-ROM.
* Paper Airplane (Matt Bell, 1993) – A side-scrolling strategic action game with puzzle-solving elements; perhaps the most widely distributed Game-Maker game.
* Peach the Lobster (A-J Games, 1994) – A Sonic the Hedgehog influenced side-scrolling platformer that was incorporated into a late-era slideshow demo of Game-Maker.
* Pipemare (RSD, 1991) – G. Oliver Stone's top-down action maze game, which provides much of the iconography for the Game-Maker software and packaging.
* Sample (RSD, 1991) – Joan Stone's simple 3/4 view adventure game that formed the basis for dozens of user-created games.