- Add costume burst upgrades with durable replay and fix permanent SR equipment gacha. - Add server game.json rules for optional collaboration UR weapons, with packaging and documentation. - Add GameNames/GameSdk NuGet tooling, readable types, reobfuscation, complete source/PDB navigation and shared-runtime installation. - Split plugin responsibilities, prefer typeof/nameof, centralize MSBuild settings and ignore local paths; remove the unused LoginUI test project. - Fix login recovery and TLS through native platform HTTP and a private game relay; read device region directly from the OS time zone. Validation: go test ./... -count=1, go vet ./..., plugin Release builds, SDK/runtime self-tests, Roslyn embedded-source navigation, gofmt check and git diff --check.
1.8 KiB
1.8 KiB
服务端游戏规则配置
game.json 是服务端统一的游戏规则配置入口。后续可配置的游戏规则在此按功能分组扩展;认证、资源源、版本清单仍分别使用现有配置文件。
发布部署时,将文件放在 bd2server.exe(Linux/macOS 为 bd2server)旁。开发入口读取仓库根目录的同名文件。修改后重启服务端生效,客户端无需配置此文件。发布包只在服务端包中提供 game.json 和本指南。
默认内容:
{
"schema_version": 1,
"gacha": {
"include_collaboration_ur_weapons": false
}
}
联动 UR 专武
gacha.include_collaboration_ur_weapons 必须是 JSON 布尔值:
| 值 | UR 必得装备券的结果 |
|---|---|
false(默认) |
使用当前 GameData 的原始 UR 必得装备券池。 |
true |
在原池中加入 14 种联动角色 UR 专武(装备 ID 943200 至 943213)。 |
开关仅作用于 UR 必得装备券。新增装备沿用同星级原有装备的单件权重,原有星级权重规则保持不变;加入候选后,同星级内的概率按扩展后的权重总和计算。该设置只改变券池候选,不会直接发放装备。专武绑定角色,同一角色的多个服装共用专武。
校验与升级
schema_version 当前必须为 1。字段拼写错误、未知字段、错误类型(例如字符串 "true")、null、格式错误或文件末尾多出的 JSON 都会使服务端拒绝启动,并在错误中给出文件路径。省略 gacha 或此布尔开关时使用 false。
旧安装缺少整个文件时使用默认规则,服务端不会自动写入或覆盖文件。升级服务端时保留服主已经修改的 game.json;新发布包中的文件可用于比对新增字段。Docker 部署可将自定义文件只读挂载到 /app/game.json,重启容器后生效。