SCUMM

From Wikipedia, the free encyclopedia

Maniac Mansion on the Commodore 64, the game SCUMM was originally designed for
Maniac Mansion on the Commodore 64, the game SCUMM was originally designed for
Indiana Jones and the Fate of Atlantis, a later SCUMM game
Indiana Jones and the Fate of Atlantis, a later SCUMM game

SCUMM (Script Creation Utility for Maniac Mansion) is a scripting language developed at LucasArts (known at the time as Lucasfilm Games) to ease development of the graphical adventure game Maniac Mansion.

It is somewhere between a game engine and a programming language, allowing designers to create locations, items and dialogue sequences without writing code in the actual language the game source code would end up in. This also meant that the game's script and data files could be re-used across various platforms. SCUMM is also a host for embedded game engines such as iMUSE (standing for Interactive MUsic Streaming Engine), INSANE (standing for INteractive Streaming ANimation Engine), CYST (in-game animation engine), FLEM (places and names object inside a room), and MMUCUS. SCUMM has been released on the following platforms: 3DO, Amiga, Apple II, Atari ST, CDTV, Commodore 64, Fujitsu Towns & Marty, Apple Macintosh, NES, MS-DOS/PC-DOS, Microsoft Windows, Sega CD and TurboGrafx-16/PC Engine.

Contents

[edit] History

The original version was coded by Aric Wilmunder and Ron Gilbert in 1987, with later versions enhanced by Aric Wilmunder (a.k.a. the SCUMM Lord) and various others.

SCUMM was subsequently reused in many later LucasArts adventure games being both updated and rewritten several times. There are at least 10 known versions of the SCUMM engine, numbered as "version 0" (for the original Commodore 64 version of Maniac Mansion), "version 1", "version 1.5" (for the NES version of Maniac Mansion), and "version 2" up through "version 8". LucasArts finally abandoned the SCUMM engine in 1998 when they switched to GrimE, using the free software scripting language Lua, for the games Grim Fandango and Escape from Monkey Island.

[edit] Versions

"Version 0" of SCUMM was the engine originally used for the Commodore 64 of Maniac Mansion. This version was enhanced for the original IBM PC compatible version and termed "Version 1". Version 1 was the engine used for both PC and C64 versions of Zak McKracken and the Alien Mindbenders and further improvements were made for the NES version of Maniac Mansion (Version 1.5). The enhanced re-releases of Maniac Mansion' and Zak McKracken for the PC used SCUMM Version 2, as did the Amiga port and Atari ST ports.

For Indiana Jones and the Last Crusade: The Graphic Adventure, SCUMM Version 3 was used on all ports. The FM-Towns port of Zak McKracken used SCUMM Version 3, as did the Amiga and FM-Towns versions of Loom. While the floppy disk release of Loom for the PC used SCUMM Version 3, Version 4 was used for the VGA PC CD-ROM port.

Version 4 was the version of SCUMM which powered the Amiga and PC floppy disk versions of The Secret of Monkey Island. This version was also used for Passport to Adventure, a compilations of PC EGA Demos of The Secret of Monkey Island, Loom, and Indiana Jones and the Last Crusade.

When The Secret of Monkey Island was released on CD-ROM for VGA PCs, it used SCUMM Version 5. This version remained in use for the Amiga and PC versions of its sequel, Monkey Island 2: LeChuck's Revenge, as well as Indiana Jones and the Fate of Atlantis. The iMUSE technology was first implemented in this version of SCUMM. At this point, the SCUMM system branched off when developer Ron Gilbert licensed it for use in the games created by his company, Humongous Entertainment. The SCUMM system continued to grow there on a separate track up to version 11.

Future developments include Version 6 (Day of the Tentacle and Sam & Max Hit the Road), Version 7 (Full Throttle and The Dig) and Version 8 (The Curse of Monkey Island).

[edit] Design

Most SCUMM games feature a verb-object design paradigm. The player-controlled character has an inventory, and the game world is littered with objects with which the player can interact, using a variety of verbs — a large collection of these featured in the early games, but by Full Throttle and The Curse of Monkey Island these had been whittled down to using one's eyes (to "Look at" or "Look through"), hands (to "Use", "Pick up", "Push", "Pull", etc.), or mouth ("Talk to", "Consume", "Inhale").

Puzzles generally involve using the right verb action with the appropriate object — "use biscuit cutter with another rubber tree", for example.

"Talk to" produces dialogue sequences, in which the player selects from a list of pre-defined questions or comments, and the character they are talking to replies with a pre-defined response.

The notable exception to this general paradigm is Loom, which does not use the standard verb/object paradigm, but does feature dialogue sequences.

[edit] Reimplementation

[edit] Compiler

ScummC is a set of tools (including a script and a costume compiler, a walkboxes editor, charset, graphics, audio and midi tools), able to compile it's own javascript-like language into Scumm v6 bytecode, runnable as is in ScummVM. It allows anyone who's skilled enough to create completely new and original SCUMM games, with features on par with Day of the Tentacle and Sam & Max Hit the Road. [1]

[edit] Interpreters

ScummVM is a free and open source software project to make a portable, SDL-library based, SCUMM-engine client which allows many of the SCUMM-engine games to be played on systems where the original versions will not work or have trouble operating including modern Windows and Macintosh systems, Linux, AmigaOS (3.x, 4.0, and its clones MorphOS and AROS), Palm OS, PocketPC, Dreamcast, PlayStation 2, PlayStation Portable, Nintendo DS, Symbian (SeriesXX and UIQ) and iPhone/iPod Touch platforms.[2]

scvm is a SCUMM interpreter developed by the ScummC author [3]. It is as of April 2008 in a prototype state, and is meant to become a script debugger for ScummC development. hiscumm is an attempt to port scvm plus some bits of ScummVM to the haXe platform, in order to produce an interpreter with an Adobe_Flash backend. [4] [5].

[edit] References and in-jokes

In-joke references were a common feature of LucasArts adventure games. Developers used the name of their engine for comical effect in several games.

"Razor and the Scummettes", a punk band mentioned in Maniac Mansion, and the "SCUMM bar" in The Secret of Monkey Island are both named after the scripting language. In Escape from Monkey Island, victim of a hostile takeover, the "SCUMM bar" becomes the "Lua bar", a nod to the programming language which replaced the engine used for the previous games. SCUMM is also listed in the ingredients of grog, in the first opus of the Monkey Island saga.

Furthermore, inner parts of the engine evoked disgusting fluids. SPUTM is the name of the script interpreter, CYST is an animation engine, FLEM places and names objects in rooms and MMUCUS is yet another engine part. The successor of SCUMM as an adventure game engine at Lucas Arts was named GrimE (for Grim Fandango's Engine).[6]

[edit] See also

[edit] References

[edit] External links