按照编写规范清理了多余的空格

This commit is contained in:
Radiation_pi 2024-05-22 15:40:49 +08:00
parent 32c926333b
commit c0966a0d81
7 changed files with 93 additions and 92 deletions

View File

@ -23,11 +23,11 @@ Minecraft 原版目前有三个世界,分别是主世界**world**world
4. **entities/** :储存对应 **region** 中的实体;
5. **playerdata/** :储存着玩家的数据信息(如血量、经验值等);
6. **poi/** :存储世界中村民的兴趣点(如床、工作方块)。(只在 1.14 + 版本中使用)
7. **region/** :储存方块信息。
8. **stats/** :储存玩家在此世界游玩时的统计信息(如击杀了 xx 只鸡、使用了 xx 次工作台)。
9. **如果还有其他文件夹一般为插件储存用的文件夹,如 `itemsadder` 文件夹是插件 ItemsAdders 创建的用于保存世界中自定义物品的文件夹**

View File

@ -44,8 +44,8 @@ sidebar_position: 8
### 日志级别
|级别|程度|具体内容|
|:---:|:---:|:---|
|级别|程度|具体内容|
|:---:|:---:|:---|
|INFO|信息|聊天内容/玩家状态/玩家指令/插件信息/……|
|WARN|警告|对于一些潜在的风险进行警告,有可能发展为报错|
|ERROR|报错|服务器出现错误后输出的信息|

View File

@ -17,35 +17,35 @@ Geyser有以下版本类型:
其中:
Spigot版本 可以作为插件安装在以Spigot及其分叉(如Paper)为核心的服务端上
BungeecordVelocity和ViaProxy版本 可以作为插件安装在这些代理端上
Fabric和NeoForge版本 可以作为模组安装在这些模组端上
Standalone版本 可以作为一个独立的代理端启动
Spigot版本 可以作为插件安装在以Spigot及其分叉(如Paper)为核心的服务端上
BungeecordVelocity和ViaProxy版本 可以作为插件安装在这些代理端上
Fabric和NeoForge版本 可以作为模组安装在这些模组端上
Standalone版本 可以作为一个独立的代理端启动
## 挑选版本
在安装前你需要找到合适的Geyser版本
你可以参考下图:
在安装前你需要找到合适的Geyser版本
你可以参考下图:
![version](_image/VersionChoose.png)
* 1、运行独立版**仍需要Java16**及以上环境只不过你可以将其和目标服务器所处的Java环境隔开 此外**在任何情况下**,你都可使用独立版,甚至独立版可以和其目标不在同一服务器上
* 2、你可以通过ViaVersion插件来适配版本这会允许不同版本的玩家进入服务器不过问题不大
* 3、[Hydraulic](https://github.com/GeyserMC/Hydraulic) 可以允许你加入带客户端模组的服务器,但是项目处于**早期开发阶段**,你可以做个尝试,但是请不要在实际情况下使用
* 1、运行独立版**仍需要Java16**及以上环境只不过你可以将其和目标服务器所处的Java环境隔开 此外**在任何情况下**,你都可使用独立版,甚至独立版可以和其目标不在同一服务器上
* 2、你可以通过ViaVersion插件来适配版本这会允许不同版本的玩家进入服务器不过问题不大
* 3、[Hydraulic](https://github.com/GeyserMC/Hydraulic) 可以允许你加入带客户端模组的服务器,但是项目处于**早期开发阶段**,你可以做个尝试,但是请不要在实际情况下使用
## 下载
你可以在此处下载 [Geyser](https://geysermc.org/download#geyser) 的对应版本
你可以在此处下载 [Geyser](https://geysermc.org/download#geyser) 的对应版本
## 安装
### 其他版本
作为插件或模组安装到对应文件夹即可
作为插件或模组安装到对应文件夹即可
### 独立版
独立版作为一个单独的服务端
你可以参考 [此处](../../正式开服/开启服务端) 的开启方法
独立版作为一个单独的服务端
你可以参考 [此处](../../正式开服/开启服务端) 的开启方法
## 配置
找到配置文件夹下的config.yml
找到配置文件夹下的config.yml
(什么,你连配置文件夹都找不到? 那你真是连笨蛋都不如配置文件在对应版本Geyser名称的文件夹下一般开启服务器后都会生成)
:::danger
@ -54,13 +54,13 @@ Standalone版本 可以作为一个独立的代理端启动
:::
第一眼你可能会被全是英文的配置文件镇住
别急,善用翻译来理解配置文件中的注释
**在完成本教程的基础配置配置后,若需进阶,请参考 [此处](https://docs.superiormc.cn/v/geyser-wiki/user-guide/li-jie-pei-zhi) 的配置参考**
第一眼你可能会被全是英文的配置文件镇住
别急,善用翻译来理解配置文件中的注释
**在完成本教程的基础配置配置后,若需进阶,请参考 [此处](https://docs.superiormc.cn/v/geyser-wiki/user-guide/li-jie-pei-zhi) 的配置参考**
接下来回到配置映入你眼帘的应该是bedrock和remote两个大项
bedrock所代表的是你所开放的端口也是基岩版玩家看到的那个
remote是连接的目标服务器若不使用独立版此选项无效请不要随意更改
接下来回到配置映入你眼帘的应该是bedrock和remote两个大项
bedrock所代表的是你所开放的端口也是基岩版玩家看到的那个
remote是连接的目标服务器若不使用独立版此选项无效请不要随意更改
```yaml
bedrock:
@ -84,19 +84,20 @@ remote:
forward-hostname: false
```
### Bedrock项
**`port`**: 其代表你向基岩版玩家所开放的端口在设置端口时请不要低于10000
**`motd1`** 和 **`motd2`**: 其代表向基岩版玩家所显示的MOTD可根据你的喜好配置仅支持最基础的颜色符号
**`server-name`**: 基岩版所看到的服务器名称,在暂停菜单和设置中可见
**`port`**: 其代表你向基岩版玩家所开放的端口在设置端口时请不要低于10000
**`motd1`** 和 **`motd2`**: 其代表向基岩版玩家所显示的MOTD可根据你的喜好配置仅支持最基础的颜色符号
**`server-name`**: 基岩版所看到的服务器名称,在暂停菜单和设置中可见
### Remote项
**若不使用独立版请忽略!**
**`address`**: 其代表目标服务器的地址若目标服务器和Geyser处于同一服务器下请不要更改
**`port`**: 请和目标服务器对外开放的端口一致
**`auth-type`**: 有offlineonline和floodgate模式offline和online分别对应离线和正版你目标服务器用的什么就选什么floodgate会在后续教程中解释
**若不使用独立版请忽略!**
**`address`**: 其代表目标服务器的地址若目标服务器和Geyser处于同一服务器下请不要更改
**`port`**: 请和目标服务器对外开放的端口一致
**`auth-type`**: 有offlineonline和floodgate模式offline和online分别对应离线和正版你目标服务器用的什么就选什么floodgate会在后续教程中解释
### 其他项
再往下翻你会注意到不少其他乱七八糟的项
这里挑几个重点
再往下翻你会注意到不少其他乱七八糟的项
这里挑几个重点
```yaml
passthrough-motd: true
@ -110,17 +111,17 @@ show-coordinates: true
above-bedrock-nether-building: false
```
**`passthrough-motd`**: 把Java版本的MOTD发送给基岩版
**`passthrough-player-counts`**: 将玩家数量和最大玩家数量发给基岩玩家
**`show-cooldown`**: 由于基岩版没有战斗冷却此功能会模拟一个冷却提示器你可以设置为title(小标题)actionbar(物品栏上方的标题) 或 false(关闭)
**`show-coordinates`**: 是否向玩家显示坐标
**`above-bedrock-nether-building`**: 开启后你将被允许在下届高度127以上建造缺点是整个下界中雾的颜色不再可变将一直是红色
**`passthrough-motd`**: 把Java版本的MOTD发送给基岩版
**`passthrough-player-counts`**: 将玩家数量和最大玩家数量发给基岩玩家
**`show-cooldown`**: 由于基岩版没有战斗冷却此功能会模拟一个冷却提示器你可以设置为title(小标题)actionbar(物品栏上方的标题) 或 false(关闭)
**`show-coordinates`**: 是否向玩家显示坐标
**`above-bedrock-nether-building`**: 开启后你将被允许在下届高度127以上建造缺点是整个下界中雾的颜色不再可变将一直是红色
## Floodagte
为进一步兼容,你需要安装 [floodgate](https://geysermc.org/download#floodgate)
floodgate可作为一个插件安装到Spigot及其分支的核心上或BungeeCordVelocity之类的代理上
群组服/独立版Geyser 的Floodgate安装需要进行一些额外步骤请跟随教程完成
floodgate可作为一个插件安装到Spigot及其分支的核心上或BungeeCordVelocity之类的代理上
群组服/独立版Geyser 的Floodgate安装需要进行一些额外步骤请跟随教程完成
:::warning
@ -128,106 +129,106 @@ floodgate可作为一个插件安装到Spigot及其分支的核心上或BungeeCo
:::
Floodgate是一个允许 **Minecraft 基岩版** 帐号加入 **Minecraft Java版** 正版服务器而无需其**正版账号**的混合模式插件
Floodgate是一个允许 **Minecraft 基岩版** 帐号加入 **Minecraft Java版** 正版服务器而无需其**正版账号**的混合模式插件
但**不止于此**
但**不止于此**
它还允许:
它还允许:
* 让Java版玩家看到基岩版玩家的皮肤
* 向基岩版玩家发送BE Form UI (基岩版独有的一种菜单格式)
* 允许基岩版玩家与Java版玩家进行账号数据间的连接
* 提供一个通用的API使更多插件可以兼容基岩版玩家
* 以基岩版XUID作为UUID储存数据使在基岩版玩家改名后不丢失数据
所以就算**非正版服务器**,也有**必要**安装此插件来获取更强大的兼容性
所以就算**非正版服务器**,也有**必要**安装此插件来获取更强大的兼容性
此外Floodgate有个小缺点在安装之后你无法直接使基岩版玩家和Java版玩家数据互通
这将在进阶教程中给出两个可行的解决办法
这将在进阶教程中给出两个可行的解决办法
### 基础配置
:::warning
由于Floodgate在设计时并未考虑离线服务器
接下来的教程中将告诉你如何进行调整以更好的适配离线服
由于Floodgate在设计时并未考虑离线服务器
接下来的教程中将告诉你如何进行调整以更好的适配离线服
:::
:::warning
若你在使用独立版Geyser或群组服请翻到下方跟随对应教程完成安装
若你在使用独立版Geyser或群组服请翻到下方跟随对应教程完成安装
:::
安装Floodgate后打开配置文件注意到以下项
安装Floodgate后打开配置文件注意到以下项
```yaml
username-prefix: "."
```
这是Floodgate为了区分基岩版玩家和Java版玩家而在基岩版玩家名称前添加的前缀
这是Floodgate为了区分基岩版玩家和Java版玩家而在基岩版玩家名称前添加的前缀
为什么?
为什么?
因为在安装Floodgate后基岩版玩家的UUID将会和Java版玩家有很大不同
若是遇到重名则会出现一个ID拥有两个完全不同的UUID这可能会发生一些无法预知的错误
而使用"."前缀是因为Java正版玩家名中不可使用"."
因为在安装Floodgate后基岩版玩家的UUID将会和Java版玩家有很大不同
若是遇到重名则会出现一个ID拥有两个完全不同的UUID这可能会发生一些无法预知的错误
而使用"."前缀是因为Java正版玩家名中不可使用"."
**但是**
这在离线服中,有几个问题:
* 离线服玩家名是可以任意修改的所以Java玩家一样可以使用相同前缀进入服务器
* 部分登录插件会禁止诸如带有"."玩家名的玩家进入服务器,这会导致基岩版玩家无法进入服务器
**但是**
这在离线服中,有几个问题:
* 离线服玩家名是可以任意修改的所以Java玩家一样可以使用相同前缀进入服务器
* 部分登录插件会禁止诸如带有"."玩家名的玩家进入服务器,这会导致基岩版玩家无法进入服务器
接下来我们来解决这些问题
接下来我们来解决这些问题
要解决第一个问题由于离线服务器玩家可以使用任何名称进入服务器我们可以选择禁止所有使用基岩版玩家名前缀的Java玩家进入服务器
要解决第一个问题由于离线服务器玩家可以使用任何名称进入服务器我们可以选择禁止所有使用基岩版玩家名前缀的Java玩家进入服务器
**此部分未完工,咕咕咕!**
**此部分未完工,咕咕咕!**
在第一个问题解决后,我们可以使用任意前缀作为基岩版玩家的区分
于是将前缀修改为诸如"BE_"这类的合法字符即可解决第二个问题
在第一个问题解决后,我们可以使用任意前缀作为基岩版玩家的区分
于是将前缀修改为诸如"BE_"这类的合法字符即可解决第二个问题
```yaml
username-prefix: "BE_"
```
### 独立版Geyser配置
首先按照基础配置在目标服务器安装Floodgate
然后注意到Floodgate配置文件夹下理应会生成一个叫key.pem的文件
将其复制到独立版Geyser配置文件夹下
首先按照基础配置在目标服务器安装Floodgate
然后注意到Floodgate配置文件夹下理应会生成一个叫key.pem的文件
将其复制到独立版Geyser配置文件夹下
然后来到Geyser配置文件
然后来到Geyser配置文件
找到Remote项中的 **`auth-type`**,并将其改为 **`floodgate`**
找到Remote项中的 **`auth-type`**,并将其改为 **`floodgate`**
```yaml
remote:
auth-type: floodgate
auth-type: floodgate
```
若Geyser已开启则重启Geyser即可完成配置
若Geyser已开启则重启Geyser即可完成配置
### 群组服配置
首先在群组端安装Floodgate并按照基础配置完成安装
首先在群组端安装Floodgate并按照基础配置完成安装
:::warning
不要将子服中的Floodgate配置直接复制到群组服会缺少某个重要项
不要将子服中的Floodgate配置直接复制到群组服会缺少某个重要项
:::
接下来来到群组服的Floodgate配置
找到 **`send-floodgate-data`** 这一项将其修改为true
接下来来到群组服的Floodgate配置
找到 **`send-floodgate-data`** 这一项将其修改为true
```yaml
send-floodgate-data: true
```
这样子服就可以接收到来自群组服的基岩版玩家数据了
请注意在开启此项后若子服不安装Floodgate则基岩版玩家则无法进入子服
但是此项很重要若不开启则在子服中Floodgate不起效果
这样子服就可以接收到来自群组服的基岩版玩家数据了
请注意在开启此项后若子服不安装Floodgate则基岩版玩家则无法进入子服
但是此项很重要若不开启则在子服中Floodgate不起效果
接下来在子服一一安装Floodgate并确保和群组服的Floodgate配置一致
然后注意到群组端Floodgate配置文件夹下理应会生成一个叫key.pem的文件
用群组服的key.pem将子服中的key.pem覆盖确保key.pem完全相同
接下来在子服一一安装Floodgate并确保和群组服的Floodgate配置一致
然后注意到群组端Floodgate配置文件夹下理应会生成一个叫key.pem的文件
用群组服的key.pem将子服中的key.pem覆盖确保key.pem完全相同
即可完成群组端配置
即可完成群组端配置
## 结尾
恭喜你,配置完毕!!,开始和你的好友一起玩吧
恭喜你,配置完毕!!,开始和你的好友一起玩吧

View File

@ -54,7 +54,7 @@ sidebar_position: 4
:::
:::note
:::note
其实这玩意真的没多大用,对于玩家来说,重启一下路由器或挂个代理就可以

View File

@ -24,7 +24,7 @@ sidebar_position: 1
人数 > 50 推荐使用多端均衡或者 Folia ,常见的分生存 x 区的就是多端。这两种方式都可以有效利用多核心。
对于多端,核心数量主要取决于总人数,每 100 玩家多加 4 - 8 个核心是较为合理的。
对于多端,核心数量主要取决于总人数,每 100 玩家多加 4 - 8 个核心是较为合理的。
而Folia 官方推荐的配置在 16 核心以上,如果是新手或对现有插件有严重依赖的不推荐使用,生态较差。

View File

@ -105,7 +105,7 @@ connection_throttle_limit 3
#### 狂套 Frp
这个方法比较缺德,我们只需要疯狂 frp ,一个 frp 被打死了,我们就换另一个 frp ,通知玩家重新连接就可以,根本打不死,此方法有点访问速度快的优点,但是缺点就是比较**缺德**
这个方法比较缺德,我们只需要疯狂 Frp ,一个 Frp 被打死了,我们就换另一个 Frp ,通知玩家重新连接就可以,但是缺点就是比较**缺德**,而且可能面临被清退!
#### 更换 IP
@ -113,6 +113,6 @@ connection_throttle_limit 3
:::danger
如果您使用的是腾讯云之类的大厂 vps ,永远不要尝试硬扛 ddos ,待会被黑洞一年别怪我
如果您使用的是腾讯云之类的大厂 VPS ,永远不要尝试硬扛 DDOS ,待会被黑洞一年别怪我
:::

View File

@ -6,9 +6,9 @@ sidebar_position: 1
简单的来说就是将多个服务器连成一个整体(比如你经常看到的某些生存一区,生存二区),玩家可以自由选择到哪个服务器,而不用退出重连,
不同服务器之间可以通过跨服同步比如HuskSync和数据库同步数据平时常听到的群组服也是一个意思. 跨服通常的实现方法是:
不同服务器之间可以通过跨服同步(比如 HuskSync )和数据库同步数据,平时常听到的群组服也是一个意思. 跨服通常的实现方法是:
一个反向代理端如Velocity/BungeeCord和多个子服务器如Paper/Purpur/Leaf等. 玩家只需要连接到反向代理端即可让反向代理端和子服务器联系,最后把玩家送到对应的服务器.
一个反向代理端(如 Velocity / BungeeCord )和多个子服务器(如 Paper / Purpur / Leaf 等). 玩家只需要连接到反向代理端即可让反向代理端和子服务器联系,最后把玩家送到对应的服务器.
# 原理讲解
@ -19,7 +19,7 @@ sidebar_position: 1
![](_images/灵魂画师教开群组服.png)
:::info
BungeeCord/Velocity端或他们的Fork在这里我们称为`跨服端`(或者称为上游服务器)
BungeeCord / Velocity 端(或他们的 Fork )在这里我们称为`跨服端`(或者称为上游服务器)
这三个服务器都称为 `子服` 图中为三个子服,子服没有先后之分(或者称为下游服务器)
@ -37,11 +37,11 @@ BungeeCord/Velocity端或他们的Fork在这里我们称为`跨服端`
3. 对单个服务器,在内存有一点点富裕的情况下(通常不到1GB),仍推荐使用代理端,服务端对于反假人攻击的性能不如代理端,如果你被攻击了,更换成代理端再说;
4. 有些插件是代理端才能安装的,而在 Bukkit 系下可能不稳定(如[MultiLogin](https://github.com/CaaMoe/MultiLogin)).
4. 有些插件是代理端才能安装的,而在 Bukkit 系下可能不稳定(如[ MultiLogin ](https://github.com/CaaMoe/MultiLogin)).
# 推荐用什么?
推荐使用Velocity
**推荐使用 Velocity**,除非你的版本不适合 Velocity 如 1.13+ 的 Forge 服务器。
## 安装数据库