游戏娱乐

🕹️ 人生得意须尽欢,莫使金樽空对月

本小节讨论如何在 archlinux 上 👾 玩游戏以及相关的信息,如游戏手柄、管理外配的 RGB 光效等。

🔖 这一节将会讨论:

目录

ℹ️ 提示

指南中带有 aur 角标的软件代表是在 AURopen in new window(Arch User Repository)中用户自行打包的软件。不在 arch 官方支持范围内,可能会出现各种问题如更新不及时、无法安装、使用出错等。

指南中带有 cn 角标的软件代表是在 archlinuxcnopen in new window(Arch Linux 中文社区仓库)中用户自行打包的软件。不在 arch 官方支持范围内,可能会出现各种问题如更新不及时、无法安装、使用出错等。

指南中带有 EULA 角标的软件代表是 专有软件open in new window。请自行斟酌是否使用。

ℹ️ 提示

阅读本章前请确认已安装好显卡驱动,否则请先参阅章节 显卡驱动 完成显卡驱动的安装。

🚂 Steam

mySteamFriend

🔗 相关链接:

ℹ️ 提示

在步骤 6. 安装基础功能包 中若已安装,则无需重复安装。

Steamopen in new window维尔福公司(Valve)open in new window 推出的著名游戏分发平台。在 Steam 上购买并安装游戏不仅仅是支持正版的做法,更是简化了游玩流程、节省了时间。

2018 年 8 月 22 日,Steam 宣布open in new window 要给 Steam Play 增加一个新组件 Proton,用于支持在 Linux 平台上玩 Windows 的游戏,这个组件是 Wine 的一个分支。经过这些年的发展,体验已经很不错了。关于非 Linux 平台原生的游戏,通过 Steam Play 运行的兼容性列表可在 ProtonDBopen in new window 查询。

  1. 安装 Steamopen in new windowEULA

安装时需要注意选择显卡所对应的 vulkan,i+n 选择 vulkan-intel,amd 选择 amdvlk

sudo pacman -S steam

steam-1

  1. 为了能够安装 Windows 下的游戏,还需要在菜单栏 查看 > 设置 > 侧边栏 Steam Play > 勾选 为所有其他产品启用 Steam Play,在 运行其他产品时使用 中选择 Proton Experimental(最新版本):

    steam-2

    随后即可安装 Windows 平台上的游戏,Steam 会自动下载并安装相关组件:

    plants-vs-zombies

ℹ️ 提示

如果某些游戏启动或者游玩有问题,可以用终端使用 steam 命令启动 Steam 客户端,并观察游戏崩溃时的终端报错。一般都是缺少某种依赖造成的,可以根据具体情况自行安装依赖。

同时,archWiki 也提供了一个 查错页面open in new window,记录了一些游戏问题的解决方式。

ℹ️ 提示

此外还有官方 Proton 的派生版本,如 Proton GEopen in new window。可以支持一些额外的,官方暂不支持或支持不完善的游戏。

ℹ️ 提示

可以在protondbopen in new window查看游戏在 linux 的支持情况(如是否可游玩,运行所需要的基本设置等等)

👾 Lutris

Lutrisopen in new window 是 Linux 上的开源游戏平台。可以使用 Lutris 安装、移除、配置、启动和管理游戏。它可以在一个单一界面中管理的 Linux 游戏、Windows 游戏、仿真控制台游戏和浏览器游戏。它还包含社区编写的安装脚本,使得游戏的安装过程更加简单。

Lutris 支持超过 20 个模拟器并且提供了从七十年代到现在的大多数游戏系统。目前支持的游戏系统包括但不限于:

支持列表
  • Linux 原生
  • Windows
  • Steam(Linux 和 Windows)
  • MS-DOS
  • 街机
  • Amiga 电脑
  • Atari 8 和 16 位计算机和控制器
  • 浏览器(Flash 或者 HTML5 游戏)
  • Commmodore 8 位计算机
  • 基于 SCUMM 的游戏和其它点击式冒险游戏
  • Magnavox Odyssey²、Videopac+
  • Mattel Intellivision
  • NEC PC-Engine Turbographx 16、Supergraphx、PC-FX
  • Nintendo NES、SNES、Game Boy、Game Boy Advance、DS
  • Game Cube 和 Wii
  • Sega Master Sytem、Game Gear、Genesis、Dreamcast
  • SNK Neo Geo、Neo Geo Pocket
  • Sony PlayStation
  • Sony PlayStation 2
  • Sony PSP
  1. 安装 Lutrisopen in new windowcommunity / aur

    sudo pacman -S lutris
    
    yay -S aur/lutris
    
    yay -S lutris-git
    
  2. 参考 🍷 Wine 安装 Wine

  3. 登录 Lutris 官方网站open in new window > 在右上角 🔍 搜索框中搜索你想玩的游戏 > 进入搜索到的游戏页面后,可以看到在相应版本右侧有一个 Install 按钮,点击后即可拉起 Lutris 进行安装

    ℹ️ 提示

    还应仔细阅读相同位置下方的安装说明。

🍷 原生 Wine

通过原生 Wine 也可运行简单的 Windows 小游戏,但是很多情况下需要自行处理 Windows 下的依赖问题。常用的工具是 Winetricksopen in new window。但是这种方式费时费力,只运行无需处理依赖的小游戏或者 GalGame 还好。

详细步骤请参阅 🍷 Wine

⛏️ 我的世界

🔗 相关链接:

我的世界(Minecraft)是一个关于击毁和放置方块的游戏。游戏一开始玩家的主要目的是搭建各种结构使自己免遭夜晚出没的怪物的攻击并生存下来,但随着游戏的进行,玩家们可以合作创造出一些不可思议的、富有想象力的东西。

  1. 安装 Minecraft Launcher(我的世界官服启动器)open in new windowEULA / cn / aur

    sudo pacman -S minecraft-launcher
    
    yay -S aur/minecraft-launcher
    

    ℹ️ 提示

    除了官方启动器,还有第三方启动器 HMCL(Hello Minecraft! Launcher)open in new window,支持模组管理、游戏定制、自动安装(Forge、LiteLoader 和 OptiFine)、模组包创建、UI 定制等。

    安装 HMCLopen in new windowcn / aur

    sudo pacman -S hmcl
    
    yay -S aur/hmcl
    
  2. 打开 Minecraft Launcher > 根据提示登录帐号并下载主程序后即可畅玩:

    minecraft-1

    minecraft-2

🎮 游戏手柄

一般情况下手柄通过数据线连接计算机即可直接使用。支持无线的手柄(DUALSHOCK® 3、DUALSHOCK® 4、Xbox 360、Xbox One、8BitDo 等)也可以通过蓝牙直接连接,无需额外操作。

Xbox 无线适配器

虽然无线手柄一般情况下可以通过蓝牙直连,但是通常这样会有较大的延迟。推荐使用 Xbox 无线适配器open in new window 以获得近乎有线的低延迟体验。

为了在 archlinux 下使用 Xbox 无线适配器,需要安装第三方开源驱动 xowopen in new window

  1. 安装 xowopen in new windowcn / aur

    sudo pacman -S xow-git
    
    yay -S xow
    
    yay -S aur/xow-git
    
  2. 启动 xcow 服务:

    sudo systemctl enable xow.service
    
  3. 重启计算机,插入 Xbox 无线适配器并和 🕹️ Xbox 手柄配对即可

实际体验和 Windows 下并无差异。对延迟敏感的音游(如 喵斯快跑open in new window)在游戏设置中微调偏移值即可。

🎛️ 性能监控

类似 Windows 下的 微星 Afterburneropen in new windowEULA 性能显示的部分,Linux 上也有一款同类软件可以监控游戏中的电脑性能(CPU 占用率、帧数等等),名为 MangoHudopen in new window

  1. 安装 MangoHudopen in new windowaur

    yay -S mangohud lib32-mangohud
    
    yay -S mangohud-git lib32-mangohud-git
    
  2. 通过以下方法使用 MangoHud:

    • 通用方法

      在启动的游戏前面添加 mangohud 前缀:

      mangohud game_command
      
    • Steam

      对于 Steam 游戏,在 Steam 库中右键游戏封面 > 点击 属性... > 侧边栏 通用 > 在 启动选项 中添加 MANGOHUD=1 %command%

      mangohud-1

    • Lutris

      对于 Lutris 游戏,点击右上角的 更多按钮(三个点) > 点击 System preferences(系统设置) > 选项卡 System preferences(系统选项) > 勾选 Show advanced options(显示高级选项)> 在 Command prefix(命令前缀)中添加 mangohud

      mangohud-2

mangohud-3

ℹ️ 提示

部分游戏可能不支持 MangoHud。

🔥 性能提升

在游戏之前,如果有强烈的性能需要,可先确保 CPU 处于性能模式,可采取两种方式,分别为使用GameModeopen in new window和手动控制

自动方式

  1. 安装GameModeopen in new window

    # 安装配置文件
    sudo pacman -S meson systemd git dbus libinih
    # 安装gamemode
    sudo pacman -S gamemode lib32-gamemode
    
  2. 进行配置,配置模板可以参考此处open in new window

    # 进入下载配置文件的文件夹
    sudo cp gamemode.ini /etc/gamemode.ini
    
  3. 进行测试,运行gamemoded -t

    # 有可能这个测试会失败,可以不用理会
    gamemoded -t
    

    ℹ️ 在 steam 中使用

    在 steam 的启动选项设置gamemoderun %command%,即可以 gamemode 启动游戏,gamemode 会自动进行防熄屏设置,更多设置(如显卡自动超频)请看官方文档!

    如果是配合 i+n 卡使用,可以在/etc/environment中设置GAMEMODERUNEXEC=prime-run,在使用 gamemode 启动游戏时会自动调用独显运行。

手动方式

  1. 执行以下命令使电源处于 High Performance 模式:

    echo performance | sudo tee /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor
    

    ℹ️ 提示

    此模式会让 CPU 处于最高性能状态,风扇狂转,如果散热撑不住甚至会降频,得不偿失。请斟酌使用。

  2. 如果希望将设置改回 Power Save 模式,那么只需要执行以下命令即可:

    echo powersave | sudo tee /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor
    

🚀 网游加速

对于在 Linux 上玩网游,网络加速一直是一个难题,尤其是在玩一些外服网游的时候。这里提供一些在 Linux 下对网游加速的思路:

  • 一些 ✈️ 场会提供网游游戏节点,这些节点专门为游戏优化,限制流量并且提高倍率,一般可以得到较好的加速效果。在 Linux 中配合 透明代理,同时开启对 UDP 流量的代理加速,即可以得到优化网游网速的效果
  • 购买内置市面上内置或可安装常见的网游加速器插件的中高端 路由器open in new window(似乎确凿只能加速主机)

🐧 Fsync 内核

维尔福公司发布了一个可以帮助提升大量多线程应用运行帧率的特殊内核补丁。这对改善游戏性能有很大帮助。简单的方法是更换为 linux-zenopen in new window 内核,其从 5.2 版本开始已包括 Fsync 补丁。

详细步骤请参阅 🐧 更换可选内核

🌈 RGB 光污染

通过 OpenRGBopen in new window,无论是键盘、鼠标、CPU 风扇、AIO,还是其它连接的外围设备或组件,都可以统一进行 RGB 灯光控制。

  1. 安装 OpenRGBopen in new windowcn / aur

    sudo pacman -S openrgb
    sudo pacman -S openrazer-driver-dkms # 雷蛇用户需要安装
    
    yay -S aur/openrgb
    sudo pacman -S openrazer-driver-dkms # 雷蛇用户需要安装
    
    yay -S openrgb-git
    yay -S openrazer-driver-dkms-git # 雷蛇用户需要安装
    
  2. 为了让内核能够识别到设备文件,需要下载 60-openrgb.rulesopen in new window,并将它复制到 /etc/udev/rules.d 文件夹下:

    sudo cp /path/to/60-openrgb.rules /etc/udev/rules.d
    ls -ahl /etc/udev/rules.d # 复查一下
    

    openrgb-1

  3. 重启计算机或者通过以下命令重新载入 udev 规则(.rules 文件):

    sudo udevadm control --reload-rules
    sudo udevadm trigger # 强制内核触发设备事件,主要用于重放内核初始化过程中的冷插(coldplug)设备事件
    

    openrgb-2

  4. 若显卡、内存条或者主板等带有 RGB 需要控制,则还需要载入额外的驱动:

    sudo modprobe i2c-dev # 显卡、内存条
    sudo modprobe i2c-i801 # 芯片组
    
    sudo modprobe i2c-dev # 显卡、内存条
    sudo modprobe i2c-piix4 # 芯片组
    

    openrgb-3

  5. 为了验证驱动载入情况,还需要安装 I2C Toolsopen in new windowcommunity / aur

    sudo pacman -S i2c-tools
    
    yay -S i2c-tools-git
    

    openrgb-4

  6. 验证驱动载入情况:

    sudo i2cdetect -l
    

    查看输出是否带有以下字段:

    • nvkm 字段 —— 带有光污染的 NVIDIA 显卡
    • PIIX4 字段 —— AMD 芯片组
    • I801 字段 —— Intel 芯片组
  7. 打开 OpenRGB,将自动检测支持的外设,然后便可以进行灯光控制了


📔 本节参考资料: