Vorwort von André Eymann
Tschaak, Tschaak, Tschaak – wer kann sich nicht an das Rotor-Geräusch
des Hubschraubers aus dem Film
Apocalypse Now von Francis Ford Coppola aus
dem Jahr 1979 erinnern? Der typische Klang eines Helikopters stand auch für die
Macher des Videospiels
Fort Apocalypse Pate.
Und zweifellos kann auch frühe Heimcomputer-Shooter
Fort Apocalypse als ein
Action-Meilenstein und somit wichtiger Spieleklassiker bezeichnet werden.
Fort Apocalypse für den Commodore 64 von 1982. Mit dem Hubschrauber im erbarmungslosen Kralthan-System.
|
Die Melange aus
Choplifter und
Caverns of Mars (dem Vorgänger von
Scramble)
konfrontiert den Spieler von Beginn an mit der erbarmungslosen und wahrlich
apokalyptischen Härte des menschenfeindlichen
Kralthan-Systems. Hier wird geballert, was das Zeug hält.
Das Spiel fordert Achtsamkeit zu jeder Sekunde. Wer siegen will, muss kämpfen.
Stillstand bedeutet den Untergang. Kein Wunder also, dass dieser Actionprotz die Fans seiner Generation zum Nachahmen
animiert hat. So können wir euch heute David Riehl vorstellen, der seinerzeit so begeistert von
Fort Apocalypse war, dass er das Spiel selbstständig
mit spannenden Elementen umfänglich erweitert hat. Wir wollten von David
wissen, was ihn persönlich dazu motiviert hat und wie er sein Vorhaben
technisch umsetzen konnte. Dies ist die Geschichte von
Fort Apocalypse II, einem Spiel,
das es offiziell niemals gab.
Interview mit David Riehl, dem Entwickler von
Fort Apocalypse II,
vom 9. Februar 2009
André Eymann: Hallo David, Du scheinst in den
legendären Heimcomputer-Tagen ein großer Fan von
Fort Apocalypse gewesen zu sein.
Wie kamst Du auf die Idee, selbst eine Fortsetzung für das Spiel zu entwickeln?
Offiziell hat es ja nie einen zweiten Teil dieses Klassikers
von Steve Hales und Joe Vierra gegeben.
|
David Riehl: Da hast Du Recht. Es gab keine offizielle Fortsetzung von Fort Apocalypse.
Hier eine kurze Zusammenfassung: Ich habe mich 1988 hingesetzt und wollte mal schauen, was ich so schaffen kann.
Dazu habe ich mir die Grafik des Originalspiels nach einem Reset aus dem Speicher des Commodore 64
geholt und ein bisschen hin- und herprogrammiert. Dann habe ich die Bildschirmteilung
durch Interrupt entdeckt, modifiziert und den gelben Hubschrauber flugtechnisch nachprogrammiert...
so ging es immer so weiter, bis ich ein fertiges Fort Apocalypse II entwickelt hatte.
Ich habe damals den Code mit dem Hexmon Byte für Byte eingegeben, da ich keinen Assembler hatte...
|
|
|
Werbung für Fort Apocalypse (Bild: Vogel-Verlag, 1984).
|
|
Dann hatte ich mir in BASIC noch einen
Creator für die Hintergrundbilder und Höhlen gebaut.
Am Ende hatte ich das Spiel bis auf den fremden blauen Hubschrauber komplett nachprogrammiert.
Allerdings ist in der Kristallhöhle noch lange nicht Schluss. Es gibt dann noch drei weitere Höhlen.
Und ganz unten in der fünften Höhle ist dann erst das Lager, das zerstört werden muss.
Außerdem kann man noch ein paar Einstellungen vornehmen: beispielsweise wie lang die Schüsse
der Panzer einen verfolgen oder wie viele feindliche Geschosse vorhanden sind.
Normalerweise kann ein Panzer einen Schuss abgeben. Erst wenn dieser abgestürzt ist oder getroffen hat,
kann ein neuer Schuss abgegeben werden. Sogar wie lang ein Panzerschuss in Richtung Hubschrauber
fliegen kann, bis er herunterfällt oder wieviele Schüsse bei der Anwesenheit mehrerer
Panzer abgeschossen werden können, ist einstellbar.
André Eymann: Ich denke, die meisten unserer Leser wissen nicht,
wie Du das Spiel aus dem Speicher des Commodore 64 herausholen, oder wie Du mit
dem
Creator neue Höhlen bauen konntest. Wie hast Du das technisch genau gemacht?
David Riehl: Zuerst lud ich das Originalspiel in den Speicher des
Commodore 64 und startete es. In der ersten Höhle, also ganz am Anfang des Spiels,
führte ich dann einen Hardware-Reset durch Verbinden von Pin 1 und 3 am C64-Userport aus.
Danach habe ich mir mit den dafür notwendigen
Pokes alle Speicherbereiche durchgesehen,
um den für mich offensichtlich für Landschaft, Panzer und Luftminen verwendeten Zeichensatz herauszusuchen.
Als ich diesen gefunden hatte, legte ich ihn erst einmal auf Disk ab.
Dann suchte ich die Höhle, die in Form von bestimmten Bytefolgen im Speicher zu finden sein musste.
Eine optische Erkennung im
Hexmon reichte dazu aus, wenn man sich den Speicher in normalen ASCII-Codes angeschaut hat.
Also speicherte ich das Bild ab. Das waren 10k. Das Ganze wiederholte ich auch als ich im aktuellen Spiel in der zweiten Höhle war.
Somit hatte ich die Grafik. Dann waren da noch die
Sprites. Die suchte ich
genau wie den Zeichensatz zuvor. Ich pokte mir ein paar
Sprites auf den Bildschirm
und pokte dann die verschiedenen Speicherseiten, so dass man die Sprites finden musste.
Die beiden so gefundenen Höhlen bereinigte ich dann, indem ich die
vorhandenen Luftminen und Panzer entfernte. Im Ergebnis hatte ich dann die beiden leeren Höhlen.
Der
Creator bietet nicht sehr viel Komfort. Am Anfang lädt man entweder
eines der fertigen Bilder oder man fängt bei null an. Es wird dann das gesamte
Bild gezeigt, in welchem man sich per Joystick in alle vier Richtungen bewegen kann.
In der Mitte befindet sich ein schnell blinkender Cursor und ein ASCII-Zahlenwert
ist voreingestellt. Mit Fire am Joystick setzt man das aktuelle Zeichen
in die Gesamtgrafik ein. Mit einem beliebigen Tastendruck kann der ASCII-Wert
zwischen 0 und 127 verändert werden. Ist man fertig, so kann man das Bild
mit "E" speichern oder man beendet den Creator.
Es folgen einige Screenshots des BASIC-
Creators, der eigens für die Entwicklung von
Fort Apocalypse II programmiert wurde:
Grafische Darstellung eines Höhlenfragments von Fort Apocalypse II mit dem Creator von David Riehl.
|
Zeichensatzorientierte Darstellung eines Höhlenfragments von Fort Apocalypse II.
Die Strukuren der späteren Spielgrafik sind deutlich zu erkennen.
|
Als ich die beiden Höhlen hatte, habe ich mir ein kleines BASIC-Programm geschrieben,
das mir den im Spiel aktuell gezeigten Bildschirmausschnitt der gesamten Höhle aus den 10k
in den aktuellen Bildschirmspeicher pokte. Da dies in BASIC zu lange dauerte,
hatte ich hierzu Maschinenroutinen geschrieben. In einer BASIC-Schleife fragte ich den Joystick ab.
Je nachdem in welche Richtung ich diesen bewegte, wurde der sichtbare Bildschirmausschnitt
um eine Spalte/Zeile bewegt. Dabei wurde auch die spezielle Endlosschleife realisiert.
Damit meine ich, dass wenn man immer weiter nach rechts läuft, man automatisch
wieder an der selben Stelle herauskommt. In der Mitte baute ich einen kleinen flimmernden Cursor ein.
Mit F7 wurde auf normalen Zeichsatz umgeschaltet und man konnte einen Dezimalwert eingeben.
Dieser war dann das aktuelle Zeichen. Wenn ich wieder in die Ansicht ging,
dann konnte ich durch die Feuertaste am Joystick das ausgewählte Zeichen
in die Höhle "einmalen". Somit konnte ich die aktuellen Höhlen verändern,
aber eben auch neue Höhlen malen. Ich malte insgesamt drei neue Höhlen.
|
Grafische Darstellung eines Höhlenfragments von Fort Apocalypse II.
|
|
Zeichensatzorientierte Darstellung eines Höhlenfragments von Fort Apocalypse II mit Speicherdialog.
|
André Eymann: Woher hattest Du ausreichend Programmierkenntnisse,
dieses umfangreiche und komplexe Spiel entsprechend zu erweitern?
Der
Hexmon war ja nicht unbedingt jedem C64-Spieler bekannt.
Und auf die Idee einen
Creator in BASIC zu programmieren, kamen sicher auch nicht viele.
David Riehl: Ich war schon immer ein Mensch, der sich kaum Informationen
von außen besorgte, sondern das nutzte, was gerade so da war.
Das ist heute ein bisschen einfacher, da es leichter ist, im Internet etwas zu finden.
Damals gab es kein Internet. Ich habe das 64er-Handbuch gehabt. Das musste genügen.
Dort stand natürlich nichts über Assembler. Aber durch Kontakte zu Freunden
und durch meine Ausbildung, wusste ich, dass der Prozessor 6510 nur Maschinensprache versteht.
Von irgendwo hatte ich den Editor
Hexmon erhalten. Diesen benutzte ich eines Tages
und gab ein paar Zahlenwerte ein. Der
Hexmon schrieb dann die dazugehörigen Assemblerbefehle hin.
Über eine 64er-Zeitschrift eignete ich mir das Wissen über die Programmierelemente
Akkumulator, X-Register, Y-Register, bedingte Sprünge und Jump Subroutinen an.
Das genügte, um später den gesamten Code für
Fort Apocalypse II zu entwickeln.
Ich fing mit jeder Routine bei einer runden Hexzahl an, damit ich nach unten genügend Platz hatte,
falls die Routine länger wurde. Ja ich weiß, dass sind die unprofessionellsten Methoden,
aber sie haben zum Ziel geführt. Ich habe es sogar geschafft, dass die Highscoreliste
auf Diskette gespeichert wird. Das konnten die meisten 64er-Spiele damals nicht.
Ein Umstand, der mich immer geärgert hat. Für die Erstellung der Höhlen habe
ich ein BASIC-Programm geschrieben, da es dort nicht auf Performance ankam
und es mit BASIC schneller erstellt werden konnte.
Map von Fort Apocalypse II
Die Übersicht des Höhlen-Labyrinths von Fort Apocalypse II, so wie es von David Riehl erweitert wurde.
|
Map von Fort Apocalypse (Originalversion)
|
Hier im Vergleich die Original-Map von Fort Apocalypse.
Sie ist allerdings aus der IIer Map herauskopiert. Es sind zwei kleine Türme entfernt worden,
da ich diese für meine Programmierung in die blaue Höhle einfügen musste. Ganz unten im Lager
könnte auch noch etwas nicht ganz Original sein. Im Groben aber entspricht diese Map dem Original.
|
André Eymann: Hast Du
Fort Apocalypse II nur für Dich allein
entwickelt, oder hast Du Deine Version auch mit Freunden getauscht?
David Riehl: Ich habe
Fort Apocalypse II meinen Freunden geschenkt.
In der Laufschrift, die am Anfang des Spiels erscheint (überspringen natürlich mit SPACE)
steht auch extra geschrieben, dass das Spiel weiter kopiert werden soll.
Da ich wegen der nicht von mir erstellten Grafik, sowieso keinen Verkauf anstreben konnte
und wollte, bin ich diesen Weg gegangen. Außerdem wollte ich dem
kommerziellen Vertrieb schon damals entgegenwirken. Dieses Prinzip wurde dann später
als
Public Domain Software bekannt und ist heute als
Open Source Software etabliert.
|
Fort Apocalypse ist ständig in Bewegung. Hier zu sehen: der Hubschrauber im Kampf mit einem feindlichen Panzer.
|
Fort Apocalypse war das erste aufwendig programmierte Spiel,
das ich auf dem C64 gesehen hatte. Am Anfang dachten mein Freund und ich, dass man nur oben
die Panzer abschießen muss. Wir entdeckten mehr und mehr, bis wir endlich
das ganze Spiel geschafft hatten. Das Umherfliegen in einem virtuellen
großen Bild in zwei Dimensionen, beeindruckte uns damals.
mehr...