Dieses Spiel stellt eine besondere Perle dieses Herunterlade-Archivs dar: ein vollwertiges Netzwerkspiel, dass Sie direkt über das Internet zusammen mit Ihren Freunden spielen können! Darüber hinaus besitzt dieses Spiel auch eine schnelle Scrollgrafik.
Rasterbike ist auch unter dem Namen Tron bekannt, die Idee stammt aus dem gleichnamigen Kinofilm. Auf einem 50×50 Einheiten grossen Spielfeld können bis zu 10 Spieler gleichzeitig daran teilnehmen. Die Startposition und -richtung wird dabei durch den Zufallsgenerator bestimmt. Jeder Spieler steuert ein Mofa, welches weder beschleunigt noch abgebremst werden kann, Sie können also nur lenken. Beim Fahren hinterlässt jedes Motorrad eine farbige Spur, deren Überfahrung den sofortigen Spielertod bedeutet, dasselbe mit dem Spielfeldrand. Sieger ist derjenige Spieler, welcher am längsten herumkurvt.
Ein regelrechtes Gerangel zwischen dem roten, grünen und türkisblauen
Mofa, welches sicherlich einige Opfer hinterlassen wird
Ihr eigenes Mofa sehen Sie im grossen, rechten Hauptfenster, während Ihre Mitspieler in den kleinen Kameraausschnitten links erscheinen. Zugleich ist noch in der Spielerlegende ersichtlich, was jedes Mofa im Moment gerade tut.
Das rote, grüne und violette Mofa liefern einander ein
Kopf-an-Kopf-Rennen
Ein spannendes Duell zwischen den letzten beiden Mofas. Wer wird wohl gewinnen?
Die gelben Zahlen geben bereits den Siegesrang an.
Dieses Spiel läuft als sog.
Client/Server-Anwendung, wobei der Client in
QuickBASIC geschrieben ist und der Server aufgrund des fehlenden
SI_BIND
/SI_LISTEN
und SI_ACCEPT
von
DOSISODE (siehe Internet mit
QuickBASIC) unter Linux/UNIX in C entwickelt wurde.
Für den Server benötigen Sie also einen Rechner unter Linux, FreeBSD oder einem kommerziellen UNIX. Dazu laden Sie sich das Rasterbike-Serverpaket herunter, entpacken es mit gunzip und tar und übersetzen es mit dem C-Compiler:
/home/user> gunzip RasterbikeServer.tar.gz
/home/user> mkdir rasterbike
/home/user> cd rasterbike
/home/user/rasterbike> tar xvf ../RasterbikeServer.tar
DigitalULTRIX4.5/
DigitalULTRIX4.5/rasterbike_autopilot
.
. (weggelassen)
.
Linux_K2.2.14/rasterbike_autopilot
rasterbike_autopilot.c
rasterbike_server.c
/home/user/rasterbike> cc -o rasterbike_server rasterbike_server.c
/home/user/rasterbike> _
Falls Sie wie später beschrieben auch Computergegner als Ersatz für menschliche Mitspieler verwenden möchten, sollten Sie auch den Auto-Piloten übersetzen:
/home/user/rasterbike> cc -o rasterbike_autopilot rasterbike_autopilot.c /home/user/rasterbike> _
Falls Sie auf Ihrem Linux/UNIX-System keinen C-Compiler installiert haben, finden Sie bereits vorcompilierte, ausführbare Dateien für folgende Linux/UNIX-Dialekte:
Der Server ist dabei als Einwegserver konzipiert; Sie müssen ihn also vor jedem Spiel manuell starten:
/home/user/rasterbike> rasterbike_server Rasterbike-Server V1.01 © 2000 by Andreas Meile, CH-8242 Hofen SH Server auf Port 11971 gestartet - Einladungsphase
Für eine abweichende Portnummer geben Sie diese als Parameter beim Aufruf an:
/home/user/rasterbike> rasterbike_server 7700 Rasterbike-Server V1.01 © 2000 by Andreas Meile, CH-8242 Hofen SH Server auf Port 7700 gestartet - Einladungsphase
Der Server gibt Ihnen während eines Spielverlaufs alle wichtigeren Meldungen jeweils aus:
/home/user/rasterbike> rasterbike_server Rasterbike-Server V1.01 © 2000 by Andreas Meile, CH-8242 Hofen SH Server auf Port 11971 gestartet - Einladungsphase Verbindung aufgenommen von Spieler 1 Spieler 1 verbunden Verbindung aufgenommen von Spieler 2 Spieler 2 verbunden Einladungsphase beendet -> Bereitmachungsphase Spieler 1 hat Bereitschaft bestätigt Spieler 2 hat Bereitschaft bestätigt Alle Spieler sind bereit Spielrunde gestartet Spieler 2 ausgeschieden Spieler 1 ausgeschieden Spielrunde beendet. Rangliste übermittelt Spieler 1 durch Server getrennt Spieler 2 clientseitig getrennt Rasterbike-Server beendet /home/user/rasterbike> _
Als TCP/IP-Stack kommt DOSISODE zum Einsatz, welcher für lokale Netzwerke (LAN) mit Ethernet oder Token Ring sowie normalen Einwählkonten über ein Modem oder ISDN-Terminaladapter geeignet ist. Dazu verweise ich Sie auf den Artikel Internet mit QuickBASIC, wo die gesamte Netzwerk-Installation sehr ausführlich beschrieben ist. Dabei sollten Sie auch den Test mit TCPIP_D.BAS wie dort beschrieben durchführen, um die einwandfreie Funktion sicherzustellen. Läuft Ihr unter MS-DOS erstelltes DOSISODE-Netzwerk erst einmal richtig, so können Sie sich das Rasterbike-Clientpaket herunterladen und nach dem Entpacken mit
C:\BASICPRG>qb /l qb rastbike
IP-Adresse des Rasterbike-Servers (z.B. 192.168.0.2)? 212.185.216.211
Portnummer (Standard= 11971 )? Enter <= Leereingabe
das Programm starten. Für Nicht-Compiler-Besitzer befindet sich noch die vorcompilierte Version RASTBIKE.EXE in diesem Archiv.
Wichtig ist hierbei, die IP-Adresse immer numerisch einzugeben, also DNS-Hostnamen sind nicht möglich.
Selbstverständlich sind das obige nur Beispielwerte, so dass Sie als IP-Adresse diejenige Ihres UNIX/Linux-Rechner angeben, auf welchem Sie den Server gestartet haben. Wenn alles geklappt hat, so kommt der Spielbildschirm und Sie befinden sich in der Einladungsphase.
Nach dem Server- und Clientstart befinden Sie sich zunächst in der Einladungsphase, in welcher sich die Spieler zusammentreffen. Der erste Spieler übernimmt dabei die Rolle des Spielverwalters (Meister) und bestimmt per Tastendruck, wann die Einladung für das Rasterbike-Rennen zu Ende ist, worauf der Server niemand weiteres mehr hereinlässt. Jeder Spieler bekommt daraufhin eine akustische Meldung, dass das Rennen sogleich losgeht, was jeder mit Tastendruck bestätigen muss. Sie sehen dies am B in der Spielerlegende. Sobald alle Spieler ihre Bereitschaft bestätigt haben, geht das Vergnügen nach »Achtung! Fertig! Los!« los. Gesteuert wird mit den Pfeiltasten, wobei eine absolute Steuerung zur Anwendung kommt. Das Spiel endet, sobald auch der letzte Spieler gestürzt ist.
Falls einer der Spieler seine Netzwerk-Verbindung mitten im Spiel verliert (beispielsweise aufgrund einer schlechten Analogmodem-Verbindung), so erscheint er bei den übrigen Spielern mit #.
Falls Sie einmal zuwenig Mitspieler zusammenfinden können, so dient Ihnen der Autopilot als Ersatz für einen menschlichen Spieler. Der Autopilot läuft ebenfalls unter UNIX/Linux und bietet Ihnen insgesamt 6 Spielstufen an:
Parameter | Beschreibung |
---|---|
1 | nur ausweichen, wenn nötig |
2 | unberechenbarer Fahrstil mit plötzlichem Abbiegen |
3 | langsamer Hinterherläufer |
4 | anderen Spieler nachhetzen |
5 | Zufälliges Herumtorkeln |
6 | am Rand entlang schleichen |
Vor einer Spur sowie dem Spielfeldrand weichen jedoch alle Autopiloten aus. Den Autopiloten können Sie beliebig im Netzwerk starten, also beispielsweise auf dem selben Linux-Rechner mit
/home/user/rasterbike> rasterbike_autopilot 3 localhost Rasterbike-Autopilot V1.01 © 2000 by Andreas Meile, CH-8242 Hofen SH Verbindung mit Server aufgenommen, Handshake läuft... Handshake beendet - Übernehme Rolle von Spieler 2 Einladungsphase läuft...
Verwenden Sie einfach eine andere Shell (xterm) oder benützen Sie ein nachgestelltes & um den Auto-Piloten als Hintergrundprozess zu starten. Der Autopilot kommuniziert also auch direkt über das Netzwerk wie RASTBIKE.BAS für menschliche Mitspieler. Im Gegensatz zum QuickBASIC-Client können Sie hier ohne weiteres DNS-Hostnamen verwenden, also beispielsweise
/home/user/rasterbike> rasterbike_autopilot 3 pD4B9D8D3.dip.t-dialin.net Rasterbike-Autopilot V1.01 © 2000 by Andreas Meile, CH-8242 Hofen SH Verbindung mit Server aufgenommen, Handshake läuft... Handshake beendet - Übernehme Rolle von Spieler 1 Einladungsphase läuft... Rolle vom Master erhalten - Einladungsphase mit Tastendruck beenden!
Bei der Spielverwalter-Rolle müssen Sie mit Enter die Einladephase beenden, alles übrige läuft automatisch ab. Auch hier werden alle wesentlichen Meldungen ausgegeben:
/home/user/rasterbike> rasterbike_autopilot 3 localhost Rasterbike-Autopilot V1.01 © 2000 by Andreas Meile, CH-8242 Hofen SH Verbindung mit Server aufgenommen, Handshake läuft... Handshake beendet - Übernehme Rolle von Spieler 3 Einladungsphase läuft... Einladungsphase beendet - Spielerliste: GGE Legende: E=eigener Spieler, G=Gegner, _=Netzwerkverb. verloren Beginn Bereitmachungsphase Ende Bereitmachung Spiel gestartet Autopilot gestürzt! :-( Spieler 2 gestürzt Spieler 1 gestürzt Spiel beendet. Verbindung getrennt und Autopilot beendet. /home/user/rasterbike> _
Aufgrund der Tatsache, dass DOSISODE eben nur unter reinem DOS läuft, welches im Gegensatz zu Windows kein Multitasking bietet, besteht für Sie im Falle eines einfachen Einzel-PCs mit Modem den Umstand, dass Sie einen allfälligen Online-Chat (beispielsweise über ICQ geführt) mit Ihren Kollegen jeweils solange unterbrechen müssen, um Ihren PC ins DOS herunterzufahren. Die ideale Infrastruktur ist daher ein lokales Netzwerk (LAN) aus mehreren Rechnern mit Ethernet-Netzwerkkarten, so dass Sie auf einem Computer nebenan weiterhin Ihr Chat-Fenster geöffnet lassen können. Daher versuche ich Ihnen einige Ratschläge hier auf den Weg zu geben, dass Sie auch ohne LAN in den vollen Spielgenuss kommen.
Beispielnetzwerk über drei Haushaltungen
Wie Sie daraus erkennen können, kann man Rasterbike auch ohne LAN spielen. Hardwaremässig genügt also ein Modem und PC wie überall vorhanden. Falls der Spielverwalter selber nicht mitspielt, genügt auch für ihn ein einzelner PC. Ansonsten richtet er sich lokal eine PPP-Verbindung über ein Nullmodemkabel ein (siehe Serielle Schnittstelle) und setzt auf seinem Linux-PC zwei PPP-Daemons (pppd) auf; einen zu seinem Provider, der andere zu seinem DOS-PC mit dem Clientprogramm. Der wichtige Punkt ist hierbei, dass er vorher den übrigen Mitspielern seine vom Provider zugewiesene dynamische IP-Adresse per Chat mitteilt:
/home/user/rasterbike> ifconfig ppp0 ppp0 Link encap:Point-to-Point Protocol inet addr:212.185.216.211 P-t-P:212.185.216.1 Mask:255.255.255.0 UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1500 Metric:1 RX packets:13 errors:0 dropped:0 overruns:0 frame:0 TX packets:13 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:10 /home/user/rasterbike> _
Analog für eine ISDN-Karte:
/home/user/rasterbike> ifconfig ippp0 ippp0 Link encap:Point-to-Point Protocol inet addr:195.141.233.4 P-t-P:195.141.233.1 Mask:255.255.255.0 UP POINTOPOINT RUNNING NOARP MTU:1500 Metric:1 RX packets:2128 errors:0 dropped:0 overruns:0 frame:0 TX packets:3067 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:30 /home/user/rasterbike> _
Genau diese unter inet addr angezeigte Adresse muss dann jeder Spieler eingeben, ausgenommen der Spielverwalter selber, denn dieser richtet sich üblicherweise beim Nullmodemkabel zwei private Adressen nach RFC 1597/1918 ein, so dass er beispielsweise 192.168.0.1 zu verwenden hat.
Die aktuelle Version ist ein Stück weit gesehen erst einmal ein erster Versuch, da im wesentlichen noch eine Spielerverwaltung fehlt. In einer künftigen Version ist daher einmal eine Login-Schnittstelle ähnlich wie beim FICS-Schachserver vorgesehen zusammen mit einem permanenten Server, also einem Server, welcher im Prinzip nur noch beim Hochfahren des UNIX/Linux-Rechners via /etc/inittab aktiviert wird und dann rund um die Uhr läuft.
Ausserdem hoffe ich noch sehr, dass mir jemand im Zusammenhang mit INT 2Fh weiterhelfen kann (siehe Internet mit QuickBASIC, unterster Abschnitt), denn dadurch könnte DOSISODE durch das in jedem Windows vorhandene WINSOCK.DLL ersetzt werden, womit alle Chat-Unterbrechungsprobleme für Nicht-LAN-Besitzer gelöst sind.
Rasterbike-Clientpaket herunterladen
Umfang: 40 KB
Rasterbike-Serverpaket herunterladen
Umfang: 165 KB