out of the box

Nostalgia in 3D

by Christian Perle
 [ icbm3d ]

There are thousands of tools and utilities for Linux. "out of the box" looks for the nicest, and presents one program every month which is a must-have or has less attention than it should have. This article focuses on the three dimensional waste of time(the german word was more positive) ICBM3D.

One type of programs which is constantly liked, are the Emulators Some younger Linux users might be surprised, how users of the pre-windows generation look back at the beginnings of their computer time. But being old makes nostalgic... Most time old games are used for this purpose, but this works without emulators, too. For example with a game of the category "as the vectors learned walking", written by Bill Kendrick.

Explanations for beginners here:
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.

What is ICBM3D?

The unpronounceable program name ICBM3D stands for Inter-Continental Ballistic Missiles 3D. In this game, you have to defend your own cities by letting rockets explode before they reach the ground. The game only needs X-Windows, so it runs independant from specific hardware.

Installation without (big) problems

There is no pre-compiled version of ICBM3D, so we have to compile it ourselves. At first we get the archive from http://www.newbreedsoftware.com/icbm3d/, to compile and install:

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
The make-call doesn't only start the compilation, but cares for a variable to find the X libraries. The error message referring to the lack of write access in /usr/X11R6 can be ignored. The program shouldn't go there. We don't need write access to the target directory /usr/local/bin for the compilation. So we get the root access only for the final copying and quit using them immediately after that by using exit.

Again explanations for beginners!
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.


After a successful installation we start an xterm or kvt and enter:

icbm3d &
Now the window with the title graphics should appear (picture 1). You can choose the start level with the keys L and K Space starts the game and Q quits at every time. Already at the title screen, you can see the cities surrounded by anti-missile guns.

 [ Titel ]

pic. 1: The ICBM3D title screen

After the game start, a three dimensional marker (the targeting point) appears above the cities. It can be move parallel to the ground with the cursor keys. A light gray marker at the ground shows the height of the targeting point, which can be changed by pressing the left mouse button and moving the mouse up and down. The viewing position can changed with the combination of the right mouse button and mouse motion.

After a short time, the first missiles appear. Their height is shown by a [...] line, and their direction is indicated by a tail of pixels. An attack situation is shown in picture 2.

 [ Angriff ]

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

After bringing the targeting point near a rocket, you only have to press space. Then , the nearest anti-missile gun fires at that position. If you miss the Missile, the city will be destroyed, if there was still one. With increasing level number, the number of missiles increases, and other objects appear, too.


The author develops an Open GL version of this game parallel to this version. That version isn't that nostalgic anymore, of course, but has better graphics. You can find it among other games of the same programmer at http://www.newbreedsoftware.com/. (pju)

Again stupid explanations for beginners. 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