同步功能
本章节讲述了 HuskSync 支持和不支持同步的内容。
你可以通过调整同步配置来设置 HuskSync 同步的玩家数据量。当特定类型的数据同步被设置为禁用时,HuskSync 不会尝试转移该部分的玩家数据;换句话说,同步的内容是从本地的服务器上选择性读取的。
同步内容一览表
✅—完全支持 ❌—不将支持 ⚠️—尚在测试
名称 | 描述 | 是否支持同步 |
---|---|---|
背包内容 | 玩家背包和快捷栏选中的物品 | ✅ |
末影箱内容 | 末影箱中存放的物品 | ✅ |
生命值 | 玩家当前的生命值及压缩比例 | ✅ |
饱食度 | 玩家的饱食度、饱和度体力值 | ✅ |
属性 | 玩家的最大生命值、移动速度、触及范围等。[维基页面] | |
游戏模式 | 玩家当前的游戏模式 | ✅ |
飞行状态 | 玩家当前的飞行状态 | ✅ |
统计数据 | 玩家统计信息中的所有数据(ESC 界面 -> 统计信息) | ✅ |
位置 | 玩家当前所处世界及位置† | ✅ |
持久数据容器 | 插件定义的玩家数据 | ⚠ |
未探索的地图 | 被锁定在制图台中的地图/藏宝图 | ✅ |
已探索的地图 | 正常的、未解锁的地图/藏宝图(原因见下)。 | ❌ |
经济数据 | 与 Vault 有关的经济数据(原因见下)。 | ❌ |
- 模组物品(如 Arclight 等核心上)怎么办?- 尽管我们不能对这些环境提供支持,但基本上 v3.x+ 的 HuskSync 可以正常地保存及同步物品。
- 模组物品怎么办?或者诸如 MMOItems 和 SlimeFun 的物品又怎么办?- 支持。通过这些插件创建的物品应该能正常运行,但在此之前请先充分测试。
- 那么 Purpur 的自定义末影箱大小功能呢? - 支持(请确保所有服务器都启用了这个功能!)。
- 位置同步是什么意思?- 这是为那些跨服副本的服务器(如国内的魔塔/艾尔莉雅)准备的。在启用该功能后,玩家在切换服务器时会待在原地,而不会传送到其他位置。
持久化数据容器标签
持久化数据容器是 Spigot API 的一部分,允许向玩家、实体或物品上添加自定义的数据标签并使其持久化。HuskSync 支持将这一类数据跨服同步。若有插件使用了旧版本或旧格式的数据保存格式,例如直接修改 NBT,可能会有同步出错的情况。
地图同步
地图同步相对特殊,因为它们的数据不存储在物品中,而是在游戏的世界存档下。因此,它们的数据是随世界改变而改变的,而这是不能在多个实例之间记录的。所以,不太可能同步这些已解锁的地图物品。但是,未解锁的地图是支持的。这可以通过将像素画布上的内容保存至地图本身,再在其他服务器上生成虚拟地图实现。
经济同步
尽管它经常被用户们提起,但 HuskSync 有多种理由来解释为什么不会同步这些数据!
我强烈建议使用自带跨服同步的经济插件,这些插件有更多的选择。更多内容请转到“常见问题”章节浏览。
切换同步功能
除位置和锁定地图的同步外,所有同步都是默认启用的。若要切换指定数据的同步功能,在 config.yml
下 features:
的 synchronisation:
项自行调整,将对应项的值修改为 true
/false
即可。
config.yml 下的示例
YAML
synchronization:
# ...
features:
inventories: true
ender_chests: true
health: true
max_health: true
hunger: true
experience: true
potion_effects: true
advancements: true
game_mode: true
statistics: true
persistent_data_container: false
locked_maps: true
location: false
#...