Open main menu

Difference between revisions of "SCUMM"

2,091 bytes added ,  13:15, 24 April 2006
move-in leftovers from http://www.scummvm.org/docs/specs/introduction.php
(Add link to HE games list)
(move-in leftovers from http://www.scummvm.org/docs/specs/introduction.php)
Line 3: Line 3:


It was initially created in 1987 by [[Aric Wilmunder]] and [[Ron Gilbert]] for the game "Maniac Mansion" and was used later, with some modifications, for [[Zak McKracken and the Alien Mindbenders]].
It was initially created in 1987 by [[Aric Wilmunder]] and [[Ron Gilbert]] for the game "Maniac Mansion" and was used later, with some modifications, for [[Zak McKracken and the Alien Mindbenders]].
It is well known that the best way to perform some very complex task 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 worked. And so SCUMM was born.
The way the SCUMM engine works is that there is a single executable program, called the interpreter, that operates on some data files. The data files contain images, dialogue, details of object behaviour, and so on. The interpreter then brings all this to life and handles the details of drawing it all, animating the characters, processing user input, and all the other details that a graphic adventure game needs dealt with in order to work properly. Because the data files contain no executable code, it turns out to be trivial to port the game to a new platform: just port the interpreter, and use the same data files. You will get exactly the same game on the new system.
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 Brass Lentern for more information.
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. Even now that LucasArts has finally retired SCUMM for their latest games, such as Grim Fandango, the interpreter/data file philosophy is still in use and you can see SCUMM design decisions in the data file format.


Development on the SCUMM system continued for some time, and was used in
Development on the SCUMM system continued for some time, and was used in