Da ich ja von Natur aus neugierig bin und mir schon immer so manche Frage auf der Zunge gebrannt hat, habe ich solange im Netz gesucht, bis ich endlich jemanden gefunden habe, der mir Antwort zu längst vergangenen Zeiten geben kann. Peter Thierolf hat sich doch tatsächlich die Zeit genommen, um mir ein paar interessante Fragen zu beantworten. Natürlich geht es hier um Apidya, aber auch um das allgemeine Programmieren auf einem Commodore Amiga.
Hallo Peter!
Als Erstes möchte ich dir gerne ein paar Fragen stellen in Bezug zu Apidya.
Hi Marco, erstmal sorry, dass es solange dauert – ich hab leider nur wenig Zeit und will Dir ja nicht irgendwelchen Mist hinhauen. Also beantworte ich jetzt auch nur einige Fragen und nicht alle. Es ist auch OK, wenn Du mir einen reminder schickst, mit den unbeantworteten Fragen, wenns Dir zu lange wird 😉
1. Also erstmal zur Einleitung des Interviews würde ich gerne wissen um was für eine Geschichte es sich bei Apidya handelt?
Apidya ist zunächst mal ein klassischer Horizontal Scroller. Ein Ballerspiel, bei dem das Spielfeld ständig von rechts nach links über den Bildschirm scrollt. Im Intro wird die kurze Geschichte dargestellt. Der Böse Hexenmeister Hexaä verhext einen Schwarm Bienen, die Yuri, die Freundin des Titelhelden im Schlaf angreifen. Der Held benutzt seinen magischen Talisman, um sich in eine Biene zu verwandeln und in den Kampf gegen den Magier zu ziehen.
2. Warum enthält das Intro von Apidya im Manga Style gezeichnete Szenen? Gibt es von Apidya einen Zeichentrick Film?
Kaiko, die Firma deren Teilhaber ich war, war auf Spiele mit japanischem Outfit ausgelegt. Das war sozusagen unser Markenzeichen. Frank Matzke, ebenfalls Teilhaber und genialer Grafiker im Team, hat die Szenen als Manga angelegt, weil das eben der Stil war, den wir ausdrücken wollten. Ein Zeichentrickfilm wäre aber eine gute Idee 😉
3. Warum heißt es Apidya? Hat das Wort eine Bedeutung?
Den Namen hat ebenfalls Frank erdacht. Wir haben uns einige Zeit rumgequält und er hat diesen Namen dann aus dem Wort ‘Hexapodien’ (Sechsfüßler) gebastelt, dem biologischen Namen für Insekten, soweit ich weiß.
4. Wie kamt ihr auf die Idee ein Spiel zu machen, das Darius oder R-Type ähnlich ist? Man hätte ja aus der Story bestimmt auch eine Art Adventure Jump & Run machen können…
Daran sieht man ganz gut, dass es eben darum geht Spiele zu machen, nicht Stories. Es stand schon einige Zeit fest, einen Shooter zu entwickeln, bevor das Thema Insekten aufgebracht wurde (übrigens wiederum von Frank 😉 ). Und da stand auch noch keine Story im Raum – wir haben überlegt, welche Hintergrundgrafiken geeignet wären, wo vernünftiges Gameplay möglich wäre. R-Type und Vulcan Venture, ein Teil der Gradius Reihe, waren damals meine absoluten Lieblingsspiele in Sachen Gameplay. Es gab nichts vergleichbares am Amiga, so haben wir uns dafür entschieden. Allerdings war Apidya schon in der Mache, bevor Kaiko gegründet wurde – nur eben als Ballerspiel mit dem typischen Weltraum Szenario.
5. Was war bei der Programmierung von Apydia am Schwierigsten?
Nichts war besonders schwierig – außer solange durchzuhalten. Apidya zu entwickeln hat insgesamt zwei Jahre gedauert. Die meiste Zeit hatten wir keine Büros und haben uns eben zuhause getroffen. Ich habe nebenher studiert, aber eher als Alibi. Als klar war, dass ich mich zwischen Studium und Spieleentwicklung entscheiden musste, weil beides zusammen in der knappen Zeit nicht klappt, musste eben das Studium dran glauben. Programmtechnisch gibt es schon einige interessante Details, z.B. der voll animierte Parallax Hintergrund in Welt 4, aber eigentlich war das ganze ein stetes Vorwärtsschreiten ohne wesentliche Probleme. Wirklich schwierig war das Gamedesign, weil wir als Autodidakten eben erst mal lernen mussten, wie effektives Leveldesign überhaupt funktioniert.
6. Zur Programmierung allgemein: Wie seid ihr vorgegangen, damit Apidya auch zu dem wurde, was ihr euch vorgestellt hattet?
Wir haben vor allem die wichtigste Regel befolgt: immer einen Fuß vor den anderen setzen. Im Ernst, es gab eine Idee, was alles im Spiel drin sein sollte und wir hatten eine Liste der Grafikwelten. Weitergehende Planung gab es nicht. Die jeweiligen Levels wurden durchgesprochen jeweils bevor sie erstellt wurden und dann wurde eben programmiert, was nötig war. Da ich lange Zeit ganz allein zuhause in meinem Kinderzimmer an Apidya programmiert habe (ich hatte den Bund gerade hinter mir, wohnte bei meinen Eltern und ging studieren), habe ich eben jeweils geschaut was anlag und drauflos programmiert. Tools, Konverter, Game, Ladesystem… Irgendwann während des Projektablaufs habe ich herausgefunden, dass es sich wesentlich leichter entwickelt und die Ergebnisse besser werden, wenn man nicht auf Basis von Listen von Gegnern vorgeht (also z.B. “wir machen einen Marienkäfer, einen riesigen Maulwurf, ein fliegendes Blatt” etc.), sondern aufgrund von ganz konkreten Levelsituationen. Daraufhin sah die Arbeit ein bissl anders aus, weil einfach klarer war, was zu tun ist. Man muss aber auch berücksichtigen, dass wir sehr lange alle Zeit der Welt hatten, keinen Publishingvertrag etc. und deshalb einfach solange fummeln konnten, bis es Top war.
7. Gab es an dem Programm von Apidya irgendwas, was ihr zuvor am Amiga programmierteschnisch noch nicht ausprobiert hattet?
Nicht wirklich. Ein paar Sachen waren in der Tat neu, vor allem in den Bonuslevels, aber eigentlich ist das relativ Standard. Der Amiga ist ein einfach zu durchschauendes Gerät, das ohne Trickserei sehr leistungsfähig ist. Die ein oder andere Sache sieht beeindruckend aus, aber die dahinterstehende Technik ist ganz einfach.
8. Nagte Apydia an den Technischen Grenzen des Amiga? Oder meinst du, wäre es im Nachhinein möglich auf der selben Plattform ein aufwendigeres Apidya zu machen? (was nicht heißen soll das Apidya eine schlechte Technik hatte)
Man hätte durchaus ein aufwändigeres Apidya machen können, schließlich haben wir eine Menge während der Arbeit am Projekt dazugelernt. Die ersten 3 Welten waren mit 32 Farben ausgestattet, das war stellenweise nach Sicht des Grafikers ein Fehler, weil dadurch eben auch eine Menge Performance verschwindet. Welt 4 ist technisch so ziemlich state of the art – da geht nicht mehr viel drauf zusetzen. Die anderen Welten hätten schon noch ein wenig besser sein können.
9. Mit welchen Programmen habt ihr die Grafiken erstellt und in das Spiel eingebunden?
Alle Grafiken wurden mit Deluxepaint 4 (ich glaube zumindest, dass es vier war – ist lange her 😉 ) erstellt. Das war eigentlich das Standardprogramm dafür. Eingebunden wurde der Kram über zwei einfache Tools. Das eine rechnet die ILBM Bilder von DPaint in einfach ungepackte Binärdateien um, die das Spiel für die Backgroundgrafiken benutzt hat. Ein Leveleditor wurde verwendet, um die 16*16 Pixel großen Blöcke, die in DPaint gemalt wurden zu einem Level zusammenzusetzen. Für BOBs (BlitterObjects, die meisten bewegten Objekte wurden über diese Amiga eigene Technik dargestellt) gab es ein Tool, das anhand von speziellen Umrandungen um die Animations diese extrahiert und wiederum binär speichert. Die einzelnen Animframes mussten dann über ihren Export-index referenziert werden. Dazu habe ich lustige Tabellen in meinen Sourcecode getippt.
10. Mit welcher Programmiersprache habt ihr Apidya geschrieben?
Wie jedes ernstzunehmende Actionspiel für den Amiga wurde Apidya vollständig in Assembler entwickelt.
11. Habt ihr damals Skizzen,Zeichnungen oder sonstiges Material entworfen um Apidya zu machen? Wenn ja, wäre es möglich dieses Material zur Anschauung auf meiner Page bereit zu stellen?
Ja, es wurden schon ein paar Scribbles gemacht, von den verschiedensten Teilen im Spiel. Frank hat einiges vorgezeichnet, aber in der Hauptsache nur als Vorlage für die Grafiken. Ich habe vielleicht ein klein bisschen an Material – da muss ich mal in meinem Apidya Ordner schauen. Ganz sicher hab ich nicht viel.
12. Wie kam es eigentlich dazu, dass Chris Hülsbeck die Musik zu Apidya gemacht hatte? Und außerdem: Wie schaffte es Chris Hülsbeck eigentlich einen Soundtrack zu machen der so gut in das Spiel passte? War das Spiel schon fertig, als er die Musik machte oder hat er das vorher gemacht?
Chris Hülsbeck kannte ich noch aus meiner Schulzeit. Wir lebten in der gleichen Stadt und hatten uns bei einem Aktionstag der Schule kennengelernt und angefreundet. Zu dem Zeitpunkt als Apidya fertiggestellt wurde kam Chris von Rainbow Arts zurück und wurde Gesellschafter der Hülsbeck, Matzke, Thierolf GbR, die unter dem Label KAIKO lief. Wir waren also Geschäftspartner und da ist es irgendwie natülich, dass man die eigenen Spiele vertont. 😉 Das Spiel war nicht fertig als Chris die Musiken machte, aber sehr viel von den Levels lief schon stabil, sodass er sich alles genau anschauen konnte.
13. Welche Werkzeuge und Programme braucht man im Allgemeinen, um auf dem Amiga ein Spiel zu programmieren? Wäre es dir noch möglich die Namen der Programme aufzuschreiben?
Zur damaligen Zeit wurden die Spiele in Assembler entwickelt, demnach brauchte man zum Programmieren nur ein Assembler Programm. Wir haben damals den Devpac Assembler von Hisoft verwendet. Zusätzlich habe ich ein selbstentwickeltes Programm benutzt, um den fertig erstellten Code per serieller Schnittstelle an einen zweiten Amiga zu schicken und dort zu starten. Da das alles in einer Ära ohne Festplatten stattfand, war es zeitaufwändig die Quellcodes auf Diskette zu speichern, durch das Starten auf einem zweiten Amiga habe ich mir eine Menge Abstürze meines Arbeitsrechners gespart und konnte viel einfacher arbeiten. Die Grafiken wurden mit Deluxe Paint IV erstellt, das war einfach das Standard-Programm, das haben alle benutzt. Für die Musiken musste unser selbst erstellter TFMX Pro Editor herhalten, eine aufgebohrte Version eines Soundeditors, den wir für Demonware hergestellt hatten. Neben diesen Programmen haben wir noch ein paar kleine selbst erstellte Tools verwendet, um z.B. das Longtrack Filesystem der Disketten zu erstellen etc.
14. Wie genau werden auf dem Amiga Kollisonsabfragen und Sprites kreiert und definiert? Was braucht man dafür?
Kollisionsabfragen sind bei Arcadespielen generell eher simpel. Es gibt wenige Genres, bei denen genaue Kollisionskörper von Vorteil sind, bei einem Shooter sind sie es definitiv nicht. In Apidya besitzt jede Gegnerklasse ein Rechteck, das seine Kollision darstellt. Für die Abfragen werden einfach die Rechtecke verglichen. Schüsse des Spielers haben Rechtecke, die eher größer als die Grafik sind Gegnerschüsse eher kleine. Die Biene als ‘Playerschiff’ hat ebenfalls ein kleines Rechteck. Um die Horizontal Scroller Regel “wo Dein Schuss durch kann, da kannst Du auch durch” zu erfüllen ist das Rechteck genauso hoch, wie das der horizontal wegfliegenden Schüsse und gleich platziert.
15. Alle Sprites haben meistens auch Animationen. Mit welchem Programm habt ihr die denn gezeichnet?
Alle Animationen wurden in einzelnen Frames in Deluxe Paint (DPaint) gezeichnet. Die Animationsphasen wurden eingerahmt, um einen Bezug zueinander herzustellen. Ich habe ein Originalbild von Apidya mit den Animationen der Welt 2 (the Pond) der Mail beigelegt. Die gelben, ausgefüllten Kopien der Animationsphasen sind sogenannte Masken, die bestimmen, welche Pixel der Grafik zum Vordergrund gehören und welche transparent sind. Anhand der Rahmenfarbe werden die einzelnen Phasen ausgeschnitten und in binärer Form direkt für den Blitter des Amiga, einen Coprozessor der rechteckige Speicherbereiche sehr schnell kopieren und verknüpfen kann in einer Datei abgelegt.
16. Wie verhält sich das mit der Gegener KI in Apidya? Haben die sowas wie eine Künstliche Intelligenz? Oder laufen sie alle nur ein bestimmtes Verhaltensmuster ab?
KI – ein Fremdwort 😉 Es gehört zu den Grundregeln eines Horizontal Shooters, dass die Levels immer identisch ablaufen, das Auswendiglernen der Levels ist neben schnellen Reflexen das Mittel die Spiele zu meistern. Das einzige, was nennenswert auf den Spieler reagiert sind die gezielt abgefeuerten Schüsse. Die Gegnerbahnen etc. sind bis ins Detail vorgegeben.
17. Als ihr das Spiel gemacht habt, von wem oder was habt ihr euch inspirieren lassen?
Wir haben uns vor allem von einigen Megadrive Spielen und verschiedenen Automaten inspirieren lassen, vor allem von R-Type und Vulkan-Venture, einem Spiel aus der Gradius Serie.