常见游戏问题¶
Linux 原生版本与 Windows 版本的区别¶
某些 Linux 原生移植版可能会缺少部分功能,或者性能不如通过 Proton 运行的 Windows 版本。不过在某些场景下,只使用原生版本可能是你唯一可行的选择,甚至反而更合适。
如果某个 Linux 原生游戏无法启动,可以进入 游戏属性,选择 Compatibility(兼容性),勾选 Force the use of a specific Steam Play compatibility tool(强制使用特定 Steam Play 兼容工具),然后改为使用 Legacy Runtime 兼容层。
Denuvo 防篡改 DRM 导致游戏被锁定¶
使用 Denuvo Anti-Tamper DRM 的游戏,可能会把切换 Proton 版本视为“在不同硬件上重新激活游戏”。如果你在 24 小时内切换 Proton 版本超过 5 次,就有可能被游戏锁定,暂时无法进入。
Source 1 引擎的音频与自定义内容问题¶
Note
这只适用于运行在 Source 引擎上的特定游戏。
Attention
在你真的遇到音频问题,或下文提到的 Left 4 Dead 2 特定情况之前,不要提前应用这个变通方案。
如果 Source 游戏中出现语音缺失、或者自定义内容无法加载,可能是因为 SELinux 阻止了 MP3 解码和其他中间件运行,原因在于它们会执行堆内存。
这个问题也已经被确认会影响 Left 4 Dead 2 中加入或托管自定义地图。
音频 / 自定义内容问题的修复方法:¶
Warning
SELinux 配置属于高级用户操作。如果处理不当,可能破坏系统中的其他组件,并削弱设备安全性。
打开宿主系统终端,并在自行承担风险的前提下输入以下 4 条命令:
重启设备后,再测试 Source 游戏是否仍然存在问题。
撤销这项修改:¶
禁用或移除该模块。
禁用这项修改:¶
移除并删除这项修改:¶
如果你还想删除对应的 .pp 文件,它通常位于 /root 目录下。
Steam 游戏无法启动¶
Steam 游戏无法启动,可能有很多不同原因。
收集 Steam 日志文件:¶
如果你在 Steam 中遇到游戏无法启动的问题:
-
打开游戏属性,并加入以下启动选项:
PROTON_LOG=1 %command% -
启动游戏
随后你的 Home 目录下应当会出现一个以该游戏应用 ID 命名的日志文件。
NTFS 格式磁盘的权限问题:¶
请确认你的游戏 不在 NTFS(Windows)分区上。更多信息见这里。
多用户环境下的 WINE 特殊问题:¶
Note
AeroCore OS 的掌机 / 游戏模式镜像不支持多个 Linux 用户账户,因此这里的内容只适用于 AeroCore OS 的桌面版。
有时 Steam 游戏会在第二个用户账户下完全无法启动,这通常与 WINE prefix 文件的所有权有关。你可能会在第二个用户的 ~/.local/share/Steam/logs/console-linux.txt 中看到如下错误:
解决方法是为该用户单独创建一个 Steam 库目录,用来保存 Proton 的 prefix 数据;对于其他目录(例如公共游戏数据),则使用符号链接(symlink)进行共享。
USER2@bazzite: /mnt/ExtraStuff/USER2SteamLibrary/steamapps$ ls -la
total 32
drwxrwxr-x. 3 USER2 steamplayers 4096 Jan 29 15:19 .
drwxrwsr-x. 3 USER2 steamplayers 4096 Jan 29 16:13 ..
-rwxr-xr-x. 1 USER2 USER2 2287 Jan 29 15:19 appmanifest_377160.acf
lrwxrwxrwx. 1 USER2 USER2 51 Jan 29 15:10 common -> /mnt/ExtraStuff/USER1SteamLibrary/steamapps/common/
drwxr-xr-x. 3 USER2 USER2 4096 Jan 29 15:13 compatdata
lrwxrwxrwx. 1 USER2 USER2 56 Jan 29 15:12 shadercache -> /mnt/ExtraStuff/USER1SteamLibrary/steamapps/shadercache/
lrwxrwxrwx. 1 USER2 USER2 49 Jan 29 15:12 temp
lrwxrwxrwx. 1 USER2 USER2 53 Jan 29 15:12 workshop
同样地,你还需要从各自的库中复制或链接对应的 appmanifest 文件,这样游戏才能在各个 Steam 库中正确显示。