Arch Linux + Wine + i3wm:搭建《重武器老鼠》复古游戏环境

Arch Linux + Wine + i3wm:搭建《重武器老鼠》复古游戏环境 概述《重武器老鼠》Mighty Rodent也有民间称为重装老鼠是一款 2006 年发布的街机风格 2D 射击游戏原为 Windows 平台 RAR 自解压包。本文记录在Arch Linux i3wm AMD 双显卡笔记本上通过 Wine 完整运行该游戏的实战流程涵盖文件传输、RAR 解压、Wine 配置、i3wm 窗口规则、AMD 独显加速、音频与鼠标调优等环节。一、环境准备1.1 系统与硬件项目规格发行版Arch Linux内核 latest窗口管理器i3wmX11默认 ShellNushellCPUIntel i5-8265U集成显卡Intel UHD Graphics 620独立显卡AMD Radeon 540Lexa PRO声卡PipeWire WirePlumber1.2 安装必要软件包# 工具链 sudo pacman -S wine wine-mono wine-gecko winetricks \ unrar xorg-xinit xorg-server i3-wm i3status dmenu xterm \ xorg-xinput pipewire-pulse wireplumber 可选DXVKDirectX → Vulkan 转译大幅提升游戏性能 sudo pacman -S dxvk注意游戏为 2006 年发布的 32 位程序推荐使用 32 位 Wine Prefix兼容性最佳。二、游戏文件传输与解压2.1 传输文件到目标机器# 从本机传输到 Arch Linux 机器 scp zhongwuqilaoshu_1.0.0.0.exe thinkpad:/home/user/2.2 识别与解压# 确认文件类型RAR 自解压包 file /home/user/zhongwuqilaoshu_1.0.0.0.exe # 输出: PE32 executable, RAR self-extracting archive 创建游戏目录并解压 mkdir /home/user/zhongwuqilaoshu cd /home/user/zhongwuqilaoshu unrar x /home/user/zhongwuqilaoshu_1.0.0.0.exe2.3 处理中文文件名解压后主程序为重武器老鼠.exe中文名需在中文 locale 下操作# 生成中文 locale sudo bash -c echo zh_CN.UTF-8 UTF-8 /etc/locale.gen locale-gen 用中文 locale 提取主程序 LANGzh_CN.UTF-8 LC_ALLzh_CN.UTF-8 unrar e /home/user/zhongwuqilaoshu_1.0.0.0.exe /home/user/zhongwuqilaoshu/ *.exe -o -y解压后目录结构如下zhongwuqilaoshu/ ├── 重武器老鼠.exe ← 主程序 ├── reg.exe / reg.ini ├── profiles.dat / res.dat / scores.dat ├── gfx/ ← 图片资源 │ ├── fonts/ ← 字体文件font01.png, font02.png │ ├── background/ │ ├── bosses/ │ └── ... ├── music/ ← OGG 背景音乐 ├── sound/ ← OGG 音效 └── hintGameVer/ ← 游戏版本信息三、Wine 配置3.1 创建 32 位 Wine Prefix游戏为 32 位程序用 64 位 Prefix 可能遇到兼容问题export WINEARCHwin32 export WINEPREFIX~/.wine32 初始化 Wine Prefix首次运行会自动创建 winecfg在弹出的winecfg中Applications标签 → Windows Version 选择Windows 10Graphics标签 → 勾选 Allow the window manager to control the windows让 i3wm 管理窗口3.2 安装 DirectX 运行库# 安装 DirectX 9 运行时库游戏所需 winetricks directx9 可选安装常用 VC 运行库 winetricks vcrun20193.3 配置 DXVK性能优化如果游戏使用 DirectX 9多数 2006 年游戏DXVK 可将 DirectX 调用转译为 Vulkan显著提升性能# 安装 DXVK 到当前 Wine Prefix winetricks dxvk3.4 首次运行测试cd /home/user/zhongwuqilaoshu WINEPREFIX~/.wine32 \ DRI_PRIME1 \ DISPLAY:0 \ LANGzh_CN.UTF-8 LC_ALLzh_CN.UTF-8 \ wine 重武器老鼠.exe四、i3wm 窗口管理器配置4.1 启动 i3# 创建 .xinitrc echo exec i3 ~/.xinitrc 从 tty1 启动 startx4.2 i3 配置配置文件~/.config/i3/config# i3 config for 重武器老鼠 game font pango:monospace 10 set $mod Mod4 自动启动游戏使用 Nushell 脚本管理环境变量 exec nu /home/user/zhongwuqilaoshu/launch_game.nu 快捷键 bindsym $modShifte exec i3-msg exit bindsym $modShiftq kill bindsym $modd exec dmenu_run bindsym $modReturn exec xterm bindsym $modShiftr restart bindsym $modf fullscreen toggle 窗口规则游戏窗口自动浮动 全屏 for_window [title重武器老鼠] floating enable for_window [title重武器老鼠] fullscreen enable bar { status_command i3status position top }关键修正for_window的匹配条件必须使用具体窗口标题如[title重武器老鼠]而非[all]——i3wm 不支持[all]语法。滥用[title.*]会导致所有窗口包括终端被全屏故仅对游戏窗口生效。4.3 Nushell 启动脚本由于 Arch Linux 默认 Shell 为 Nushell为避免、21等 bash 语法与 Nushell 冲突建议编写独立的.nu启动脚本cat /home/user/zhongwuqilaoshu/launch_game.nu EOF # 启动 重武器老鼠 游戏AMD 独立显卡 32位 Wine Prefix $env.DISPLAY :0 $env.XAUTHORITY /run/user/1000/lyxauth $env.DRI_PRIME 1 $env.WINEARCH win32 $env.WINEPREFIX /home/user/.wine32 $env.LANG zh_CN.UTF-8 $env.LC_ALL zh_CN.UTF-8 cd /home/user/zhongwuqilaoshu /usr/bin/wine 重武器老鼠.exe EOF五、双显卡优化AMD 独显加速ThinkPad E490 配备 Intel UHD 620集成 AMD Radeon 540独立双显卡。Wine 默认使用 Intel 集显需通过DRI_PRIME1强制使用 AMD 独显。5.1 验证 GPU 使用# 安装 radeontop 监控 AMD 显卡 sudo pacman -S radeontop 运行游戏后检查 GPU 占用 sudo radeontop -d -优化前Intel 集显GPU: 0% ← AMD 完全空闲 VRAM: 0.27% ← 仅用于桌面 Core: 0.326 GHz优化后DRI_PRIME1GPU: 31% ← 活跃 VRAM: 5% (84 MB) ← 显存被使用 Core: 1.176 GHz (100%) ← 满频运行5.2 性能对比指标Intel UHD 620优化前AMD Radeon 540优化后GPU 占用0~20%间歇性20~35%稳定游戏帧率卡顿频繁流畅运行CPU 占用163%Wine 转译开销大正常约 30~50%温度70~78°C70~75°C六、文件系统兼容字体大小写问题6.1 问题现象游戏启动后弹出错误error file gfx/fonts/font01.png not found6.2 原因Windows 文件系统不区分大小写font01.png与Font01.png视为同一文件。Linux 文件系统区分大小写游戏代码中引用的文件名大小写可能与实际文件不一致。6.3 解决方案创建常见大小写变体的符号链接cd /home/user/zhongwuqilaoshu/gfx/fonts ln -sf font01.png Font01.png ln -sf font02.png Font02.png ln -sf font01.png FONT01.png ln -sf font02.png FONT02.png七、音频设置PipeWire7.1 解除静音并设置音量# 查看当前音量 wpctl get-volume DEFAULT_AUDIO_SINK 设置音量为 67% 并解除静音 wpctl set-volume DEFAULT_AUDIO_SINK 67% wpctl set-mute DEFAULT_AUDIO_SINK 0wpctl是 WirePlumber 的命令行工具比pactl更现代。八、禁用鼠标加速度射击游戏需要精确的鼠标定位建议禁用鼠标加速度。8.1 持久化配置推荐sudo tee /etc/X11/xorg.conf.d/99-mouse-accel.conf EOF Section InputClass Identifier Disable Mouse Acceleration MatchIsPointer yes Driver libinput Option AccelProfile flat Option AccelSpeed 0 EndSection EOF8.2 即时生效不重启 X# 查看设备列表 xinput list 禁用加速度以实际设备名为准 xinput set-prop pointer:设备名 libinput Accel Profile Enabled 0, 1AccelProfile flat即等比模式光标移动距离与物理移动距离成 1:1 关系无加速度算法介入适合射击类游戏。九、排错速查现象原因与对策unrar: command not foundsudo pacman -S unrar解压后中文文件名乱码生成zh_CN.UTF-8locale 后用LANGzh_CN.UTF-8 unrar x或改用unar游戏启动后资源找不到 / 黑屏未cd到游戏目录Wine 必须在游戏目录下启动游戏内中文显示为方框安装wqy-zenhei并做字体链接见 3.3Wine 全屏黑屏从 Sway/Wayland 切到 i3wm/X11见第四节无声音wpctl检查默认音频输出解除静音鼠标移动有飘的感觉按第八节禁用鼠标加速度十、总结经过以上配置《重武器老鼠》在 Arch Linux i3wm AMD 独显环境下可流畅运行。核心要点汇总环节关键操作注意事项文件传输scp传输 .exe 到目标机器确认 mDNS 域名解析RAR 解压unrar 中文 locale中文文件名需LANGzh_CN.UTF-8Wine PrefixWINEARCHwin32创建 32 位兼容 2006 年老游戏运行环境cd到游戏目录 DRI_PRIME1资源路径 独立显卡加速窗口管理i3wm for_window [title]规则避免[all]和[title.*]滥用字体兼容创建大小写符号链接Linux 文件系统大小写敏感音频wpctl set-volumePipeWire WirePlumber鼠标Xorgflatprofile禁用加速度适合射击游戏提示如果游戏在 AMD 独显下仍有卡顿可尝试安装 DXVKwinetricks dxvk将 DirectX 调用转译为 Vulkan性能可再提升 30~50%。 整套方案的本质是用现代 Linux 的兼容层与技术栈为 Windows 游戏提供一个等效的运行环境——Wine 负责 API 翻译X11 负责图形输出PipeWire 负责音频i3wm 负责窗口管理。理解每一层的作用遇到问题时就能精准定位。 环境声明本文验证环境为 Arch Linux2025 年 6 月后的纯 WoW64 Wine 构建 i3wm Wine 9.x/10.x PipeWire Xorg。其他发行版或更新版本的 Wine 可能略有差异请以实际表现为准。相关标签#ArchLinux #Wine #i3wm #重武器老鼠 #MightyRodent #复古游戏 #Linux游戏 #PipeWire在 Linux 桌面环境下运行老 Windows 游戏的通用参考模板。Enjoy your retro gaming!p