ScummVM - ScummVM

ScummVM
ScummVM "Modern Remastered" Logo.svg
Die ScummVM GUI mit dem "modern remastered" Skin.png
Die grafische Benutzeroberfläche von ScummVM 2.1.0 mit dem "remasterten" Skin
Originalautor(en) Ludvig Strigeus, Vincent Hamm
Entwickler ScummVM- Team
Erstveröffentlichung 8. Oktober 2001 ; vor 20 Jahren ( 2001-10-08 )
Stabile Version
2.5.0  Bearbeiten Sie dies auf Wikidata / 9. Oktober 2021 ; Vor 6 Tagen ( 9 Oktober 2021 )
Repository
Geschrieben in C++ und SDL
Betriebssystem Plattformübergreifend
Typ Dolmetscher
Lizenz GPL-2.0 oder höher
Webseite www .scummvm .org Bearbeiten Sie dies auf Wikidata

Das Skripterstellungs-Dienstprogramm für Maniac Mansion Virtual Machine ( ScummVM ) ist eine Reihe von Spiel-Engine-Nachbildungen . Ursprünglich entwickelt, um LucasArts-Abenteuerspiele zu spielen , die das SCUMM- System verwenden, unterstützt es auch eine Vielzahl von Nicht-SCUMM-Spielen von Unternehmen wie Revolution Software und Adventure Soft . Es wurde ursprünglich von Ludvig Strigeus geschrieben . ScummVM wurde unter den Bedingungen der GNU General Public License veröffentlicht und ist freie Software .

ScummVM ist eine Neuimplementierung des Teils der Software, der verwendet wird, um die Skriptsprachen solcher Spiele zu interpretieren, die zur Beschreibung der Spielwelt verwendet werden, anstatt die Hardware zu emulieren, auf der die Spiele ausgeführt wurden; Als solches ermöglicht ScummVM, dass die von ihm unterstützten Spiele auf anderen Plattformen als denen gespielt werden, für die sie ursprünglich veröffentlicht wurden.

Das Team dahinter fügt auch Verbesserungen wie Fehlerbehebungen und Übersetzungen hinzu und arbeitet mit kommerziellen Unternehmen wie GOG.com an Neuveröffentlichungen.

Merkmale

ScummVM ist ein Programm, das zahlreiche Abenteuerspiel-Engines über virtuelle Maschinen unterstützt , sodass der Benutzer unterstützte Abenteuerspiele auf der Plattform seiner Wahl spielen kann. ScummVM stellt keine der Originalressourcen für die unterstützten Spiele bereit und erwartet, dass der Benutzer die Medien des Originalspiels ordnungsgemäß besitzt, um die Software legal verwenden zu können. Die offizielle Projektwebsite bietet Freeware- Spiele, die direkt mit ScummVM funktionieren . Neben der Emulation der Spiele ermöglicht ScummVM den Spielern, den Zustand des Emulators jederzeit zu speichern und zu laden, wodurch ein Speichersystem auf dem, was auch immer das emulierte Spiel bietet, ermöglicht wird. Es hat auch damit begonnen, alternative Steuerelemente für neuere Geräte bereitzustellen, z. B. mobile Geräte mit Touchscreens, die auf den Originalspielen funktionieren.

Während ScummVM anscheinend gleichwertig als Spiele-Emulator funktioniert , betrachtet das ScummVM-Team es nicht als solchen. Außerhalb einiger Subsysteme wie Audio-Engines, die auf Emulation angewiesen sind, erstellt ScummVM Spiel-Engines aus älteren Sprachen in portableren C++- Code neu, sodass die High-Level- Opcodes in den Assets eines Spiels auf die gleiche Weise wie ihre ursprüngliche Version ausgeführt werden , während die Portabilität von ScummVM auf zahlreiche Plattformen verbessert wird. Das ScummVM-Team betrachtet dies als eine Verbesserung gegenüber dem einfachen Ausführen älterer Spiele und ihrer ausführbaren Dateien über einen Betriebssystememulator wie DOSBox , da die Geräte von ScummVM leichter sind und weniger Rechenleistung und Speicher benötigen, was die Verwendung auf eingeschränkteren Verarbeitungsumgebungen wie mobilen Geräten ermöglicht .

Häfen

Portabilität ist ein Designziel des Projekts. Ports von ScummVM sind für Microsoft Windows , macOS und eine Vielzahl von Unix-ähnlichen Systemen verfügbar, darunter Linux (basierend auf RPM, Debian oder Source), Mitglieder der BSD- Familie ( FreeBSD , NetBSD , OpenBSD , DragonFly BSD ) und Solaris . Es wurde auch auf Konsolensysteme portiert. Weniger Mainstream - PC - Ports umfassen diejenigen, Amiga , Atari-Free MiNT , Haiku - BeOS - ZETA , RISC OS und OS / 2 (einschließlich Derivate wie ArcaOS ).

Eine Vielzahl von Spielekonsolen haben offizielle Ports. ScummVM wurde auf Spielautomaten wie PlayStation 2 , PlayStation 3 , Dreamcast , Nintendo 64 , GameCube und Wii sowie auf Handheld-Konsolen wie GCW Zero , GP2X , Nintendo DS , Pandora , PlayStation Portable und PS Vita portiert . Zu den unterstützten Handheld-Computerplattformen gehören Palm OS Tapwave Zodiac , Symbian ( UIQ- Plattform, Nokia 60 , 80 und Nokia 7710 90 Telefonserien ), Nokias Internet Tablet OS (verwendet von Nokia 770 , N800 und N810 ), Apples iPhone , MotoMAGX , MotoEZX Handys und Windows Mobile . Zu den Plattformen, die von inoffiziellen ScummVM-Ports unterstützt werden, gehören die Xbox- Spielekonsole von Microsoft , BlackBerry PlayBook , Zaurus , Gizmondo und GP32- Plattformen für tragbare Geräte. Mobiltelefone mit Android , webOS oder dem inoffiziellen Samsung-Bada-Betriebssystem werden ebenfalls unterstützt.

Geschichte

Die Arbeit an ScummVM begann im September 2001 (mit der ersten öffentlichen Veröffentlichung im Oktober und einem Site-Start im November) durch den Informatikstudenten Ludvig Strigeus. Um sein eigenes Abenteuerspiel zu schreiben, suchte er nach den Mechanismen einer bestehenden Spiel-Engine, insbesondere bei der Entwicklung eines Emulators zum Spielen von Monkey Island 2 . Ungefähr zur gleichen Zeit wollte Vincent Hamm auch einen SCUMM-Emulator entwickeln, und obwohl er sich eingehender mit der Funktionsweise der SCUMM-Engine beschäftigt hatte, stellte er fest, dass Strigeus viel weiter war und die beiden sich zusammenschlossen, um den Emulator zu entwickeln. Während Strigeus die erforderliche Emulation für beendet Monkey Island 2 , arbeitete Hamm separat den Motor für die Vorbereitung auf Indiana Jones und das Schicksal von Atlantis , und einmal abgeschlossen, bekam die beiden etwas dis-Koordination auf ihre Bemühungen gefunden , aber schließlich den Emulator für beide Spiele arbeiten .

Neuigkeiten von ScummVM wurden im November 2001 von der Tech-News-Website Slashdot aufgegriffen , was ein großes Interesse an dem Projekt weckte, und mehrere andere Entwickler wurden Teil des Projekts, um andere Spiele zu unterstützen. Diese Entwickler wandten sich oft an die Schöpfer der Originalspiele, um auf informelle Weise Informationen zu erhalten, um die Emulation zu erstellen. Weitere Entwickler Unterstützung Spiele geholfen , die nicht SCUMM nicht genutzt haben , wie Adventure Soft ‚s Simon the Sorcerer ; zu diesem Zeitpunkt gab es einige Diskussionen über die Änderung des Namens des Programms, aber letztendlich behielten sie den ScummVM- Titel bei, da sie glaubten, dass SCUMM die bekannteste Adventure-Spiel-Engine war. Strigeus hatte Unterstützung für iMUSE entwickelt, die von vielen LucasArts-Spielen verwendete Soundsoftware, befürchtete jedoch, sie aufgrund einer möglichen Gegenreaktion von LucasArts einzuschließen. Andere Entwickler des Projekts rieten ihm, dass es keine rechtlichen Probleme geben sollte und es wurde schließlich aufgenommen. Obwohl Strigeus und Hamm das Projekt im Jahr 2002 verließen, hatte es bis dahin ein ausreichend großes Entwicklungsteam, um es wachsen zu lassen, angeführt von James "Ender" Brown. Nach dieser Verschiebung wurde der Quellcode der Engine von C auf C++ geändert und eine grafische Benutzeroberfläche (GUI) hinzugefügt.

Mit wachsendem Bewusstsein für das Projekt schickte LucasArts eine Unterlassungserklärung an das Projekt, in der Annahme, dass sie einen Teil des proprietären Codes von LucasArts verwenden. Brown arbeitete in den nächsten vier Jahren mit den Rechtsvertretern von LucasArts zusammen, um die Art des Emulators und die Quelle ihrer Informationen zu erklären, um zu zeigen, dass das, was sie geschaffen hatten, legal war. Brown war der Ansicht, dass LucasArts versuchte, entgegenkommend zu sein, da ScummVM dazu beitrug , das Interesse an diesen Titeln zu wecken. Sie haben sich schließlich rechtlich geeinigt, um die Weiterentwicklung von ScummVM zu ermöglichen .

Das Projekt würde auch andere parallele Bemühungen umfassen, Spielemulatoren für andere Abenteuerspiele zu entwickeln. Spiele von Sierra Online waren für das Projekt sehr gefragt, da sie den Adventure Game Interpreter (AGI) und die fortschrittlicheren Creative Interpreter (SCI)-Engines von Sierra emulieren mussten. Die AGI-Unterstützung wurde 2006 durch Einbeziehung der Bemühungen des Sarien-Projekts hinzugefügt, aber die Bemühungen um SCI-Unterstützung wurden durch das parallele Projekt FreeSCI behindert. Obwohl sowohl ScummVM als auch FreeSCI darauf abzielten, die Funktionsweise von SCI zurückzuentwickeln, hatte FreeSCI erklärt, dass sie einen reineren Ansatz verfolgten, um rechtliche Fragen zu ihrem Reverse Engineering zu vermeiden, und glaubte, dass das ScummVM- Projekt mit einigen von Sierras Ansätzen in Konflikt geraten war und daher zögerten, zusammenzuarbeiten. Allerdings begann das Interesse von FreeSCI im Vergleich zu ScummVM zu schwinden ; Nachdem ein Entwickler es auf sich genommen hatte, die FreeSCI-Engine in ScummVM zum Laufen zu bringen, sah die FreeSCI mehr Beteiligung an ihrem Projekt und stimmten zu, ihre Bemühungen in ScummVM zusammenzuführen . Die anfängliche SCI-Unterstützung wurde anschließend in einer 2010er Version von ScummVM veröffentlicht .

ScummVM fügt weiterhin neue Spiele oder Spiele-Engines hinzu, obwohl der Prozess zum Erstellen dieser Spiele relativ langsam ist. Laut dem Projektleiter des Teams, Eugene Sandulenko (Stand 2017), werden Game-Engines für die Aufnahme in ScummVM ausgewählt, wenn sie entweder den Quellcode erhalten, der die Portierung in die Software-Architektur erleichtert, oder wenn eines oder mehrere der Teammitglieder sind leidenschaftlich daran interessiert, eine Spiel-Engine in das Programm zu integrieren, um die schwierige Aufgabe zu erfüllen, den Code des Spiels aus den kompilierten Versionen zu rekonstruieren. Die einzige Einschränkung besteht darin, dass ScummVM nur 2D-Spiele-Engines enthält, sodass 3D-Spiele vom Schwesterprojekt ResidualVM verwaltet werden . Die 2.0-Version von ScummVM wurde im Dezember 2017 veröffentlicht und bietet Unterstützung für mehrere Full-Motion-Videospiele und einige sehr obskure Titel wie Full Pipe und Plumbers Don't Wear Ties . Mit dieser Version unterstützt ScummVM 64 verschiedene Spiel-Engines.

Seit etwa Dezember 2017 arbeitete ScummVM in Abstimmung mit einigen der ursprünglichen Entwickler als Support für Macromedia Director . Macromedia Director wurde Mitte der 1990er Jahre für viele Videospiele wie The Journeyman Project verwendet . Bis August 2021 wurden die ersten Versionen von ScummVM mit Director-Unterstützung veröffentlicht, wobei das Team weiterhin an der Verbesserung der Leistung arbeitet.

Ein Versuch, Another World von Éric Chahi einzubringen, brachte 2004 einige interne Spannungen in das Projekt. Another World war kein Point-and-Click-Adventure-Spiel und verwendete polygonbasierte Grafiken anstelle der pixelbasierten Grafiken, die die meisten Adventure-Spiele verwenden. und wurde daher als ernsthafte Abkehr vom Fokus von ScummVM angesehen . Obwohl das Projekt in wenigen Tagen verschrottet wurde nach Chahi seine Entfernung angefordert , als er einen 15 - jährigen Jubiläum zu verkaufen remastered Vorbereitung hatten die Stromzuführungen des Projekts die Gruppe neu zu fokussieren und die Ideale zu definieren , dass ScummVM erfüllen sollte.

ScummVM hatte auch Schwierigkeiten, Spiele mit dem Adventure Game Studio (AGS) bereitzustellen, das häufig in Indie- Abenteuerspielen wie der Blackwell- Serie verwendet wird . Während der Quellcode für AGS 2010 von seinem Entwickler Chris Jones veröffentlicht wurde, wurde das ScummVM- Team mit einer großen Gegenreaktion von Beschwerden von Entwicklern konfrontiert, die die AGS-Engine für ihre Spiele verwenden, und erklärten, dass sie ihre Spiele nicht sehen wollten in ScummVM ausführen . Doch schließlich wurde AGS ein paar Jahre später im Entwicklungs-Build getestet, mit der Bitte an die Öffentlichkeit, Tausende von neu unterstützten Spielen als Beta zu testen , bis alle Spiele von AGS v2.5+ offiziell zum Programm hinzugefügt wurden, was mit seinem 20-jährigen Jubiläum zusammenfällt im Oktober 2021.

ScummVM nimmt seit 2007 außer 2015 jedes Jahr am Google Summer of Code teil . Ein Schwesterprojekt, ResidualVM , wurde gestartet, um Engines für dreidimensionale Abenteuerspiele wie Grim Fandango und Myst III: Exile zu implementieren , die so genannt werden da diese Spiele den Rest der Spiele widerspiegeln, die nicht bereits von ScummVM abgedeckt sind . Ende 2020 wurde bekannt, dass ResidualVM offiziell mit ScummVM fusioniert. Dies wurde mit der Version 2.5 abgeschlossen, die mit dem 20-jährigen Jubiläum des Programms im Oktober 2021 zusammenfällt.

Entwicklerunterstützung

Laut Sandulenko "gibt es keinen typischen Prozess", wenn es um die Zusammenarbeit mit Entwicklern geht: "Alles ist ad-hoc. Wir versuchen, nach Kontaktinformationen von Leuten zu suchen, die an den Titeln gearbeitet haben, an denen sich ein Entwickler interessiert. und wir fragen nach Zugang zu ihrem ursprünglichen Quellcode, falls er noch irgendwo existiert. Dann beginnen wir, in unserem eigenen Tempo daran zu arbeiten."

Mit erhöhter Aufmerksamkeit hat ScummVM günstige Vereinbarungen mit Adventure-Spielentwicklern getroffen, um ihre Titel in die Engine zu integrieren oder in einigen Fällen Quellcode und andere Ressourcen zur Verfügung zu stellen. Revolution Software half den Entwicklern mit Quellcode und technischer Beratung für seine Spiele, und nachdem ScummVM die Virtual Theatre- Engine des Unternehmens unterstützt hatte , veröffentlichte Revolution Lure of the Temptress und Beneath a Steel Sky als Freeware und stellte Assets aus seinen ersten beiden Broken Sword- Spielen in einem offenes Medienformat. Das erneute Interesse jüngerer Spieler an diesen Spielen ermöglichte es Revolution, an zwei weiteren Broken Sword- Spielen zu arbeiten. Andere Entwickler, die eng mit ScummVM zusammengearbeitet haben, sind:

Die digitale Storefront GOG.com, die sich auf den Verkauf digitaler Kopien älterer Spiele spezialisiert hat, unterstützt ScummVM und verkauft Titel, die die ScummVM- Engine als Teil ihrer Distribution enthalten. Disney, das die Rechte an LucasArts- Abenteuerspielen besitzt , hat Maniac Mansion auf Steam veröffentlicht, das von ScummVM ausgeht .

Entwicklung

Die Unterstützung für Operation Stealth und Future Wars wurde durch die Integration einer weiteren eigenständigen Nachbildung ihrer Engine hinzugefügt: cinE. TrollVM wurde auch in ScummVM integriert und bietet Unterstützung für drei Prä-AGI-Spiele: Mickey's Space Adventure , Troll's Tale und Winnie the Pooh in the Hundred Acre Wood .

Verstöße gegen die GPL von Mistic

ScummVM wird als freie Software unter der Lizenz GPL-2.0 oder höher vertrieben , sodass jeder das Projekt als Engine für ein Spiel verwenden kann. Revolution Software hat beispielsweise seine Broken Sword- Spiele für eine DVD-Veröffentlichung neu gepackt und ScummVM mit den mitgelieferten Sword1- und Sword2- Engines verwendet, um moderne Computer zu unterstützen.

Im Dezember 2008 erfuhr das ScummVM-Team, dass die kürzlich veröffentlichten Wii- Ports von drei Humongous Entertainment Junior Adventure- Titeln, Freddi Fish and the Case of the Missing Kelp Seeds , Pyjama Sam: No Need to Hide When It's Dark Outside und Spy Fox: Dry Cereal , haben alle die ScummVM- Engine ohne ordnungsgemäße Zuordnung verwendet. Die Spiele wurden auf Anfrage von Atari über Majesco Entertainment veröffentlicht , das sich an Mistic Software wandte, um die Spiele zu portieren. Mistic hatte dafür ScummVM verwendet , aber es versäumt, den Entwicklern Anerkennung zu zollen . Während das ScummVM- Team gpl-violations.org um Rechtsberatung bat, drohte Atari stattdessen, das ScummVM-Team zu verklagen, da die Bedingungen des Nintendo Wii-Entwicklungskits die Verwendung von Open-Source-Software, einschließlich der GPL, stark einschränkten. 2009 wurde ein Vergleich geschlossen, in dem ScummVM die Untersuchung der GPL-Verletzung einstellen würde, unter der Bedingung, dass Mistic alle GPL-verletzenden Kopien der Spiele verkauft oder vernichtet, eine Spende an die Free Software Foundation leistet und die Rechtskosten bezahlt Gebühren. Infolgedessen hat dieser Rechtsstreit die Verfügbarkeit der Wii-Ports dieser drei Titel erheblich eingeschränkt.

Unterstützte Spiele

GUI von ScummVM 0.8.0 mit dem Skin "Classic (integriert)"

Die folgenden Spiele haben in die aktuelle Version von ScummVM integrierte Unterstützung.

LucasArts SCUMM-Spiele

In der Reihenfolge der ursprünglichen Veröffentlichungsdaten der Spiele:

Sierra Online-Spiele

Coktel Vision-Spiele

Adventuresoft-Horrorsoft-Spiele

Ungeheuerliche Unterhaltungsspiele

Verschiedene Spiele von Humongous Entertainment verwenden die SCUMM-Engine und sind daher mit ScummVM spielbar.

Spiele der Living Books- Serie

Abenteuerspielstudio (AGS)

Spiele, die in Adventure Game Studio v2.5+ entwickelt wurden, wie zum Beispiel:

Spiele anderer Entwickler

ScummVM unterstützt auch die folgenden Nicht-SCUMM-Spiele:

Siehe auch

Verweise

Externe Links