# Nukkit部署教程

# 前言

本文默认认为你了解过Nukkit 或者 通过Waterdogpe + Nukkit搭建过第三方服务器。

如果你没有了解过,请移步到 2-Nukkit开服教程

特别鸣谢(排名不分先后): LT_Name(NukkitMOT作者)、bbbroken(EaseCation服务器开发者)、亦染(社区支持者)

# 准备阶段

  1. 准备Java版本,建议Java版本为Java17及以上版本
  2. 准备NukkitMOT分支,NukkitMOT原作者已将中国版打包到github主分支内 https://github.com/MemoriesOfTime/Nukkit-MOT

目前仅支持接入Nukkit-MOT,其他分支可自行通过参考NukkitMOT源码进行对接

  1. 准备 WaterDogPE 代理服务端而。WaterdogPE 已兼容中国版,开源仓库是: https://github.com/MCNeteaseDevs/WaterdogPE_Netease/tree/netease。

# WaterDogPE

# config.yml 的配置

需要修改以下参数,其他配置根据情况自行修改


# ....

netease_client: true   # 启用 netease 客户端的支持
online_mode: true 
# 开发测试阶段,需要改为false,否则会提示需要 minecraft验证
# 发布阶段时,需要改为true,之后只能用网易手机客户端连接才能进入
listener:
  # .....

  host: 0.0.0.0:19132  # waterdogpe 代理端的IP和端口   。官方提供的机器19132端口可能会被占用,根据实际情况更改
  priorites:   # 按顺序配置,第一个是玩家进入时默认在的服务器。 一般为大厅服
    - lobby1   
    
  # .....
servers:   # 子服务器的连接ID配置,如大厅服、游戏服等等。如子服务器不在同一台机器,则需要写具体的ip。
  lobby1:
    address: 127.0.0.1:19133
    public_address: play.myserver.com:19133
    server_type: bedrock


permissions:  # 权限配置,一般用于配置管理员的权限,用于测试、调试。仅通过名字识别,建议发布阶段去掉,改为用插件实现相关调试功能
  玩家id:
    - waterdog.player.transfer
    - waterdog.player.list
    - waterdog.command.server

# 装载客户端模组

当通过waterdogpe代理后,需要将客户端模组存放在waterdogpe 根目录下的 packs 文件夹中,不要存放在NukkitMOT根目录

除非你仅通过NukkitMOT单端开服 否则waterdogpe 会自动将nukkit模组加载数据包拦截

但如果关闭waterdogpe的资源包功能,Nukkit数据包依然会被waterdogpe拦截而无法正常进入游戏

确保 config.yml 已启用资源包

enable_packs: true   # 必须打开
overwrite_client_packs: true   # 按需
force_server_packs: true   # 按需

# 模组打包格式

waterdogpe 仅支持 zip和mcpack包,不支持文件夹。
可以将行为包、资源包都存放在packs目录中。
目前仅支持 manifest.json ,不支持 pack_manifest.json

zip打包格式为: 压缩包一级目录下就是 manifest.json,不要额外套一层文件夹 图

# Nukkit-MOT

nukkit社区的插件
https://cloudburstmc.org/resources/categories/nukkit-plugins.1/

# server.properties 配置

为了确保Nukkit-MOT正常接入中国版,您需要调整一些配置

xbox-auth=off
netease-client-support=on
only-allow-netease-client=on

# 模组装载

如果使用 waterdogpe 代理,则需要将模组放在 waterdogpe 目录,而非Nukkit目录
如果仅适用Nukkit,则将行为包合资源包都放在Nukkit目录下有关 netease的文件里

# NukkitMaster插件

NukkitMaster相当于Spigot服的SpigotMaster,内置封装了PyRPC、订单接口、消息收发等功能,API和使用方法和SpigotMaster一样。

# 自定义物品、方块和实体

Nukkit-MOT本身已经支持自定义物品、方块、实体的功能,可以参考官方文档 (opens new window)

入门

60分钟

前言

准备阶段

WaterDogPE

config.yml 的配置

装载客户端模组

模组打包格式

Nukkit-MOT

server.properties 配置

模组装载

NukkitMaster插件

自定义物品、方块和实体