newlife2017 发表于 2023-8-26 01:16:31

在 Linux 上运行 SMWP

在 Linux 上运行 Windows 程序需要借助 Wine,而运行 SMWP 还需要一些额外的步骤
以 Arch Linux 为例:
1. 打开终端,安装 wine(wine-mono 必装,否则无法运行 .NET Framework 程序;winetricks 必装,第二步要用)
sudo pacman -S wine wine-mono wine_gecko winetricks giflib lib32-giflib libpng lib32-libpng libldap lib32-libldap gnutls lib32-gnutls \
mpg123 lib32-mpg123 openal lib32-openal v4l-utils lib32-v4l-utils libpulse lib32-libpulse libgpg-error \
lib32-libgpg-error alsa-plugins lib32-alsa-plugins alsa-lib lib32-alsa-lib libjpeg-turbo lib32-libjpeg-turbo \
sqlite lib32-sqlite libxcomposite lib32-libxcomposite libxinerama lib32-libgcrypt libgcrypt lib32-libxinerama \
ncurses lib32-ncurses opencl-icd-loader lib32-opencl-icd-loader libxslt lib32-libxslt libva lib32-libva gtk3 \
lib32-gtk3 gst-plugins-base-libs lib32-gst-plugins-base-libs vulkan-icd-loader lib32-vulkan-icd-loader2. 安装 directmusic 和 dsound(重要!否则没有声音)
winetricks directmusic && winetricks dsound要下载两个 DirectX 的安装包,正常情况下根本下不动,所以最好还是把那两个 DirectX 安装包放在 ~/.cache/winetricks/directx9/ 再运行上面的命令(目录不存在就手动创建,记得在你的文件管理器打开显示隐藏文件)。两个安装包的下载链接我已经传到了资源站:
https://file.marioforever.net/smwp/directx_apr2006_redist.exe
https://file.marioforever.net/smwp/directx_feb2010_redist.exe

3. 将 SMWP 的 Data 解压到用户目录(/home/用户名/)(重要!否则没有 BGM)

4. 终端输入 wine 空格,文件管理器定位到 SMWP 所在目录,把 SMWP 的 exe 拖进终端,回车
不出意外的话 SMWP 就开始运行了
效果如图

绿色的糖果 发表于 2023-8-26 07:17:30

祝贺!!
Linux 上面的操作我看不懂(((
但是我先收藏,以后肯定会用到(

newlife2017 发表于 2023-10-2 23:50:24

Ubuntu 的步骤略微麻烦一些,以 22.04 为例:
1. 打开终端,输入:
sudo dpkg --add-architecture i386回车
sudo wget -nc -O /usr/share/keyrings/winehq-archive.key https://dl.winehq.org/wine-builds/winehq.key回车
sudo nano /etc/apt/sources.list.d/winehq.list回车
粘贴以下内容
deb https://mirrors.tuna.tsinghua.edu.cn/wine-builds/ubuntu/ jammy mainCtrl+S 保存,Ctrl+X 退出
2. 安装 wine:
sudo apt update && sudo apt install --install-recommends winehq-stable3. 终端运行 winecfg,这时 wine 会自动给你安装 wine-mono,但是下载可能特别慢,这里给出手动安装的方法
到 https://dl.winehq.org/wine/wine-mono/ 下载,需要下载最新版(拉到最底下),如果下载还是慢建议开代理
然后终端输入 wine 空格,把下载到的 msi 文件拖到终端,回车
4. 安装 winetricks
sudo apt install winetricks5. 接 1L 第二步
这时会弹出以下提示

安装这两个包:
sudo apt install libvulkan1:i386 libgl1:i386
再次运行 MW 即可。虚拟机就不要尝试了,会闪退。

newlife2017 发表于 2023-11-5 23:05:28

教程已更新。
需要注意,信息砖插件不工作。
另外 MW 在我这边 Ubuntu 下运行非常卡,Arch 下运行掉帧

安德鲁斯123 发表于 2023-11-18 19:30:13

话说在LINUX上运行是为了搞开发吗?或者是像LZ在合战3的关卡那样创造一个人工智能MW?

newlife2017 发表于 2024-4-12 21:42:55

补充一下,Arch Linux 要编辑 /etc/pacman.conf 并取消注释 multilib 那两行
wine 在 wayland 下运行 MW 居然不卡(Arch Linux 下测的)

1168438795 发表于 2024-4-16 08:20:41

这个好
页: [1]
查看完整版本: 在 Linux 上运行 SMWP