Difference between revisions of "About/de"

From ScummVM :: Wiki
Jump to navigation Jump to search
(Workaround for bug with Languages tag)
(update with info about RPGs)
 
(4 intermediate revisions by 3 users not shown)
Line 1: Line 1:
{{Languages|About}}
{{Languages|About}}
== Kurzbeschreibung ==
{{DISPLAYTITLE: Über ScummVM}}
 
==Kurzbeschreibung==
ScummVM ist ein Programm, welches es Ihnen ermöglicht, bestimmte klassische Grafik-Adventure (überwiegend aus dem Point-and-Click-Bereich) zu spielen, vorausgesetzt, Sie sind im Besitz der Dateien des Spiels. Das Schlaue daran ist: ScummVM ersetzt lediglich die Funktion der ausführbaren Dateien, die mit den Spielen kamen, was ermöglicht, diese Spiele auf Systemen zu spielen, für welche sie nie erstellt wurden!
ScummVM ist ein Programm, welches es Ihnen ermöglicht, bestimmte klassische adventure und rollenspielen zu spielen, vorausgesetzt, Sie sind im Besitz der Dateien des Spieles. Das Schlaue daran ist: ScummVM ersetzt lediglich die Funktion der ausführbaren Dateien, die mit den Spielen kamen, was ermöglicht, diese Spiele auf Systemen zu spielen, für welche sie nie erstellt wurden!


Für weitere Informationen über die Macher können Sie die [[ScummVM History/de|ScummVM-Geschichte]] oder die [[Developers Bios/de|Steckbriefe über die Entwickler]] lesen.
Für weitere Informationen über die Macher können Sie die [[ScummVM History/de|ScummVM-Geschichte]] oder die [[Developers Bios/de|Steckbriefe über die Entwickler]] lesen.


== Eine genauere Beschreibung ==
==Eine genauere Beschreibung==
=== Die innere Funktionsweise eines Adventures ===
===Die innere Funktionsweise von adventure und rollenspielen===
Fast alle Adventures teilen einige gemeinsame Eigenschaften. Die am meisten zugrunde liegenden sind die Ressourcen, die verwendet werden, welche in den Dateien des Spieles sind:
Fast alle adventure und rollenspielen teilen einige gemeinsame Eigenschaften. Die am meisten zugrunde liegenden sind die Ressourcen, die verwendet werden, welche in den Dateien des Spieles sind:
* Grafiken
*Grafiken
** Darsteller (die Grafikobjekte im Spiel)
**Darsteller (die Grafikobjekte im Spiel)
** Hintergrundbilder
**Hintergrundbilder
** Schriftarten
**Schriftarten
** Animationen im Spiel
**Animationen im Spiel
** Objekte
**Objekte
** Videos
**Videos
* Ton
*Ton
** Künstlich erzeugte Musik (z. B. MIDI)
**Künstlich erzeugte Musik (z. B. MIDI)
** Geräusche
**Geräusche
** Sprachausgabe
**Sprachausgabe


Abgesehen von den Ressourcen haben fast alle Spiele ihre eigene Skriptsprache. Dies vereinfacht Dinge im gesamten Entwicklungsprozess, da es dann einfacher ist, Aufgaben an bestimmte Personen zu übertragen. Programmierer beschäftigen sich mit dem Code selbst, Spiele-Entwickler beschäftigen sich damit, Skripte in der Sprache zu schreiben, die der Spiel-Interpreter versteht, Grafik-Entwickler beschäftigen sich mit dem künstlerischen Teil des Spiels, Musik-Komponisten mit Audio usw. Obwohl die Grundelemente jedes Spieles Standard sind, integriert diese jedes Spiel auf eine sehr andere Weise. Der wichtigste Aspekt von Adventures ist die Art und Weise, wie sie „hinter den Kulissen“ funktionieren, was die Art der verwendeten Logik einschließt und wie diese in jedes Spiel integriert ist, die Sorte der Interaktionen, die vom Benutzer erwartet werden (z. B. erlauben einige Spiele die Verwendung von Verben an Objekten wie „Benutze Objekt 1 mit Objekt 2“, wohingegen andere Spiele nur einen Klick auf Objekte ermöglichen). Die Ressourcen selbst sind ohne die Spiellogik überhaupt nicht hilfreich, die der schwierigste Teil ist, der sich in ein Spiel integrieren lässt. In der Tat gibt es viele Ressourcen-Anzeigeprogramme, die man verwenden kann, um die Ressourcen von einer großen Anzahl verschiedener Spiele zu betrachten, aber sie beschäftigen sich gar nicht mit der Logik hinter diesen Ressourcen. Eine kurze Einführung dazu, wie Spiellogik in jedem Spiel funktioniert, wird im nächsten Teil gegeben.
Abgesehen von den Ressourcen haben fast alle Spiele ihre eigene Skriptsprache. Dies vereinfacht Dinge im gesamten Entwicklungsprozess, da es dann einfacher ist, Aufgaben an bestimmte Personen zu übertragen. Programmierer beschäftigen sich mit dem Code selbst, Spiele-Entwickler beschäftigen sich damit, Skripte in der Sprache zu schreiben, die der Spiel-Interpreter versteht, Grafik-Entwickler beschäftigen sich mit dem künstlerischen Teil des Spieles, Musik-Komponisten mit Audio usw. Obwohl die Grundelemente jedes Spieles Standard sind, integriert diese jedes Spiel auf eine sehr andere Weise. Der wichtigste Aspekt von adventure und rollenspielen ist die Art und Weise, wie sie „hinter den Kulissen“ funktionieren, was die Art der verwendeten Logik einschließt und wie diese in jedes Spiel integriert ist, die Sorte der Interaktionen, die vom Benutzer erwartet werden (z. B. erlauben einige Spiele die Verwendung von Verben an Objekten wie „Benutze Objekt 1 mit Objekt 2“, wohingegen andere Spiele nur einen Klick auf Objekte ermöglichen). Die Ressourcen selbst sind ohne die Spiellogik überhaupt nicht hilfreich, die der schwierigste Teil ist, der sich in ein Spiel integrieren lässt. In der Tat gibt es viele Ressourcen-Anzeigeprogramme, die man verwenden kann, um die Ressourcen von einer großen Anzahl verschiedener Spiele zu betrachten, aber sie beschäftigen sich gar nicht mit der Logik hinter diesen Ressourcen. Eine kurze Einführung dazu, wie Spiellogik in jedem Spiel funktioniert, wird im nächsten Teil gegeben.


=== Die Skriptsprache eines Spiels ===
===Die Skriptsprache eines Spieles===
Wie zuvor erwähnt, verwendet jedes Spiel seine eigene Skriptsprache, die gewöhnlich in den Dateien des Spiels enthalten ist. Diese ist normalerweise auf höherer Ebene und der Spiel-Interpreter selbst (die ausführbare Datei des Spiels) ist verantwortlich dafür, die Skriptbefehle aus den Spiellogik-Skripten zu verarbeiten und die ganze eigentliche Arbeit zu leisten. Hier ist ein Beispielskript einer hypothetischen Engine, in welchem das Spiel eine Szene laden und einen Fall behandeln müsste, in welchem der Benutzer den Gegenstand A aufnehmen würde:
Wie zuvor erwähnt, verwendet jedes Spiel seine eigene Skriptsprache, die gewöhnlich in den Dateien des Spieles enthalten ist. Diese ist normalerweise auf höherer Ebene und der Spiel-Interpreter selbst (die ausführbare Datei des Spieles) ist verantwortlich dafür, die Skriptbefehle aus den Spiellogik-Skripten zu verarbeiten und die ganze eigentliche Arbeit zu leisten. Hier ist ein Beispielskript einer hypothetischen Engine, in welchem das Spiel eine Szene laden und einen Fall behandeln müsste, in welchem der Benutzer den Gegenstand A aufnehmen würde:


   starteSzene(1)
   starteSzene(1)
Line 52: Line 52:
Ein Spielskript kann grundlegende Elemente der Spiellogik enthalten (z. B. if (falls), else (sonst), goto (gehe zu) usw.) und kann direkt Funktionen von der ausführbaren Datei selbst aufrufen, die man als „Skriptbefehlscode“ bezeichnet.
Ein Spielskript kann grundlegende Elemente der Spiellogik enthalten (z. B. if (falls), else (sonst), goto (gehe zu) usw.) und kann direkt Funktionen von der ausführbaren Datei selbst aufrufen, die man als „Skriptbefehlscode“ bezeichnet.


=== Wo kommt ScummVM ins Spiel? ===
===Wo kommt ScummVM ins Spiel?===
ScummVM ist ein Projekt, in welchem versucht wird, den Code aus der originalen ausführbaren Datei eines bestimmten Spieles neu zu schreiben, wobei auf den Original-Quellcode des Spieles zurückgegriffen wird oder Techniken des Reverse Engineerings angewandt werden, um den Code zu sehen, der sich in dieser ursprünglichen ausführbaren Datei befindet. Der Code wird dann in C++ neu geschrieben. Das bedeutet, dass die ausführbare Datei von ScummVM als Ersatz für die ursprüngliche Datei des Spieles verwendet werden kann, aber natürlich werden die Spieldateien (Grafiken, Audio, Spielskripte usw.) benötigt, um das Spiel zu spielen. Daher ist ScummVM KEIN Emulator eines speziellen Betriebssystem wie es z. B. DOSBOX für DOS ist. ScummVM ist eigentlich ein komplett neu geschriebenes Programm aus der Engine jedes unterstützten Spieles, was viele Vorteile mit sich bringt:
ScummVM ist ein Projekt, in welchem versucht wird, den Code aus der originalen ausführbaren Datei eines bestimmten Spieles neu zu schreiben, wobei auf den Original-Quellcode des Spieles zurückgegriffen wird oder Techniken des Reverse Engineerings angewandt werden, um den Code zu sehen, der sich in dieser ursprünglichen ausführbaren Datei befindet. Der Code wird dann in C++ neu geschrieben. Das bedeutet, dass die ausführbare Datei von ScummVM als Ersatz für die ursprüngliche Datei des Spieles verwendet werden kann, aber natürlich werden die Spieldateien (Grafiken, Audio, Spielskripte usw.) benötigt, um das Spiel zu spielen. Daher ist ScummVM KEIN Emulator eines speziellen Betriebssystems, wie es z. B. DOSBox für DOS ist. ScummVM ist eigentlich ein komplett neu geschriebenes Programm aus der Engine jedes unterstützten Spieles, was viele Vorteile mit sich bringt:
* Die Spiele laufen auf vielen verschiedenen Plattformen dank ScummVMs portierbarem Plattform-Unterbau.
*Die Spiele laufen auf vielen verschiedenen Plattformen dank ScummVMs portierbarem Plattform-Unterbau.
* Spielgrafiken können durch die Anwendung verschiedener Grafikfilter verbessert werden (einschließlich super2xsai, supereagle, advmame2x, advmame3x, hq2x, hq3x und weitere).
*Spielgrafiken können durch die Anwendung verschiedener Grafikfilter verbessert werden (einschließlich super2xsai, supereagle, advmame2x, advmame3x, hq2x, hq3x und weitere).
* Einige Fehler, die in der ursprünglichen ausführbaren Datei des Spiels (oder speziellen Skripten) auftraten, können beseitigt werden.
*Einige Fehler, die in der ursprünglichen ausführbaren Datei des Spieles (oder speziellen Skripten) auftraten, können beseitigt werden.
* Es ist möglich, die Audio-Dateien der Spiele in bekannte Formate zu komprimieren, wie z. B. MP3, OGG oder FLAC, sodass das Spiel selbst viel weniger Speicherplatz benötigt.
*Es ist möglich, die Audio-Dateien der Spiele in bekannte Formate zu komprimieren, wie z. B. MP3, Vorbis oder FLAC, sodass das Spiel selbst viel weniger Speicherplatz benötigt.
* Spiele von LucasArts haben ein viel besseres Menü und die Spielstände werden besser verwaltet.
*Spiele von LucasArts haben ein viel besseres Menü und die Spielstände werden besser verwaltet.
* Die meisten Engines erlauben dem Spieler, viel mehr Speicherstände zu erstellen, als der ursprüngliche Interpreter zuließ.
*Die meisten Engines erlauben dem Spieler, viel mehr Speicherstände zu erstellen, als der ursprüngliche Interpreter zuließ.
* In einigen Spielen bietet ScummVM zusätzliche Funktionen, die in der ursprünglichen ausführbaren Datei nicht vorhanden waren. Z. B. wird in einigen älteren AGI-Spielen eine Maus unterstützt, obwohl diese im Original nicht unterstützt wurde.
*In einigen Spielen bietet ScummVM zusätzliche Funktionen, die in der ursprünglichen ausführbaren Datei nicht vorhanden waren. Z. B. wird in einigen älteren AGI-Spielen eine Maus unterstützt, obwohl diese im Original nicht unterstützt wurde.
* Es ist möglich, die MT-32-Musik eines unterstützten Spieles anzuhören (falls vorhanden), ohne überhaupt MT-32 eingebaut zu haben. Diese Musik wird dann über ein künstliches System emuliert.
*Es ist möglich, die MT-32-Musik eines unterstützten Spieles anzuhören (falls vorhanden), ohne überhaupt einen MT-32 zu besitzen. Diese Musik wird dann über ein künstliches System emuliert.
* ScummVM benötigt viel weniger Prozessorleistung und Systemressourcen als ein Emulator, da Spiele direkt in ScummVM laufen und nicht durch eine emulierte Plattform (die möglicherweise einen anderen Prozessor, eine andere Speicherverwaltung usw. hat).
*ScummVM benötigt viel weniger Prozessorleistung und Systemressourcen als ein Emulator, da die Spiel-Engines mit ScummVM auf die verwendete Plattform portiert wurden und somit die ursprüngliche Plattform nicht emuliert werden muss (die einen anderen Prozessor, eine andere Speicherverwaltung usw. hat).
... und vieles mehr.
... und vieles mehr.
Die Herangehensweise beim Implementieren eines Spieles unter ScummVM weist ein paar Nachteile auf:
Die Herangehensweise beim Implementieren eines Spieles unter ScummVM weist ein paar Nachteile auf:
* Da das System jedes Spieles von Grund auf neu geschrieben wurde, kann es in ScummVM einige Fehler geben, die im ursprünglichen Interpreter nicht vorhanden waren. Für diesen Fall gibt es einen [http://sourceforge.net/tracker/?group_id=37116&atid=418820 Bug Tracker] für ScummVM, in welchem Benutzer festgestellte Fehler dem ScummVM-Team auf Englisch melden können, die dann für gewöhnlich beseitigt werden. Sicherlich existieren solche Probleme, da es unmöglich ist, jeden einzeln Aspekt eines Spiels zu überprüfen, und vollständiges Neuschreiben einer Spiel-Engine bedeutet, dass es Sachverhalte geben kann, von denen der Entwickler ursprünglich nichts wusste.
*Da das System jedes Spieles von Grund auf neu geschrieben wurde, kann es in ScummVM einige Fehler geben, die im ursprünglichen Interpreter nicht vorhanden waren. Für diesen Fall gibt es einen [http://sourceforge.net/tracker/?group_id=37116&atid=418820 Bug Tracker] für ScummVM, in welchem Benutzer festgestellte Fehler dem ScummVM-Team auf Englisch melden können, die dann für gewöhnlich beseitigt werden. Sicherlich existieren solche Probleme, da es unmöglich ist, jeden einzeln Aspekt eines Spieles zu überprüfen, und vollständiges Neuschreiben einer Spiel-Engine bedeutet, dass es Sachverhalte geben kann, von denen der Entwickler ursprünglich nichts wusste. Deshalb wird für kein Spiel in der Kompatibilitätsliste 100 % Unterstützung angegeben, selbst wenn keine Fehler bekannt sein sollten. Spiele, deren Engines durch Reverse-Engineering erstellt wurden, erhalten maximal 95 %. In den Fällen, wo der ursprüngliche Quelltext zur Verfügung stand, sind 98 % das Maximum.
... und vielleicht noch weitere.
... und vielleicht noch weitere.


== Unterstützte Spiele ==
==Unterstützte Spiele==
Um zu sehen, welche Spiele in ScummVM unterstützt werden, können Sie die [http://www.scummvm.org/compatibility.php Kompatibilitätsseite] einsehen. Die Spiel-Engines, die ScummVM momentan beinhaltet, kann man auf der [[Engines/de|Spiel-Engines-Seite]] sehen und der Status jedes Spiels kann auf den entsprechenden Unterseiten betrachten werden.
Um zu sehen, welche Spiele in ScummVM unterstützt werden, können Sie die [http://scummvm.org/compatibility/ Kompatibilitätsseite] einsehen. Die Spiel-Engines, die ScummVM momentan beinhaltet, kann man auf der [[Engines/de|Spiel-Engines-Seite]] sehen und der Status jedes Spieles kann auf den entsprechenden Unterseiten betrachten werden.


== Auf welchen Plattformen läuft ScummVM? ==
==Auf welchen Plattformen läuft ScummVM?==
Sehen Sie auf unserer [[Platforms/de|Plattformen-Seite]] nach.
Sehen Sie auf unserer [[Platforms/de|Plattformen-Seite]] nach.


== Spiele zum Laufen bringen ==
==Spiele zum Laufen bringen==
=== Was benötige ich, um ein Spiel zum Laufen zu bringen? ===
===Was benötige ich, um ein Spiel zum Laufen zu bringen?===
Sie benötigen die Dateien der Original-Spiele, die Sie spielen möchten, und eine Version von ScummVM für Ihr verwendetes Betriebssystem, die Sie auf unserer [http://www.scummvm.org/downloads.php Downloads-Seite] finden können.
Sie benötigen die Dateien der Original-Spiele, die Sie spielen möchten, und eine Version von ScummVM für Ihr verwendetes Betriebssystem, die Sie auf unserer [http://scummvm.org/downloads/ Downloads-Seite] finden können.


=== Was sind „stabile“ und „nicht stabile“ (SVN-) Versionen von ScummVM? ===
===Was sind „stabile“ und „nicht stabile“ Versionen von ScummVM?===
Die stabilen Versionen von ScummVM wurden auf Fehler überprüft und die Benutzer haben fast alle unterstützten Spiele von ScummVM in einer solchen Version testweise durchgespielt.
Die stabilen Versionen von ScummVM wurden auf Fehler überprüft und die Benutzer haben die meisten neu unterstützten Spiele von ScummVM in einer solchen Version testweise durchgespielt.


Die nicht stabilen (Subversion oder SVN-) Versionen von ScummVM enthalten verbesserte Funktionalität. Wenn jedoch neue Funktionen hinzugefügt oder bestehende Fehler beseitigt werden, können andere Fehler oder Abstürze auftreten, die in der stabilen Version nicht vorhanden sind. Wir tun jedoch unser Bestes, damit die unstabilen Versionen nicht auf unstabile Art und Weise lauen, sodass sie z. B. nicht den Computer des Benutzers zum Abstürzen bringen werden.
Die nicht stabilen Versionen von ScummVM enthalten verbesserte Funktionalität. Wenn jedoch neue Funktionen hinzugefügt oder bestehende Fehler beseitigt werden, können andere Fehler oder Abstürze auftreten, die in der stabilen Version nicht vorhanden sind. Wir tun jedoch unser Bestes, damit die unstabilen Versionen nicht auf unstabile Art und Weise laufen, sodass sie z. B. nicht den Computer des Benutzers zum Abstürzen bringen werden.


== Weiteres Lesematerial ==
==Weiteres Lesematerial==
Das war eine kurze Einführung zu ScummVM. Wir hoffen, dass wir die meisten Ihrer Fragen beantwortet haben. Sie können sich nun weiteren Seiten in diesem Wiki zuwenden, um weitere Informationen zu erhalten. Sie können auch die [http://www.scummvm.org/faq.php FAQ (Häfig gestellte Fragen, englisch)] und unsere [http://www.scummvm.org/documentation.php Dokumentationsseite (englisch)] durchlesen. Die [http://scummvm.svn.sourceforge.net/viewvc/scummvm/scummvm/branches/branch-0-10-0/README?view=markup README-Datei] (bald auszugsweise auf Deutsch verfügbar) möchten wir Ihnen ganz besonders nahelegen.
Das war eine kurze Einführung zu ScummVM. Wir hoffen, dass wir die meisten Ihrer Fragen beantwortet haben. Sie können sich nun weiteren Seiten in diesem Wiki zuwenden, um weitere Informationen zu erhalten. Sie können auch die [http://scummvm.org/faq/ FAQ (Häufig gestellte Fragen, Englisch)] und unsere [http://scummvm.org/documentation/ Dokumentationsseite (Englisch)] durchlesen. Die [https://github.com/scummvm/scummvm/blob/master/doc/de/Liesmich Liesmich-Datei] möchten wir Ihnen ganz besonders nahelegen.

Latest revision as of 09:36, 7 July 2020

Languages Sprache: English  • Deutsch • français • italiano

Kurzbeschreibung

ScummVM ist ein Programm, welches es Ihnen ermöglicht, bestimmte klassische adventure und rollenspielen zu spielen, vorausgesetzt, Sie sind im Besitz der Dateien des Spieles. Das Schlaue daran ist: ScummVM ersetzt lediglich die Funktion der ausführbaren Dateien, die mit den Spielen kamen, was ermöglicht, diese Spiele auf Systemen zu spielen, für welche sie nie erstellt wurden!

Für weitere Informationen über die Macher können Sie die ScummVM-Geschichte oder die Steckbriefe über die Entwickler lesen.

Eine genauere Beschreibung

Die innere Funktionsweise von adventure und rollenspielen

Fast alle adventure und rollenspielen teilen einige gemeinsame Eigenschaften. Die am meisten zugrunde liegenden sind die Ressourcen, die verwendet werden, welche in den Dateien des Spieles sind:

  • Grafiken
    • Darsteller (die Grafikobjekte im Spiel)
    • Hintergrundbilder
    • Schriftarten
    • Animationen im Spiel
    • Objekte
    • Videos
  • Ton
    • Künstlich erzeugte Musik (z. B. MIDI)
    • Geräusche
    • Sprachausgabe

Abgesehen von den Ressourcen haben fast alle Spiele ihre eigene Skriptsprache. Dies vereinfacht Dinge im gesamten Entwicklungsprozess, da es dann einfacher ist, Aufgaben an bestimmte Personen zu übertragen. Programmierer beschäftigen sich mit dem Code selbst, Spiele-Entwickler beschäftigen sich damit, Skripte in der Sprache zu schreiben, die der Spiel-Interpreter versteht, Grafik-Entwickler beschäftigen sich mit dem künstlerischen Teil des Spieles, Musik-Komponisten mit Audio usw. Obwohl die Grundelemente jedes Spieles Standard sind, integriert diese jedes Spiel auf eine sehr andere Weise. Der wichtigste Aspekt von adventure und rollenspielen ist die Art und Weise, wie sie „hinter den Kulissen“ funktionieren, was die Art der verwendeten Logik einschließt und wie diese in jedes Spiel integriert ist, die Sorte der Interaktionen, die vom Benutzer erwartet werden (z. B. erlauben einige Spiele die Verwendung von Verben an Objekten wie „Benutze Objekt 1 mit Objekt 2“, wohingegen andere Spiele nur einen Klick auf Objekte ermöglichen). Die Ressourcen selbst sind ohne die Spiellogik überhaupt nicht hilfreich, die der schwierigste Teil ist, der sich in ein Spiel integrieren lässt. In der Tat gibt es viele Ressourcen-Anzeigeprogramme, die man verwenden kann, um die Ressourcen von einer großen Anzahl verschiedener Spiele zu betrachten, aber sie beschäftigen sich gar nicht mit der Logik hinter diesen Ressourcen. Eine kurze Einführung dazu, wie Spiellogik in jedem Spiel funktioniert, wird im nächsten Teil gegeben.

Die Skriptsprache eines Spieles

Wie zuvor erwähnt, verwendet jedes Spiel seine eigene Skriptsprache, die gewöhnlich in den Dateien des Spieles enthalten ist. Diese ist normalerweise auf höherer Ebene und der Spiel-Interpreter selbst (die ausführbare Datei des Spieles) ist verantwortlich dafür, die Skriptbefehle aus den Spiellogik-Skripten zu verarbeiten und die ganze eigentliche Arbeit zu leisten. Hier ist ein Beispielskript einer hypothetischen Engine, in welchem das Spiel eine Szene laden und einen Fall behandeln müsste, in welchem der Benutzer den Gegenstand A aufnehmen würde:

 starteSzene(1)
 lade_die_Darsteller()
 positioniere_Darsteller(Darstellernummer, X, Y)
 ...
 positioniere_Objekt(Objektnummer, X, Y)
 ...
 wenn (Aktion_ist_Nehmen) {
   wenn (aufzunehmendes_Objekt() == Objekt_A) {
     Darsteller_läuft_zu(X,Y)
     Darsteller_macht_Aktion(Aktionsnummer)
     lege_Objekt_ins_Inventar(Objekt_A)
     entferne_Objekt_aus_Szene(Objekt_A)
   }
 }
   
 während (Szene_nicht_beendet) {
   verarbeite_Aktionen_des_Darstellers()
 }
 beendeSzene()


Das ist nur ein Beispiel dafür, wie eine Engine eine solche Aktion tätigen würde, aber jede Engine neigt dazu, solche Skripte auf verschiedene Weise auszuführen (z. B. haben einige Engines Skripte für jedes Objekt, andere können ein allgemeines Skript haben, um alles zu tun usw.).


Ein Spielskript kann grundlegende Elemente der Spiellogik enthalten (z. B. if (falls), else (sonst), goto (gehe zu) usw.) und kann direkt Funktionen von der ausführbaren Datei selbst aufrufen, die man als „Skriptbefehlscode“ bezeichnet.

Wo kommt ScummVM ins Spiel?

ScummVM ist ein Projekt, in welchem versucht wird, den Code aus der originalen ausführbaren Datei eines bestimmten Spieles neu zu schreiben, wobei auf den Original-Quellcode des Spieles zurückgegriffen wird oder Techniken des Reverse Engineerings angewandt werden, um den Code zu sehen, der sich in dieser ursprünglichen ausführbaren Datei befindet. Der Code wird dann in C++ neu geschrieben. Das bedeutet, dass die ausführbare Datei von ScummVM als Ersatz für die ursprüngliche Datei des Spieles verwendet werden kann, aber natürlich werden die Spieldateien (Grafiken, Audio, Spielskripte usw.) benötigt, um das Spiel zu spielen. Daher ist ScummVM KEIN Emulator eines speziellen Betriebssystems, wie es z. B. DOSBox für DOS ist. ScummVM ist eigentlich ein komplett neu geschriebenes Programm aus der Engine jedes unterstützten Spieles, was viele Vorteile mit sich bringt:

  • Die Spiele laufen auf vielen verschiedenen Plattformen dank ScummVMs portierbarem Plattform-Unterbau.
  • Spielgrafiken können durch die Anwendung verschiedener Grafikfilter verbessert werden (einschließlich super2xsai, supereagle, advmame2x, advmame3x, hq2x, hq3x und weitere).
  • Einige Fehler, die in der ursprünglichen ausführbaren Datei des Spieles (oder speziellen Skripten) auftraten, können beseitigt werden.
  • Es ist möglich, die Audio-Dateien der Spiele in bekannte Formate zu komprimieren, wie z. B. MP3, Vorbis oder FLAC, sodass das Spiel selbst viel weniger Speicherplatz benötigt.
  • Spiele von LucasArts haben ein viel besseres Menü und die Spielstände werden besser verwaltet.
  • Die meisten Engines erlauben dem Spieler, viel mehr Speicherstände zu erstellen, als der ursprüngliche Interpreter zuließ.
  • In einigen Spielen bietet ScummVM zusätzliche Funktionen, die in der ursprünglichen ausführbaren Datei nicht vorhanden waren. Z. B. wird in einigen älteren AGI-Spielen eine Maus unterstützt, obwohl diese im Original nicht unterstützt wurde.
  • Es ist möglich, die MT-32-Musik eines unterstützten Spieles anzuhören (falls vorhanden), ohne überhaupt einen MT-32 zu besitzen. Diese Musik wird dann über ein künstliches System emuliert.
  • ScummVM benötigt viel weniger Prozessorleistung und Systemressourcen als ein Emulator, da die Spiel-Engines mit ScummVM auf die verwendete Plattform portiert wurden und somit die ursprüngliche Plattform nicht emuliert werden muss (die einen anderen Prozessor, eine andere Speicherverwaltung usw. hat).

... und vieles mehr.

Die Herangehensweise beim Implementieren eines Spieles unter ScummVM weist ein paar Nachteile auf:

  • Da das System jedes Spieles von Grund auf neu geschrieben wurde, kann es in ScummVM einige Fehler geben, die im ursprünglichen Interpreter nicht vorhanden waren. Für diesen Fall gibt es einen Bug Tracker für ScummVM, in welchem Benutzer festgestellte Fehler dem ScummVM-Team auf Englisch melden können, die dann für gewöhnlich beseitigt werden. Sicherlich existieren solche Probleme, da es unmöglich ist, jeden einzeln Aspekt eines Spieles zu überprüfen, und vollständiges Neuschreiben einer Spiel-Engine bedeutet, dass es Sachverhalte geben kann, von denen der Entwickler ursprünglich nichts wusste. Deshalb wird für kein Spiel in der Kompatibilitätsliste 100 % Unterstützung angegeben, selbst wenn keine Fehler bekannt sein sollten. Spiele, deren Engines durch Reverse-Engineering erstellt wurden, erhalten maximal 95 %. In den Fällen, wo der ursprüngliche Quelltext zur Verfügung stand, sind 98 % das Maximum.

... und vielleicht noch weitere.

Unterstützte Spiele

Um zu sehen, welche Spiele in ScummVM unterstützt werden, können Sie die Kompatibilitätsseite einsehen. Die Spiel-Engines, die ScummVM momentan beinhaltet, kann man auf der Spiel-Engines-Seite sehen und der Status jedes Spieles kann auf den entsprechenden Unterseiten betrachten werden.

Auf welchen Plattformen läuft ScummVM?

Sehen Sie auf unserer Plattformen-Seite nach.

Spiele zum Laufen bringen

Was benötige ich, um ein Spiel zum Laufen zu bringen?

Sie benötigen die Dateien der Original-Spiele, die Sie spielen möchten, und eine Version von ScummVM für Ihr verwendetes Betriebssystem, die Sie auf unserer Downloads-Seite finden können.

Was sind „stabile“ und „nicht stabile“ Versionen von ScummVM?

Die stabilen Versionen von ScummVM wurden auf Fehler überprüft und die Benutzer haben die meisten neu unterstützten Spiele von ScummVM in einer solchen Version testweise durchgespielt.

Die nicht stabilen Versionen von ScummVM enthalten verbesserte Funktionalität. Wenn jedoch neue Funktionen hinzugefügt oder bestehende Fehler beseitigt werden, können andere Fehler oder Abstürze auftreten, die in der stabilen Version nicht vorhanden sind. Wir tun jedoch unser Bestes, damit die unstabilen Versionen nicht auf unstabile Art und Weise laufen, sodass sie z. B. nicht den Computer des Benutzers zum Abstürzen bringen werden.

Weiteres Lesematerial

Das war eine kurze Einführung zu ScummVM. Wir hoffen, dass wir die meisten Ihrer Fragen beantwortet haben. Sie können sich nun weiteren Seiten in diesem Wiki zuwenden, um weitere Informationen zu erhalten. Sie können auch die FAQ (Häufig gestellte Fragen, Englisch) und unsere Dokumentationsseite (Englisch) durchlesen. Die Liesmich-Datei möchten wir Ihnen ganz besonders nahelegen.