### **CommandBridge**

**正在重写,预计未来2-3个月内将减少或停止更新。最新版本已稳定。**
该插件连接**Velocity**和**Paper**服务器,实现**跨服务器命令执行**。它具体做了什么:
- **自定义脚本**: 为服务器类型定义命令脚本。
- **双向通信**:
- 在 Velocity 上运行命令 → 匹配的命令在 Paper 上执行。
- 在 Paper 上运行命令 → 匹配的命令在 Velocity 上执行。
- **WebSocket 支持**: 确保服务器之间快速、可靠和**实时**通信。
- **占位符支持**: 使用占位符进行动态命令执行。
有了这个插件,你可以创建**全球游戏体验**,让它们感觉流畅且互联!
---
### 要求
**CommandBridge** v2.0.0 引入了新的要求和更新:
- **Java 21 必需**: 服务器必须运行在 Java 21 上。
- **Minecraft 兼容性**: 完全兼容 Minecraft 1.21.x 和 1.20.x 版本。
- **单个 JAR 文件**: 只需下载 `CommandBridge-XXX-all.jar`。
- **双重放置**: JAR 文件必须放置在目标 Paper 服务器和 Velocity 服务器中才能正常工作。
- **插件兼容性**: 专为 Paper 服务器设计,尽管它可能适用于其他软件(未测试)。
> **重要提示**: 这些要求仅适用于 **2.0.0** 及更高版本。
---
### 新闻
**2.0.0 版本发布**带来了重大更新和改进:
- **重写代码**: 更干净、更快、更可靠。
- **WebSocket 技术**: 替换插件消息,以解决如果服务器没有玩家在线时无法发送消息的问题。
- **Alpha 版本**: 仍处于早期阶段,因此可能存在一些粗糙之处。
---
### 安装 (简短版)
详细说明请访问 [网站](https://cb.objz.dev)。
1. **添加 JAR**: 将插件 JAR 放在 Paper 和 Velocity 服务器的 `plugins` 文件夹中。
2. **重启服务器**: 重启两个服务器。重启后,将在 Velocity 服务器的 `plugins/CommandBridge` 文件夹中生成一个 `secret.key` 文件。
3. **保护密钥**:
- 在 Velocity 服务器上打开 `secret.key`。
- 复制密钥并将其粘贴到所有 Paper 服务器的 `config.yml` 中的 `secret` 字段中。
- **不要分享此密钥。**
4. **打开端口**:
- 为 Velocity 服务器选择一个未使用的端口。
- 在 Velocity 和 Paper 服务器的 `config.yml` 中配置此端口。
5. **设置服务器 IP**:
- 找到你的 Velocity 服务器的 IP 地址(纯 IP,不是域名)。
- 使用此 IP 更新 Velocity 的 `config.yml` 中的 `host` 字段和所有 Paper 服务器的 `remote` 字段。
6. **设置标识符**:
- 在 Velocity 中:设置一个 `server-id`(你可以喜欢的任何名称)。
- 在 Paper 中:设置一个匹配的 `client-id`。
7. **重启顺序**: 在 Paper 服务器之前重启 Velocity 服务器。
设置完成后,你应该在 Velocity 控制台中看到如下日志:
```plaintext
[21:10:10 INFO] [CommandBridge]: Client authenticated successfully: /127.0.0.1:42918
[21:10:10 INFO] [CommandBridge]: Added connected client: lobby
```
现在你可以创建脚本了!
---
### 未来计划
激动人心的功能和改进正在计划中:
- **多 Velocity 服务器支持**: 连接额外的 Velocity 服务器以充当客户端。
- **脚本 GUI 菜单**: 使用易于使用的图形界面创建和管理脚本。
- **错误修复**: 持续改进以确保稳定性和性能。
- **Dump 命令 & 工具**: 与网站和 Discord 机器人集成,用于故障排除和支持。
- **等等!**
敬请期待更新和新功能!🎉
---
### 帮助或问题
- 在 [GitHub](https://github.com/objz/CommandBridge/issues) 上报告问题。
- 加入 [Discord 服务器](https://discord.gg/QPqBYb44ce) 以获取支持。
---
### 指标收集
此插件通过 [bStats](https://bstats.org/) 收集匿名服务器统计数据,这是一个 Minecraft 插件的开源统计服务。 你可以在 `plugins/bStats/config.yml` 中禁用此功能。

---
### 贡献
加入 [Discord 服务器](https://discord.gg/QPqBYb44ce) 或访问 [GitHub](https://github.com/objz/CommandBridge) 以获取有关为项目做出贡献的更多信息。