Linux-Games Einstellungen


Optimiert für mein System:

  • Betriebssystem: Nobara
  • KDE, Wayland
  • Prozessor: AMD Ryzen 7 9700X
  • Ram: 32 GiB
  • Grafikkarte 1: AMD Radeon RX 7800 XT
  • Board: MSI MS-7E24
  • Auflösung Monitor: 2560 x 1440

Steam, Vorarbeit:

  • „Steam“-„Einstellungen“-„Kompatibilität“ legt das Kompatibilitätswerkzeug fest, welches erst einmal für alle installierten Spiele verwendet wird
  • Wenn ich nun unter „Spiel“-„Verwalten“-„Eigenschaften“-„Kompatibilität“ einen separaten Modus aktiviere, wird dieser für das jeweilige Spiel priorisiert! Die allgemeine Steam-Einstellung gilt dann für dieses eine Spiel NICHT!

Tipp: Immer erst die Einstellungen verwenden, welche die Distributionen vorgeben. Meist passt das schon so. Bei CachyOS ändere ich nichts, bei allen anderen Systemen verwende ich Proton-GE, was allerdings auf einigen Systemen erst installiert werden muss.


Shader Pre Caching:

Normalerweise sollte der Shader-Cache in Steam immer aktiviert sein! Es sei denn, man optimiert die Shader-Verwaltung in Linux separat – dann ist es nicht sinnvoll, den Steam-Shader-Cache gleichzeitig zu aktivieren. Folgendes erledige ich, da meine AMD-Grafikkarte das bestens unterstützt:

Erhöhung der maximalen Shader-Cache-Größe.

Folgendes einfügen (bei Verwendung einer AMD-Grafikkarte):

sudo nano /etc/environment

Folgendes einfügen (bei Verwendung einer AMD-Grafikkarte):

# Erzwingt die RADV-Vulkan-Implementierung
AMD_VULKAN_ICD=RADV

# Erhöht die Shader-Cache-Größe von AMD auf 12 GB
MESA_SHADER_CACHE_MAX_SIZE=12G

–> Falls doch mal eine Nvidia-Grafikkarte verwendet wird, Eintrag ändern:

# Aktiviert den Shader-Cache
__GL_SHADER_DISK_CACHE=1

# Setzt das Limit für den Shader-Cache (Angabe in BYTES!)
# 12 GB wären ca. 12884901888 Bytes
__GL_SHADER_DISK_CACHE_SKIP_CLEANUP=1
__GL_SHADER_DISK_CACHE_SIZE=12884901888

Zur Info: Den Steam-Shader-Cache kann man manuell löschen, falls nötig.

Im Linux-Terminal:

Bei einer nativen Steam-Installtion:

(mein Spiele-Verzeichnis liegt auf einer weiteren NVMe)

rm -rf /mnt/extssd1/SteamLibrary/steamapps/shadercache/*

Oder bei Verwendung von Steam-Flatpak:

rm -rf ~/.var/app/com.valvesoftware.Steam/.steam/steam/steamapps/shadercache/*

Und nun das Wichtigste! In Steam – Shader Pre Caching AUS!


Only Flatpak – – Ext. Mountverzeichnis für Spiele wird im Steam nicht erkannt? (Steam über Flatpak installiert):

Die Symlink-Methode ist am zuverlässigsten, weil Flatpak-Steam dann denkt, die Bibliothek liegt im Home-Verzeichnis und alle Spiele werden sofort erkannt, ohne Dateien zu kopieren oder libraryfolders.vdf manuell anzupassen.

Mein Spieleverzeichnis liegt auf:

/mnt/extssd1/SteamLibrary/steamapps

Folgende Befehle setze ich nun:

mkdir -p ~/SteamLibrary
ln -s /mnt/extssd1/SteamLibrary/steamapps ~/SteamLibrary/steamapps

Dann Steam neu starten und den Bibliotheksordner /home/SteamLibrary hinzufügen.


GE-Proton aktivieren (—> NICHT bei CachyOS!):

Einige Linux-Distibutionen haben ProtonPlus schon installiert. Da ist folgendes nicht notwendig.

Steam beenden. Anschließend folgenden Befehl für die Installation eingeben (Flatpack muss installiert sein):

flatpak install flathub net.davidotek.pupgui2

Wenn installiert, starten:

flatpak run net.davidotek.pupgui2
  • Neues hinzufügen – fertig


Satisfactory

Bisher das beste Spielerlebnis!!! Ich glaube, ein besseres Grafikerlebnis kann ich nicht herausholen.

Konfiguration der Erleuchtung – empfohlen für die Radeon RX 7800 XT In diesen heiligen Einstellungen werfe ich willentlich ein paar Frames dem Vulkan zum Fraß vor, um im Gegenzug die reinste Form grafischer Herrlichkeit zu beschwören. Denn wer braucht schon 300 FPS, wenn man jedes Pixel in 2K tränenklar bewundern kann? Die Radeon RX 7800 XT – ein Biest mit 16 GB VRAM und mehr Shadern als so mancher Sci-Fi-Film Frames – wird in symbiotischer Einheit mit dem Ryzen 7 9700X entfesselt. Gemeinsam – unterstützt von 32 GB DDR5-RAM, der schneller lädt als du „apt update“ tippen kannst – bilden sie das Triumvirat der Linux-Grafikdominanz. Und das Beste? Kein Windows weit und breit. Nur Wayland. Nur Performance. Nur Style. Hier regiert keine Registry, hier sprechen nur Frames – klar, stabil, herrlich. Linux. AMD. Und ich mittendrin.

Nachtrag: Bei Verwendung eines 4K-Monitor würde das schon wieder anders aussehen! Das hier bezieht sich explizit auf 2K! (WQHD)

  • FPS: 85+ (schwankend, aber ok)
  • In Steam (Spiel-> Eigenschaften):
    • Kompatiblität erzwingen: AUS
  • Spieleinstellung – Video:
  • Auflösung: 2560 x 1440, Fenster-Vollbild
  • Vollbild: Fenster-Vollbild
  • Grafik-API: Vulkan [Experimentell] (Forced)
  • Maximale FPS: 120
    • Hochskalierungsmethode: TSR
    • Frame-Generierung: –
    • Hochskalierung: 100
    • VSync: AUS
    • Aktiviere LOD Dithering: AN
    • Kontaktschatten: AN (um Ressourcen zu schonen – Aus)
    • Globale Beleuchtung: Mittel
    • Lichtstimmung: Stimmungsvoll Hell

Der Rest ist weitgehend auf Ultra gesetzt. CPU: 72°C | GPU: 62°C.

Test, bei Verwendung von FSR: GDK_BACKEND=wayland gamemoderun %command% -vulkan -windowed -Borderless -NOTEXTURESTREAMING

–> Hat die verwendete Grafikkarte weniger als 8GB Grafik-Ram, würde ich „-NOTEXTURESTREAMING“ nicht verwenden!

Folgender Befehl richtet sich nach meinem eigenen Verzeichnis! Ich stelle meine Bidschirmwerte direkt ein.

Optional – – – Im Linux-Terminal, für Satisfactory:

nano "/mnt/extssd1/SteamLibrary/steamapps/compatdata/526870/pfx/drive_c/users/steamuser/AppData/Local/FactoryGame/Saved/Config/Windows/GameUserSettings.ini"

Suche nach folgenden Zeilen und ändern auf meine Bildschirmauflösung:

ResolutionSizeX=2560
ResolutionSizeY=1440
LastUserConfirmedResolutionSizeX=2560
LastUserConfirmedResolutionSizeY=1440
FullscreenMode=1
PreferredFullscreenMode=1

Strg-x, y, Enter

Datei Schreibgeschützt setzen:

chmod 444 "/mnt/extssd1/SteamLibrary/steamapps/compatdata/526870/pfx/drive_c/users/steamuser/AppData/Local/FactoryGame/Saved/Config/Windows/GameUserSettings.ini"

Falls da etwas nicht mehr funktioniert oder ich wieder an die Datei muss, dann Schreibschutz wieder aufheben:

chmod 644 "/mnt/extssd1/SteamLibrary/steamapps/compatdata/526870/pfx/drive_c/users/steamuser/AppData/Local/FactoryGame/Saved/Config/Windows/GameUserSettings.ini"

Hogwarts Legacy

Keine Startoption nötig. Proton GE


Return to Moria

Kubuntu STS:

GDK_BACKEND=wayland %command%

Keine Startoption nötig. Proton GE. Allerdings – Im Spiel:

  • Max. Bildwiederholrate: 60FPS
  • Grafikqualität: Hoch
  • AMD FSR: AUS! (Mit FSR habe ich kleinere Ruckler)

CachyOS:

Keine Startoption nötig. Proton-cachyos (native package). Im Spiel:

  • Max. Bildwiederholrate: AUS (hier habe ich ca. 130FPS)
  • Grafikqualität: Episch
  • AMD FSR: AUS! (Qualität)

Green Hell:

Keine Startoption nötig. Proton GE.

GDK_BACKEND=wayland %command%

Icarus:

Normalerweise läuft Icarus bei mir ohne zusätzliche Startbefehle. Auf Bazzite hatte ich jedoch das Problem, dass das Spiel beim „Berechnen der Geometriedaten“ in einer Endlosschleife hängen blieb. In diesem Fall hat mir folgender Startbefehl geholfen:

GDK_BACKEND=wayland DXVK_ASYNC=1 %command%

Dieser Befehl aktiviert asynchrones Shader-Caching – seitdem startet das Spiel auf Bazzite ohne Hänger.

Unter CachyOS verwende ich:

GDK_BACKEND=wayland AMD_VULKAN_ICD=RADV RADV_PERFTEST=nggc DXVK_ASYNC=1 gamemoderun %command%

Grafikeinstellungen im Spiel (WQHD):

  • DX 11
  • VSYNC: AUS
  • Bildwiederholrate: 144
  • Sichtweite: Episch
  • Nachbearbeitung: Episch
  • Schatten: Hoch
  • Texturen: Episch
  • Blattwerk: Hoch
  • Shader: Episch
  • Volumetrische Wolken: AN
  • AMD Fidelityfx:
    • FSR-Modus: Qualität (sehr gut) oder Ultra-Qualität (noch besser) oder komplett aus (am Besten)
    • FSR-Schärfe: 0,95

Battle.net:

Vorab für Lutris: Rechte auf ext. Datenträgern vergeben

Falls ein Lutris-Game nicht auf ext. Datenträger funktioniert, liegt es meist an den dort vergebenen Rechten. Folgendes führe ich auf meinem System aus:

sudo chown -R $USER:$USER /mnt/extssd1
sudo chmod -R 755 /mnt/extssd1

Erstellt den Prefix-Ordner auf der SSD, falls er noch fehlt

mkdir -p /mnt/extssd1/wow-prefix

Sicherstellen, dass die Rechte für den neuen Ordner passen

sudo chown -R $USER:$USER /mnt/extssd1/wow-prefix
chmod -R 755 /mnt/extssd1/wow-prefix

Lutris den Pfad bekannt machen

Original: /home/knilix/Games/battlenet/drive_c/Program Files (x86)/Battle.net/Battle.net Launcher.exe

  1. Öffne Lutris.
  2. Rechtsklick auf mein Battle-Net-Icon -> Konfigurieren.
  3. Dann der Reiter Spieleeinstellungen.
  4. Bei Ausführbares:/mnt/extssd1/WeitereGames/battlenet/drive_c/Program Files (x86)/Battle.net/Battle.net Launcher.exe
  5. Wichtig – Wine prefix: /mnt/extssd1/WeitereGames/battlenet

Unter Bazzite:

cd ~/.local/share/lutris/runners/wine
wget https://github.com/GloriousEggroll/proton-ge-custom/releases/download/GE-Proton10-22/GE-Proton10-22.tar.gz
tar -xf GE-Proton10-22.tar.gz
rm GE-Proton10-22.tar.gz
  • Lutris starten → Spiel → Konfigurieren → Starter→ Wine-Version → GE‑Proton10‑22 auswählen (Latest funktioniert auch).

Auf Lutris.net nach battle.net suchen, Doppelklick darauf und „Install“ klicken. Lutris öffnen? Ja. Installieren klicken und ich kann den Pfad angeben, wohin ich das installiert haben möchte (eine externe Angabe wurde mit einem Warnhinweis beanschlagt – ich verwendete vorerst das Original-Verzeichnis). Wenn fertig, klicke ich auf „Fortfahren“ und wenn fertig auf „Installieren“.

Nach der Installation NICHT im Battle.net einloggen! Das Battle.net-Fenster schließen! und warten. Der Installationsprozess wird nach einer gewissen Zeit normal beendet. Wenn angezeigt wird, dass es beendet wurde, dann kann ich starten.

Nun kann Battle-Net über Lutris gestartet werden. Aber ich kann meine Spiele nicht zuweisen, die auf einer externen SSD liegen und gemounted wurden. Also habe ich kurzerhand meine Battle-Net-Spiele zu /home/User/Games verlegt. Das waren nur WoW und Starcraft2. Eine Sicherungskopie verbleibt immer auf meiner ext. SSD und wird aller paar Wochen per Script aktualisiert.

Der original-Pfad:

/home/user/Games/battlenet/drive_c/Program Files (x86)/

Demzufolge für WoW:

/home/user/Games/battlenet/drive_c/Program Files (x86)/World of Warcraft/

Und Starcraft2:

/home/user/Games/battlenet/drive_c/Program Files (x86)/StarCraft II/


Prozess Hart beenden, falls mal nichts mehr geht:

sudo pkill -f Battle.net

Der Prozess wird Hart beendet.


Curseforge App:

Download und mit „Gear Lever“ öffnen.

Bei CachyOS muss zusätzlich „Fuse2“ installiert werden:

sudo pacman -S fuse2

TukUi Client:

Client herunterladen, entpacken und öffnen.

Mein Pfad für WoW:

/home/user/Games/battlenet/drive_c/Program Files (x86)/World of Warcraft/

Warthunder (nicht Steam)

Diese Einstellungen für die AMD Radeon RX 7800 XT!

Maximale Grafik, bei 60 – 120 FPS:

Zuerst die Mesa-Treiber aktualisieren:

(unter Nobara):

sudo dnf update --refresh

(unter Kubuntu):

sudo add-apt-repository ppa:kisak/kisak-mesa -y
sudo apt update
sudo apt upgrade

Dann die *.config bearbeiten:

nano ~/.warthunder/config.blk

bei mir:

nano /mnt/extssd1/WeitereGames/WarThunder/config.blk

Folgende ändern! Ich ersetze de ganzen Block „grafics“:

graphics{
texquality:t="ultrahigh"
shadowQuality:t="ultrahigh"
waterEffectsQuality:t="ultrahigh"
compatibilityShadowQuality:t="medium"
anisotropy:i=16
ssaa:r=2
contactShadowsQuality:i=2
lenseFlares:b=yes
waterQuality:t="ultrahigh"
giQuality:t="high"
displacementQuality:i=2
tireTracksQuality:i=2
lastClipSize:i=8192
landquality:i=3
clipmapScale:r=1
rendinstDistMul:r=1.5
fxDensityMul:r=1.0
fxTarget:t="ultrahigh"
grassRadiusMul:r=1.5
backgroundScale:r=2
physicsQuality:i=4
advancedShore:b=yes
panoramaResolution:i=3840
mirrorQuality:i=10
cloudsQuality:i=2
skyQuality:i=2
riGpuObjects:b=yes
enableBVH:b=no
RTAOQuality:t="off"
RTRQuality:t="off"
RTSMQuality:t="off"
RTRWaterRes:t="full"
RTRRes:t="full"
RTRTranslucent:t="off"
motionBlurStrength:i=0
bvhRiGenRange:i=3000
enableRTSM:t="off"
bvhMode:t="off"
RTRWater:b=no
motionBlurCancelCamera:b=yes
PTGIQuality:t="off"
fxaa:b=yes
taa:b=yes
VSync:b=no
fullscreen:b=yes
resolution:t="2560x1440"
force_vulkan:b=yes
}

Speichern

Soundprobleme:

pactl move-sink-input 220 $(pactl get-default-sink)
pactl set-sink-input-mute 220 0

(220 ist mein Headset)

Neu – ein Start-Script (optimiert):

cd /mnt/extssd1/WeitereGames/WarThunder && nano start_warthunder.sh

Folgendes trage ich dort ein(eigene Pfade und eigene Werte beachten):

#!/usr/bin/env bash
# Wrapper für War Thunder (native Linux, CachyOS)
# Optimiert config.blk und startet den Launcher

GAME_DIR="/mnt/extssd1/WeitereGames/WarThunder"
CONFIG="$GAME_DIR/config.blk"

# 1️⃣ Config anpassen
if [ -f "$CONFIG" ]; then
sed -i \
-e 's/\(fpsLimit:i=\)[0-9]*/\10/' \
-e 's/\(textureQuality:t="\)[^"]*/\1high/' \
-e 's/\(terrainQuality:t="\)[^"]*/\1medium/' \
-e 's/\(grassDensity:t="\)[^"]*/\1very_low/' \
-e 's/\(shadowQuality:t="\)[^"]*/\1low/' \
-e 's/\(compatibilityShadowQuality:t="\)[^"]*/\1low/' \
-e 's/\(vsync:b=\)[a-z]*/\1no/' \
-e 's/\(ssaa:i=\)[0-9]*/\10/' \
-e 's/\(taa:b=\)[a-z]*/\1no/' \
-e 's/\(anisotropy:i=\)[0-9]*/\18/' \
-e 's/\(contactShadowsQuality:i=\)[0-9]*/\10/' \
-e 's/\(lenseFlares:b=\)[a-z]*/\1no/' \
-e 's/\(motionBlurStrength:i=\)[0-9]*/\10/' \
-e 's/\(motionBlurCancelCamera:b=\)[a-z]*/\1yes/' \
-e 's/\(RTAOQuality:t="\)[^"]*/\1off/' \
-e 's/\(RTRQuality:t="\)[^"]*/\1off/' \
-e 's/\(RTSMQuality:t="\)[^"]*/\1off/' \
-e 's/\(RTRWaterRes:t="\)[^"]*/\1low/' \
-e 's/\(RTRRes:t="\)[^"]*/\1low/' \
-e 's/\(RTRTranslucent:t="\)[^"]*/\1off/' \
-e 's/\(enableRTSM:b=\)[a-z]*/\1no/' \
-e 's/\(bvhMode:t="\)[^"]*/\1off/' \
-e 's/\(RTRWater:b=\)[a-z]*/\1no/' \
-e 's/\(fxDensityMul:f=\)[0-9.]\+/\10.5/' \
-e 's/\(grassRadiusMul:f=\)[0-9.]\+/\10.5/' \
-e 's/\(landquality:i=\)[0-9]*/\12/' \
-e 's/\(resolution:t="\)[^"]*/\12560x1440/' \
-e 's/\(fullscreen:b=\)[a-z]*/\1yes/' \
-e 's/\(force_vulkan:b=\)[a-z]*/\1yes/' \
"$CONFIG"
echo "Config angepasst ✅"
else
echo "config.blk nicht gefunden! Bitte einmal War Thunder starten."
fi

# 2️⃣ Launcher starten
cd "$GAME_DIR"
./launcher &

Strg-x, y, Enter

cd /mnt/extssd1/WeitereGames/WarThunder && chmod +x start_warthunder.sh
  • textureQuality = high → max FPS, sieht noch gut aus.
  • terrainQuality = medium → flüssigeres Spiel.
  • grassDensity = verylow → fast kein Gras mehr, Vorteil auf Maps.
  • Schatten, Wasser = high → optisch ansprechend, aber FPS-schonender als ultrahigh.
  • Anisotropy = 8 → detailreich, aber effizienter als 16.
  • MotionBlur = 0, VSync = off → FPS maximal stabil.
  • FXAA = true → Kantenglättung, keine FPS-Kosten wie TAA.

Aus der Konsole starten:

cd /mnt/extssd1/WeitereGames/WarThunder && ./start_warthunder.sh

Erstelle eine Website wie diese mit WordPress.com
Jetzt starten