Treppenbug

Aus ManiacWiki
Zur Navigation springen Zur Suche springen

Der Treppenbug ist ein Spielfehler, welcher in MMM-Spielen auftritt welche mit der Engine Adventure Game Studio (AGS) erstellt wurden. Der Fehler ist auf suboptimales Scripting und die Verwendung unterschiedlicher Versionen der Spieleengine zurückzuführen.

Beschreibung[Bearbeiten]

Der Fehler betrifft Treppe im Raum Flur im ersten Stock (Raum-Nr. 2) des Bernoulli-Anwesens. Der begehbare Bereich Walkable Area und der Bereich Region, welcher den Raumwechsel in den Raum Flur im Erdgeschoss (Raum-Nr. 6) enthält überschneiden sich in nur wenigen Punkten. In alten AGS-Versionen (von 2.61 bis etwa 3.1) stellte dies kein Problem dar. Die Spielfigur lief korrekt auf den Punkt (185/124), welcher auf der Region liegt und der Raumwechsel wurde aufgeführt. Spätestens seit AGS 3.3 wurde der Algorithmus zur Bestimmung des anzulaufenden Punktes (Pathfinding) geändert und die Spielfigur läuft nun auf einen anderen Punkt (184/125), welcher nicht auf der Region liegt. Als Folge wird der Raumwechsel nicht mehr ausgeführt und das Spiel ist nicht lösbar.

AGS 2.72: Die Spielfigur läuft korrekt auf den Punkt (185/124).
AGS 3.3: Die Spielfigur läuft nun auf den Punkt (184/125), welcher nicht auf der Region liegt.

Korrektur[Bearbeiten]

Die Y-Koordinate im Befehl any_click_walk im Treppen-Hotspot muss von 121 auf 120 geändert werden. Eine noch bessere Lösung ist eine größere Überschneidung zwischen Region und Walkable Area.

Dieser Fehler lässt sich bislang nur vom Autor des Spiels oder einer Person mit Zugang zu den Quelldateien des Spiels beheben.

Bernard-Starterpack[Bearbeiten]

Im aktuellen Bernard-Starterpack für AGS 3 wurde dieser Fehler bereits behoben. Nicht aber in dem veralteten Starterpack für AGS 2.72 und früher. Von der Verwendung veralteter AGS-Versionen wird abgeraten.

Konsequenzen[Bearbeiten]

AGS wurde lange Zeit nur für Windows entwickelt. Wenn die Spiele auf einer anderen Plattform ausgeführt werden, muss die integrierte Engine daher übergangen und das Spiel mit einer aktuelleren Version der Engine ausgeführt werden. Dies betrifft auch die Ausführung unter ScummVM, selbst unter Windows. Als Folge tritt der Fehler auch bei älteren Spielen auf. Alle Spiele, die im Bernoulli-Anwesend spielen sind als folglich nicht lösbar, wenn sie nicht nativ unter Windows ausgeführt werden oder manuell von ihrem Autor auf den Fehler hin korrigiert wurden.

Für das Problem von Spielen, deren Autoren nicht mehr erreichbar oder deren Quelldateien verloren gegangen sind, steht derzeit kein Lösungsansatz bereit.

Eine Liste von getesteten und betroffenen Spielen findet sich im Artikel Kompatibilitätsprobleme mit AGS-Episoden.

Links[Bearbeiten]