- SCUMM
SCUMM ("Script Creation Utility for Maniac Mansion") is a scripting language developed at
LucasArts (known at the time asLucasfilm Games) to ease development of the graphical adventure game "Maniac Mansion ".It is somewhere between a
game engine and aprogramming language , allowing designers to create locations, items and dialogue sequences without writing code in the actual language the gamesource 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 asiMUSE (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), andMMUCUS . SCUMM has been released on the following platforms: 3DO,Amiga ,Apple II ,Atari ST ,CDTV ,Commodore 64 , Fujitsu Towns & Marty,Apple Macintosh ,Nintendo Entertainment System ,Wii (through homebrew),MS-DOS /PC-DOS ,Microsoft Windows , Sega CD and TurboGrafx-16/PC Engine.History
The original version was coded by
Aric Wilmunder andRon Gilbert in1987 , 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 toGrimE , using thefree software scripting language Lua, for the games "Grim Fandango " and "Escape from Monkey Island ".Versions
"Version 0" of SCUMM was the engine originally used for the
Commodore 64 version of "Maniac Mansion ". This version was enhanced for the originalIBM 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 theAmiga port andAtari ST ports.For "", 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 thefloppy 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, "", as well as "
Indiana Jones and the Fate of Atlantis ". TheiMUSE technology was first implemented in this version of SCUMM. At this point, the SCUMM system branched off when developerRon 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 ").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.
Reimplementation
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 its own javascript-like language into Scumm v6bytecode , 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 ". [ [http://alban.dotsec.net/7.html ScummC SCUMM Compiler] ]Interpreters
ScummVM is a free andopen 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 clonesMorphOS andAROS ),Palm OS ,PocketPC ,Dreamcast ,PlayStation 2 ,PlayStation Portable ,Nintendo DS ,Wii ,Symbian (SeriesXX and UIQ) andiPhone /iPod Touch platforms. [ [http://wiki.scummvm.org/index.php/Platforms SCUMMVM compatibility list] ]scvm is a SCUMM interpreter developed by the ScummC author [ [https://dotsec.net/cgi-bin/viewcvs.cgi/scummc/trunk/README?rev=392&view=auto DotSec Repository - markup - scummc: trunk/README ] ] . 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 thehaXe platform, in order to produce an interpreter with anAdobe Flash backend. [ [http://www.cuppadev.co.uk/2008/03/07/what-not-to-write-in-haxe-part/ What not to write in haXe, Part II - Cuppadev ] ] [ [http://projects.cuppadev.co.uk/gitweb/?p=experiments/hiscumm.git;a=shortlog JamesU's git repositories - experiments/hiscumm.git/shortlog ] ] .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 (forGrim Fandango 's Engine). [ [http://scumm.mixnmojo.com/?page=specs&file=scuminfo.txt LucasHacks! - Serving SCUMM since 1998 ] ]See also
*
GrimE
*Adventure Game Interpreter
*Sierra's Creative Interpreter
*Z-machine References
External links
* [http://members.fortunecity.com/harang/scumm.html SCUMM history]
* [http://scumm.mixnmojo.com/ Scumm modding page]
* [http://www.justadventure.com/articles/Engines/SCUMM/SCUMM.shtm SCUMM: Adventure--LucasArts Style]
Wikimedia Foundation. 2010.