Killscreen von Donkey Kong nach 44 Jahren überwunden
Vier Jahrzehnte galt: Mehr als 117 Runden sind im originalen Donkey Kong nicht möglich. Es geht aber doch, wenn auch wohl kaum für menschliche Spieler.
Der Spieler "Kosmic" an einem Donkey-Kong-Automaten, den Killscreen knackte er jedoch per TAS.
(Bild: YouTube/Kosmic)
Vor gut einer Woche gelang einem Spieler mit dem Pseudonym "Kosmic", was in der Donkey-Kong-Community seit Jahrzehnten als unmöglich galt: Er schlug mittels Frame-genauer Eingabe in einem Emulator den Killscreen einer frühen Arcade-Version von Donkey Kong. Um zu verstehen, warum das Spiele-historisch ein signifikantes Ereignis ist, braucht es etwas Hintergrund zum Spiel an sich und der Technik von historischen 8-Bit-Systemen.
Donkey Kong war Nintendos erster Welterfolg und erschien 1981 als Spielautomat mit Röhrenbildschirm. Das Unternehmen definierte damit nicht nur das Genre des Jump'n'Run, sondern etablierte auch, trotz nur weniger Pixel, das Prinzip einer Spielfigur mit Wiedererkennungswert. Der Spieler steuert in Donkey Kong eine damals nur "Jumpman" genannte Figur, aus der später Mario wurde, der auf jeder folgenden Nintendo-Plattform hüpfen und später Gokarts fahren sollte.
Die Grenzen von frühen 8-Bit-Systemen
Weil Hardware, insbesondere RAM, Anfang der 1980er Jahre noch relativ teuer war und Spieler möglichst viele Münzen in die Automaten stecken sollten, waren die Spiele für heutige Verhältnisse äußerst schwierig. Getrennte Speicherbereiche für Code, Grafik, Sound und den Framebuffer gab es auch nur selten, alles was der oder die Prozessoren nutzten, war ein gemeinsames RAM sowie das ROM, in dem das Spiel gespeichert ist. Diese ROMs wurden später ausgelesen, sodass sich der originale Code des Automaten auch in Emulatoren spielen lässt.
Donkey Kong war 1981 durch das neue Spielprinzip und die Schwierigkeit äußerst attraktiv, auch für wettbewerbsorientierte Spieler. Für diese organisierten verschiedene Firmen auch Turniere, und schnell fiel auf: Weiter als 117 Runden kann man nicht spielen. Das entspricht in der Zählweise von Donkey Kong Level 22-1, also der ersten Runde im quasi zweiundzwanzigsten Schwierigkeitsgrad. Zum Vergleich: Gelegenheitsspieler kommen auch auf der Originalhardware selten über Level 4 oder 5 hinaus. In der Reihenfolge der einzelnen Aufgaben ändert sich nach Level 5 auch nichts mehr, alles wird nur schneller und zufälliger. Nintendo hatte offenbar nicht gedacht, dass jemand weiter als bis Level 5 kommt.
Empfohlener redaktioneller Inhalt
Mit Ihrer Zustimmung wird hier ein externes YouTube-Video (Google Ireland Limited) geladen.
Ich bin damit einverstanden, dass mir externe Inhalte angezeigt werden. Damit können personenbezogene Daten an Drittplattformen (Google Ireland Limited) übermittelt werden. Mehr dazu in unserer Datenschutzerklärung.
Weil aber, unter anderem durch nicht wirklich zufällige Zufallsgeneratoren, die Spieler schnell Strategien gegen das Spiel entwickelt hatten, wurde Runde 117 bereits im Jahr 1982 erreicht. Das dauert übrigens über anderthalb Stunden. An dieser Stelle verhält sich das Spiel völlig anders als sonst: Der Countdown für die restliche Zeit zum Bewältigen der Runde läuft scheinbar unvorhersehbar schnell ab, zeigt verwirrende Zahlen, und nach acht Sekunden stirbt Jumpman, obwohl er nicht von einem Objekt oder Gegner berührt wurde. Das ist in diesem Spiel der "Killscreen", weil der Spieler offenbar von einer mysteriösen Macht getötet wird. Dahinter steckt natürlich ein Bug, dazu gleich mehr. Anders als bei der ebenfalls erst kürzlich überwundenen "Rebirth" von Tetris auf dem NES startet Donkey Kong nicht neu, der Spieler stirbt, das Match ist zu Ende, zurück zum Startbildschirm. Ziemlich frustrierend.
220 plus 40 ist 4
Der Killscreen tritt reproduzierbar in Runde 117 auf, weil der Zähler für die Zeit, welche der Spieler für ein Level hat, als einzelner 8-Bit-Wert gespeichert wird. Von diesem leitet sich (unter anderem) die Zahl für die Bonus-Punkte ab, die für nicht verbrauchte Spielzeit gutgeschrieben werden. Der Wert steigert sich mit jedem Durchgang, bei Runde 116 beträgt er dezimal 250. Bei Runde 117 wären es 260, was nicht in 8 Bit passt, da ist bei 256 Schluss. Es erfolgt also ein Überlauf, und der tatsächliche Wert im RAM ist 4. Daraus ergeben sich in der Formel der Bonuspunkte die 8 Sekunden.
Videos by heise
Das Original von Donkey Kong, genauer: das Arcade-ROM "US set 1" kann also nur weiter als bis Runde 117 gespielt werden, wenn man es in 8 Sekunden bis zum oberen Ende des Bildschirm schafft, das Ziel jeder Runde. Wie aber soll das in dieser Zeit gehen? Der für Speedruns, also besonders schnelles Durchspielen, bekannte Kosmic hatte nun eine Lösung. Er verwendete einen Emulator und Tools, die Eingaben Frame-genau per Software wiederholen können. Es handelt sich bei dem neuen Rekord also um einen "tool assisted speedrun" (TAS). Das ist in vielen Communities keine Schummelei, sondern eine eigene Diziplin. Kosmic ist auch mit dem originalen Automaten gut, er erreicht den Killscreen bereits ohne Tools.
Es braucht auch viel Glück
Beim Überwinden des Killscreens verwendete Kosmic den "ladder glitch", einen Bug im Spiel, bei dem Jumpman nach einer trickreichen Eingabe bei einer Leiter immer weiter nach oben klettert – auch wenn an entsprechenden Stellen keine Leitern sind. Mit diesem Bug schlug Kosmic Runde 117, und spielte dann einige Stunden - meist Frame für Frame - weiter. Bei bei Runde 122, Level 22-6, ging es dann wirklich nicht mehr weiter, die Zeit war auch mit dem "ladder glitch" nicht einzuhalten. Zusammen mit einigen Mitstreitern analysierte Kosmic den Code und das Laufzeitverhalten des Spieles weiter. Sie fanden heraus, dass er schon bei Runde 117 großes Glück hatte. Es gibt nämlich einen weiteren Zufallsfaktor, der mit einer Wahrscheinlichkeit von 1/32 eine halbe Sekunde Extrazeit verschafft. Wie das genau funktioniert und zahlreiche weitere Details haben Kosmic und seine Helfer hier aufgeschrieben.
In seinem YouTube-Video, das inzwischen über 1,4 Millionen mal angesehen wurde, erklärt Kosmic auch noch, dass er – selbst mit der halben Extra-Sekunde – Runde 117 nicht für menschenmöglich hält, denn der "ladder glitch" lässt sich nur durch exaktes Auf und Ab des Joysticks 24-mal in der Sekunde für jede Bewegung von Jumpman ausnutzen. Das müsste ein Spieler dann aber die gesamten 8,5 Sekunden ganz genau wiederholen. Und dann hat er bei einem echten Durchspielen ohne technische Hilfe schon rund anderthalb Stunden Hüpfen und Springen in den Fingern.
(nie)