ScummVM
Script Creation Utility for Maniac Mansion Virtual Machine (ScummVM) is a set of game engine recreations. Originally designed to play LucasArts adventure games that use the SCUMM system, it also supports a variety of non-SCUMM games by companies like Revolution Software and Adventure Soft. It was originally written by Ludvig Strigeus.[1] Released under the terms of the GNU General Public License, ScummVM is free software.
ScummVM 2.1.0's graphical user interface with the "remastered" skin | |
Original author(s) | Ludvig Strigeus, Vincent Hamm [1] |
---|---|
Developer(s) | ScummVM Team |
Initial release | November 22, 2001 [2] |
Stable release | |
Repository | |
Written in | C++ and SDL |
Operating system | Cross-platform |
Type | Interpreter |
License | GNU GPLv2 or later |
Website | www |
ScummVM is a re-implementation of the part of the software used to interpret the scripting languages such games used to describe the game world rather than emulating the hardware the games ran on; as such, ScummVM allows the games it supports to be played on platforms other than those for which they were originally released.
The team behind it also add improvements such as bug-fixes and translations[4] and works with commercial companies such as GOG.com about re-releases[4].
Features
ScummVM is a program that supports numerous adventure game engines via virtual machines, allowing the user to play supported adventure games on their platform of choice. ScummVM provides none of the original assets for the games it supports, and expects the user to properly own the original game's media so as to use the software legally. The official project website offers games that are freeware that work directly with ScummVM. Atop emulating the games, ScummVM enables players to save and load the state of the emulator at any time, enabling a save system atop whatever the emulated game may provide. It has also begun to work at providing alternate controls for newer devices, such as mobile devices with touch screens, which work atop the original games.[1]
While ScummVM appears to function equivalently as a game emulator, the ScummVM team does not consider it as such. Outside of some subsystems like audio engines which they are forced to rely on emulation, ScummVM recreates game engines from older languages into more portable C++ code, so that the high-level opcodes in a game's assets will execute in the same manner as from their original release, while improving the portability of ScummVM to numerous platforms. The ScummVM team consider this an improvement over simply running the older games and their executables through an operating system emulator, such as DOSBox, since ScummVM's implements are more lightweight and require less processing power and memory, allowing use on more limited processing environments like mobile devices.[5]
Ports
Portability is a design goal of the project.[6] Ports of ScummVM are available for Microsoft Windows, macOS and a variety of Unix-like systems including Linux (based on RPM, Debian, or source), members of the BSD family (FreeBSD, NetBSD, OpenBSD, DragonFly BSD) and Solaris. It has also been ported to console systems. Less mainstream personal computer ports include those to Amiga, Atari-FreeMiNT, Haiku-BeOS-ZETA, RISC OS, and OS/2.
A variety of game consoles have official ports. ScummVM has been ported to gaming machines such as the PlayStation 2, PlayStation 3, Dreamcast, Nintendo 64, GameCube, and Wii,[7] and to handheld consoles including the GCW Zero, GP2X, Nintendo DS, Pandora, PlayStation Portable and the PS Vita. Handheld computer platforms supported include Palm OS Tapwave Zodiac, Symbian (UIQ platform, Nokia 60, 80, and Nokia 7710 90 phone series), Nokia's Internet Tablet OS (used by the Nokia 770, N800 and N810), Apple's iPhone,[8] MotoMAGX, MotoEZX phones and Windows Mobile. Platforms supported by unofficial ScummVM ports include the Microsoft's Xbox gaming console, BlackBerry PlayBook,[9] Zaurus, Gizmondo and GP32 portable device platforms. Mobile phones running Android,[10] webOS[11] or unofficial Samsung's bada OS are also supported.
History
Work on ScummVM started in September 2001 (with the official release at November 2001[2]) by computer science student Ludvig Strigeus. Looking to write his own adventure game, he looked to seeing how the mechanics of an existing game engine, specifically working to create an emulator to play Monkey Island 2.[1] At about the same time, Vincent Hamm was also looking to develop a SCUMM emulator, and though he had done deeper research into understanding how the SCUMM engine worked, found that Strigeus was much further along, and the two joined together to craft the emulator.[1] While Strigeus finished the required emulation for Monkey Island 2, Hamm worked separately to prepare the engine for Indiana Jones and the Fate of Atlantis, and once completed, the two found some dis-coordination on their efforts but eventually got the emulator working for both games.[1]
News of ScummVM was picked up by the tech news website Slashdot in November 2001, drawing a large interest to the project, and several other developers became part of the project to help support other games. These developers often turned to the creators of the original games to obtain information in informal ways, to help create the emulation.[1] Further developers helped to support games that did not use SCUMM, such as Adventure Soft's Simon the Sorcerer; there was some debate about changing the name of the program at this point, but they ultimately kept the ScummVM title, believing that SCUMM was the most well-recognized adventure game engine.[1] Strigeus had built support for iMUSE, the sound software used by many LucasArts games, but feared including it due to potential backlash from LucasArts. Other developers on the project advised him that there should be no legal issues and it was eventually included.[1] Though Strigeus and Hamm would leave the project in 2002, by then it had a large enough development team to allow it to grow, led by James "Ender" Brown.[1] Following this shift, the engine's source code was changed from C to C++, and a graphical user interface (GUI) was added.[1]
With increased awareness of the project, LucasArts sent a cease & desist letter to the project, believing they were using some of LucasArts' proprietary code. Brown worked over the next four years with LucasArts' legal representatives to explain the nature of the emulator and the source of their information to demonstrate that what they had created was legal. Brown considered that LucasArts was trying to be accommodating as ScummVM helped to raise interest in these titles. They ultimately came to a legal agreement to allow ScummVM to continue to be developed.[1]
The project would also incorporate other parallel efforts to make game emulators for other adventure games. Games from Sierra Online were of high demand for the project, requiring them to emulate the Adventure Game Interpreter (AGI) and the more advanced Sierra's Creative Interpreter (SCI) engines. AGI support was added in 2006 by incorporating efforts from the Sarien project, but efforts for SCI support were hampered by the parallel project, FreeSCI. Though both ScummVM and FreeSCI aimed to reverse engineer the workings of SCI, FreeSCI had stated they took a more clean-room approach to avoid any legal question about their reverse engineering, and believed the ScummVM project had run afoul of some of Sierra's approaches and thus were hesitant to work together.[1] However, FreeSCI began to languish in interest compared to ScummVM; after a developer took it upon themselves to make the FreeSCI engine work in ScummVM, the FreeSCI saw more participation in their project, and they agreed to merge their efforts into ScummVM. Initial SCI support was subsequently released in a 2010 version of ScummVM.[1]
ScummVM continues to add new games or game engines, though the process to create these is relatively slow. According to the team's project lead Eugene Sandulenko (as of 2017[4]), game engines are chosen for inclusion into ScummVM either if they are given the source code that makes it easy to port into the software's architecture, or if one or more of the team members are passionate about bringing a game engine into the program to do the difficult task of reconstructing the game's code from the compiled versions.[5] The only restriction is that ScummVM will only include 2D game engines, leaving 3D games to be handled by the sister project ResidualVM.[5] The 2.0 version of ScummVM was released in December 2017, adding support for several full motion video games and some very obscure titles, such as Full Pipe and Plumbers Don't Wear Ties. With this release, ScummVM has support for 64 different game engines.[5]
An attempt to bring in Another World by Éric Chahi brought some internal stress within the project in 2004. Another World was not a point-and-click adventure game, and used polygon-based graphics instead of pixel-based ones most adventure games employ, and thus was considered a serious departure from the focus of ScummVM. Though the project was scrapped in a few days after Chahi requested its removal as he was preparing a 15th anniversary remastered for sale, the current leads of the project had to refocus the group and define the ideals that ScummVM should meet.[1]
ScummVM has also had difficulty in bringing games using the Adventure Game Studio (AGS), which is used frequently in indie adventure games, such as the Blackwell series. While the source code for AGS had been put into the open by its developer Chris Jones in 2010, the ScummVM team was met with a large backlash of complaints from developers using the AGS engine for their games, stating they did not want to see their games run in ScummVM. [5]
ScummVM has been a participant in the Google Summer of Code every year since 2007 except for 2015. A sister project, ResidualVM, was started to implement engines for three-dimensional adventure games, such as Grim Fandango and Myst III: Exile, named as such as these games reflect the residual of those not already covered by ScummVM.[12]
Developer support
According to Sandulenko “there is no typical process” when it comes to collaboration with developers, “Everything is ad-hoc. What we do, we try to search for contact info of people who were working on the titles some developer is interested in, and we’re inquiring access to their original source code, if it still exists somewhere. Then we start working on it at our own pace.”[13]
With increased attention, ScummVM has entered into favorable agreements with adventure game developers to help bring their titles into the engine, or in some cases, being given source code and other assets to work from. Revolution Software helped the developers with source code and technical advice for its games, and once ScummVM supported the company's Virtual Theatre engine, Revolution released Lure of the Temptress and Beneath a Steel Sky as freeware and provided assets from its first two Broken Sword games in an open media format. The renewed interest in these games from younger players enabled Revolution to work on two more Broken Sword games.[1] Other developers that have worked closely with ScummVM include:
- Adventure Soft: provided the original source code of their adventure games, Simon the Sorcerer, The Feeble Files and Elvira series.
- Alcachofa Soft: Emilio de Paz Aragón released the original source code of the adventure game Drascula: The Vampire Strikes Back as freeware.
- Creative Reality: Neil Dodwell and David Dew from Creative Reality released the original source code for their adventure Dreamweb, and the CD-ROM and floppy disk versions of the game as freeware,[14] available for download on the ScummVM website.[14]
- Gray Design Associates: David P. Gray provided the original source code of the Hugo trilogy
- Interactive Binary Illusions: released both the CD-ROM and the floppy disk version of their adventure game, Flight of the Amazon Queen as freeware available for download on the ScummVM website.[15]
- Laboratorium Komputerowe Avalon: Janusz Wiśniewski and Miroslaw Liminowicz released the original source code of their adventure game Sołtys as freeware, available for download on the ScummVM website.
- Perfect Entertainment: John Young, Colin Smythe and Terry Pratchett provided the original source code of their adventure games, Discworld and Discworld II: Missing Presumed...!?.
- Wyrmkeep Entertainment: Joe Pearce provided the original source code of their adventure game, Inherit the Earth: Quest for the Orb.
The digital storefront GOG.com which specializes in selling digital copies of older games, provides support to ScummVM, and sells titles that include the ScummVM engine as part of their distribution.[1] Disney, which owns the rights to LucasArts adventure games, released Maniac Mansion on Steam running off ScummVM.[5]
Development
Operation Stealth and Future Wars support was added by integrating another stand-alone recreation of their engine: cinE.[16] TrollVM has also been integrated into ScummVM adding support for three pre-AGI games: Mickey's Space Adventure, Troll's Tale, and Winnie the Pooh in the Hundred Acre Wood.[17][18]
As of December 2017, ScummVM is developing support for Macromedia Director in coordination with some of the original developers. Macromedia Director was used for many mid-1990s video games such as The Journeyman Project.[5]
Mistic's GPL violations
ScummVM is distributed as open-source software under the GNU General Public License, enabling anyone to use the emulator as an engine for a game. For example, Revolution Software repackaged their Broken Sword games for a DVD release, using the ScummVM engine to support modern computers.[1]
In December 2008, the ScummVM teams learned that the recently released Wii ports of three Humongous Entertainment Junior Adventure titles, Freddi Fish and the Case of the Missing Kelp Seeds, Pajama Sam: No Need to Hide When It's Dark Outside, and Spy Fox: Dry Cereal, have all used the ScummVM engine without proper attribution. The games were published on request of Atari through Majesco Entertainment, who turned to Mistic Software to port the games. Mistic had used ScummVM for these, but failed to credit the developers. While the ScummVM team contacted gpl-violations.org for legal advice, Nintendo began to investigate the claims as their license agreements prevent the use of open-source software on the Wii. Upon discovering that the three titles indeed used open-source software, the firm threatened legal action against Mistic Software. A settlement was made in 2009, in which ScummVM would drop the investigation of the GPL violation, on the condition that Mistic would sell or destroy all GPL-violating copies of the games, make a donation to the Free Software Foundation, and pay the legal fees. As a result, this legal dispute significantly limited the availability of the Wii ports of these three titles.[1]
Supported games
The following games have support built into the current release of ScummVM.[19][20]
LucasArts SCUMM games
In order of the games' original release dates:
- Maniac Mansion
- Zak McKracken and the Alien Mindbenders
- Indiana Jones and the Last Crusade: The Graphic Adventure
- Loom
- The Secret of Monkey Island
- Monkey Island 2: LeChuck's Revenge
- Indiana Jones and the Fate of Atlantis
- Day of the Tentacle
- Sam & Max Hit the Road
- Full Throttle
- The Dig
- The Curse of Monkey Island
Sierra On-Line games
- The Beast Within: A Gabriel Knight Mystery
- The Black Cauldron
- Castle of Dr. Brain
- Codename: ICEMAN
- The Colonel's Bequest
- Conquests of Camelot: The Search for the Grail
- Conquests of the Longbow: The Legend of Robin Hood
- The Dagger of Amon Ra
- EcoQuest: The Search for Cetus
- EcoQuest II: Lost Secret of the Rainforest
- Freddy Pharkas: Frontier Pharmacist
- Gabriel Knight: Sins of the Fathers
- Gold Rush!
- Hi-Res Adventure #0: Mission Asteroid
- Hi-Res Adventure #1: Mystery House
- Hi-Res Adventure #2: The Wizard and the Princess
- Hi-Res Adventure #3: Cranston Manor
- Hi-Res Adventure #4: Ulysses and the Golden Fleece
- Hi-Res Adventure #5: Time Zone
- Hi-Res Adventure #6: The Dark Crystal
- Hoyle's Official Book of Games: Volume 1, Volume 2 and Volume 3
- The Island of Dr. Brain
- Jones in the Fast Lane
- King's Quest: Quest for the Crown
- King's Quest II: Romancing the Throne
- King's Quest III: To Heir Is Human
- King's Quest IV: The Perils of Rosella
- King's Quest V: Absence Makes the Heart Go Yonder!
- King's Quest VI: Heir Today, Gone Tomorrow
- King's Quest VII: The Princeless Bride
- King's Questions
- Leisure Suit Larry in the Land of the Lounge Lizards
- Leisure Suit Larry Goes Looking for Love (in Several Wrong Places)
- Leisure Suit Larry III: Passionate Patti in Pursuit of the Pulsating Pectorals
- Leisure Suit Larry 5: Passionate Patti Does a Little Undercover Work
- Leisure Suit Larry 6: Shape Up or Slip Out!
- Leisure Suit Larry 7: Love for Sail!
- Lighthouse: The Dark Being
- Manhunter: New York (developed by Evryware)
- Manhunter 2: San Francisco (developed by Evryware)
- Mickey's Space Adventure
- Mixed-Up Fairy Tales
- Mixed-Up Mother Goose
- Pepper's Adventures in Time
- Phantasmagoria
- Phantasmagoria II: A Puzzle of Flesh
- Police Quest: In Pursuit of the Death Angel
- Police Quest II: The Vengeance
- Police Quest III: The Kindred
- Police Quest IV: Open Season
- Quest for Glory: So You Want to Be a Hero
- Quest for Glory II: Trial by Fire
- Quest for Glory III: Wages of War
- Quest for Glory IV: Shadows of Darkness
- Rama
- Shivers
- Slater & Charlie Go Camping
- Space Quest: The Sarien Encounter
- Space Quest II: Vohaul's Revenge
- Space Quest III: The Pirates of Pestulon
- Space Quest IV: Roger Wilco and The Time Rippers
- Space Quest V: Roger Wilco – The Next Mutation
- Space Quest 6: Roger Wilco in The Spinal Frontier
- Torin's Passage
- Troll's Tale
- Winnie the Pooh in the Hundred Acre Wood
Coktel Vision games
- Bargon Attack
- The Bizarre Adventures of Woodruff and the Schnibble
- Fascination
- Geisha
- Gobliiins
- Gobliins 2: The Prince Buffoon
- Goblins Quest 3
- Lost in Time
- Once Upon A Time: Little Red Riding Hood
- Playtoons: Bambou le Sauveur de la Jungle
- Urban Runner
- Ween: The Prophecy
Adventuresoft-Horrorsoft games
- Elvira: Mistress of the Dark
- Elvira II: The Jaws of Cerberus
- The Feeble Files
- Personal Nightmare
- Simon the Sorcerer
- Simon the Sorcerer II: The Lion, the Wizard and the Wardrobe
- Simon the Sorcerer's Puzzle Pack
- Waxworks (a.k.a. Elvira 3)
Humongous Entertainment games
Various games by Humongous Entertainment use the SCUMM engine, and are therefore playable with ScummVM.
- Backyard Baseball
- Backyard Baseball 2001
- Backyard Baseball 2003
- Backyard Football
- Backyard Football 2002
- Big Thinkers! First Grade
- Big Thinkers! Kindergarten
- Blue's 123 Time Activities
- Blue's ABC Time Activities
- Blue's Art Time Activities
- Blue's Birthday Adventure
- Blue's Reading Time Activities
- Fatty Bear's Birthday Surprise
- Fatty Bear's Fun Pack
- Freddi Fish and the Case of the Missing Kelp Seeds
- Freddi Fish 2: The Case of the Haunted Schoolhouse
- Freddi Fish 3: The Case of the Stolen Conch Shell
- Freddi Fish 4: The Case of the Hogfish Rustlers of Briny Gulch
- Freddi Fish 5: The Case of the Creature of Coral Cove
- Freddi Fish and Luther's Maze Madness
- Freddi Fish and Luther's Water Worries
- Let's Explore the Airport with Buzzy
- Let's Explore the Farm with Buzzy
- Let's Explore the Jungle with Buzzy
- Pajama Sam: No Need to Hide When It's Dark Outside
- Pajama Sam 2: Thunder and Lightning Aren't so Frightening
- Pajama Sam 3: You Are What You Eat from Your Head to Your Feet
- Pajama Sam's Lost & Found
- Pajama Sam's Sock Works
- Pajama Sam: Games to Play on Any Day
- Putt-Putt and Pep's Balloon-O-Rama
- Putt-Putt and Pep's Dog on a Stick
- Putt-Putt Enters the Race
- Putt-Putt Goes to the Moon
- Putt-Putt Joins the Circus
- Putt-Putt Joins the Parade
- Putt-Putt Saves the Zoo
- Putt-Putt Travels Through Time
- Putt-Putt's Fun Pack
- Spy Fox in "Dry Cereal"
- Spy Fox 2: "Some Assembly Required"
- Spy Fox 3: "Operation Ozone"
- Spy Fox in Cheese Chase
- Spy Fox in Hold the Mustard
Living Books series games
- Aesop's Fables: The Tortoise and the Hare
- Arthur's Birthday
- Arthur's Teacher Trouble
- The Berenstain Bears Get in a Fight
- The Berenstain Bears in the Dark
- Dr. Seuss's ABC
- Green Eggs and Ham
- Harry and the Haunted House
- Just Grandma and Me
- Little Monster at School
- The New Kid on the Block
- Ruff's Bone
- Sheila Rae, the Brave
- Stellaluna
Games by other developers
ScummVM also supports the following non-SCUMM games:
- 3 Skulls of the Toltecs
- The 7th Guest
- Amazon: Guardians of Eden
- Beavis and Butt-Head in Virtual Stupidity
- Beneath a Steel Sky
- Blade Runner
- Blue Force
- Broken Sword: The Shadow of the Templars
- Broken Sword II: The Smoking Mirror
- Broken Sword 2.5: The Return of the Templars
- Bud Tucker in Double Trouble
- Chivalry is Not Dead
- Cruise for a Corpse
- Darby the Dragon
- Discworld
- Discworld II: Missing Presumed...!?
- Dragon History
- Drascula: The Vampire Strikes Back
- DreamWeb
- Duckman: The Graphic Adventures of a Private Dick
- Eye of the Beholder
- Eye of the Beholder II: The Legend of Darkmoon
- Flight of the Amazon Queen
- Full Pipe
- Future Wars
- Gregory and the Hot Air Balloon
- Hopkins FBI
- Hugo's House of Horrors
- Hugo II, Whodunit?
- Hugo III, Jungle of Doom!
- Hyperspace Delivery Boy!
- I Have No Mouth, and I Must Scream
- Inherit the Earth: Quest for the Orb
- The Journeyman Project: Pegasus Prime
- The Labyrinth of Time
- Lands of Lore: The Throne of Chaos
- Leather Goddesses of Phobos 2: Gas Pump Girls Meet the Pulsating Inconvenience from Planet X!
- The Legend of Kyrandia: Fables and Fiends
- The Legend of Kyrandia: Hand of Fate
- The Legend of Kyrandia: Malcolm's Revenge
- The Lost Files of Sherlock Holmes: The Case of the Rose Tattoo
- The Lost Files of Sherlock Holmes: The Case of the Serrated Scalpel
- Lure of the Temptress
- Magic Tales: Liam Finds a Story
- Magic Tales: The Princess and the Crab
- Magic Tales: Sleeping Cub's Test of Courage
- The Manhole
- Might and Magic IV
- Might and Magic V
- Might and Magic: Swords of Xeen
- Might and Magic: World of Xeen
- Mission Supernova Part 1 and Part 2
- Mortville Manor
- Myst and Myst Masterpiece Edition
- The Neverhood
- Nippon Safes Inc.
- Plumbers Don't Wear Ties
- The Prince and the Coward
- Return to Ringworld
- Return to Zork
- Rex Nebular and the Cosmic Gender Bender
- Ringworld: Revenge of the Patriarch
- Riven
- Rodney's Funscreen
- Sfinx
- Sołtys
- Starship Titanic
- Teenagent
- Tony Tough and the Night of Roasted Moths
- Toonstruck
- Touché: The Adventures of the Fifth Musketeer
- U.F.O.s
- Versailles 1685
- Voyeur
- Zork: Grand Inquisitor
- Zork Nemesis
Upcoming games
The following games are only playable when using an unstable daily development build, and are planned for the program's next major release.
See also
- Game engine recreation
- Z-machine
- ScummVM supported games
References
- Moss, Richard (January 16, 2012). "Maniac Tentacle Mindbenders: How ScummVM's unpaid coders kept adventure gaming alive". Ars Technica. Retrieved February 16, 2016.
- "Mar 31, 2020: ScummVM 2.1.2 "Fixing Powerful Windows" is here". ScummVM. 2020-03-31. Retrieved 2020-04-24.
- "Nov 22, 2001: Welcome to ScummVM". ScummVM. 2001-11-22. Retrieved 2020-04-24.
- Retro Tea Break: Eugene Sandulenko SCUMMVM Team Leader, retrieved 2020-01-21
- Cobbett, Richard (December 22, 2017). "How ScummVM is keeping adventure games alive, one old game at a time". PC Gamer. Retrieved December 28, 2017.
- "ScummVM Portability guidelines". wiki.scummvm.org. 2012-11-26. Retrieved 2013-09-26.
- Hinkle, David (2008-09-02). "News on Gamecube/Wii ports". Nintendowiifanboy.com. Retrieved 2013-09-26.
- 11/26/07 8:25am 11/26/07 8:25am. "Gizmodo news on iPhone port". Gizmodo.com. Retrieved 2013-09-26.
- "ScummVM for PlayBook". Forum.kpda.ru. Retrieved 2013-09-26.
- "scummvm-android". Retrieved 2013-09-26.
- "Webos Internals Team Ports ScummVM on WebOS". Webos-internals.org. 2010-01-28. Retrieved 2013-09-26.
- O'Conner, Alice (December 27, 2012). "Grim Fandango playable on modern PCs thanks to ResidualVM". Shacknews. Retrieved February 16, 2016.
- Damnjanovic, Goran (March 18, 2020). "ScummVM is a Magic Box That Runs Classic Adventures". Levvvel.
- Strangerke (2012-10-21). "Home". ScummVM. Retrieved 2012-12-28.
- sev (2008-09-06). "Home". ScummVM. Retrieved 2012-12-28.
- "cinE - the cinematic Engine". SourceForge.net. Retrieved 2013-09-26.
- "Old TrollVM Site". Archived from the original on 2010-03-23.
- "#9661 (TrollVM project removal) – sourceforge". Sourceforge.net. Archived from the original on 2012-11-10. Retrieved 2012-12-28.
- The official ScummVM compatibility chart.
- "Supported Games - ScummVM :: Wiki". wiki.scummvm.org. Retrieved 2020-03-02.
External links
Wikimedia Commons has media related to ScummVM. |
- Official website
- ScummVM on Google Play
- "ScummVM MIDI Music Enhancement Project". jameswoodcock.co.uk.