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