out of the box

Nostalgie in 3D

von Christian Perle
 [ icbm3d ]


Es gibt tausende Tools und Utilities für Linux. "out of the box" pickt sich die Rosinen raus und stellt pro Monat ein Programm vor, das wir für schlichtweg unentbehrlich oder aber zu Unrecht wenig beachtet halten. Dieser Artikel beschäftigt sich mit dem dreidimensionalen Zeitvertreib ICBM3D.

Eine Programmsparte, die sich konstant großer Beliebtheit erfreut, sind Emulatoren. So mancher "jüngere" Linuxbenutzer mag sich darüber wundern, mit welchem Eifer sich Computerianer der Vor-Windows-Generation die Anfänge ihrer Computerlaufbahn wieder ins Gedächtnis zurück rufen, doch Alter macht nunmal nostalgisch... Meistens werden zu diesem Zwecke alte Spiele hervorgekramt. Aber es geht auch ohne Emulator, etwa mit einem Spiel der Generation "Als die Vektoren laufen lernten", geschrieben von Bill Kendrick.


Emulator: Ein Programm, das einen anderen Computer so vollständig simuliert, dass Programme für diesen Rechnertyp lauffähig werden. Populäre Emulatoren sind z.B. vice (ein C64-Emulator), uae (ein Amiga-Emulator) und der STonX-Atari-ST-Emulator.

Was ist ICBM3D?

Der unaussprechliche Programmname ICBM3D steht für Inter-Continental Ballistic Missiles 3D. Bei diesem Spiel geht es darum, die eigenen Städte (dargestellt durch Pyramiden) vor feindlichem Raketenbeschuss zu schützen, indem die lebensgefährlichen Flugkörper bereits vor dem Aufschlag zur Explosion gebracht werden. Das Spiel läuft ohne besondere Zusätze unter dem X-Window-System und ist somit unabhängig von spezieller Hardware.

Installation mit k(l)einen Hürden

Da es von ICBM3D keine vorkompilierte Version gibt, müssen wir es selbst übersetzen. Zunächst besorgen wir uns dazu das Archiv mit den C-Quelltexten von http://www.newbreedsoftware.com/icbm3d/, um sie auszupacken, zu kompilieren und zu installieren:

tar xzf icbm3d.0.4.tar.gz
cd icbm3d.0.4.tar.gz
make PREFIX=/usr/X11R6
strip icbm3d
su -   (root-Passwort eingeben)
cp icbm3d /usr/local/bin ; exit
Der make-Aufruf setzt nicht nur den Kompiliervorgang in Gang, sondern zusätzlich eine Variable, damit die Standard-X-Bibliotheken gefunden werden. Die Fehlermeldung bezüglich fehlender Schreibrechte in /usr/X11R6 kann ignoriert werden, dort soll das Programm ohnehin nicht landen. Für das Zielverzeichnis /usr/local/bin brauchen wir beim eigentlichen Kompilieren noch keine Schreibrechte. Daher verschaffen wir uns die root-Rechte erst für die finale Kopiererei und geben sie danach mit exit gleich wieder auf.


Quelltext: Die für Menschen lesbare Form einer Software. Durch das Übersetzen ("Kompilieren") mit einem Compiler wird daraus ein ausführbares Programm.
make: (Siehe auch den Linux-User aus Heft 03/00.) Programm zur Ablaufsteuerung beim Übersetzen von Quelltexten. Die Konfigurationsdatei von make (das Makefile) enthält dabei beispielsweise Informationen über Abhängigkeiten zwischen den einzelnen Programmmodulen.

Attacke!

Nach erfolgter Installation schnappen wir uns einen xterm oder kvt und geben dort

icbm3d &
ein. Jetzt sollte sich das Fenster mit der Titelgrafik aufbauen (Abbildung 1). Mit den Tasten L und K kann das Startlevel gewählt werden. Die Leertaste startet das Spiel, mit Q lässt es sich jederzeit beenden. Bereits in der Titelgrafik sind die Städte zu sehen, umrahmt von den grünen Raketenabwehrgeschützen.

 [ Titel ]

Abb. 1: Das ICBM3D-Titelfenster

Nach dem Spielstart erscheint eine dreidimensionale Markierung (der Zielpunkt) über den Städten. Diese kann mit den Cursortasten in der Ebene bewegt werden. Eine hellgraue Bodenmarkierung zeigt die Höhe des Zielpunkts an; sie kann durch Halten der linken Maustaste und Bewegen der Maus eingestellt werden. Die Betrachterposition variiert man durch die Kombination von rechtem Maustastendruck und Mausbewegung.

Nach kurzer Zeit tauchen die ersten Raketen auf. Ihre Höhe wird durch eine gestrichelte Hilfslinie verdeutlicht, die Flugrichtung durch den Pixelschweif, den das Geschoss hinter sich lässt. Eine Angriffssituation mit mehreren Raketen ist in Abbildung 2 dargestellt.

 [ Angriff ]

Abb. 2: Hell's Bells in Pixel-City

Wenn man den Zielpunkt in die Flugbahn einer nahenden Rakete gebracht hat, muss nur noch die Leertaste gedrückt werden. Das nächstgelegene Raketenabwehrgeschütz feuert dann auf diese Position. Verfehlt man eine Rakete, so ist es meistens um eine Stadt geschehen -- wenn an dieser Stelle überhaupt noch eine steht. Mit steigender Levelzahl nimmt natürlich die Zahl der Raketen zu, und auch andere Flugobjekte kommen zum Vorschein.

Deluxe

Parallel zu ICBM3D entwickelt der Autor eine Open GL-Version des Programms. Die Version mutet natürlich nicht mehr so nostalgisch an, ist dafür aber optisch ansprechender. Zu finden ist sie neben diversen anderen Linux-Spielen des gleichen Programmierers auf http://www.newbreedsoftware.com/. (pju)


Open GL: Von der Firma SGI ins Leben gerufener Standard für die 3D-Grafikprogrammierung. Eine freie Version der Open-GL-Bibliothek ist Mesa GL (http://mesa3d.sourceforge.net/).

Copyright © 2000 Linux-Magazin-Verlag