Re-animating classic games with ScummVM

Gamer

Christian Baun

The SCUMM engine is the basis of almost all the classic adventure games by Lukasfilm Games/LukasArts. Now fans can launch these game on Linux thanks to ScummVM.

The SCUMM (“Script Creation Utility for Maniac Mansion”) adventure engine was developed by Ron Gilbert for Maniac Mansion, a game released by Lukasfilm Games in 1987. Lukasfilm Games, which was later renamed LukasArts, made continual improvements to the engine and used it for a whole series of classic adventure games.

History

Adventure games based on the SCUMM engine introduced a sensational new feature at the time. Players no longer needed to type keyboard commands to control the characters in the game, but could simply point to objects to enable hidden verbs. This genre is known as “Point & Click Adventure.”

Box 1: ScummVM on Various Operating Systems

ScummVM supports other operating systems as well as Linux. The ScummVM virtual machine will run on most flavors of Unix – including Irix, Solaris, Mac OS X, and BSD. Handheld users with Palm OS or Windows CE can also run the legacy games, as can users with desktop Windows versions. There is even a version of ScummVM for the Dreamcast console.

Windows users are also starting to turn to ScummVM, although they could run the adventure classics natively. The feature-richness of ScummVM enhances the user experience. For example, most modern soundcards do not have DOS driver support; most games running in MS-DOS mode are mute without the new ScummVM engine.

Because LukasArts [1] and other companies put a lot of effort into the graphics for these classic games, the games have a lot of charm despite their lack of complex 3D effects. Catchy sound tracks and intelligent game strategies round off the SCUMM adventure package. To be able to run these games on other operating systems, the ScummVM developers [2] re-programmed the engine. ScummVM is not an emulator; it uses the specific data from each game to display graphics, play the sounds, and support the unique action of each game. ScummVM runs not only on Linux but also on other major operating systems. (See the box titled “Box 1: ScummVM on Various Operating Systems.”) The box titled “Supported Games” has a list of the games that ScummVM supports at this time of writing.

Installation

You can obtain the RPM package for ScummVM from the ScummVM homepage [2]. The package will work with any RPM-based distribution, such as Mandrake, Suse, and Fedora by Red Hat. Working as root, type the following command to install the package:

rpm -Uvh U
scummvm-0.6.1b-1.i386.rpm

Packages are also available for Debian Sarge and Sid. Debian users can install ScummVM from their installation media or an Internet-based Debian server by running apt-get.

Table 1: Shortcuts
[Ctrl+z] or [Alt+x]Quit ScummVM
[Alt+Enter]Toggle full-screen mode on and off
[F5]Pop up the Save/Load/Quit screen
[Space]Pause game (only for Lucasfilm/Lucas Arts games)
[+] and [-]Speed up/slow down text speed

Figure 1: Sam and Max in a battle for law an order.

Typing scummvm in the command line takes you to the main window, which will not display any games when first launched. To add an adventure, copy the files for the adventure to a directory. You’ll find a list of the files you need for the supported games at [5]. After copying, select Add GameÖ in the main ScummVM window and browse to the directory you created. When you get there, click on Choose and ScummVM will add the game to the main menu (Figure 2).

Figure 2: Use the main menu to configure ScummVM and launch games.

Double clicking an entry launches the game for that entry. Table 1 has a list of shortcuts. A more complete list is available in the README file [6] with any ScummVM version.

Although Point & Click adventures have mostly disappeared from the stores, there is still an abundant supply of used games on the Internet. In fact, the manufacturers of Beneath a Steel Sky and Flight of the Amazon Queen, Revolution Software and Interactive Binary Illusions, have removed licensing restrictions on both these games. Users can download the games from the ScummVM homepage. Many distributions include these two games as part of the package.

You can use the Options menu to configure ScummVM’s graphics and sound output. The Graphics tab allows you to toggle full-screen mode on or off. The Audio tab allows you to tweak sound output, although the defaults should work fine with most soundcards. An finally, Misc is where you specify the directory where ScummVM will keep track of your score.

Box 2: Supported Games

You can use ScummVM to play the following legacy adventure games by Lukasfilm Games/LukasArts [1] on Linux:

  • Maniac Mansion
  • Day of the Tentacle
  • Zak McKracken
  • Loom
  • Monkey Island 1 and 2
  • Curse of Monkey Island
  • Indiana Jones 3 and 4
  • The Dig
  • Full Throttle
  • Sam & Max (Figure 1)

Games from other manufacturers also use the SCUMM engine and will run on ScummVM:

  • Simon the Sorcerer 1 and 2 (Adventure Soft [3])
  • Flight of the Amazon Queen (Interactive Binary Illusions; Figure 2)
  • Beneath a Steel Sky (Revolution Software [4])
  • Broken Sword 1 and 2 (also by Revolution)

Graphics Filter

When Maniac Mansion was first released, graphics adapters typically supported resolutions of 640x480 pixels at the most, and some only offered 320x240. To prevent a blocky look in full-screen mode, the ScummVM programmers developed a graphics filter. It uses soft edges to display legacy graphics at higher resolutions; without this, the individual pixels would be clearly visible. Figure 3 shows the original graphics on the right, and the ScummVM output on the left.

ScummVM does not always use the original files for sound output. Instead it will play MP3 or Ogg Vorbis files. This ability is more important for handheld computers with small hard disks than for desktop computers.

Conclusion

Those lucky readers who have not trashed their legacy games over the years will appreciate the opportunity that ScummVM gives you to relive the adventure on today’s big screens. Despite keeping the original GUI, these classic adventures give fans enough action to keep them happy.

INFO

[1] LucasArts: http://www.lucasarts.com

[2] ScummVM: http://www.scummvm.org

[3] Adventure Soft: http://www.adventuresoft.com

[4] Revolution Software: http://www.revolution.co.uk

[5] List of required files: http://www.scummvm.org/documentation.php?view=datafiles

[6] ScummVM README: http://cvs.sourceforge.net/viewcvs.py/scummvm/scummvm/README?rev=release-0-6-1b