[Share Experiences] Linux下畅玩原神5.2的三个要点
Tofloor
poster avatar
littlebat
deepin
2024-12-15 14:33
Author

(首发地址:学习日记 https://www.learndiary.com/2024/12/yuanshen52/
朋友们大家好,我是学习日记博客的littlebat,同时也是淘宝网学习日记小店的learndiary,专注于Linux和开源技术的服务。今天,我将与大家分享一下在Linux系统中玩原神5.2版本时需要注意的几个要点。这个分享源于我在Deepin论坛上的帖子《Deepin23踩坑记》,其中提到了在Deepin23上运行原神的经历。之后有朋友反馈说他们在Linux下无法启动原神,我也在更新到5.2版本后遇到了网络错误码4201的问题。经过查找资料与研究,我发现通过一些特定的设置,还是可以在Linux下顺利运行原神5.2的。视频讲解:【Linux下畅玩原神5.2的三个要点】https://www.bilibili.com/video/BV1WdqdYeEks/

Linux 下一般是通过安装Steam、Lutris、Wine游戏助手等Wine游戏平台运行《原神》的,安装的方法大家可以上网查一下。这里只讲在Linux下运行原神5.2的三个设置要点。

一、使用启动器进行升级和启动

首先,对于想要从旧版本(如5.1)升级到5.2的玩家来说,必须通过游戏自带的启动器(launcher.exe)来执行升级操作。只有这样,才能确保升级过程顺利完成,并且在升级后也可以通过启动器来启动游戏。但在升级完成后 ,直接启动 YuanShen.exe可以省略一些步骤而更快的启动游戏。

二、设置必要的环境变量

从5.1版本开始,为了使原神能够在Linux系统上正常运行,需要设置一个特定的环境变量 platform_typeCLOUD_THIRD_PARTY_PC。这一设置可以在你使用的平台(如“Wine游戏助手”或Lutris)的启动参数中完成。

三、管理hosts文件中的域名屏蔽

第三个要点涉及到对 /etc/hosts文件的修改。在Linux下玩原神时,通常需要屏蔽某些域名以绕过可能的游戏服务器限制。对于5.1版本来说,只需简单地添加 127.0.1.1 log-upload.mihoyo.com public-data-api.mihoyo.com uspider.yuanshen.com dispatchcnglobal.yuanshen.com ys-log-upload.mihoyo.com这样的代码到/etc/hosts即可。然而,在升级到5.2版本后,情况变得稍微复杂了一些。游戏启动初期需要完整的屏蔽列表,但是一旦游戏加载到一定程度,就必须取消对 dispatchcnglobal.yuanshen.com这个域名的屏蔽,否则会触发网络错误码4201,导致游戏无法继续。

为了实现这一点,我编写了一个简单的脚本,用于自动管理 /etc/hosts文件的内容。这个脚本的工作原理如下:

  1. 在启动游戏前,将包含完整屏蔽列表的文件(例如 /etc/hosts_y51)复制到实际的 /etc/hosts文件。
  2. 启动游戏,使用 sleep命令延迟20秒(根据你的硬盘类型调整这个时间),然后将另一个文件(例如 /etc/hosts_y52),其中已经去除了 dispatchcnglobal.yuanshen.com的屏蔽,复制回 /etc/hosts
  3. 这样做可以确保游戏能够成功启动,同时避免因域名屏蔽而导致的网络4201错误。

为了方便快捷地启动游戏,我还创建了一个桌面快捷方式,它实际上执行的就是上述脚本。这样一来,只需要双击桌面图标就可以轻松启动原神了。

相关代码如下:

游戏启动脚本 ys.sh
#!/bin/sh
cp /etc/hosts_y51 /etc/hosts -f
(sleep 20s; cp /etc/hosts_y52 /etc/hosts -f)&
env LUTRIS_SKIP_INIT=1 /opt/apps/net.winegame.client/files/bin/winegame winegame:rungameid/1 # 在“Wine游戏助手”创建的桌面快捷方式文件中获取这行游戏启动代码
exit 0
桌面快捷方式 ys.desktop
[Desktop Entry]
Type=Application
Name=原神官服
Icon=/home/user/图片/yuanshen.png
Exec=/home/user/bin/ys.sh
Categories=Game

总结

综上所述,在Linux下玩原神5.2的关键在于:

  • 使用启动器:确保通过 launcher.exe进行游戏的升级。
  • 设置环境变量:将 platform_type设为 CLOUD_THIRD_PARTY_PC
  • 动态管理hosts文件:根据游戏启动的不同阶段,适时调整域名屏蔽列表,即在启动中途移除 dispatchcnglobal.yuanshen.com的屏蔽。

希望这些技巧能帮助各位玩家在Linux环境下顺利运行原神5.2。感谢大家的观看,再见!

参考链接

  1. 解决原神 5.1 版本后在 Linux/Wine 环境报错 10351-4001 问题 https://www.rayalto.org/2024/10/19/fix-genshin-on-linux-crash-20241019/
  2. 【更新版解决】原神 5.2 之后显示 无法连接网络 错误码 4201 #491 https://github.com/yaagl/yet-another-anime-game-launcher/issues/491
Reply Favorite View the author
All Replies
神末shenmo
deepin
Spark-App
2024-12-15 15:00
#1

既然都这样了,屏蔽mihoyo域名是否是有些掩耳盗铃了,不如直接解除屏蔽

Reply View the author
littlebat
deepin
2024-12-15 15:06
#2
神末shenmo

既然都这样了,屏蔽mihoyo域名是否是有些掩耳盗铃了,不如直接解除屏蔽

不是很清楚。从很早的版本就这样的,不屏蔽那些域名玩不了,好像是米哈游通过客户端发送到那些服务器的信息判断,如果不是 Windows 或他们官方的客户端就不行

Reply View the author
神末shenmo
deepin
Spark-App
2024-12-15 15:30
#3
littlebat

不是很清楚。从很早的版本就这样的,不屏蔽那些域名玩不了,好像是米哈游通过客户端发送到那些服务器的信息判断,如果不是 Windows 或他们官方的客户端就不行

如果是用启动器的话,这是启动器主动加的限制

Reply View the author
Amber
deepin
2024-12-15 16:22
#4

我去,下周有时间我试试,谢啦thanks

Reply View the author
deepin
2024-12-16 10:08
#5

纯wine可以么?那个 platform_type变量是干嘛的?

假期有时间试试吧,希望这个方法能坚持得长一点。后面有不会的我再来问大佬

(果然娱乐是人类的一大动力

话说楼主崩铁可以运行么?我这边原生wine9.9.1+dxvk的话,崩铁是循环出错,不崩溃也不进游戏。只有zzz是可以无脑进游戏的,希望1.4不要出问题

Reply View the author
littlebat
deepin
2024-12-16 15:50
#6

纯wine可以么?那个 platform_type变量是干嘛的?

假期有时间试试吧,希望这个方法能坚持得长一点。后面有不会的我再来问大佬

(果然娱乐是人类的一大动力

话说楼主崩铁可以运行么?我这边原生wine9.9.1+dxvk的话,崩铁是循环出错,不崩溃也不进游戏。只有zzz是可以无脑进游戏的,希望1.4不要出问题

纯wine 理论上应该行吧,没试过。那个变量的具体作用官方才清楚,是网上查到的。其它游戏没试过

Reply View the author
deepin
2024-12-16 18:09
#7
littlebat

纯wine 理论上应该行吧,没试过。那个变量的具体作用官方才清楚,是网上查到的。其它游戏没试过

哪个官方?米忽悠么?不应该吧。他们也不搞Linux端啊。

Reply View the author
littlebat
deepin
2024-12-18 11:14
#8

哪个官方?米忽悠么?不应该吧。他们也不搞Linux端啊。

不清楚,网上抄的。你可以查一下

Reply View the author
littlebat
deepin
2024-12-18 11:17
#9

解决原神 5.1 版本后在 Linux/Wine 环境报错 10351-4001 问题 https://www.rayalto.org/2024/10/19/fix-genshin-on-linux-crash-20241019/
截图_选择区域_20241218111639.png

Reply View the author