ScummVM

Interpretersoftware für Computerspiele

ScummVM ist eine Software- und Skript-Sammlung, in der zahlreiche nachgebaute Spiel-Engines unter einer gemeinsamen grafischen Benutzeroberfläche zusammengefasst sind. Viele ältere Computer- und Konsolen-Spiele sind damit auf wesentlich moderneren oder auch ganz anderen Plattformen lauffähig, als deren ursprüngliche Entwickler vorhersehen oder bei der Programmierung berücksichtigen konnten.

ScummVM


ScummVM Screenshot
Basisdaten

Entwickler ScummVM-Team
Erscheinungsjahr 8. Oktober 2001[1]
Aktuelle Version 2.8.1[2]
(31. März 2024)
Betriebssystem Multi-Plattform
Programmier­sprache C++
Kategorie Interpreter
Lizenz GPLv3+
deutschsprachig ja
www.scummvm.org

Zunächst lediglich für Adventures auf Basis der Skriptsprache SCUMM des Anbieters LucasArts entwickelt, unterstützt ScummVM (Akronym für „Script creation utility for maniac mansionVirtual Machine“) heute eine ganze Reihe Spiele anderer Hersteller wie beispielsweise Revolution Software, Adventure Soft oder Sierra Entertainment.

ScummVM ist selbst als freie Software unter der GNU General Public License veröffentlicht. Die einzelnen damit spielbaren Titel sind jedoch mit wenigen Ausnahmen weiterhin durch Rechte der jeweiligen Hersteller geschützt.

Das Team hinter ScummVM hat sich darauf spezialisiert, verschiedenste Spiel-Engines oder Interpreter für Skriptsprachen älterer Spiele zu analysieren und für diese Spiele neue ausführbare Dateien (Executables) zu entwickeln. Daher ist ScummVM weder ein Emulator noch eine Laufzeitumgebung für die Originalsoftware, sondern eigentlich eine Sammlung durch Reverse Engineering erstellter Nachbauten. Dabei wird auf weitestgehend kompatible und verhaltensgleiche Wirkung geachtet. So wird direkt auf die originalen Spiele-Ressourcen, wie z. B. Hintergründe, Bilder, Grafiken, Animationen, Figuren, Soundeffekte, Musik und Videos zugegriffen. Deren Verknüpfung mit den Benutzerinteraktionen als Spielablauf/Handlung wird jedoch durch ScummVM-Skripte bzw. neu geschriebene Executables gesteuert.[3]

Anlass für diese Bemühungen ist, dass die Originalspiele von ihren Herstellern in der Regel nur unter wenigen, inzwischen längst veralteten Betriebssystemen oder kaum noch verfügbaren Konsolen implementiert worden sind, oder dass die Spiele auf moderner Hardware nicht mehr in befriedigender Qualität und Stabilität zum Laufen zu bringen sind. Die Nachbauten sind darauf ausgelegt, möglichst plattformunabhängig zu funktionieren, solange die ScummVM-Umgebung auf der betreffenden Plattform läuft – wie bei einer Virtuellen Maschine, daher im Namen das „VM“.

Darüber hinaus ermöglicht ScummVM seinen Benutzern, die Darstellung der Originalgrafik zu optimieren. Ältere Spiele wurden häufig für niedrigere Bildauflösungen entwickelt. Adventures aus den ersten Jahren unterstützen standardmäßig nur 320×200 Bildpunkte. Zur Darstellung auf einem modernen Computermonitor mit deutlich höherer Auflösung und oft auch abweichendem Seitenverhältnis bietet ScummVM verschiedene Techniken, um die Grafik zu skalieren, zu strecken oder bietet eine Auswahl verschiedener Modi für das Rendering bzw. die Farbdarstellung.[4]

Außerdem ist es mit ScummVM möglich, auch solche Spiele mit Audio- und Musikausgabe zu spielen, für die das Originalprogramm ganz bestimmte Sound-Hardware voraussetzt, wie beispielsweise eine AdLib-, oder Sound-Blaster-Karte, die auf aktuellen Plattformen nicht zur Verfügung steht. Es werden stattdessen die betriebssystemeigenen Soundfunktionen verwendet. Für den Fall, dass das Betriebssystem keine MIDI-Ausgabe unterstützt, hat ScummVM FluidSynth integriert, einen Echtzeit-Software-Synthesizer, der auf den SoundFont-2-Spezifikationen basiert und ein der MIDI-Ausgabe möglichst ähnliches Ergebnis liefern soll.

ScummVM ist in C++ geschrieben und greift für Grafik- und Sound-Ausgaben auf die portablen Programmbibliotheken SDL, MAD, Vorbis oder Tremor, FLAC und libmpeg2 zurück. Neben dem Quellcode sind für die meisten unterstützten Betriebssysteme Binärdateien auf der Website des Projekts verfügbar. Zahlreiche Linux- und BSD-Distributionen bieten kompilierte Programmpakete auch in ihren Repositories.

Aktuelle Implementierungen gibt es unter anderem für Microsoft Windows, macOS, sowie für verschiedene BSD- und Linux-Systeme, für iOS, Android und die Konsolensysteme Dreamcast, Nintendo DS, Playstation 3, PlayStation Portable, Playstation Vita, Nintendo DS, Nintendo Wii und Nintendo Switch.[5] Es gibt weitere Implementierungen für eine Vielzahl älterer Systeme, die aber zumeist schon seit längerer Zeit nicht mehr aktualisiert worden sind, weil Systeme selbst nicht weiterentwickelt werden und deren Verbreitung abnimmt oder weil das ScummVM-Team derzeit niemanden hat, der die Rolle des Maintainer übernehmen könnte.

Seit Version 1.2.0 kann die Oberfläche nicht nur in Englisch, sondern auch in zahlreichen anderen Sprachen angezeigt werden.

Entwicklung

Bearbeiten

Hinter ScummVM steht eine private Gruppe von Entwicklern. Etwa halbjährlich erscheinen neue Versionen, die neben Fehlerkorrekturen und Verbesserungen der Spielbarkeit auch immer Unterstützung für weitere Spiele mit sich bringen. Das Projekt ist seit 2007 regelmäßig beim Google Summer of Code vertreten.

Zunächst konzentrierte sich die Entwicklung ausschließlich auf das von LucasArts entwickelte Skriptsystem SCUMM und alle Spiele, die mit der zugehörigen Spiel-Engine SPUTM entwickelt wurden. Neben den LucasArts-Adventures wie den ersten drei Monkey-Island-Spielen nutzen diverse Spiele von Humongous Entertainment dieses System. Inzwischen wächst jedoch die Zahl der unterstützten Adventures zunehmend um Titel, die auf ganz anderen Engines entwickelt worden sind.

Sarien und FreeSCI

Bearbeiten

Im Jahr 2007 entschieden sich die Entwickler des 1999 gestarteten Projekts Sarien und zwei Jahre später auch die Entwickler von FreeSCI, das Ergebnis ihrer Arbeit in das ScummVM-Projekt einzubringen bzw. mit ScummVM gemeinsam weiterzuentwickeln. Bis dahin hatten sie sich erfolgreich, aber von ScummVM unabhängig, der Spielbarkeit älterer Adventures von Sierra On-Line (heute Sierra Entertainment) gewidmet. Zahlreiche Adventures, die mit TrollVM (preAGI) und Adventure Game Interpreter (AGI) entwickelt wurden, konnten schon länger unter ScummVM gespielt werden. Mit Version 1.2.0 „FaSCInating release“ erhielt ScummVM schließlich auch die Ergänzung um den Sierra Creative Interpreter (SCI). Seither sind Adventures aus der Reihe Leisure Suit Larry, den Quest-Serien King’s Quest, Police Quest, Space Quest und andere bekannte Klassiker, nicht zuletzt auch zahlreiche, ebenfalls in SCI entwickelte Fan Games über ScummVM spielbar.

ResidualVM

Bearbeiten

ResidualVM (anfangs nur „Residual“) war ein Nebenprojekt einiger ScummVM-Entwickler, mit dem Ziel, auch ältere 3D-Grafik-Adventures auf neueren Systemen lauffähig zu machen. Dabei konzentrierte man sich zunächst auf Grim Fandango und Flucht von Monkey Island, welche beide auf der Skriptsprache Lua, sowie der Spiel-Engine GrimE basieren. Am 9. März 2014 gaben die Entwickler bekannt, dass ResidualVM unter der Schirmherrschaft von ScummVM als Projekt für das Stipendium Google Summer of Code akzeptiert wurde.[6] Im Jahr 2019 erschien auf der Projektseite auch Myst III: Exile in der Liste der von ResidualVM unterstützen Spiele[7] und zum 20. Jahrestags der Erscheinens von The Longest Journey wurde im November 2019 eine Unterstützung für dieses Spiel angekündigt.[8]

Am 9. Oktober 2020 gab ScummVM.org auf seiner Newsseite bekannt, dass man zwischen 2D- und 3D-Adventurespielen nicht mehr länger unterscheiden werde. Das Schwesterprojekt sei jetzt in ScummVM integriert worden. Die Mehrheit der ResidualVM-Entwickler habe sich dem ScummVM Team angeschlossen, um in Zukunft gemeinsam weiterzuentwickeln. Neben den schon genannten Spielen habe man auch noch unfertige Arbeit an In Cold Blood und der Wintermute Engine auf ScummVM übernommen.[9]

Verfügbarkeit der Spiele

Bearbeiten

ScummVM selbst enthält keine Spiele. Die Benutzer müssen sich also zunächst ein eigenes Exemplar eines der unterstützten Spiele kaufen. Durch ihr hohes Alter sind einige der Spiele jedoch in preiswerten Sammlungen, zum Beispiel den LucasArts Classics, erhältlich.

Inzwischen gibt es auch einige Adventures, die von den Entwicklern freigegeben wurden:

Deren Entwickler entschieden sich nicht nur, dem ScummVM-Team Einblick in den Quelltext zu gewähren, sondern die Spieldaten sowohl der CD- als auch der Disketten-Versionen als Freie Software zu veröffentlichen, wodurch sie auf der ScummVM-Website zum Herunterladen angeboten werden und einige davon auch auf freien Linux-Distributionen beigefügt werden dürfen.

Dazu gehört Dragon History (NoSense), das für ScummVM neu überarbeitet und dessen Quelltext unter GPLv2 gestellt wurde.[11] Zudem kann Teen Agent (Metropolis Software House / CD Projekt) auf Good Old Games als Freeware heruntergeladen werden.[12]

Literatur

Bearbeiten
  • Christian Rentrop: Wiederbelebte Spiele-Klassiker. In: mac & i. Nr. 5, 2024, S. 130–133 (heise.de [abgerufen am 23. Oktober 2024] Auch online ohne Bezahlschranke [1]).
Bearbeiten
Commons: ScummVM – Sammlung von Bildern

Einzelnachweise

Bearbeiten
  1. www.scummvm.org.
  2. Release Notes. 31. März 2024 (abgerufen am 31. März 2024).
  3. Christian Baun: Klassiker wiederbeleben mit ScummVM. In: LinuxUser 01/2005. Abgerufen am 14. Januar 2023 (deutsch).
  4. ScummVM: Understanding the graphics settings. In: docs.scummvm.org. Abgerufen am 8. Januar 2023 (englisch).
  5. Compiling ScummVM. Current Officially Supported Platforms. In: scummvm.org. 24. Juli 2022, abgerufen am 8. Januar 2023 (englisch).
  6. Ankündigung zum GSoC 2014. In: residualvm.org. 9. Mai 2014, abgerufen am 10. Dezember 2019 (englisch).
  7. Kompatibilitätsliste der Spiele von ResidualVM. In: residualvm.org. 1. Juni 2019, abgerufen am 10. Dezember 2019 (englisch).
  8. Ankündigung der Unterstützung von The Longest Journey. In: residualvm.org. 10. November 2019, abgerufen am 10. Dezember 2019 (englisch).
  9. A merger. In: ScummVM.org. 9. Oktober 2020, abgerufen am 31. Oktober 2020 (englisch).
  10. Drascula: The Vampire Strikes Back (Memento vom 27. September 2015 im Internet Archive)
  11. Dragon History. Adventure von NoSense. In: ucw.cz. 6. Juli 2012, abgerufen am 10. Dezember 2019 (englisch).
  12. Michael Stein: Sonderaktion und Gewinnspiel bei Good Old Games. In: Adventure-Treff. 12. Mai 2009, abgerufen am 5. Januar 2024.