Difference between revisions of "SCUMM"

Jump to navigation Jump to search
295 bytes added ,  18:11, 18 January 2009
Added proper 'Status' section
(Added proper 'Status' section)
Line 6: Line 6:
         dateAdded=October 8, 2001|
         dateAdded=October 8, 2001|
         release=0.0.1|
         release=0.0.1|
        status=Complete|
}}
}}


Line 16: Line 15:
The SCUMM language is a [[LucasArts]] in-house standard, but was also used by [[Humongous Entertainment/Games| numerous]] [[Humongous Entertainment]] games. The format was never designed to be public and so would change unpredictably from game to game to suit the task at hand. Therefore, many different [[SCUMM/Versions|SCUMM Versions]] exist today.
The SCUMM language is a [[LucasArts]] in-house standard, but was also used by [[Humongous Entertainment/Games| numerous]] [[Humongous Entertainment]] games. The format was never designed to be public and so would change unpredictably from game to game to suit the task at hand. Therefore, many different [[SCUMM/Versions|SCUMM Versions]] exist today.


It was initially created in 1987 by Aric Wilmunder and [http://www.grumpygamer.com Ron Gilbert] for the game [[Maniac Mansion]] and was used later, with some modifications, for [[Zak McKracken and the Alien Mindbenders]].
== Status ==
This engine is mostly complete, with some exceptions for certain exotic game variants (for NES, FM-TOWNS, etc.), as well as some [[Humongous Entertainment]] games. See the [[SCUMM/TODO|SCUMM TODO]] as well as our [http://www.scummvm.org/compatibility.php Compatibility page] for details.
 
== History ==
SCUMM was initially created in 1987 by Aric Wilmunder and [http://www.grumpygamer.com Ron Gilbert] for the game [[Maniac Mansion]] and was used later, with some modifications, for [[Zak McKracken and the Alien Mindbenders]].


Aric Wilmunder and Ron Gilbert's original SCUMM has been expanded a bit since 1988, of course. Every time a game required some feature that SCUMM had not previously supported, the interpreter was extended and the data file format expanded. The whole system was redesigned from scratch twice. With [[Indiana Jones and the Last Crusade]], LucasArts developed a modular file format based loosely on the standard IFF format. This was used several times in various forms until [[The Secret of Monkey Island]], where the SCUMM engine and file format was redesigned again from scratch. The new format was used from then on, and even now that LucasArts has finally retired SCUMM for their latest games, the interpreter/data file philosophy is still in use and you can see SCUMM design decisions in the data files of the latest LucasArts games such as [[Grim Fandango]].
Aric Wilmunder and Ron Gilbert's original SCUMM has been expanded a bit since 1988, of course. Every time a game required some feature that SCUMM had not previously supported, the interpreter was extended and the data file format expanded. The whole system was redesigned from scratch twice. With [[Indiana Jones and the Last Crusade]], LucasArts developed a modular file format based loosely on the standard IFF format. This was used several times in various forms until [[The Secret of Monkey Island]], where the SCUMM engine and file format was redesigned again from scratch. The new format was used from then on, and even now that LucasArts has finally retired SCUMM for their latest games, the interpreter/data file philosophy is still in use and you can see SCUMM design decisions in the data files of the latest LucasArts games such as [[Grim Fandango]].


== The idea behind SCUMM ==
=== The idea behind SCUMM ===


It is well known that the best way to perform some very complex tasks is to start out by building a tool to help you with that task. In the same way, two programmers at LucasArts back in 1988 decided that rather than write a single, complicated program for their new graphic adventure game, they should instead build an generic engine that would play any graphic adventure game, if given the proper data files; this would let them concentrate on the game design, rather than the details of the programming.  
It is well known that the best way to perform some very complex tasks is to start out by building a tool to help you with that task. In the same way, two programmers at LucasArts back in 1988 decided that rather than write a single, complicated program for their new graphic adventure game, they should instead build an generic engine that would play any graphic adventure game, if given the proper data files; this would let them concentrate on the game design, rather than the details of the programming.  
Line 30: Line 33:
A lesson many people have learnt. Infocom, creators of possibly the finest text adventure games of all time, did a very similar trick with their Z-machine; you can now get Z-machine interpreters for everything from a Cray Supercomputer to a Game Boy, all of which will play Infocom's games, encoded in the data files. See [http://www.brasslantern.org/ Brass Lantern] for more information.  
A lesson many people have learnt. Infocom, creators of possibly the finest text adventure games of all time, did a very similar trick with their Z-machine; you can now get Z-machine interpreters for everything from a Cray Supercomputer to a Game Boy, all of which will play Infocom's games, encoded in the data files. See [http://www.brasslantern.org/ Brass Lantern] for more information.  


== Sub Engines of SCUMM ==
=== Subsystems of SCUMM ===


The SCUMM virtual machine is made up of a number of sub engines working together. Strictly, the term SCUMM only refers to the scripting language itself. The official term for the virtual machine as a whole is SPUTM --- but getting people to change is probably a lost cause.  
The SCUMM virtual machine is made up of a number of sub engines working together. Strictly, the term SCUMM only refers to the scripting language itself. The official term for the virtual machine as a whole is SPUTM --- but getting people to change is probably a lost cause.  
Line 61: Line 64:
* [[The Curse of Monkey Island]]
* [[The Curse of Monkey Island]]


[[Humongous Entertainment/Games | numerous]] [[Humongous Entertainment]] games
[[Humongous Entertainment/Games|Numerous]] [[Humongous Entertainment]] games


and [[SCUMM/Fan Games|SCUMM Fan Games]]: Fan created games using the SCUMM engine
and [[SCUMM/Fan Games|SCUMM Fan Games]]: Fan created games using the SCUMM engine
1,079

edits

Navigation menu