Seit einigen Updates konnte ich kein Unreal Tournament 2003 mehr starten. Mit dem neuen X-Server verschwanden auch einige Zusatzprogramme aus dem Paketbaum meiner Distribution. Nachdem sich heute eine weitere Fehlermeldung dazu gesellte habe bin ich der Sache einmal auf den Grund gegangen. Hier die Fehlermeldung, die mich beim Starten von ut2003 nun schon seit Monaten heim suchte:

Error of failed request: BadValue (integer parameter out of range for operation)
Major opcode of failed request: 135 (XFree86-VidModeExtension)
Minor opcode of failed request: 10 (XF86VidModeSwitchToMode)
Value in failed request: 0xb6
Serial number of failed request: 203
Current serial number in output stream: 205

Mich verwunderte dies sehr, da ich doch das Paket “libXxf86vm”, welches die Funktion VidModeExtension zur Verfügung stellt, installiert hatte. Im Internet stieß ich dann auf folgende Erkenntnis: Viele Spiele nutzen das veraltete Programm “xvidmode” um die Auflösung im Vollbild zu setzen. Dafür wird heutzutage aber nur noch “xrandr” genutzt. Demnach müsste der Befehl “ut2003 –windowed” funktionieren. Klasse, es läuft also im Fenster, aber nicht im Vollbild. Nun habe ich drei Lösungen dafür konzipiert:

1. Quick’n’Dirty


ln -s /usr/bin/xrandr /usr/bin/xvidmode

Als root ausführen. Dabei wird eine symbolische Verknüpfung von xrandr auf xvidmode erstellt. Die Befehlssyntax ist zwar leicht unterschiedlich aber für ut2003 scheint es zu reichen 🙂

2. Richtig

xvidmode zum Beispiel von ToCows herunter laden, kompilieren und unter /usr/bin installieren

3. Hack

Dabei editiert man das UT2003 startup script im Spielverzeichnis und fügt folgende Zeilen vor “# Let’s boogie!” ein:

#set proper screenresolution
utINI="$HOME/.ut2003/System/UT2003.ini"
if [ -r "$utINI" ]; then
xwidth=`grep -m 2 FullscreenViewportX $utINI | cut -f2 -d'=' | tail -1`
xheight=`grep -m 2 FullscreenViewportY $utINI | cut -f2 -d'=' | tail -1`
echo "Read $xwidth x $xheight from UT2003.ini"
xrandr `echo "-s "$xwidth"x"$xheight""`
fi

Hier ziehe ich mir die gewünschte Auflösung aus der UT2003.ini im Heimatverzeichnis und setze die Auflösung vor dem Spielstart manuell. Existiert noch keine UT2003.ini kann man das Spiel in dem Fall einmal mit “–windowed” starten. Dabei wird die INI dann erstellt und die Auflösung nach dem Einstellen im Menü unter Settings geschrieben. Ein optionales “xrandr -s 0” (oder andere gewünschte Auflösung) am Ende des Skripts setzt die Auflösung nach dem Spielen wieder zurück.

..aus diesem xvidmode/xrandr Grund setzt übrigens auch Quake3 und Enemy Territory die Auflösung nach dem Start nicht mehr richtig 🙂

Es gibt noch ein weiteres Problem, welches mit einem neueren X-Server aufzutreten scheint. Dabei kommt folgende oder ähnliche Fehlermeldung zusätzlich zum Spielstart:

ut2003-bin: xcb_lock.c:70: _XGetXCBBuffer: Assertion `((int) ((xcb_req) – (dpy-> request)) >= 0)’ failed.

Das kann man beheben indem man die systemeigene Bibliothek von libSDL nutzt. Dazu muss man erst die libSDL im Systemordner von ut2003 verschwinden lassen:

cd /usr/local/games/ut2003/System
mv libSDL-1.2.so.0 libSDL-1.2.so.0.contrib
ln -s /usr/lib/libSDL-1.2.so.0

Happy fragging 🙂

Ghettoblaster Ja du mit dem rosa Hemdchen, dem Goldkettchen und der Zwergigel-Kampffrisur. Ich wollte dir nur mal gesagt haben, dass dein verdammtes Musikhandy die mit Abstand peinlichste Neuerung deines Outfits darstellt. Da kommst du nun lässig mit deinem Mobiltelefon dahergeschlurft und verbreitest verstümmelte Krächzmusik von Bushido / Eminem / Sido / wasweißdenich dass einem die letzte Mahlzeit spontan noch einmal durch den Kopf gehen möchte. Raff es: Dein verblödetes Handy ist keine Jukebox und klingt einfach nur beschissen. Wenn du schon alle Welt mit deiner Musik beglücken musst, dann mache es wenigstens richtig und kaufe dir einen ordentlichen Ghettoblaster. Den gibt es ganz ohne Vertragsbindung und es klingt wenigstens nach was. SMS kannst du damit natürlich keine mehr schreiben.

(.und lass das Rumsabbern sein. Das ist eklig wenn du überall hinkotzen musst. Alter, wenn du das daheim genau so machen würdest, würde dich Mama mit dem Wischmob verprügeln.)

Geist ist geil!

Denk mal drüber nach.

BioSys BioSys

BioSys ist eine “Survival Adventure Simulation” von JumpStart und Take2 in klassischer voll drehbarer 360 Grad Bildermanier. Nach dem Spielstart schlüpft man in die Rolle des Wissenschaftlers “Russel”, der jedoch nach einer schweren Katastrophe sein Gedächtnis verloren hat. Bei der Katastrophe sind alle anderen Menschen in der Biossphere4 ums Leben gekommen. Die Biossphere4 setzt sich aus vier voneinander abgeriegelten Biomen zusammen. Das hermetisch abgeriegelte Naturexperiment ist komplett computergesteuert und sehr empfindlich. Durch die Katastrophe ist das Gleichgewicht massiv gestört und Russel muss schnell Initiative ergreifen, um sich selbst und seinen Mikrokosmos am Leben zu erhalten. Denn stirbt die Pflanzenwelt der einzelnen Biome stirbt auch er. Zu allem Überfluss scheint Russel nicht ganz alleine in der Biossphere zu sein. Eines seiner Experimente hat sich selbstständig gemacht und neben den Gefahren von Flora und Fauna muss man sich auch noch vor diesen in Acht nehmen. Darüber hinaus muss für beständigen Nachschub an Nahrungsmitteln und Trinkwasser gesorgt werden, damit Russel nicht verhungert oder vor Erschöpfung umkippt. Den eigenen Gesundheitzustand darf man dabei ebenfalls nicht außer Acht lassen, während man alle vier Biome wieder funktionstüchtig bekommen muss. Die Hintergrundstory ist sehr Hollywood und kann getrost ignoriert werden. Wer an den Intrigen und Machtkämpfen hinter dem Projekt interessiert ist kann natürlich fleissig die Informationsfetzen im Spiel zusammen suchen und sich ein eigenes Bild machen.


BioSys BioSys BioSys

Installation:

Leider meinte Jumpstart wirklich nur Win95/Win98, als man das auf die Verpackung drucken ließ. Ab NT ist bereits Schluss. Zum Glück gibt es Wine. So konnte ich BioSys problemlos unter Linux installieren und starten:

InstallationsCD:

mount /media/cdrom
wine /media/cdrom/setup.exe
umount /media/cdrom

Nun muss Wine noch gesagt werden dass es für BioSys ein Win95 vorgaukeln soll:

wine winecfg

Unter Anwendungen fügen wir eine neue Anwendung hinzu und navigieren im Menü in den neu erstellen BioSys Ordner (C:/Program Files/Biosys) wo wir BioSys.exe auswählen. Als Windowsversion für diese Anwendung wählen wir Win95. Fertig.

SpielCD (wird zum Spielen benötigt):

mount /media/cdrom
cd /pad/zur/wineinstallation/drive_c/Program\ Files/Biosys/
wine BioSys.exe
umount /media/cdrom

Für häufiges Spielen kann man sich z.b. mit k3b komfortabel ein ISO (Imagedatei) der SpielCD erstellen lassen, welches man dann statt der CD über das Loopback Device mounten kann. So muss man nicht immer die CD griffbereit halten.


BioSys BioSys BioSys

BioSys ist stellenweise sehr knifflig und kann durchaus frustrierend sein, wenn man das Spiel falsch gestartet hat. Spätestens wenn zum Beispiel das dritte Set Sicherungen durchgebrannt ist macht es einfach keinen Spaß mehr. Wer also wirklich nicht weiter kommt kann einen Blick in Steffen Geislers Walkthrough werfen. Der ist zwar nicht komplett und fehlerfrei aber genügt völlig um weiter zu helfen falls man in einer Sackgasse gelandet ist.

Mit der neusten Patch 1.15.2 von Blizzard ist es nun erstmals offiziell möglich StarCraft ohne CD zu spielen. Mangels Wintendo spiele ich StarCraft mit Wine unter Linux. Und so gehts:

Starcraft neuste Version 1.15.2:

Ich habe mir die neuste Patchversion Version 1.15.2 für StarCraft Deutsch ohne Expansion Set “Brood War” über http://ftp.blizzard.com/pub/starcraft/patches/PC/SC-1152.exe geholt und anschließend mit wine erfolgreich installiert:


wget http://ftp.blizzard.com/pub/starcraft/patches/PC/SC-1152.exe
wine SC-1152.exe

In der beliegenden ReadMe steht zum Spielen ohne CD folgende Information:

If you own only StarCraft, copy “INSTALL.EXE” from the StarCraft CD to
your StarCraft folder and rename it to “StarCraft.mpq”.

Die fragliche Datei befindet sich auf meiner “CD-Rom” unter /media/cdrom klein geschrieben und ist 605MB groß:


-r-xr-xr-x 1 root root 605M 3. Apr 1998 /media/cdrom/install.exe

Ich kopiere die install.exe wie im Patch-ReadMe beschrieben in mein StarCraft Installationsverzeichnis:


mount /media/cdrom
cp /media/cdrom/install.exe ~/.wine/drive_c/Programme/Starcraft/StarCraft.mpq
umount /media/cdrom
cd ~/.wine/drive_c/Programme/Starcraft
wine StarCraft.exe

Oder im virtuellen Desktop:


wine explorer /desktop=name,640x480 StarCraft.exe

Die neuste Version scheint anstandslos auch ohne CD zu laufen 🙂

StarCraft

StarCraft alte Version 1.14:

Bisher habe ich StarCraft immer über mein (quick’n’dirty) Skript “starcraft.sh” gestartet, welches eine ISO anstelle der SpielCD für mich über das loop-device gemountet hat.


#!/bin/sh
#----------------------------------------

if [ -f /media/cdrom/sc.ico ]; then
echo Game-CD already mounted
else
echo Mounting Game-CD
mount /home/beko/iso/starcraft.iso
fi

wine ./starcraft.exe $@

umount /home/beko/iso/starcraft.iso

DIe ISO habe ich vorher zusammen mit einigen anderen Spiele-ISOs, mit denen ich ähnlich verfahre, in meiner fstab definiert:


/home/beko/iso/starcraft.iso /media/cdrom iso9660 ro,noauto,user,exec,loop 0 0

Zum Vergleich:

623M starcraft.iso
605M StarCraft.mpq

Ich spare mir mit der neusten Patch also ganze 18 MB und ein paar Zeilen in meinem Startup Skript. Danke Blizzard…