数据迁移
从旧版 Dice!(V2)一键迁移数据到 Dice!Next。让老用户无痛升级是本项目的核心目标之一。
已支持的迁移范围
导入器直接解析旧版 Dice! 数据目录的原始文件(含二进制 .dat / .RDconf 格式),转换写入 Dice!Next:
| 旧版数据 | 文件 | 迁移到 |
|---|---|---|
| 人物卡 | user/PlayerCards.RDconf | 人物卡库(cards.db) |
| 用户数据 | user/UserConf.dat | 玩家档案(昵称 / 信任等级 / 好感) |
| 群配置 | user/ChatConf.dat | 群设置:停用指令 → 群停用、rc 房规 → COC 房规、入群欢迎词 |
| 黑名单 | conf/BlackList.json | 黑白名单 |
| 自定义回复 | conf/CustomMsgReply.json | 关键词回复(多结果随机 / 文本) |
| 自定义文案 | conf/CustomMsg.json | 回复文案覆盖(写入简体中文层) |
| 自定义帮助 | conf/CustomHelp.json | .help 词条覆盖(写入简体中文层) |
| 骰主 | conf/Console.xml | Master 列表 |
| 外置牌堆 | PublicDeck/*.json | data/decks/(导入前做 JSON 格式校验) |
| Lua 模组 | mod/ | data/mod/(整棵复制,由 Lua 模组子系统识别) |
说明
- 自定义文案 / 帮助只写入简体中文层,其他语言保留 Dice!Next 自带文案。
- 旧版文案键(
strXXX)中在新版有对应槽位的会自动映射;没有对应槽位的不会丢——会以「无效文本」形式保留,可在管理面板中查看后手工移植。 - 群配置目前只迁移上表列出的三项,旧版其余群设置项不迁移。
PublicDeck/下非.json文件会被跳过(记入报告的「跳过」项)。
迁移步骤(管理面板)
- 把旧版 Dice! 的数据目录(内含
conf/与user/的那一层)放到运行 Dice!Next 的这台机器上。 - 打开管理面板 → 系统设置 → 旧版数据导入。
- 填写该数据目录的完整路径。牌堆 / 模组文件默认跳过已存在的,如需覆盖可打开「覆盖已存在的文件」开关。
- 点「开始导入」,等待完成。
对应的 REST 接口为 POST /api/legacy/import,参数 { "dir": "路径", "overwrite": false }。
迁移报告
导入完成后返回各项数量,包括:
- 人物卡数(及涉及的用户数)、玩家档案、黑名单、自定义回复、帮助、文案(另计「无效文本」条数)、Master 数
- 牌堆与模组的成功 / 失败 / 跳过明细(逐文件列出原因)
- 群配置:导入的设置项数与涉及群数
页面上会直接展示牌堆 / 模组的逐项结果卡片。