Am 27.07.2010 erschien das lang ersehnte Echtzeitstrategiespiel Starcraft 2 aus dem Hause Blizzard Entertainment. "Hell, it's about time!" Ich hatte mich zuvor schon in der Wine-Datenbank informiert, wie die Starcraft2-Beta sich unter Linux verhält und war froh zu lesen, dass der Beta-Client schon den "Gold"-Status erteilt bekommen hat.
Das Howto wurde mit Ubuntu 10.04 Lucid Lynx (32bit) getestet und bezieht sich auf die deutsche Kaufversion auf DVD. Dabei habe ich die aktuelle stabile Wine-Version 1.2 verwendet. Der Rechner besitzt eine Intel Core 2 Duo E7400 2,8 GHZ CPU, 4 GB RAM und eine Nvidia Geforce 9600 GT. Als Nvidia-Linuxtreiber habe ich Version 195.36.24 verwendet. Sound funktionierte bei mir auf Anhieb mit Alsa.
Um Starcraft2 zu installieren wird auf jeden Fall wine mindestens in der Version 1.2 benötigt.
Schritt 1:
Vor Beginn der Installation sollte Wine so konfiguriert werden, dass es Windows 7 imitiert. Bei Problemen beim Beenden des Spiels kann auch eine Umstellung auf Windows XP helfen. Am besten beides einmal ausprobieren. Das geht direkt bei Ubuntu mit GNOME-Desktop über Anwendungen->Wine->Konfiguriere Wine oder auf der Kommandozeile mit dem Befehl
winecfg
Schritt 2:
Die DVD wird leider auf Anhieb nicht richtig erkannt. Das Problem existiert auch mit den World-of-Warcraft-DVDs. Die Dateien sind beim automatischen Mounten der DVD "versteckt". Die DVD muss mit
umount <Pfad zum DVD Laufwerk>
ausgehängt werden (z.B. umount /media/cdrom). Mit
sudo mount -o ro,unhide,uid=1000,gid=1000 /dev/scd0 /media/cdrom/
erneut eingehängt werden. Dabei müssen der Gerätename des DVD-Laufwerks und der Mountpunkt ggfs. angepasst werden.
Schritt 3:
Beim Doppelklick auf die Installer.exe startete bei mir der Installationsvorgang, wurde aber nach kurzer Zeit immer mit einer Fehlermeldung abgebrochen. Zum Beispiel erschien:
" Runtime Error!! This application has requested the runtime to terminate it an unusual way. Please contact the application's support team for more information."
Die Lösung ist den gesamten Inhalt der DVD auf die Festplatte in einen Ordner zu kopieren und die Installer.exe von der Kommandozeile aus zu starten.
wine <Pfad zum Starcraft2 Ordner> Installer.exe
Erst danach läuft die Installation bis zum Ende durch. Der Sound, der während der Installation abgespielt wird, bricht bei meiner Installation aber ab. Das Spiel beginnt danach automatisch mit dem Patchen der Dateien auf die aktuellste Version und belohnt einem mit einer filmreifen Introsequenz.
Performance von Starcraft 2 unter Linux verbessern
Auf die Entwicklerversion von Wine upgraden
Erfahrungsgemäß werden Probleme mit Wine nach und nach behoben. Deshalb hilft es oft die Wine-Entwicklerversion zu installieren, um in den Genuss schneller Fehlerbehebung zu kommen. Wer keine Probleme mit Wine hat, sollte bei der stabilen Version (Stand 10.08.2010: Wine 1.2) bleiben. Um die neueste Entwicklerversion nutzen zu können, muss das Paket wine1.3 installiert werden und zuvor das Wine-Ubuntu-PPA eingerichtet worden sein. Auf der Kommandozeile geht das am schnellsten mit dem Befehl
sudo add-apt-repository ppa:ubuntu-wine/ppa
Danach genügt ein
sudo aptitude update
sudo aptitude install wine1.3
um auf die aktuelle wine1.3 Beta-Version ein Upgrade zu machen. Auf der offiziellen Wine-Seite kann man diese Installationsanleitung für Ubuntu noch einmal nachlesen.
Neueste Grafiktreiber von Nvidia für Linux installieren
Wie jeder Gamer weiß, sollten die Grafiktreiber immer auf dem neuesten Stand sein. Der stabile Nvidia-Treiber ist bei Ubuntu "Lucid Lynx" zur Zeit 195.36.24. Um mit dem aktuellsten Treiber zu spielen, kann man diesen einfach durch das Einbinden eines Ubuntu-PPA-Repositoriums von http://www.ubuntuupdates.org/nvidia-graphics-drivers installieren.
Mit den folgenden drei Befehlen auf der Kommandozeile wird das PPA-Repositorium eingebunden, die Paketquellen aktualisiert und schließlich alles auf den aktuellen Stand gebracht.
sudo add-apt-repository ppa:ubuntu-x-swat/x-updates
sudo aptitude update
sudo aptitude safe-upgrade
Anschließend ist der aktuelle Nvidia-Treiber (Stand 10.08.2010: 256.44) installiert.
ATI-Grafiktreiber
In dem Ubuntu-x-swat-Repo ist auch der aktuellste proprietäre ATI-Grafiktreiber enthalten. Diesen kann man mit
sudo aptitude install fglrx
installieren. Da ich keine ATI Grafikkarte besitze, konnte ich den Effekt auf Starcraft II nicht testen. Der aktuelle Nvidia-Treiber bringt bei mir ca. 3-5 Frames mehr bei gleichen Einstellungen. (Hey, immerhin 😉 )
Ein paar Zahlen zur Framerate bei verschiedenen Einstellungen
Getestet mit dem oben angegebenen Computer und Nvidia 256.44 Treiber mit dem Szenario "Taktische Befehle". Die Sicht war immer statisch auf die eigenen Einheiten am Anfang zentriert. Die Frames lassen sich mit STRG+ALT+F anzeigen. Einstellung der Grafikeinstellung auf
- Ultra: 20 fps
- Hoch: 28 fps
- Mittel: 30 fps
- niedrig: 55 fps
- alles mittel und shader auf niedrig: 53 fps
Ich spiele zur Zeit mit Grafikeinstellungen auf "Hoch" im Single-Player Modus und komme damit ohne Probleme zurecht. Für Multiplayer könnte ein Wechsel zu niedrig Sinn machen. Die meisten Frames gewinnt man durch die Option Shader auf "niedrig" zu setzen.
Weitere Performance Tweaks
Hierzu muss die Wine-Registry mit wine regedit
modifiziert werden.
Mit dem RegEditor zum Schlüssel HKEY_CURRENT_USER/Software/Wine/Direct3D navigieren und falls er nicht existieren sollte einfach anlegen.
Dann Rechtsklick auf Direct3D "Neu" auswählen und danach jeweils die unten stehenden Schlüssel/Werte-Paare hinzufügen. Ich würde das Spiel aber zuerst einmal ohne diese Veränderung ausprobieren und je nach dem wie SC2 läuft die Registry ändern.
Schlüssel | Wert |
DirectDrawRenderer | opengl |
Multisampling | disabled |
OffScreenRenderingMode | pbuffer |
UseGLSL | disabled |
VertexShaderMode | hardware |
VideoMemorySize | 1024 (Der Wert sollte der Größe eures RAM-Speichers für die Grafikkarte entsprechen) |
Mögliche Probleme
Allgemein
Es gibt einige besondere Probleme, die von Wine noch nicht gelöst worden sind. Manche Spiele und Windowsprogramme fordern spezielle Laufzeitbibliotheken an, die noch nicht vollständig als Freie Software implementiert worden sind. Das Programm winetricks, welches sich einzeln über apt installieren lässt oder im aktuellen Ubuntu wine1.3 Paket integriert worden ist, lädt diese Bibliotheken herunter und installiert sie im versteckten wine Ordner. Grundsätzlich sollte jedoch vermieden werden diese Laufzeitbibliotheken zu installieren, da sie unter Umständen auch Funktionen von Wine einschränken können. Die Lösung mit winetricks für ein Patchproblem von StarcraftII hat Andreas in den Kommentaren beschrieben. Danke!
Crash bei den Zeratul-Missionen
Bei mir trat folgendes Problem später auf: Beim Klick auf den grünen Kristall im Labor, mit dem sich die Zeratul-Missionen spielen lassen, stürzte das Spiel wiederholbar ab. Die Lösung ist mit Winetricks zwei Laufzeitbibliotheken nachzuinstallieren.
winetricks corefonts
winetricks vcrun2005
Soundprobleme
In der Wine-Datenbank zu Starcraft 2 wurde bei Soundproblemen vorgeschlagen eine bestimmte Windows-Bibliothek namens mmdevapi zu deaktivieren. In der Beta gab es scheinbar erst Sound, wenn dies geschehen war. Bei meiner Installation musste diese Einstellung nicht gemacht werden. Im Gegenteil kam es deswegen erst zu Soundproblemen bei mir im Spiel. Wer Probleme hat und es probieren möchte, muss erneut in das Wine Konfigurationsmenü gehen und dort den Reiter "Bibliotheken" anklicken. In dem Feld "Neue Überschreibungen für" muss mmdevapi eingetragen und mit Enter bestätigt werden. In der darunter stehenden Liste dann einfach auf mmdevapi klicken, Bearbeiten wählen und "Ausschalten" anklicken.
Kernelprobleme
Manche Nutzer haben davon berichtet, dass Starcraft 2 und Wine mit dem Linuxkernel 2.6.33 und 2.6.34 nicht kompatibel sind. Lösung: 2.6.32 oder 2.6.35 nutzen.
Fehlermeldung bei Verlassen des Spiels
Sollte Wine Windows7 immitieren, kann es vorkommen, dass das Spiel beim Ausloggen mit einer Fehlermeldung abstürzt. Hier hilft dann das Umschalten auf WinXP weiter.
Fazit
Nach den kleinen Installationshürden läuft das Spiel bis auf zwei Dinge einwandfrei. Im Ladebildschirm gibt es ein kurzes knackendes Soundgeräusch und beim Beenden des Spiels gibt es immer eine Fehlermeldung. Der Sound im Spiel ist aber normal. Die Grafikeinstellungen müssen je nach Grafikkarte und Rechner natürlich angepasst werden. Alle Effekte sind auch nur mit einer aktuellen GraKa darstellbar. Unter anderem werden 1024 MB Speicher für die Grafikkarte gefordert, wenn man alle Textureffekte sehen möchte. Aber selbst mit der Geforce 9600 GT läuft das Spiel flüssig und die vielen Videosequenzen lassen sich alle im "Hoch" Modus darstellen. Von mir gibt es daher auch Gold. Hier noch ein paar erste Eindrücke von Starcraft2.
Links
Wine-Anwendungsdatenbank für Starcraft2