From fb9586cf5d6a38cf9d7adae0cf7223d05bfd9146 Mon Sep 17 00:00:00 2001 From: daoge <3523206925@qq.com> Date: Wed, 25 Mar 2026 15:13:35 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E6=B7=BB=E5=8A=A0Allay=E7=9B=B8?= =?UTF-8?q?=E5=85=B3=E6=95=99=E7=A8=8B=20(#48)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * feat: 添加Allay相关教程 * feat: 添加 3-NetAllay常用接口文档.md * docs: 更新NetAllay支持说明,添加常用接口文档链接 --- .../课程12:使用Allay开服/0-Allay部署教程.md | 79 ++++ .../课程12:使用Allay开服/1-启用网易支持.md | 51 +++ .../2-使用WaterdogPE搭建群组服.md | 85 ++++ .../课程12:使用Allay开服/3-NetAllay常用接口文档.md | 399 ++++++++++++++++++ .../课程12:使用Allay开服/README.md | 0 .../images/installation-p1.png | Bin 0 -> 60486 bytes 6 files changed, 614 insertions(+) create mode 100644 mcguide/27-手机网络游戏/课程12:使用Allay开服/0-Allay部署教程.md create mode 100644 mcguide/27-手机网络游戏/课程12:使用Allay开服/1-启用网易支持.md create mode 100644 mcguide/27-手机网络游戏/课程12:使用Allay开服/2-使用WaterdogPE搭建群组服.md create mode 100644 mcguide/27-手机网络游戏/课程12:使用Allay开服/3-NetAllay常用接口文档.md create mode 100644 mcguide/27-手机网络游戏/课程12:使用Allay开服/README.md create mode 100644 mcguide/27-手机网络游戏/课程12:使用Allay开服/images/installation-p1.png diff --git a/mcguide/27-手机网络游戏/课程12:使用Allay开服/0-Allay部署教程.md b/mcguide/27-手机网络游戏/课程12:使用Allay开服/0-Allay部署教程.md new file mode 100644 index 0000000..30d4760 --- /dev/null +++ b/mcguide/27-手机网络游戏/课程12:使用Allay开服/0-Allay部署教程.md @@ -0,0 +1,79 @@ +--- +front: +hard: 入门 +time: 15分钟 +--- + +# Allay部署教程 + +本系列教程将指导您使用Allay搭建一个服务器,安装NetAllay以使用网易独有接口,以及使用WaterdogPE搭建群组服。 + +本系列教程主要侧重于网易版相关内容。有关Allay的更多文档,请移步至[AllayMC官方文档站](https://docs.allaymc.org)。 + +相关链接: +- AllayMC交流群(QQ):1072132791 +- AllayMC官方文档站:https://docs.allaymc.org +- AllayMC插件市场:https://hub.allaymc.org +- AllayMC代码仓库:https://github.com/AllayMC/Allay + +## 安装Java + +Allay 需要**Java 21**才能运行。市面上有多种 Java 发行版,但我们推荐以下版本: + +- [**GraalVM**](https://www.graalvm.org/) – 提供更好的性能 +- [**OpenJDK**](https://adoptium.net/) – 提供更佳的稳定性 + +安装后,通过运行以下程序验证 Java 是否正确安装: + +```shell +java --version +``` + +如果 Java 安装正确,您应该能看到没有错误提示的版本输出。 + +## 使用AllayLauncher + +[AllayLauncher](https://github.com/AllayMC/AllayLauncher)是一个轻量级、快速的工具(用C++编写),能帮您轻松下载、更新和管理您的Allay实例。 + +安装它只需执行一个命令: + +Windows (PowerShell): +```powershell +Invoke-Expression (Invoke-WebRequest -Uri "https://raw.githubusercontent.com/AllayMC/AllayLauncher/refs/heads/main/scripts/install_windows.ps1").Content +``` + +Linux: +```bash +wget -qO- https://raw.githubusercontent.com/AllayMC/AllayLauncher/refs/heads/main/scripts/install_linux.sh | bash +``` + +## 手动安装Allay + +### 获取Allay核心文件 + +请从[GitHub Releases](https://github.com/AllayMC/Allay/releases/latest)页面获取最新稳定版本。您也可以尝试[Nightly Build](https://github.com/AllayMC/Allay/releases/tag/nightly)。 + +您应该会得到一个文件,名称如下: +``` +allay-server--[-dev]-shaded.jar +``` + +示例: +``` +allay-server-0.1.0-dev-shaded.jar +``` + +> `-dev`后缀表示开发版本。 + +### 运行服务器 + +如果您的系统有图形界面(GUI),只需双击jar文件即可。如果正确安装了Java,会出现类似这样的窗口: + +![installation-p1.png](images/installation-p1.png) + +如果您在无头服务器(无图形界面)上,使用以下命令启动服务器: +```bash +java -jar allay-server-*-shaded.jar +``` + +您会在终端看到同样的启动输出。 \ No newline at end of file diff --git a/mcguide/27-手机网络游戏/课程12:使用Allay开服/1-启用网易支持.md b/mcguide/27-手机网络游戏/课程12:使用Allay开服/1-启用网易支持.md new file mode 100644 index 0000000..69c6ad3 --- /dev/null +++ b/mcguide/27-手机网络游戏/课程12:使用Allay开服/1-启用网易支持.md @@ -0,0 +1,51 @@ +--- +front: +hard: 入门 +time: 20分钟 +--- + +# 启用网易支持 + +本文将指导您调整服务器设置以允许网易客户端进服,如果您并不了解如何部署一个Allay服务器,请移步至[Allay部署教程](0-Allay部署教程.md)。 + +## 调整`server-settings.yml` + +Allay默认不允许网易客户端进服,需要修改服务器根目录下`server-settings.yml`中的如下配置项: + +```yaml +network-settings: + # Enable support for NetEase (China) Minecraft clients + netease-client-support: true + # If set to true, only NetEase clients can join the server + # This option only takes effect when netease-client-support is enabled + only-allow-netease-client: false +``` + +您还可以将`only-allow-netease-client`设置为`true`,以阻止国际版客户端进服。 + +## 安装NetAllay(可选) + +Allay的API模块默认不提供网易版独有接口,例如PyRpc,商城接口等。如需使用,您需要在服务器上安装[NetAllay](https://github.com/AllayMC/NetAllay)。 +您需要从Release页面下载NetAllay的jar包并将其放入服务器的`plugins`文件夹内。 + +如果您的插件需要调用NetAllay的接口,需要在项目中引入NetAllay作为依赖: +```kotlin +repositories { + mavenCentral() +} + +dependencies { + compileOnly("org.allaymc:net-allay:") +} + +allay { + plugin { + dependency("NetAllay") + } +} +``` + +有关NetAllay的更多内容: + +- 常用接口文档请见[NetAllay常用接口文档](3-NetAllay常用接口文档.md) +- 源码与项目仓库请见:https://github.com/AllayMC/NetAllay diff --git a/mcguide/27-手机网络游戏/课程12:使用Allay开服/2-使用WaterdogPE搭建群组服.md b/mcguide/27-手机网络游戏/课程12:使用Allay开服/2-使用WaterdogPE搭建群组服.md new file mode 100644 index 0000000..9528f0d --- /dev/null +++ b/mcguide/27-手机网络游戏/课程12:使用Allay开服/2-使用WaterdogPE搭建群组服.md @@ -0,0 +1,85 @@ +--- +front: +hard: 进阶 +time: 30分钟 +--- + +# 使用WaterdogPE搭建群组服 + +本文将指导您使用WaterdogPE搭建群组服务器,您需要具有群组服部署相关经验。WaterdogPE是一款适用于MCBE的群组服(反代)软件,类似MCJE的BungeeCord以及Velocity。 +有关更多WaterdogPE的相关文档,您可以移步至其[官方文档站](https://docs.waterdog.dev/books/waterdogpe-setup),本文将侧重于网易相关内容。 + +## 构建WaterdogPE + +由于WaterdogPE官方仓库并未提供网易客户端支持,您需要使用[AllayMC的分叉版本](https://github.com/AllayMC/WaterdogPE),请自行构建jar包。 + +## 启用网易支持 + +WaterdogPE启动后会生成一个`config.yml`配置文件,您需要修改以下配置项以启用网易客户端支持: + +```yaml +netease_client_support: true +# Optional: only allow NetEase clients to connect +only_allow_netease_client: false +``` + +> 启用网易客户端支持后,所有RakNet v8客户端都将被视为网易客户端。 + +## 配置下游服务器 + +在`config.yml`中,您需要配置WaterdogPE所代理的下游Allay服务器。以下是一个示例配置: + +```yaml +# 下游服务器列表 +servers: + lobby: + address: 127.0.0.1:19133 + public_address: play.myserver.com:19133 + survival: + address: 127.0.0.1:19134 + +# 玩家连接时的服务器优先级(玩家进服后默认进入列表中的第一个服务器) +priorities: + - lobby + - survival + +# 强制域名映射(可选) +forced_hosts: + lobby.myserver.com: lobby +``` + +其中: +- `address`:下游服务器的实际地址和端口 +- `public_address`:(可选)公开地址,用于玩家直连该子服 +- `priorities`:玩家进入代理后默认连接的服务器顺序 + +## 其他常用配置 + +以下是`config.yml`中一些值得关注的配置项: + +```yaml +# 代理监听地址与端口 +host: 0.0.0.0:19132 +# 最大玩家数 +max_players: 20 + +# 传递玩家真实信息到下游服务器(推荐启用) +use_login_extras: true + +# 启用快速转服(玩家在子服之间转移时不会断开连接) +fast_transfer: true + +# 压缩等级设置 +# 上行(代理→客户端),值越高带宽越省但CPU占用越高 +upstream_compression_level: 7 +# 下行(代理→子服),本地网络可设为较低值 +downstream_compression_level: -1 +``` + +> `use_login_extras`启用后,代理会在LoginPacket中附加`Waterdog_IP`(玩家真实IP)和`Waterdog_XUID`(玩家XUID)等信息,方便下游服务器获取玩家的真实连接信息。 + +## 配置下游Allay服务器 + +下游Allay服务器同样需要启用网易客户端支持,请参考[启用网易支持](1-启用网易支持.md)。 + +此外,请确保每个下游Allay服务器监听的端口与WaterdogPE中配置的`address`端口一致。例如,若WaterdogPE中配置了`lobby`服务器地址为`127.0.0.1:19133`,则对应Allay服务器的端口应设置为`19133`。 \ No newline at end of file diff --git a/mcguide/27-手机网络游戏/课程12:使用Allay开服/3-NetAllay常用接口文档.md b/mcguide/27-手机网络游戏/课程12:使用Allay开服/3-NetAllay常用接口文档.md new file mode 100644 index 0000000..90a9218 --- /dev/null +++ b/mcguide/27-手机网络游戏/课程12:使用Allay开服/3-NetAllay常用接口文档.md @@ -0,0 +1,399 @@ +--- +front: +hard: 进阶 +time: 30分钟 +--- + +# NetAllay常用接口文档 + +本文整理了`NetAllay`项目中最常用、最适合插件开发直接使用的接口,方便您在Allay服务器中调用网易版独有能力,例如PyRpc通信与商城能力。 + +如果您尚未安装NetAllay,请先阅读[启用网易支持](1-启用网易支持.md)。 + +## 获取NetAllay实例 + +调用接口前,先拿到`NetAllay`插件实例: + +```java +import org.allaymc.api.server.Server; +import org.allaymc.netallay.NetAllay; + +// 方式一:直接获取静态实例 +NetAllay netAllay = NetAllay.getInstance(); + +// 方式二:通过插件管理器获取 +NetAllay netAllay = (NetAllay) Server.getInstance() + .getPluginManager() + .getPlugin("NetAllay"); +``` + +## PyRpc事件监听 + +### 监听客户端发来的事件 + +最常用的入口是`listenForEvent`,用于监听网易客户端发送到服务端的PyRpc事件。 + +```java +netAllay.listenForEvent( + "MyMod", + "MySystemCS", + "OnButtonClick", + (player, data) -> { + String buttonId = (String) data.get("buttonId"); + plugin.getPluginLogger().info("玩家点击了按钮: {}", buttonId); + } +); +``` + +参数说明: + +- `namespace`:命名空间,一般对应客户端Mod命名空间 +- `systemName`:客户端系统名 +- `eventName`:事件名 +- `handler`:回调函数,参数为`Player`和`Map` + +### 取消事件监听 + +如果您不再需要某个监听器,可以调用以下接口: + +```java +boolean removed = netAllay.unlistenForEvent(namespace, systemName, eventName, handler); + +netAllay.unlistenAllForEvent(namespace, systemName, eventName); +``` + +其中: + +- `unlistenForEvent`:取消一个具体处理器 +- `unlistenAllForEvent`:取消某个事件下的全部处理器 + +## 向客户端发送PyRpc事件 + +### 发送给单个玩家 + +```java +Map data = new LinkedHashMap<>(); +data.put("message", "Hello from server!"); +data.put("timestamp", System.currentTimeMillis()); + +boolean success = netAllay.notifyToClient( + player, + "MyMod", + "MySystemSS", + "ServerMessage", + data +); +``` + +该方法返回`boolean`,表示是否发送成功。若玩家不是网易客户端,则会返回`false`。 + +### 立即发送 + +若您希望不经过缓冲立即下发,可以使用: + +```java +boolean success = netAllay.notifyToClientImmediately( + player, + "MyMod", + "MySystemSS", + "ServerMessage", + data +); +``` + +### 发送给多个玩家 + +```java +int successCount = netAllay.notifyToMultiClients( + players, + "MyMod", + "MySystemSS", + "Announcement", + Map.of("content", "服务器公告") +); +``` + +返回值为成功发送的玩家数量。 + +### 发送给附近玩家 + +```java +var center = player.getControlledEntity().getLocation(); + +int count = netAllay.notifyToClientsNearby( + null, + center, + 50.0, + "MyMod", + "MySystemSS", + "NearbyEvent", + Map.of("type", "explosion") +); +``` + +参数中的`except`可用于排除某个玩家;若不需要排除,传`null`即可。 + +### 广播到世界、维度或全服 + +广播接口统一为`broadcastToAllClient`,但有三个重载版本: + +```java +// 广播到指定世界 +int worldCount = netAllay.broadcastToAllClient( + null, + world, + "MyMod", + "MySystemSS", + "WorldEvent", + data +); + +// 广播到指定维度 +int dimensionCount = netAllay.broadcastToAllClient( + null, + dimension, + "MyMod", + "MySystemSS", + "DimensionEvent", + data +); + +// 广播到整个服务器 +int serverCount = netAllay.broadcastToAllClient( + null, + "MyMod", + "MySystemSS", + "GlobalEvent", + data +); +``` + +## 工具接口 + +### 判断玩家是否为网易客户端 + +```java +boolean netease = netAllay.isNetEasePlayer(player); +``` + +### 获取当前注册的事件数量 + +```java +int count = netAllay.getRegisteredEventCount(); +``` + +## 特殊常量 + +### `LOCAL_PLAYER_ENTITY_ID` + +```java +int entityId = NetAllay.LOCAL_PLAYER_ENTITY_ID; // -2 +``` + +这个常量表示“接收消息的玩家自己”。常见用法是把实体ID传给客户端时,使用`-2`代表当前玩家自身实体。 + +```java +netAllay.notifyToClient( + player, + "MyMod", + "MySystemSS", + "Welcome", + Map.of("entityId", NetAllay.LOCAL_PLAYER_ENTITY_ID) +); +``` + +注意:`-2`只能在单播接口`notifyToClient`或`notifyToClientImmediately`中使用,不要在多播或广播接口中使用。 + +## 事件数据支持的类型 + +`NetAllay`的事件数据类型为`Map`,其中值通常支持以下类型: + +- `null` +- `Boolean` +- `Integer`、`Long` +- `Float`、`Double` +- `String` +- `byte[]` +- `Map` +- `List`、`Iterable` + +一个常见示例: + +```java +Map data = new LinkedHashMap<>(); +data.put("title", "测试标题"); +data.put("count", 1); +data.put("extra", Map.of("flag", true)); +data.put("list", List.of("a", "b", "c")); +``` + +## 商城接口 + +`NetAllay`内置了商城管理器`ShopManager`,用于控制网易商城界面与监听商城事件。 + +### 获取商城管理器 + +```java +var shopManager = netAllay.getShopManager(); +``` + +### 控制商城入口与界面 + +```java +// 是否启用自定义商城入口 +netAllay.enableCustomShopEntry(true); + +// 打开商城 +netAllay.openShop(player); + +// 关闭商城 +netAllay.closeShop(player); + +// 显示一行提示 +netAllay.showHint(player, "购买成功"); + +// 显示两行提示 +netAllay.showHint(player, "购买成功", "奖励已发放"); +``` + +这些方法本质上是对`ShopManager`的便捷封装。 + +### 监听商城事件 + +商城常见事件定义在`ShopEvent`中: + +- `ShopEvent.PLAYER_BUY_ITEM_SUCCESS`:玩家购买成功 +- `ShopEvent.PLAYER_URGE_SHIP`:玩家催发货 +- `ShopEvent.CLIENT_LOAD_ADDON_FINISH`:客户端加载Addon完成 + +注册示例: + +```java +shopManager.listenForShopEvent(ShopEvent.PLAYER_BUY_ITEM_SUCCESS, (player, data) -> { + plugin.getPluginLogger().info("玩家 {} 完成了一笔购买", player.getOriginName()); +}); + +shopManager.listenForShopEvent(ShopEvent.PLAYER_URGE_SHIP, (player, data) -> { + plugin.getPluginLogger().info("玩家 {} 请求催发货", player.getOriginName()); +}); +``` + +取消监听: + +```java +boolean removed = shopManager.unlistenForShopEvent(ShopEvent.PLAYER_BUY_ITEM_SUCCESS, handler); +``` + +### 按玩家覆盖商城配置 + +如果您希望不同玩家拿到不同的商城参数,可以为玩家设置单独配置: + +```java +ShopManager.PlayerShopConfig config = new ShopManager.PlayerShopConfig(); +config.setGameId("123456"); +config.setUseCustomShop(true); +config.setTestServer(false); +config.setCacheTime(1); +config.setUid(0L); +config.setPlatformUid(""); + +shopManager.setPlayerConfig(player, config); +``` + +获取和移除配置: + +```java +ShopManager.PlayerShopConfig config = shopManager.getPlayerConfig(player); +shopManager.removePlayerConfig(player); +``` + +## 配置文件 + +NetAllay会在插件目录生成`config.json`。当前源码中的默认配置如下: + +```json +{ + "shop": { + "gameId": "", + "gameKey": "", + "testGameKey": "", + "testServer": false, + "useCustomShop": false, + "cacheTime": 1, + "shopServerUrl": "", + "webServerUrl": "" + } +} +``` + +其中商城相关字段含义如下: + +- `gameId`:资源数字ID +- `gameKey`:正式服签名密钥 +- `testGameKey`:测试服签名密钥 +- `testServer`:是否使用测试服模式 +- `useCustomShop`:是否隐藏默认商城按钮并改为自定义入口 +- `cacheTime`:商城配置缓存时间,单位为秒 +- `shopServerUrl`:自定义订单服务地址,可留空 +- `webServerUrl`:自定义Web服务地址,可留空 + +如果您在运行中修改了配置,也可以调用以下接口: + +```java +netAllay.reloadConfig(); +netAllay.saveConfig(); +``` + +## 完整示例 + +```java +import org.allaymc.api.player.Player; +import org.allaymc.netallay.NetAllay; +import org.allaymc.netallay.shop.ShopEvent; + +import java.util.Map; + +public final class DemoService { + + public void register() { + NetAllay netAllay = NetAllay.getInstance(); + + netAllay.listenForEvent("MyMod", "MySystemCS", "RequestData", (player, data) -> { + netAllay.notifyToClient( + player, + "MyMod", + "MySystemSS", + "ResponseData", + Map.of( + "success", true, + "playerName", player.getOriginName() + ) + ); + }); + + netAllay.getShopManager().listenForShopEvent(ShopEvent.PLAYER_BUY_ITEM_SUCCESS, (player, data) -> { + netAllay.showHint(player, "购买成功", "请及时发货"); + }); + } + + public void welcome(Player player) { + NetAllay.getInstance().notifyToClient( + player, + "MyMod", + "MySystemSS", + "Welcome", + Map.of( + "entityId", NetAllay.LOCAL_PLAYER_ENTITY_ID, + "message", "欢迎来到服务器" + ) + ); + } +} +``` + +## 注意事项 + +- `NetAllay`只会向网易客户端发送数据,非网易玩家会被自动跳过 +- 广播、多播、附近广播时不要使用`NetAllay.LOCAL_PLAYER_ENTITY_ID` +- 插件禁用时,建议取消自己注册的事件监听 +- 单次发送的数据不宜过大,避免发送过大的PyRpc包 diff --git a/mcguide/27-手机网络游戏/课程12:使用Allay开服/README.md b/mcguide/27-手机网络游戏/课程12:使用Allay开服/README.md new file mode 100644 index 0000000..e69de29 diff --git a/mcguide/27-手机网络游戏/课程12:使用Allay开服/images/installation-p1.png b/mcguide/27-手机网络游戏/课程12:使用Allay开服/images/installation-p1.png new file mode 100644 index 0000000000000000000000000000000000000000..739ecd4a7e893e18e838521342666920f09710cc GIT binary patch literal 60486 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 B;@$uN literal 0 HcmV?d00001