149 lines
5.4 KiB
Markdown
149 lines
5.4 KiB
Markdown
---
|
||
title: HTPC Bazzite — Proton Compatibility
|
||
created: '2026-05-23'
|
||
updated: '2026-05-23'
|
||
type: tech
|
||
namespace: personal
|
||
tags: [htpc, infra, how-to, pitfalls]
|
||
sources: [family/projects/htpc-windows-games-fix.md]
|
||
confidence: medium
|
||
---
|
||
|
||
# HTPC Bazzite — Windows Game Proton Compatibility
|
||
|
||
Bazzite HTPC at `bazzite@192.168.1.86`. 39 non-Steam Windows games added as
|
||
Steam shortcuts (2026-05-22). Default tool: Proton Experimental; older titles
|
||
on Proton 8.0.
|
||
|
||
## Working Games
|
||
|
||
Fallout 4, Vladik Brutal, Red Alert 3, GTA V, Cuphead. Samurai Gunn works
|
||
but gamepad is not detected.
|
||
|
||
## Common Fix Recipes
|
||
|
||
### "Doesn't start" → try vcrun2019
|
||
For UE3/UE4 and modern Windows titles missing Visual C++ runtime:
|
||
```
|
||
protontricks <AppID> vcrun2019 d3dcompiler_47
|
||
```
|
||
|
||
### XNA 4.0 games (Duck Game, etc.)
|
||
```
|
||
protontricks <AppID> xna40
|
||
```
|
||
|
||
### DOS-era games (e.g. Atomic Bomberman)
|
||
Proton won't work. Use **Steam Tinker Launch** → wrap with DOSBox (dosbox-staging).
|
||
|
||
### Non-Steam copy of a Steam game (e.g. Metro Exodus)
|
||
Game needs `steam_api64.dll` emulator:
|
||
1. Drop in Goldberg `steam_api64.dll`
|
||
2. Add `steam_appid.txt` with the real App ID (e.g. 412020 for Metro Exodus Enhanced)
|
||
|
||
### Cyrillic encoding issues (e.g. Discworld Noir)
|
||
Try in order:
|
||
1. `LANG=ru_RU.UTF-8 %command%` in Steam launch options
|
||
2. `WINEDLLOVERRIDES="gdiplus=n,b"`
|
||
3. Install `ttf-mscorefonts` manually + set Cyrillic codepage in Wine registry
|
||
|
||
### White screen / broken D3D9 (Rayman Origins, Split Second)
|
||
```
|
||
PROTON_USE_WINED3D=1 %command%
|
||
```
|
||
Or try `WINEDLLOVERRIDES="d3d9=b"` or an older Proton version.
|
||
|
||
### Doom 3 BFG Edition (App 208200) — чёрные текстуры, краш после интро
|
||
|
||
Proton Experimental и 7+/8+/9+ ломают текстуры — известный регресс.
|
||
|
||
**Быстрый фикс** — откатить Proton версию:
|
||
ПКМ → Свойства → Совместимость → **Proton 5.13** (самый стабильный)
|
||
|
||
**AMD GPU** — launch option:
|
||
```
|
||
MESA_GL_VERSION_OVERRIDE=4.5COMPAT %command%
|
||
```
|
||
|
||
**Лучший долгосрочный фикс** — заменить движок через Luxtorpeda:
|
||
1. Установить Luxtorpeda (Steam compatibility tool)
|
||
2. Свойства → Совместимость → **Luxtorpeda**
|
||
3. При запуске выбрать **rbdoom-3-bfg**
|
||
|
||
Или flatpak без Proton:
|
||
```
|
||
flatpak install flathub io.github.maddecoder.Classic-RBDOOM-3-BFG
|
||
```
|
||
Указать путь к данным: `~/.local/share/Steam/steamapps/common/DOOM 3 BFG Edition/`
|
||
|
||
## Key Infra Notes
|
||
|
||
- **shortcuts.vdf**: binary VDF at
|
||
`~/.steam/steam/userdata/147839491/config/shortcuts.vdf`
|
||
Edit with Steam closed:
|
||
`systemctl --user stop gamescope-session-plus@steam.service`
|
||
- **CompatToolMapping**: `~/.steam/steam/config/config.vdf` — per-AppID Proton override
|
||
- **Wine prefix**: `~/.local/share/Steam/steamapps/compatdata/<AppID>/pfx/`
|
||
- **protontricks**: Flatpak, needs xvfb + flatpak filesystem permission to
|
||
`~/.local/share/Steam`
|
||
- **Background protontricks** (survives SSH disconnect):
|
||
`systemd-run --user --unit=<name> flatpak run ...`
|
||
|
||
## Added Games (2026-05-23)
|
||
|
||
| Game | AppID (unsigned) | Path | Proton |
|
||
|------|-----------------|------|--------|
|
||
| Atomic Heart | 2234736297 | `/run/media/bazzite/Data/games/atomic.heart.ultimate.edition-insaneramzes/atomicheart.exe` | GE-Proton10-34 |
|
||
|
||
## Broken Status (2026-05-22)
|
||
|
||
| Game | AppID | Issue | Next |
|
||
|------|-------|-------|------|
|
||
| Atomic Bomberman | 2875360586 | DOS-era; 0x0 memory read | DOSBox wrapper |
|
||
| Brawlhalla | 2410005953 | Won't start | Try `Brawlhalla.exe` entry-point |
|
||
| Duck Game | 2926094216 | XNA 4.0 missing | Wait for `xna40` install |
|
||
| Worms W.M.D | 3846411911 | UE3 + anti-tamper | `vcrun2019 + d3dcompiler_47` |
|
||
| Metro Exodus | 3594910936 | steam_api64.dll | Goldberg + appid.txt |
|
||
| Castle Crashers | 3048471472 | Mini-dump crash | `vcrun2019 dotnet48` |
|
||
|
||
## Gamepad Issues
|
||
|
||
- **Samurai Gunn, Super Bomberman R2**: not detected
|
||
→ try Steam Input "Force Off" → "Use Default" cycle
|
||
→ or `SDL_GAMECONTROLLER_ALLOW_STEAM_VIRTUAL_GAMEPAD=1`
|
||
- **Metal Slug X**: wrong speed in Neo-Geo wrapper → check emulator settings
|
||
|
||
## How to Add a New Game
|
||
|
||
**Шаг 0: Остановить Steam**
|
||
```
|
||
systemctl --user stop gamescope-session-plus@steam.service
|
||
```
|
||
|
||
**Portable (нет установщика)** — скопируй папку на HTPC, переходи к шагу 1.
|
||
|
||
**С установщиком** — сначала добавь `setup.exe` как шорткат, запусти →
|
||
после установки замени путь на основной `.exe`.
|
||
|
||
**Шаг 1: Добавить шорткат**
|
||
Steam → *Игры → Добавить не-Steam игру* → выбери `.exe`
|
||
|
||
**Шаг 2: Назначить Proton**
|
||
ПКМ на игре → Свойства → Совместимость → Proton Experimental
|
||
|
||
**Шаг 3: Запустить один раз**
|
||
Wine prefix создастся в:
|
||
`~/.local/share/Steam/steamapps/compatdata/<AppID>/pfx/`
|
||
|
||
## SteamGridDB
|
||
|
||
API key хранится в `~/Documents/steamgriddb_api_key.txt` на HTPC.
|
||
Текущий ключ: `5f0a7cb3366dede2c10860a95795ce60` (обновлён: 2026-05-23, regenerated).
|
||
|
||
Скрипты постеров: `~/scripts/update-artwork.sh` (или аналог).
|
||
Запускать после добавления новых шорткатов.
|
||
|
||
## See Also
|
||
|
||
[[personal-os-architecture]] [[obsidian-mcp-wrapper]]
|