Spieleerinnerungen #3

In dieser Episode von Deus ex machina rede ich mit Felix wieder über Spiele, die uns im Gedächtnis geblieben sind und die uns nachhaltig beeinflusst haben. Konkret geht es diesmal um Mindustry, Graveyard Keeper, 7 Days to Die und die X-COM-Serie.

Falls noch nicht geschehen, könnt ihr Deus ex machina in eurem Podcatcher abonnieren oder eine Bewertung auf Apple Podcasts hinterlassen. Daneben ist die Unterstützung über Tone H möglich.

Firmware-Update unter Arch Linux durchführen

Um ein Firmware-Upgrade unter Arch Linux durchzuführen, kann das Werkzeug fwupdmgr genutzt werden. Dazu sollten im ersten Schritt die aktuellen Metadaten bezogen werden:

fwupdmgr refresh

Nachdem dies geschehen ist, können die aktuellen Updates bezogen werden:

fwupdmgr get-updates

Als letzter Schritt steht die Installation der Aktualisierungen über den Befehl:

fwupdmgr update

an. Je nach installierter Aktualisierung kann anschließend ein Neustart notwendig sein.

Onboard-Bluetooth unter ChimeraOS deaktivieren

Unter ChimeraOS, welches auf Arch Linux basiert, ist es möglich das Bluetooth über die Steam Deck-Oberfläche abzuschalten. Problematisch wird dies, wenn nicht das Onboard-Bluetooth, sondern ein externer Bluetooth-Stick genutzt werden soll.

In vielen BIOS- bzw. UEFI-Setups kann das Onboard-Bluetooth über die jeweiligen Einstellungen in diesem deaktiviert werden. Wenn dies nicht der Fall ist, so kann hierfür rfkill genutzt werden. Im ersten Schritt sollten hierzu die vorhandenen Geräte ermittelt werden:

rfkill list

In der Auflistung befinden sich alle erkannten Geräte:

0: hci0: Bluetooth
	Soft blocked: no
	Hard blocked: no
1: hci1: Bluetooth
	Soft blocked: no
	Hard blocked: no
2: phy0: Wireless LAN
	Soft blocked: yes
	Hard blocked: no

In diesem Fall handelt es sich bei hci0 um das Onboard-Bluetooth, während hci1 dem Bluetooth-Stick entspricht. Nun kann das jeweilige Gerät über rfkill deaktiviert werden:

rfkill block 0

Damit ist anschließend nur noch der externe Bluetooth-Stick aktiv. Nun können neue Geräte über den Bluetooth-Stick gekoppelt werden. Nach einem Neustart ist das Gerät nicht mehr blockiert, sodass beide Bluetooth-Geräte wieder aktiv sind.

Um das Gerät auch nach einem Neustart dauerhaft abzuschalten, muss eine Systemd-Unit erstellt werden:

sudo nano /etc/systemd/system/rfkill-block.service

Diese wird nun mit folgendem Inhalt befüllt:

[Unit]
Description=Set rfkill block at startup
After=network.target

[Service]
Type=oneshot
ExecStartPre=/bin/sleep 15
ExecStart=/usr/bin/rfkill block 0

[Install]
WantedBy=multi-user.target

Nachdem die Unit angelegt wurde, muss sie aktiviert werden:

sudo systemctl enable rfkill-block.service

Mit dieser Systemd-Unit wird bei einem Neustart nun das Onboard-Bluetooth abgeschaltet. Unter der Steam Deck-Oberfläche, welche von ChimeraOS genutzt, sollten Bluetooth-Geräte vor dem endgültigen Sperren über rfkill entkoppelt werden, da dies im Anschluss nicht mehr funktioniert. Hierfür muss die Blockade erst wieder aufgelöst werden.

Tastaturlayout im Gamemodus von ChimeraOS einstellen

Wird ChimeraOS genutzt, so wird für die virtuelle Tastatur der Steam-Oberfläche im gewünschten Layout dargestellt. Anders sieht es aus, wenn eine externe Tastatur angeschlossen wird. Hier ist standardmäßig ein QWERTY-Layout eingestellt. Um das Layout für die externe Tastatur einzustellen, muss im ersten Schritt der SSH-Zugriff aktiviert werden. Dazu muss die ChimeraOS-Weboberfläche geöffnet werden:

http://chimeraos.local:8844

Dort kann im Menü unter System ein Public-Key für SSH hinzugefügt werden. Anschließend kann sich mit dem System verbunden werden:

ssh 

Dort muss anschließend die Datei /etc/environment bearbeitet werden:

sudo nano /etc/environment

Das Passwort für den Nutzer gamer ist hierbei ebenfalls gamer. Der Datei wird nun der Wert:

XKB_DEFAULT_LAYOUT=de

hinzugefügt. Damit ist das deutsche Layout für die externe Tastatur im Gamemodus eingestellt.

Probleme mit DirectX unter Proton

Dank dem auf Wine aufbauenden Proton, können unter Linux in Verbindung mit Steam mittlerweile viele Windows-Spiele problemlos gespielt werden. Auf dem Steam Deck funktioniert dies in den meisten Fällen noch besser, da hier die Hardware seitens der Treiber gut unterstützt wird.

Das Steam Deck

Problematisch kann die Unterstützung bei manchen Grafikkarten wie der AMD Radeon 780M sein. So ist es möglich mit ChimeraOS, auch andere PC-Systeme mit dem Steam Deck-System zu benutzen. Bei manchen Spielen wie z.B. Castle Crashers kommt es zu Abstürzen beim Start des Spieles. Andere Spiele liefern in solchen Fällen Fehlermeldungen die auf DirectX 11 als Fehlerquelle bzw. Problem der Inkompatiblität mit der Grafikkarte hinweisen:

DX 11 could not switch resolution

Je nach Spiel können hierbei unterschiedliche Fehlertexte erscheinen:

Failed to create D3D11 device

In der Steam-Oberfläche kann dieses Problem für einige Spiele mit dem zusätzlichen Startparameter:

PROTON_USE_WINED3D=1 %command%

umgangen werden. Dieser kann in den Einstellungen zum jeweiligen Spiel unter dem Punkt Allgemein hinzugefügt werden. Damit wird WINED3D genutzt, welches die Schnittstellenaufrufe zu OpenGL hin übersetzt, während dies standardmäßig gegen die Vulkan-Schnittstelle geschieht.