Achtung: Das Half-Life Portal übernimmt keinerlei Gewähr dafür,
dass die Angaben richtig sind, zum Ziel führen oder das komplette System zerstören. Valve
unterstützt ausdrücklich keine Linux-Clients und bietet auch keine Hilfe bei etwaigen Problemen
oder Fehlern. Im schlimmsten Falle könnte es sogar sein, dass euer Account gesperrt wird. Wer dieser
Anleitung folgt, handelt auf eigene Gefahr.
Um auch unter den verschiedenen Linux und BSD-Systemen Steam zum Laufen zu bringen, muss man einige
Tricks anwenden. Zwar gibt es die HLDS/SRCDS-Software zum Erstellen von Servern auch für diese
Betriebssysteme, doch der Client ist nur für Windows erhältlich. Insbesondere Spiele, die
auf der Source Engine beruhen scheinen problematisch zu sein, da diese DirectX benötigen. Die
folgende Anleitung sollte zwar alle wichtigen Schritte beinhalten, um z.B. Half-Life² Deathmatch
spielen zu können, doch eine umfassender Guide zum Thema Windows-Programme unter Linux stellt sie
nicht da. Google und Co. sollten daher begleitend zu dieser Anleitung genutzt werden. Übrigens,
die oben stehende Warnung ist zwar ernst gemeint, sollte aber niemanden abschrecken. Es ist nun mal
nur einfach so, dass wir für nichts garantieren können.
Als Beispielsystem haben wir Ubuntu 6.10 installiert und werden daran diese Anleitung festmachen.
Analog dazu sollte es bei allen anderen Distributionen und auch funktionieren. Ebenfalls getestet
wurde es unter FreeBSD, was aber schon etwas länger her ist.
Da die meisten Spiele von Steam 3D-Funktionen der Grafikkarte nutzen, muss man erst einmal
dafür sorgen, dass der verwendete Treiber dies auch unterstützt. Leider verfügen die
offenen Treiber nicht über diese Funktionen oder implementieren nur einen kleinen Teil. Deswegen
greift man am besten auf die closed-source Versionen zurück. Während ATI Linux sehr
stiefmütterlich behandelt, sorgt nVidia eigentlich immer für aktuelle Treiber für
Linux, BSD und Co. Wer also unter einem freien Betriebssystem 3d-Anwendungen nutzen will, der sollte
sich eine Karte von nVidia gönnen. Natürlich geht es auch mit Karten von ATI, doch legt man
sich damit momentan noch eine Hürde zusätzlich in den Weg. Daher gehen wir in dieser
Anleitung nur auf nVidia ein. Unter [6] findet
man die benötigen Treiber und eine Installationsanleitung, wobei man darauf achten sollte das
für seine Karte richtige Paket zu erwischen, da nVidia das Paket inzwischen in eine Legacy-Version
für ältere Karten und eine aktuelle gesplittet hat. Wer Ubuntu nutzt kann sich die Treiber
auch über den Paket-Manager installieren. Dazu setzt man unter System > Administration >
Software-Quellen an alle Quellen einen Haken und installiert dann das Paket nvidia-glx.
Nun muss man noch in der Konfigurationsdatei den neuen Treiber aktivieren. Deshalb öffnet man ein
Terminal und gibt sudo gedit /etc/X11/xorg.conf (je nach X-Server heißt diese Datei
eventuell anders) ein. Im erscheinenden Editor geht man zu Section "Device" und ändert
den Driver von "nv" zu "nivida". Danach speichert man und schließt
den Editor. Beim nächsten Start sollte man kurz vor dem Anmeldebildschirm das nVidia-Logo sehen,
woran man erkennt, dass die neuen Treiber korrekt funktionieren.
Als nächstes muss man den Windows-Emulator WINE installieren, der es einem erlaubt, Win32-Anwendungen
auszuführen. Man sollte darauf achten, dass man immer die aktuellste Version installiert, weswegen
man unter Ubuntu 6.10, Codename Edgy Eft, erst einmal eine neue Quelle mit
sudo chmod 777 /etc/apt/sources.list && echo 'deb http://wine.budgetdedicated.com/apt edgy main' >>
/etc/apt/sources.list && sudo chmod 644 /etc/apt/sources.list
hinzufügt. Danach installiert man WINE und die Fonts von Microsoft entweder über Synaptic
oder mittels sudo apt-get update und sudo apt-get install wine libwine msttcorefonts.
Danach lässt man WINE sich mit wine --c einrichten und startet das Konfigurationstool
winecfg. Im erscheinenden Dialog stellt man unter Grafik ein, dass man einen eigenen Desktop
für WINE-Anwendungen haben möchten. Die Größe sollte dabei natürlich nicht
größer sein, als der normaler X-Desktop. Man kann ruhig die voreingestellten 640x480 nehmen,
die Spiele werden nachher natürlich im Vollbild und mit der der im Spiel bzw. in X eingestellten
Auflösung laufen. Die Änderungen übernimmt man natürlich und beendet das Programm.
Nun muss man nur noch dafür sorgen, dass Steam und die Spiele richtig laufen. Dazu lädt man
sich die SteamInstaller.exe von [7] herunter (nicht
das HLDSUpdateTool!) und speichert es unter /home/BENUTZERNAME/.wine/drive_c/ ab. Zudem kopiert
man die tahoma.ttf - beispielsweise von [1]
- nach /home/BENUTZERNAME/.wine/drive_c/windows/fonts/. Jetzt wechselt man in der Konsole in
den Ordner, wo man den Installer abgelegt hat und gibt wine SteamInstaller.exe ein. Man klickt
sich durch den Dialog und bestätigt auch eine Nachfrage nach einem mozilla/gecko-plugin
mit ja, falls diese überhaupt auftaucht. Entweder beendet sich das Programm automatisch oder man
muss es ggf. mit Strg+C selbst abbrechen. Vorsicht: Es kann mit unter sehr lange dauern, bis das
Programm sich beendet.
Danach wechselt man in den Pfad in den man Steam installiert hat, beispielsweise
/home/BENUTZERNAME/.wine/drive_c/Programme/Steam/ und startet Steam mit wine steam.exe.
Steam sollte sich nun aktualisieren, was ebenfalls sehr lange dauern kann. Es kann auch vorkommen, dass
sich Steam einfach beendet, weil es keinen Kontakt zu den Steamservern bekommen konnte. Hier heißt
es Geduld bewahren und einfach mehrfach probieren. Keine Sorge, später aktualisiert sich Steam um
einiges schneller. Hat sich Steam aktualisiert startet mit etwas Verzögerung die eigentliche
Steam-Oberfläche. Hier gibt man seinen Benutzernamen und sein Passwort ein und aktiviert die
Option, dass sich Steam beides merken soll. Das ist wichtig, um unnötige Wartezeiten zu vermeiden.
Hat man sich angemeldet, beendet man Steam. Man ruft nochmals kurz winecfg auf, und deaktiviert den
eigenen Desktop für Win32-Anwendungen wieder. Außerdem sollte man im Reiter Audio
sicherstellen, dass dort das OSS Open Sound System und nicht das ALSA-System
ausgewählt ist, da es hiermit unter Umständen zu Problemen kommen kann.
Nun kann man Steam wie oben beschrieben starten, seine Spiele herunterladen und natürlich auch spielen. Sowohl Spiele die auf der Gold Source Engine beruhen - also Half-Life 1 und Co. - als auch Source Engine Spiele laufen, so weit wir es getestet haben, unter WINE. Wie es mit Spielen aussieht, die nicht von Valve direkt kommen, können wir nicht beurteilen. Die Performance unter OpenGL ist dabei sehr gut, wohingegen bei DirectX-Spielen mit Einbußen zu rechnen ist. Leider ist WINE noch keine vollständige Implementierung der Win32-API und gerade die DirectX-Einbindung braucht noch etwas arbeitet. Vor allem für diejenigen, die keine Hardcore-Spieler sind, aber unter den freien Betriebssystemen trotzdem die neuste Episode aus dem Half-Life Universum spielen wollen oder ab und an ein paar Runden Half-Life 2: Deathmatch oder Counter-Strike: Source und dabei nicht auf FPS jenseits der Hunderter Marke angewiesen sind, sei ein Blick auf WINE ans Herz gelegt. Profispieler und Grafik-Fetischisten werden aber damit nicht auf ihre Kosten kommen und sollten bei Windows bleiben.
Update:
Mit dem großen Winter-Update im Januar 2007 hat sich einiges an Steam getan, wehalb wir uns
entschlossen habe zu testen, ob diese Anleitung weiterhin funktioniert. Bisher sind uns keine
Probleme aufgefallen. Nachstehend hierzu einige Bilder:
Tipps und Tricks:
- [A] Am besten sollte man Steam mit WINEDEBUG="-all" wine steam.exe starten. Dies führt zur verbesserter Leistung, da keine Fehlerprotokollierung vorgenommen wird.
- [B] Man darf Steam NIE minimieren. Da es bei dem Versuch sich in die nicht vorhandene Windows-Taskleiste einzutragen einfach absäuft. Stattdessen die einzelnen Fenster mit dem Kreuz schließen, da Steam im Hintergrund weiterläuft.
- [C] Das Spielmenü von Steam ist immer im Vordergrund, auch wenn man ein Spiel gestartet hat. Wen das stört, der kann aus dem Spiel raus wechseln (je nach Window Manager) und das Menü schließen oder es kurz nach dem Starten schon beenden.
- [D] Sollte Steam beim Aktualisieren lange an der 0%-Stelle hängen bleiben, so ist das normal. Manche Spieler berichten sogar, dass es bis zu zwei Stunden an dieser Stelle blieb, bevor es innerhalb von Sekunden auf 100% sprang. Wir empfehlen jedoch in diesem Fall Steam zu beenden und es neu zu starten und diesen Schritt solange zu wiederholen, bis es von Anfang an sich aktualisiert.
- [E] Sollte Steam beim Aktualisieren bei 26% stehen bleiben, muss man Steam beenden und die winecfg aufrufen. Dort aktiviert man, wie oben beschrieben, den eigenen Desktop für Win32-Anwendungen. Danach muss man Steam neustarten.
- [F] Spiele der Gold Source Engine sollte man grundsätzlich mit dem OpenGL-Renderer spielen, dazu wählt man aus dem Kontextmenu des jeweiligen Spiels den Punkt Properties aus und gibt dann unter Set Launch Options -gl ein. Es ist generell ratsam, hier einige Angaben im Vorfeld zu definieren, beispielsweise -dev -console -gl -w 1024 -h 768.
- [G] Wenn bei einem Source Engine Spiel die Grafik nicht dem entspricht, was man von Windows gewohnt ist, sollte man nicht enttäuscht sein. Große Teile von DirectX sind noch nicht implementiert und fehlen daher, insbesondere in Sachen Shader hapert es unter DirectX9 noch. Man kann auch versuchen auf DirectX8 zu spielen. Hier fehlen zwar auch Effekte, aber das Spiel läuft schneller und die Shader-Unterstützung ist in meinen Augen etwas besser.
- [H] Bei großen Performance-Engpässen unter Source Engine Spielen sollte man - so hart es auch sein mag - lieber die Grafik etwas zurückstellen. Mit der Startoption -dxlevel XX lassen sich die verschiedenen DirectX-Renderpfade ansprechen, siehe dazu [5].
- [I] Wir weisen nochmal darauf hin, dass der ALSA-Support unter WINE zumindest bei Steam noch nicht funktioniert.
- [F] Im Mehrspielermodus kann es vereinzelt zu nicht erklärbaren Abstürtzen oder Verbindungsproblemen kommen, insbesondere wenn man den DX9-Pfad nutzt. Im DX81-Pfad funktionierte bei mir alles ohne Probleme.
Quellen:
|