Vertiefende Entschleunigung – warum ich künstliche Ladezeiten für Myst zu ScummVM hinzugefügt habe

Seit ich Myst irgendwann im Jahre 2005 für mich entdeckt habe, bin ich buchstäblich verliebt. Für mich bedeutet die Myst-Serie eine Reise in eine andere Welt – im Vergleich zu einem „gewöhnlichen“ Point-and-Click-Adventure ist das einfach eine völlig andere Erfahrung. Ich muss dabei nicht erwähnen, dass gerade die beiden ersten Teile – das „ursprüngliche“ Myst und dessen Nachfolger Riven – einfach bemerkenswerte Spiele sind.

Meiner Meinung nach ist die außergewöhnliche Spieltiefe bzw. Immersion das Resultat der damals geltenden technischen Einschränkungen. Myst wurde 1993 auf dem unglaublichen neuen Format namens „CD-ROM“ veröffentlicht, was eine riesige Speichermenge von 650 Megabyte bedeutet.

CD-ROM-Laufwerke waren zu dieser Zeit langsam – sehr langsam, da sie nur mit doppelter Geschwindigkeit liefen. Das bedeutet nicht nur Zugriffszeiten von 80 bis 200 Millisekunden, sondern auch Datenübertragungsraten von 300 KB/Sekunde unter Idealbedingungen. Da damals auch die größten handelsüblichen Festplatten lediglich eine Speicherkapazität von etwa 1000 Megabyte boten, war eine volle Installation des Spiels keine Option. Zusätzlich war ein Caching der Spieldateien aufgrund des limitierten Arbeitsspeichers ebenfalls unmöglich.

Hier kommt die Immersion ins Spiel.

Myst verwendet einige intelligente Kompressionstechniken und ein optimiertes Datei-Layout. Jedes Mal, wenn du dich durch das Spiel bewegst, musst dein Computer das nächste Bild laden. Bei der nächsten „Bewegung“ wird ein weiteres Bild geladen. Damit zwingt das Spiel dich quasi dazu, langsam durch die Welten von Myst zu wandern.

Ich bin mir nicht einmal sicher, ob dieser Aspekt ein Teil des ursprünglichen Design-Konzeptes war. Ingesamt fühlt es sich jedoch so an, dass du nicht einfach durch das Spiel durchlaufen solltst. Alles deutet darauf hin, dass du die Welt langsam erkunden sollst, damit du auch ja keinen der zum Lösen der Puzzles erforderlichen Hinweise verpasst.

Während viele Adventure-Spiele die Spielgeschwindigkeit selbst begrenzen (etwa durch die Bewegungsabläufe/Animationen der Charaktere), trifft dies für Myst nicht zu. Wenn du das Spiel auf zeitlich „passender“ Hardware spielst, werden dir die Ladezeiten vermutlich auch gar nicht negativ auffallen, da du diese quasi erwartest.

Sobald du die Ladezeiten jedoch vollständig entfernst, etwa, in dem du das Spiel mit ScummVM spielst, wirst du vielleicht feststellen, dass etwas nicht ganz stimmt. Jetzt bist du plötzlich nicht mehr gezwungen, das Spiel langsam zu entdecken, sondern kannst einfach „loslaufen“. Selbst wenn ich offensichtlich von den entfallenen Ladezeiten nicht zwangsläufig Gebrauch machen muss, hat alleine schon die bloße Möglichkeit für mich eine negative Auswirkung auf meine Spielerfahrung.

Die Lösung

Auf der Suche nach einer Lösung habe ich kürzlich die Simulation von CD-ROM-Ladezeiten zu ScummVM hinzugefügt. Sobald das Feature aktiviert ist, wird eine Verzögerung zwischen den Szenen-Wechseln eingefügt, um die Ladezeiten eines echten CD-ROM-Laufwerks nachzubilden.

Um dir den Unterschied genauer zeigen zu können, habe ich ein kurzes Video vorbereitet. Die erste Hälfte zeigt das bisherige Verhalten ohne Ladezeiten. Zu Demonstrationszwecken habe ich hier natürlich etwas übertrieben. Es sollte relativ klar sein, dass das definitiv nicht der vorgesehene Weg ist, das Spiel zu spielen. Die neue Ladezeiten-Simulation wird etwa bei Sekunde 50 aktiviert.

Während die Implementierung selbst relativ einfach war, gestaltete sich das korrekte Timing als schwieriger. Das Hauptproblem lag hier darin, dass ich keine „korrekte“ Hardware aus dieser Zeit zur Verfügung hatte. Das älteste System, welches ich besitze, ist mit einem Pentium III-Prozessor mit 500 MHz, einem 16x Philips CD-RW-Laufwerk und einem „generischen“ 48x-Laufwerk ausgestattet. Glücklicherweise ist gerade dieses No-Name-Laufwerk mit Jörg Fiebelkorns CD-Bremse kompatibel. Dieses Tool ermöglich es, die Geschwindigkeit eines CD-Laufwerks zu begrenzen und damit auch niedrigere Geschwindigkeiten zu erzwingen. Unglücklicherweise war es mir hier nicht möglich, das Laufwerk auf zweifache Geschwindigkeit zu drosseln, da das Laufwerk keine niedrigeren Geschwindigkeiten als vierfache Geschwindigkeit unterstützt.

Das bedeutet, dass ich mich nicht alleine auf Messwerte verlassen konnte. Stattdessen habe ich mir viele, viele Datenblätter verschiedener CD-Laufwerke angeschaut. Zusätzlich habe ich ebenfalls versucht, ein langsames Laufwerk mit 86Box zu emulieren, da dort ebenfalls die Übertragungsgeschwindigkeit angepasst werden kann. Ich habe mir den Code von 86Box nicht selbst angeschaut, aber ich habe das Gefühl, dass hier nur die Übertragungsgeschwindigkeit korrekt emuliert wird, nicht jedoch die Zugriffszeiten.

Einschränkungen und Ausblick

Insgesamt sind die Verzögerungen derzeit noch ziemlich willkürlich gewählt und werden in zukünftigen Versionen aller Wahrscheinlichkeit nach noch angepasst. Ich habe versucht, hier so genau wie möglich vorzugehen, kann jedoch nicht garantieren, dass ich die Timings genau getroffen habe. Wichtig ist auch, dass die Verzögerungen sowohl in dem originalen Myst als auch in Myst: Masterpiece Edition derzeit absolut identisch sind. Ich konnte das leider nicht verifizieren, gehe jedoch davon aus, dass die Masterpiece Edition aufgrund der größeren Datenmenge auf identischer Hardware längere Ladezeiten verursacht.

Eine Möglichkeit wäre hier, die Option konfigurierbar zu machen, sodass mehrere „Laufwerke“ unterstützt werden. Derzeit ist die Option standardmäßig deaktiviert. Wir werden jedoch in Zukunft die Option möglicherweise standardmäßig aktivieren. Das wird jedoch erst nach dem nächsten Release erfolgen und auch nur dann, wenn das Feedback unserer Nutzer entsprächend ausfällt.

Abschließende Worte

Aktuell stehen die simulierten Ladezeiten für Myst und Myst: Masterpiece Edition zur Verfügung. Das gleiche Konzept könnte auch für Riven umgesetzt werden. Hier sind jedoch zwei Dinge zu berücksichtigen:

  • Timing: Riven verwendet einige Counter und Timer, um zeitbasierte Events abzubilden. Hier muss ich anhand des Codes noch sicherstellen, dass zusätzliche Verzögerungen bzw. „Pausen“ bei den Szene-Übergängen nicht mit dem Timing kollidieren. Dies wird vermutlich einige Spiel-Durchgänge mit wechselnden Bedinungen erfordern.
  • Die Installation selbst: Zumindest die auf fünf CDs verteilte Version bietet während der Installation drei Optionen an: Minimal, Standard und eine vollständige Installation. Abhängig von dem gewählten Installationstyp werden unterschiedliche Datenmengen von den CDs auf die Festplatte kopiert, was natürlich auch unterschiedliche Ladzeiten zur Folge hat.

Wenn du das neue Feature einmal selbst ausprobieren möchtest, benötigst du neben deiner Kopie von Myst oder Myst: Masterpiece dition noch eine aktuelle Entwicklerversion von der ScummVM-Website. Solltest du das Spiel noch nicht besitzen: Myst: Masterpiece Edition steht auf GoG.com zum Download zur Verfügung* Werbung.

Nachdem du das Spiel zu ScummVM hinzugefügt hast, findest du die neue Option im Spielmenü, welches du über die Taste „F5“ erreichst.

Was denkst du? Jede Rückmeldung ist herzlich willkommen, besonders, wenn du die Möglichksit hast, das Spiel zusätzlich auch auf originaler Hardware zu spielen.

*: Dieser Link ist ein spezieller Affiliate- bzw. Werbe-Link. Wenn du GOG.com über diesen Link besuchst, erhält das ScummVM-Projekt eine Verfügung für jeden Kauf, den du über die Website tätigst. Für dich ändert sich der Preis dabei nicht, weshalb dieser Link eine einfache Möglichkeit darstellt, das ScummVM-Projekt zu unterstützen. Vielen Dank! ❤️

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.