9.6 KiB
HTPC Windows Games — Compat Status
Live status of non-Steam Windows games added to Steam on Bazzite HTPC (bazzite@192.168.1.86). Setup started 2026-05-22.
Working ✅
- Fallout 4
- Vladik Brutal
- Red Alert 3
- Rayman Origins (fixed 2026-05-23 — GE-Proton10-34 +
WINEDLLOVERRIDES=\"d3d9=b\" %command%) - Samurai Gunn (works but gamepad not detected)
- GTA V, Cuphead (assumed; not retested)
Removed from Steam shortcuts ✅
- Human Fall Flat (3928445186) — already in real Steam
- Shovel Knight (2526703384) — already in real Steam
Recently added — not yet tested
| Game | AppID (signed) | AppID (unsigned) | Proton | Path |
|---|---|---|---|---|
| VK GameCenter | -555655402 | 3739311894 | GE-Proton10-34 | /run/media/bazzite/Windows/users/mallexxx/AppData/Local/GameCenter/GameCenter.exe |
| Atomic Heart VK | -475792602 | 3819174694 | GE-Proton10-34 | /run/media/bazzite/Data/gamecenter/atomic heart/AtomicHeart.exe |
Примечание: требуется авторизация в VK Play через лаунчер. VK Play использует mycomgames:// URL-схему. Atomic Heart официально совместим со Steam Deck/Proton (подтверждено VK Play).
Mapped to GE-Proton10-34 but still broken (need further investigation)
These were swapped to GE-Proton in hopes its bundled VC++/d3dcompiler/dotnet/dxvk-async would fix them. Same symptoms as before — GE-Proton may be reusing the existing prefix's wine state. Next: consider deleting pfx/ to force GE-Proton to regenerate cleanly.
| Game | AppID | Symptom | LaunchOpt set |
|---|---|---|---|
| Brawlhalla | 2410005953 | Doesn't start | WINEDLLOVERRIDES=\"msvcp140,vcruntime140=n,b\" |
| Castle Crashers | 3048471472 | "crash, mini dump sent" | WINEDLLOVERRIDES=\"msvcp140,vcruntime140=n,b\" |
| Worms WMD | 3846411911 | Doesn't start | WINEDLLOVERRIDES=\"msvcp140,vcruntime140,d3dcompiler_47=n,b\" |
| Worms World Party | 2401592779 | Doesn't start | WINEDLLOVERRIDES=\"msvcp140,vcruntime140=n,b\" |
| Duck Game | 2926094216 | Won't launch | WINEDLLOVERRIDES=\"msvcp140,vcruntime140=n,b\" |
Moved to Luxtorpeda — need testing
| Game | AppID | Before | After | Status |
|---|---|---|---|---|
| Doom 3 BFG | 3602815006 | GE-Proton10-34 (white screen, audio plays) | Luxtorpeda → rbdoom-3-bfg (native Linux engine) | LaunchOptions PROTON_USE_WINED3D=1 removed ✅ |
Still broken — fundamental issues
| Game | AppID | Symptom | What's known | What might help |
|---|---|---|---|---|
| Atomic Bomberman / BM95 | 2875360586 | Crash "instruction at 0x0 referenced 0x7" before main window | Win3.1-era PE32 (Windows 4.00 subsystem). Tried: proton_8, registry Version=win98, virtual desktop 640×480, [Services\\WineBus] Map Controllers=0 + Enable SDL=0, LaunchOpt SDL_JOYSTICK_DISABLE=1 |
Run in dedicated 32-bit Wineprefix (WINEARCH=win32); try Wine ≤ 9.x; or DOSBox‑X |
| Discworld Noir | 2361018632 | "Please insert disk III" prompt (in Russian, after Cyrillic fix) | Russian "Zatmenie v2" 2-CD release. 69 missing files copied ✅. Drive D: → cd2 folder as CD-ROM | Try drive D: → cd1; or mount .nrg images |
| Final Fantasy X HD | 2642741094 | Was Japanese, no saves | GameSetting.ini Language=jp → en (copied from Windows) |
Test pending |
| Metal Slug X | 2938712902 | Speed wrong, controls dead | (none) | Neo-Geo emulator config issue, not Wine |
| Metro Exodus | 3594910936 | "Unable to create interface isteamuser" | VC++ runtime copied; LaunchOpt WINEDLLOVERRIDES |
Needs Goldberg steam_api64.dll emulator + steam_appid.txt |
| Split Second | 3871231787 | Green artifacts | LaunchOpt PROTON_USE_WINED3D=1 |
Switch to GE-Proton; or copy d3dx9_*.dll from Windows |
| Super Bomberman R2 | 3340354231 | Gamepad not detected | (none) | Steam Input config issue |
VDF Incident — 2026-05-27
Что произошло
При попытке добавить VK GameCenter и Atomic Heart VK в shortcuts.vdf через Python vdf.binary_load/dump на работающем Steam, Steam переписал VDF при старте, создав 110 пустых записей-заглушек. Все бэкапы (bak, bak-launch, bak2-6, clean, timestamped) также оказались пустыми — они были сделаны уже после того как Steam испортил файл.
Как восстановили
Обнаружено что shortcuts.vdf.bak-eagle (23 мая, 50720 байт) содержит 106 живых шорткатов. Проблема с vdf.binary_loads — он ищет ключи с точным регистром: AppName, а не appname.
- Остановлен Steam (
systemctl --user stop gamescope-session-plus@steam.service) - Считан bak-eagle, добавлены записи VK GameCenter (index 106) и Atomic Heart VK (index 107)
- AppID в shortcuts.vdf — signed int32; в config.vdf CompatToolMapping добавлены как unsigned uint32
- После записи обнаружено несоответствие appid — в config.vdf уже были entries с другими appid от предыдущих попыток
- Перегенерация shortcuts.vdf с appid, совпадающими с config.vdf: VK GameCenter =
-555655402, Atomic Heart VK =-475792602 - Удалены дублирующиеся unsigned записи из config.vdf
- Создан бэкап
shortcuts.vdf.whale-restored-2026-05-27
Восстановленный backups
shortcuts.vdf.bak-eagle— 106 entries, чистый, не тронут ✅shortcuts.vdf.whale-restored-2026-05-27— 108 entries (106 старых + VK GameCenter + Atomic Heart VK) ✅
Уроки
- Редактировать shortcuts.vdf ТОЛЬКО при остановленном Steam
- vdf.binary_loads: ключи с точным регистром (
AppName,Exe, а неappname,exe) - signed appid в shortcuts.vdf → unsigned (signed & 0xFFFFFFFF) в CompatToolMapping config.vdf
- Перед добавлением новой пары шорткат+Proton — проверить, нет ли уже CompatToolMapping с нужным appid в config.vdf
- Делать бэкап ДО любых изменений, а не после
Fixes done (filesystem / config / cover-art)
- Cover art swapped: Atomic Bomberman, Discworld Noir, SBR2, FFVI, ALttP, Sunset Riders
- "Captain Commando" Steam shortcut renamed → "Sunset Riders"
CompatToolMappingfor all AppIDs inconfig.vdf:- GE-Proton10-34: Brawlhalla, Castle Crashers, Worms WMD, Worms WP, Duck Game, Rayman Origins, VK GameCenter, Atomic Heart VK, insaneramzes Atomic Heart
- Proton 8.0: Atomic Bomberman, Discworld Noir, Metal Slug X, Soldat, Red Alert 3, Split Second
- Luxtorpeda: Doom 3 BFG
- Proton Experimental: ~24 remaining games
- Doom 3 BFG moved to Luxtorpeda → rbdoom-3-bfg (native Linux engine, 2026-05-27)
- Rayman Legends: Ubisoft Connect copied from Windows partition into prefix + registry
- Discworld Noir fixes (symlink, Cyrillic locale, missing files, drive D:)
- FFX HD:
GameSetting.inireplaced with English+HD version - VC++ runtime DLLs +
d3dcompiler_43/47copied into 6 prefixes from Windows partition - Duck Game prefix: XNA 4.0 framework dir copied from Windows
- Atomic Bomberman prefix:
Version=win98+ virtual desktop 640×480 + WineBus disabled - GE-Proton10-34 installed to
~/.steam/steam/compatibilitytools.d/
Source assets discovered on Windows partition
/run/media/bazzite/Windows/Program Files (x86)/Ubisoft/ubisoft game launcher/(595 MB)/run/media/bazzite/Windows/Windows/System32/andSysWOW64/— VC++ runtime, d3dcompiler, xinput DLLs/run/media/bazzite/Windows/Program Files (x86)/Microsoft XNA/— XNA 4.0 Framework/run/media/bazzite/Windows/Microsoft.NET/Framework64/v4.0.30319/— .NET 4.0/run/media/bazzite/Data/downloads/zatmenie v2 [torrents.ru]/— Discworld Noir source (cd1, cd2, .nrg images)/run/media/bazzite/Windows/Users/mallexxx/documents/square enix/...— FFX gamesetting.ini
Open questions / next steps
- Try deleting
pfx/folders for the still-broken GE-Proton games (Brawlhalla, Castle Crashers, Worms WMD/WP, Duck Game) - Atomic Bomberman: create separate 32-bit Wineprefix outside Proton
- Discworld Noir: try drive D: → cd1 or mount
.nrgimages - Metro Exodus: ask user if OK to use Goldberg Steam emulator
- Atomic Heart VK: test VK Play авторизацию через Proton, при необходимости — protontricks vcrun2019
- Doom 3 BFG: test с Luxtorpeda → rbdoom-3-bfg (должно работать с нативным OpenGL)
Lessons learned / Infra notes
shortcuts.vdfis binary VDF; edit only with Steam closedconfig.vdfis text VDF;CompatToolMappingblock controls per-AppID Proton- Steam reads both vdfs on startup, writes back from in-memory state on exit
protontricks(Flatpak) needsflatpak override --user --filesystem=/var/home/bazzite/.local/share/Steam- Parallel protontricks runs on same Proton version conflict
xvfb-run protontricks <verb>— MS-redist EXE installers hang on invisible button click. Workaround: copy DLLs from Windows partition- For Cyrillic/locale: Proton needs
HOST_LANG/HOST_LC_ALLenv vars - Background jobs that survive SSH disconnect:
systemd-run --user --unit=<name> - GE-Proton install: extract tar.gz into
~/.steam/steam/compatibilitytools.d/ vdf.binary_loadskey names are case-sensitive:AppName, notappname- signed appid in shortcuts.vdf ↔ unsigned in config.vdf CompatToolMapping