# 【必读】玩家uuid数据存储说明
# 前情概要
在2023.9.19日前,玩家uuid由java侧根据玩家昵称生成。
而地图存档、很多插件的数据库都使用这个uuid,这样会导致玩家在启动器改名后,进入服务器会丢失所有数据。
# 调整
为解决上述问题,在2023.9.19日更新后,支持geyser获取玩家网易账号的uuid,并传递给bc。
同时添加了开关以兼容已上线服务器。开关为开时,使用网易账号uuid;开关为关时,依然由java侧根据昵称生成uuid。
对于每个网络服,先判定绑定的游戏ID。若游戏ID于2023.9.19日前成功上线,开关为关;若该日期前还未上线,则开关为开
没有绑定游戏ID的网络服,如果是在2023.9.19日前创建的,开关为关;在该日期后创建的,开关为开
“复制网络服”的开关不会继承
# 注意事项
uuid的更改会导致玩家数据丢失或错乱,请仔细阅读以下注意事项
注意您可能同时拥有多个服务器,符合多个情况,请一并阅读并注意区分
# 2023.9.19前已上线的网络服
您所有已创建的网络服都会保持使用java侧生成玩家uuid,可以放心更新引擎或者BungeeMaster插件。
留意spigot.yml
中的bungeecord
字段,建议不要修改该字段,除非您确定这不会对玩家uuid产生影响。
如果您希望转为新版的uuid获取方式,请评估存档、数据库的数据迁移工作并联系官方支持。
要注意后续新建或者复制出来的网络服,都会使用网易uuid,除非绑定了上线的游戏ID。
# 2023.9.19前入驻但未上线的网络服
您的网络服上线后将会使用网易账号uuid。
但是,所有已经创建的网络服都还是使用java侧生成玩家uuid。
为了保持开发阶段与上线阶段的环境一致性,务必做以下操作:
- 给所有已创建的网络服绑定游戏ID,或者使用studio复制一个,然后弃用旧的网络服。但留意这会导致测试账号的数据清空,并且存档及数据库中会有旧的玩家数据残留。
- 使用2.8.0.java.release20230907或以上版本的引擎。
- 将所有BungeeMaster插件升级到1.0.3以上。
- 将所有
spigot.yml
的bungeecord
字段配置为true
。
后续新建或复制的网络服,也必须满足上述2到4。
# 2023.9.19后入驻的网络服
您的网络服开发,审核,上线所有阶段都会使用网易账号uuid。
必须使用2.8.0.java.release20230907或以后版本的引擎。
必须使用1.0.3或以上版本的BungeeMaster插件。
必须将spigot.yml
的bungeecord
字段配置为true
。