Skip to content

Commit

Permalink
更新服务端崩溃文档 + 添加客户端通用问题 (#130)
Browse files Browse the repository at this point in the history
* 更新服务端崩溃文档

* 统一文案

* 添加客户端通用问题

* 添加客户端通用问题
  • Loading branch information
柚子柚子 authored Aug 18, 2023
1 parent ef06b00 commit 155b7db
Show file tree
Hide file tree
Showing 10 changed files with 67 additions and 28 deletions.
1 change: 1 addition & 0 deletions docs/.vitepress/config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -125,6 +125,7 @@ export default withPwa(
text: "客户端崩溃",
items: [
{ text: "客户端介绍", link: "/client/" },
{ text: "通用问题", link: "/client/shared" },
{ text: "系统问题", link: "/client/system" },
{ text: "原版问题", link: "/client/vanilla" },
{ text: "Mod 问题", link: "/client/mods" },
Expand Down
2 changes: 1 addition & 1 deletion docs/client/index.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# 客户端问题
# 客户端介绍

## 基础知识

Expand Down
13 changes: 13 additions & 0 deletions docs/client/shared.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
# 通用问题

## 手动触发调试崩溃

解释:玩家通过在游戏中按住 `F3 + C` 触发崩溃。

解决方案:不要按住 `F3 + C`……

关键词:

```
Manually triggered debug crash
```
14 changes: 7 additions & 7 deletions docs/client/system.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@

### OpenGL 错误(聊天栏中出现)

| 错误码 | 可能原因 | 解决方法 |
| 错误码 | 可能原因 | 解决方案 |
| ------ | -------------------------------------- | ------------------------------------------------------------------------------------ |
| 1280 | OptiFine / Mods 冲突 / OpenGL 版本错误 | 更换 OptiFine 版本、检查 Mods 冲突或尝试更新显卡驱动 |
| 1281 | Mods / 图像设置 / 显卡驱动 / 光影 | 尝试更新显卡驱动或检查 Mods 问题(如检查后无问题,则暂时无解) |
Expand All @@ -22,7 +22,7 @@

解释:因为你的显卡配置或显卡驱动存在问题,游戏无法正常运行。

解决方法:检查显卡驱动是否为最新;如果有独立显卡的请使用独立显卡运行游戏,而非核显。
解决方案:检查显卡驱动是否为最新;如果有独立显卡的请使用独立显卡运行游戏,而非核显。

驱动下载:[Intel](https://www.intel.cn/content/www/cn/zh/search.html#sort=relevancy&f:@tabfilter=[Downloads]&f:@stm_10385_zh=[%E6%98%BE%E5%8D%A1]) | [AMD](https://www.amd.com/zh-hans/support) | [Nvidia](https://www.nvidia.cn/geforce/drivers/)

Expand Down Expand Up @@ -107,7 +107,7 @@ OpenJ9 is incompatible

解释:由于使用了 32 位 Java 且分配了 1G 以上内存,导致游戏无法正常启动。

解决方法
解决方案
:::warning 注意
此方法仅适用于 64 位系统。
:::
Expand Down Expand Up @@ -156,7 +156,7 @@ Caused by: net.minecraft.util.ResourceLocationException: Non [a-z0-9_.-] charact
net.minecraft.util.ResourceLocationException: Non [a-z0-9_.-] character in namespace of location: .DS_Store:
```

解决方法:删除 `.DS_Store` 文件
解决方案:删除 `.DS_Store` 文件

:::details 解决步骤
由于 `.DS_Store` 文件是 macOS 的隐藏文件, 只能通过执行指令进行删除
Expand All @@ -179,15 +179,15 @@ Exception caught during firing event: Unable to load library 'imm32':
class io.github.reserveword.imblocker.IMBlocker$RegistryEvents
```
解决方法:删除 `IMBlocker` 模组(此模组仅适用于 Windows)
解决方案:删除 `IMBlocker` 模组(此模组仅适用于 Windows)
### macOS 下初始化 OpenGL 窗口问题
```
java.lang.IllegalStateException: GLFW error before init: [0x10008]Cocoa: Failed to find service port for display
```
解决方法<Badge type="warning" text="实验性" />:先开一个浏览器全屏,然后启动游戏,在还没弹出窗口的时候迅速切回浏览器,等差不多游戏窗口出来了之后再切回去。
解决方案<Badge type="warning" text="实验性" />:先开一个浏览器全屏,然后启动游戏,在还没弹出窗口的时候迅速切回浏览器,等差不多游戏窗口出来了之后再切回去。
## Linux 问题
Expand All @@ -198,4 +198,4 @@ Exception caught during firing event: Unable to load library 'imm32':
class io.github.reserveword.imblocker.IMBlocker$RegistryEvents
```
解决方法:删除 `IMBlocker` 模组(此模组仅适用于 Windows)
解决方案:删除 `IMBlocker` 模组(此模组仅适用于 Windows)
2 changes: 1 addition & 1 deletion docs/client/vanilla.md
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ Caused by: java.util.zip.ZipException: invalid distance too far back
net.minecraft.util.crash.CrashException: Loading NBT data
```

解决方法
解决方案

尝试打开存档目录,然后删除 `level.dat`,并将 `level.dat_old` 重命名为 `level.dat`

Expand Down
2 changes: 1 addition & 1 deletion docs/mixin.md
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,7 @@ Mixin apply for mod ommc-1_20_1 failed ommc.mixins.json:feature.dontClearChatHis
org.spongepowered.asm.mixin.injection.throwables.InvalidInjectionException: @At("INVOKE") on net/minecraft/class_338::dontClearChatHistory with priority 1000 cannot inject into net/minecraft/class_338::method_1808(Z)V merged by coffee.waffle.dcch.mixin.DCCHMixin with priority 1000 [PREINJECT Applicator Phase -> ommc.mixins.json:feature.dontClearChatHistory.MixinChatHud from mod ommc-1_20_1 -> Prepare Injections -> -> handler$fdd000$ommc-1_20_1$dontClearChatHistory(ZLorg/spongepowered/asm/mixin/injection/callback/CallbackInfo;)V -> Prepare]
```

解决方法
解决方案

删除掉其中任意一个模组

Expand Down
18 changes: 16 additions & 2 deletions docs/server/index.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,19 @@
# 服务端介绍

:::info WIP
即将到来
正在阅读本文档的玩家您好,您可能在搭建服务器时遇到了问题。

这个部分将会帮助您解决服务端**后台**的崩溃。有关客户端问题,请阅读[客户端介绍](https://crashmc.com/client/)

:::warning 注意
这个部分是服务端**后台**的崩溃解决方案,而不是无法连接到服务器 / 游玩服务器时掉线的解决方案。

如果您在连接到服务器时出错,请自行根据报错文案上网搜索或求助他人。
:::

## 日志文件的位置

客户端的崩溃通常会由启动器自动打包崩溃报告,但是服务端没有启动器,需要您自行寻找日志文件。

一般而言,最新的日志文件在 `logs\latest.log`,而崩溃报告在 `crash-reports` 目录下。

得到日志文件后,就可以根据后续的文档处理崩溃了。您也可以使用[崩溃分析工具](https://crashmc.com/analyzer.html),将日志文件打包成 zip 并上传尝试分析。祝您成功解决问题!
15 changes: 8 additions & 7 deletions docs/server/mods.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,15 +4,16 @@

### 模组问题

关键字:
解决方案:移除日志中指示的 Mod。例如下方的情况应该移除 Sodium。

```
net.fabricmc.loader.impl.FormattedException: java.lang.RuntimeException: Could not execute entrypoint stage '***' due to errors, provided by '***'!
net.fabricmc.loader.impl.FormattedException: java.lang.RuntimeException: Could not execute entrypoint stage 'preLaunch' due to errors, provided by 'sodium'!
```

解决方案:移除日志中指示的 Mod。例如下方的情况应该移除 Sodium。
关键词:

```
net.fabricmc.loader.impl.FormattedException: java.lang.RuntimeException: Could not execute entrypoint stage 'preLaunch' due to errors, provided by 'sodium'!
net.fabricmc.loader.impl.FormattedException: java.lang.RuntimeException: Could not execute entrypoint stage '***' due to errors, provided by '***'!
```

## Forge
Expand All @@ -23,15 +24,15 @@ net.fabricmc.loader.impl.FormattedException: java.lang.RuntimeException: Could n
请确认您是否在服务器里安装了 **OptiFine**(高清修复)或 **Oculus** 等渲染优化模组。
:::

关键字:
解决方案:移除 Oculus 或包含 Iris 的 Mod。

关键词:
```
加载类 net.coderbot.iris.Iris 失败
Failed to load class net.coderbot.iris.Iris
```

解决方案:移除 Oculus 或包含 Iris 的 Mod。

## NeoForge

待补充
12 changes: 7 additions & 5 deletions docs/server/plugins.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# 插件问题

:::info WIP
本页文档仍在编写,如果你感兴趣的话,可以帮助我们完善它
本页文档仍在编写,如果你感兴趣的话,可以帮助我们完善它
:::

## Bukkit 系服务端
Expand All @@ -14,15 +14,17 @@

#### 无法加载世界存档

解释:使用高版本服务端加载低版本存档。

解决方案:更换到存档对应的版本再试。

关键词:

```
java.lang.RuntimeException: Server attempted to load chunk saved with newer version of minecraft! 3337 > 3218
// 这是一个使用 Paper 1.19.4 (3337) 加载 1.19.3 (3218) 世界存档的示例。
```

使用了一个高版本的服务端加载低版本的世界存档

解决方法:更换到对应的版本

> 关于应该使用的游戏版本,请查阅 [数据版本 - Minecraft Wiki](https://minecraft.fandom.com/zh/wiki/数据版本#数据版本列表)
## 代理端
Expand Down
16 changes: 12 additions & 4 deletions docs/server/shared.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,16 +2,24 @@

## 未同意 EULA

解释:没有同意[《最终用户许可协议》(EULA)](https://www.minecraft.net/zh-hans/eula)

解决方案:将服务端所在目录下的 `eula.txt` 中的 `eula=false` 更改为 `eula=true`,然后重启服务器。

关键词:

```
You need to agree to the EULA in order to run the server. Go to eula.txt for more info.
```

解决方法:前往服务端所在目录下的 eula.txt 中将 `eula=false` 更改为 `eula=true`

## 端口被占用

解释:欲用作启动服务器的端口被其它进程占用。

解决方案:打开服务端所在目录下的 `server.properties`,修改 `server-port` 的值。注意这个值要介于 `1024``65536` 之间。

关键词:

```
Perhaps a server is already running on that port?
```

解决方法:多个服务端不可占用同一个端口,请修改服务端的代理端口

0 comments on commit 155b7db

Please sign in to comment.