From 4f795d428433242b612ced9c0e7c1cc41849beb9 Mon Sep 17 00:00:00 2001 From: postyizhan <185839426@qq.com> Date: Sat, 4 May 2024 20:43:42 +0800 Subject: [PATCH] =?UTF-8?q?+=20bc=E7=AB=AF=E7=9A=84=E4=B8=9C=E8=A5=BF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/跨服端/搭建/BungeeCord/config.yml.md | 72 ++++++++++++++++++++++ docs/跨服端/搭建/BungeeCord/命令.md | 19 ++++++ docs/跨服端/搭建/BungeeCord/搭建.md | 75 +++++++++++++++++++++++ docs/跨服端/搭建/BungeeCord/概览.md | 2 +- docs/跨服端/搭建/Velocity/搭建.md | 8 ++- docs/跨服端/{ => 搭建}/怎么做登录服.md | 0 docs/跨服端/概览.md | 6 +- docs/跨服端/注意事项.md | 19 ++++++ 8 files changed, 194 insertions(+), 7 deletions(-) create mode 100644 docs/跨服端/搭建/BungeeCord/config.yml.md create mode 100644 docs/跨服端/搭建/BungeeCord/命令.md create mode 100644 docs/跨服端/搭建/BungeeCord/搭建.md rename docs/跨服端/{ => 搭建}/怎么做登录服.md (100%) create mode 100644 docs/跨服端/注意事项.md diff --git a/docs/跨服端/搭建/BungeeCord/config.yml.md b/docs/跨服端/搭建/BungeeCord/config.yml.md new file mode 100644 index 000000000..02c78111d --- /dev/null +++ b/docs/跨服端/搭建/BungeeCord/config.yml.md @@ -0,0 +1,72 @@ +--- +sidebar_position: 3 +--- + +# config.yml + +``` +# forgeMOD支持,如果你的服务器中有MOD服务器,请打开这个选项 +forge_support: false +# 玩家真实限制,它将限制整个服务器的玩家人数,-1为不限 +player_limit: -1 +# BC服务器权限组 不建议用这东西而是使用bc版luckperms +permissions: + default: + - bungeecord.command.server + - bungeecord.command.list + admin: + - bungeecord.command.alert + - bungeecord.command.end + - bungeecord.command.ip + - bungeecord.command.reload +# 当玩家在BC中无响应多长时间,BC才会将他踢出去,在这里是毫秒,一秒等于1000毫秒,30000=30秒 +timeout: 30000 +# 正版验证,如果是盗版服请关闭,否则会调用API进行验证 +log_commands: false +online_mode: true +# 这里是服务器禁止的指令,例如我填- help服务器就会禁用/help指令 +disabled_commands: +- disabledcommandhere +servers: + lobby: + # 服务器标语 (不用设置,建议用插件而不是这玩意) + motd: '&1Just another BungeeCord - Forced Host' + # 服务器地址 + address: localhost:25565 + restricted: false +# 这是子服务器的列表,在下面我会讲解 +listeners: + # 监听查询端口,端口不能和host项的相同。 +- query_port: 25577 + # BC的标语,支持彩色 (也不用设置) + motd: '&1Another Bungee server' + tab_list: GLOBAL_PING + # 是否开启监听查询 + query_enabled: false + proxy_protocol: false + forced_hosts: + pvp.md-5.net: pvp + ping_passthrough: false + # 优先服务器列表 玩家将优先加入靠上设置的子服,进不去会尝试下一个子服 + priorities: + - lobby + bind_local_address: true + # BC的IP地址,开启后访问它就能进入服务器 + host: 0.0.0.0:25577 + # 服务器显示的最大人数,如要设置真实的人数请找到player_limit选项填写 + max_players: 1 + tab_size: 60 + force_default_server: false +# 一定要打开,否则会被拒绝 +ip_forward: false +# BC op设置,这也是漏洞之一,待会修改 +network_compression_threshold: 256 +groups: + md_5: + - admin +# 连接间隔,当玩家退出后多就能加入,在这里一秒等于1000,4000=4秒 +connection_throttle: 4000 +# 机器码,请不要修改,修改之后就会duang的没用 +stats: c86020bc-ddf6-467e-84d9-90974afcf90e +prevent_proxy_connections: false +``` \ No newline at end of file diff --git a/docs/跨服端/搭建/BungeeCord/命令.md b/docs/跨服端/搭建/BungeeCord/命令.md new file mode 100644 index 000000000..92e5199b0 --- /dev/null +++ b/docs/跨服端/搭建/BungeeCord/命令.md @@ -0,0 +1,19 @@ +--- +sidebar_position: 4 +--- + +# 命令 + +| 命令 | 权限 | 描述 | +| --- | --- |--- | +| `/alert` | `bungeecord.command.alert` | 发送一条整个群组的公告,会显示在所有的子服务器内。颜色符是&,使用&h 可以清除所有默认的格式 | +| `/alertraw ` | `bungeecord.command.alert` | 和上一个命令一样,但是仅允许使用json格式的内容 | +| `/bungee` | N/A | 显示BungeeCord的版本信息 | +| `/end` | `bungeecord.command.end` | 关闭BungeeCord代理端,类似于Bukkit服务器下的/stop | +| `/find` | `bungeecord.command.find` | 确认指定玩家是否在线和他现在在哪个子服务器内 | +| `/glist` | `bungeecord.command.list` | 显示所有的子服务器和每个服务器当前在线人数 | +| `/greload` | `bungeecord.command.reload` | 重载BungeeCord代理端的配置文件,将重新载入子服务器列表、监听选项和一些配置项目,但是不会重载BC端插件和权限 | +| `/ip` | `bungeecord.command.ip` | 查看指定玩家的真实连接IP | +| `/perms` | `N/A` | 显示你拥有的权限和所在权限组 | +| `/send` | `bungeecord.command.send` | 将指定玩家移动到目标子服务器,使用“current”将会把你所在服务器的所有玩家移动到目标服务器,使用“all”将会把整个群组下的玩家移动到目标服务器。子服务器名就是你在“config.yml”的“servers”下面设置的服务器名 | +| `/server` | `bungeecord.command.server` | 送到指定子服务器,这个权限默认是高于Bukkit插件权限的,也就是说玩家可以在未登录之前使用此命令跳转到另外一个服务器,如果另外的服务器没登陆插件,那么通过此方法就可以使用到OP账号 | diff --git a/docs/跨服端/搭建/BungeeCord/搭建.md b/docs/跨服端/搭建/BungeeCord/搭建.md new file mode 100644 index 000000000..d6aa27490 --- /dev/null +++ b/docs/跨服端/搭建/BungeeCord/搭建.md @@ -0,0 +1,75 @@ +--- +sidebar_position: 2 +--- + +# 搭建 + +## 下载 + +前往 [核心选择](/docs/跨服端/核心选择.md) + +1.7.10用BungeeCord的 [构建1119](https://ci.md-5.net/job/BungeeCord/1119/) + +## 启动 + +创建一个新的文件夹将核心放进去 + +并且使用参数启动以生成初始文件 + +如果想进一步优化可以使用JVM参数 [Waterfall官方](https://docs.papermc.io/waterfall/getting-started#running-the-proxy)有推荐的flags + +```bash +java -Xms1024M -Xmx1024M -jar 核心名字.jar +``` + +## 配置 + +### config.yml +配置BungeeCord端根目录中的 `config.yml` +``` +servers: + lobby: + motd: '&1Just another BungeeCord - Forced Host' + address: localhost:25565 + restricted: false +``` + +其实不用解释你也看得懂吧 + +``` +servers: + 子服名称: + motd: '服务器标语' + address: 服务器地址:服务器端口 + restricted: false + +``` + +照着把你的子服都写上去,就像这样 + +``` +servers: + login: + motd: '&1Just another BungeeCord - Forced Host' + address: localhost:25501 + restricted: false + survival: + motd: '&1Just another BungeeCord - Forced Host' + address: localhost:25502 + restricted: false + resource: + motd: '&1Just another BungeeCord - Forced Host' + address: localhost:25503 + restricted: false +``` + +### 子服bc模式 +配置子服端根目录中的 `spigot.yml` +``` + bungeecord: false +``` +把这个打开 它在settings节点下 + +## 加入 + +见 [加入服务器](/docs/跨服端/搭建/加入服务器.md) \ No newline at end of file diff --git a/docs/跨服端/搭建/BungeeCord/概览.md b/docs/跨服端/搭建/BungeeCord/概览.md index 3a51f111a..bc14b3f05 100644 --- a/docs/跨服端/搭建/BungeeCord/概览.md +++ b/docs/跨服端/搭建/BungeeCord/概览.md @@ -4,4 +4,4 @@ sidebar_position: 1 # 概览 -TODO \ No newline at end of file +此篇教程适用于 BungeeCord/waterfall diff --git a/docs/跨服端/搭建/Velocity/搭建.md b/docs/跨服端/搭建/Velocity/搭建.md index 8845e5f79..e5c71d73d 100644 --- a/docs/跨服端/搭建/Velocity/搭建.md +++ b/docs/跨服端/搭建/Velocity/搭建.md @@ -14,10 +14,10 @@ sidebar_position: 2 并且使用参数启动以生成初始文件 -如果想进一步优化可以使用JVM参数 [Velocity官方](https://docs.papermc.io/velocity/getting-started)有推荐的flags +如果想进一步优化可以使用JVM参数 [Velocity官方](https://docs.papermc.io/velocity/getting-started#launching-velocity-under-windows)有推荐的flags ```bash -java -Xms1000M -Xmx1000M -jar 核心名字.jar +java -Xms1024M -Xmx1024M -jar 核心名字.jar ``` ## 配置 @@ -160,4 +160,6 @@ Velocity支持将玩家信息(如IP地址、UUID和皮肤)转发到您的服 -接着便可以加入加入服务器测试了 \ No newline at end of file +## 加入 + +见 [加入服务器](/docs/跨服端/搭建/加入服务器.md) \ No newline at end of file diff --git a/docs/跨服端/怎么做登录服.md b/docs/跨服端/搭建/怎么做登录服.md similarity index 100% rename from docs/跨服端/怎么做登录服.md rename to docs/跨服端/搭建/怎么做登录服.md diff --git a/docs/跨服端/概览.md b/docs/跨服端/概览.md index 1efffd0bd..bb62f721e 100644 --- a/docs/跨服端/概览.md +++ b/docs/跨服端/概览.md @@ -6,7 +6,7 @@ sidebar_position: 1 简单的来说就是将多个服务器连成一个整体(比如你经常看到的某些生存一区, 生存二区), 玩家可以自由选择到哪个服务器, 而不用退出重连, -不同服务器之间可以通过跨服同步(比如HuskSync)和数据库同步数据, 平时常听到的群组服也是一个意思. 跨服通常的实现方法是: +不同服务器之间可以通过跨服同步(比如HuskSync)和数据库同步数据, 平时常听到的群组服也是一个意思. 跨服通常的实现方法是: 一个反向代理端(如velocity/bungeecord)和多个子服务器(如paper/purpur/leaf等). 玩家只需要连接到反向代理端即可让反向代理端和子服务器联系, 最后把玩家送到对应的服务器. @@ -19,9 +19,9 @@ sidebar_position: 1 ![](_images/灵魂画师教开群组服.png) :::info -BungeeCord/velocity端(或他们的fork)在这里我们称为`跨服端` +BungeeCord/velocity端(或他们的fork)在这里我们称为`跨服端`(或者称为上游服务器) -这三个服务器都称为 `子服` 图中为三个子服,子服没有先后之分 +这三个服务器都称为 `子服` 图中为三个子服,子服没有先后之分(或者称为下游服务器) ::: diff --git a/docs/跨服端/注意事项.md b/docs/跨服端/注意事项.md new file mode 100644 index 000000000..cb8101a89 --- /dev/null +++ b/docs/跨服端/注意事项.md @@ -0,0 +1,19 @@ +--- +sidebar_position: 4 +--- + +# 注意事项 + +## 不要给子服开放公网 + +不要不要不要给子服开公网!!! + +你的玩家只要靠跨服端就可以去到子服,如果你脑子有问题非要给子服开公网...... + +这将会导致很多问题,比如绕过登录服随便登录别人账号,窃取op账号权限等 + +## 不要给玩家/server权限 + +用`菜单/npc`或其他东西跨服,但是不要给玩家这个权限,会被玩家发现服主的小♂秘♂密♂ + +这个权限默认是高于Bukkit插件权限的,也就是说玩家可以在未登录之前使用此命令跳转到另外一个服务器,如果另外的服务器没登陆插件,那么通过此方法就可以使用到OP账号 \ No newline at end of file