常见问题

4214错误
ua文件问题自己修改dll文件或者global-metadata.dat(国际服和国服要区分)
4206 错误
此类错误大多数情况为代理未正确配置,可尝试
仔细检查代理端 / 服务端所有配置
重启代理端 / 重启服务器
开启代理后运行游戏,检查服务端和代理的日志,如果代理中
没有 mihoyo.com / hoyoverse.com 子域的请求或者没刷新任何日志,则为客户端代理配置错误
有 mihoyo.com / hoyoverse.com 子域的请求,但报 TLS handshake failed,则为客户端未安装对应服务端的证书,或服务端不能连接到相应域名
有 mihoyo.com / hoyoverse.com 子域的请求,但报拒绝连接等错误,可能是服务端网络问题导致无法连接米哈游服务器
如果代理没有报错,则应为服务端问题,检查服务端配置或者更新服务端
如仍无法解决,可尝试以下操作:
关闭代理正常启动游戏检查更新完后再次开代理进入游戏
修改 config.json 中 server.dispatch.accessAddress 为 dispatchcnglobal.yuanshen.com
登陆账号提示网络错误 / 网络超时
确认配置无误可尝试修改 config.json 中 server.dispatch.accessAddress 为 dispatchcnglobal.yuanshen.com 然后进一遍游戏,如果能进去,就可以将此配置还原
点击登录转圈然后没反应
如果点击后服务端日志有成功登录的提示,关掉登录窗口即可进入游戏 (手机版特供 bug)
如无,请检查服务端代理是否正确运行,是否假死 (尝试重启)
502 / 4301 / 无法连接服务器
没有正确配置,请自行检查
登陆后检查更新失败
如果代理日志中有 mihoyo.com / hoyoverse.com 子域的请求,但报拒绝连接等错误,可能是服务端网络问题导致无法连接米哈游服务器
开启代理后还是登录了官服
有其他代理冲突;服务端没有正确运行
4201
检查是否正确安装并信任证书
9203
一般为代理问题,已知 iOS 使用小火箭会存在此问题
卡检查更新
尝试正常进游戏一次后再连代理进;检查服务端网络问题,如确实没问题请尝试重启代理端 / 更换代理端口 / 重启服务器
进门后连接超时
检查UDP 22102 或者你配置文件只改了一个 ip,要两个一起改
进门白屏
没有连接上数据库
---------------------------------------------
号突然炸了没有攻击图标角色信息
说过很多次了不要去瑶瑶和裸男还有其他的凯特,这几个没有模型,不炸就有鬼。

我遇到的问题

在CentOS 7+JDK 18+别人编译的割草机的情况下,发现内存、写日志异常情况非常非常明显,再加上那个整合包装了过多插件。

我在自己编译后,调整了运行方法(screen),得到部分缓解。目前的内存情况基本上是从480M开始,每分钟增加1M,同时可通过 XX:MaxMetaspaceSize 压住内存膨胀的速度。

编译+手动安装的极简教程下一期会说。

疯狂写log

后台运行时在 /root/genshin/grasscutter/logs 会有爆炸多的log,其中一种临时解决方法就是锁这个目录

命令参考(解锁就是+换-)

chattr -i /root/genshin/grasscutter/logs

锁了日志之后启动效果如图

运行方法

直接前台运行

一般没什么问题,有轻微的内存膨胀问题

Supervisor进程守护

直接退出,无法进程守护

宝塔应用管理器

java环境的启动文件设置 /usr/local/java/bin/java,环境参数设置 -jar

有大量EOF报错,直接炸日志

Nohup运行

也有不少的报错,同时吃内存+写日志(严重的时候每秒几十M的日志+每秒几M的内存膨胀),但是比Supervisor进程守护和宝塔应用管理器好点,起码能动

Screen 运行

一般没什么问题,有轻微的内存膨胀问题,目前的内存情况基本上是从480M开始,每分钟增加1M,同时可通过 XX:MaxMetaspaceSize 压住内存膨胀的速度。

运行命令

java -jar -Xmx512M -XX:MaxMetaspaceSize=512M grasscutter.jar
java -jar -XX:MaxMetaspaceSize=512M grasscutter.jar

Screen 快速教学

安装

yum install -y screen

创建名为ys的会话

screen -S ys

按住Ctrl然后再先按A,再按D进行切换会话
返回名为ys的会话

screen -r ys

列出会话列表

screen -ls

垃圾日志样本

2022-09-18T13:10:38Z <ERROR:emu.grasscutter.Grasscutter> An IO error occurred.
java.io.IOError: java.io.IOException: Bad file descriptor
at org.jline.keymap.BindingReader.readCharacter(BindingReader.java:170)
at org.jline.keymap.BindingReader.readBinding(BindingReader.java:110)
at org.jline.keymap.BindingReader.readBinding(BindingReader.java:61)
at org.jline.reader.impl.LineReaderImpl.doReadBinding(LineReaderImpl.java:923)
at org.jline.reader.impl.LineReaderImpl.readBinding(LineReaderImpl.java:956)
at org.jline.reader.impl.LineReaderImpl.readLine(LineReaderImpl.java:651)
at org.jline.reader.impl.LineReaderImpl.readLine(LineReaderImpl.java:468)
at emu.grasscutter.Grasscutter.startConsole(Grasscutter.java:364)
at emu.grasscutter.Grasscutter.main(Grasscutter.java:208)
Caused by: java.io.IOException: Bad file descriptor
at java.base/java.io.FileInputStream.read0(Native Method)
at java.base/java.io.FileInputStream.read(FileInputStream.java:228)
at org.jline.utils.NonBlockingInputStreamImpl.run(NonBlockingInputStreamImpl.java:216)
at java.base/java.lang.Thread.run(Thread.java:833)

还有EOF报错

16:06:16 < [34mINFO [0;39m: [1;30mGrasscutter [0;39m> EOF detected.

等等

相关链接

仅个人学习Java编程使用,不应用于商业牟利,请在24小时内删除

Genshin One(一):本地有手就行版整合包下载和使用

Genshin One(二):基于Cent OS 7 的远程服务端搭建之环境构建

Genshin One(三):基于Cent OS 7 的远程服务端搭建之服务端运行和服务器配置

Genshin One(四):服务端数据管理与便携工具

Genshin One(五):服务端运行进阶、部分问题解决和修复方法

Genshin One(六):手动编译安装、相关的常用开源仓库

Genshin One(七):资源下载和目录树解读

TAG:原神

Mongodb的GUI 工具使用、数据备份与恢复