# C3c 当前待设计与接线清单 2026-09-30,按用户最新纠正整理。**迁移原有功能,只补KV替代接口及必要数据映射,不重新设计LevelB或榜单业务。** 本文是当前待设计事项的统一清单;旧方案、事实确认单和审核材料保留历史字节,涉及“重新设计统计键”“一律新增接口”“只能等待他方给协议”的旧表述以本文为准。独立审核结论不由本文件改写,C3c仍须完整审核通过后编码。 ## 1. 已确定,只做接线,不再列为新设计 | 内容 | 执行边界 | |---|---| | LevelB计算和统计名称 | 沿原SetLvData公式、上限、LevelB及ContinentCode+LevelB名称、原更新时机;不改成服务器查询时重算 | | 本人统计保存 | 原SetLeadboardData上传PF的动作,平移为KV管理器保存本人数据;KV值的字符串转换只是存储适配,不另建统计体系或临时副本 | | 本人登录时间 | 沿已有LastLoginTimeUtc及原每日初始化顺序,不新增同义键、不重新选择时间来源 | | 客户端等级榜入口 | 保留GetLeadboardData及GetLevelLeadboardData;只替换内部GetLeaderboardAsync提供方,保留默认前50、结果映射、缓存、事件和UI流程 | | 玩家身份 | 使用认证返回PlayerId/UserID;旧playFabId字段名可暂时保留,值换新ID;不另建身份映射 | | 原好友、公开资料、公告、匹配业务 | 原数据含义、过滤/排序、同步与异步方式、返回与异常、UI和轮询时序保留 | “原来有接口”已确认:原等级榜由PlayFab.GetLeaderboardAsync提供。它不等于已确认自建服务器部署了同名HTTP接口,也不等于旧PF统计已迁入KV。此前101/102读KV未取得LevelB,只代表当时这两个账号的样例;不据此推断全服无数据或必须重建榜单。 ## 2. 真正需要补齐的替代接口内容 原则:**先复用已有等价接口;字段不足则最小补字段;确无等价入口才补接口。** 线上存在性、拟议合同、已完成代码分别记录,不能混为已实现。以下四类是原功能迁移的接口工作,不是四项新产品设计。 | 项目 | 已有能力/证据 | 剩余需补齐的内容 | 当前处理方式 | |---|---|---|---| | 等级榜读取 | 客户端GetLeadboardData → PF GetLeaderboardAsync;原统计名、起始位置、数量和结果消费已明确 | KV服务对应读取入口及请求/响应映射:统计名、起始位置、数量 → UserID、位置、分数、公开资料;空榜/失败沿原语义 | 先复用线上已有等价入口。此前拟POST leaderboard/GetLeaderboard仅为缺入口时的替代合同草案,**不是必须另造URL**;LevelB计算与存储规则不重做 | | 好友及他人公开资料 | friend/GetFriendsList、friend/SearchFriend已正式成功;好友关系/目标新ID可复用。当前样例未返回LevelB/LastLogin,普通level与本人档不同 | 原好友列表一次返回所需KV公开资料;SearchFriend等原资料入口需对齐真实普通等级、昵称/头像及不存在/失败映射 | 好友已有扩展Profile草案,保留原路由与四兼容字段;公开资料优先复用SearchFriend,补数据来源/必要字段,不另起一套查询系统 | | 公告读取 | 原TileNewsManager.ReadTitleNews → PF GetTitleNewsAsync,已有标题、正文、Timestamp及原消费流程 | 对应全局公告读取入口、同义字段、列表顺序、成功/空/失败映射 | KV替代侧已有等价能力就直接接;尚未取得对应合同,不宣称服务不存在,不先设计新公告系统或用本人私有KV代替全局内容 | | 匹配调用 | 原PF多人匹配已有创建票据、查询票据、取消票据和取结果四步 | 新UserID下四步的等价调用、原队列/属性/状态及结果字段映射 | 先核现有服务可复用范围,只补缺少的调用合同;不重做匹配规则、轮询或UI,不以临时结束路径替代功能 | 好友和等级榜已有用户授权的接口草案,继续完善即可,不再次请求“是否允许设计”。公告/匹配目前属于需核对替代合同的项,不在本轮凭空新增路由或规则。具体线上版本由服务端负责侧提供或核对;客户端侧负责旧消费者映射、实现与验证,不把整体迁移工作转交服务端。 ## 3. 最小客户端接线位置 以下为候选实施位置,不是新增编码许可。复用已有KV用户服务、存档接口和CustomServerMgr,不新增Provider、管理器、运行开关或让底层KV依赖业务UI。 | 文件(相对Client/Assets/Scripts) | 原入口及迁移内容 | |---|---| | DataCenter/DataCenter.LeadboardData.cs:158、171 | SetLeadboardData仅替换本人统计保存;GetLeadboardData仅替换榜单读取与结果映射;SetLvData算法和活动榜保持 | | Services/FriendService.cs:132 | GetFriendList仅替换PF数据取得及映射;原过滤、排序、事件保持 | | Services/FriendModel.cs | 已有DTO确实缺少获审字段时才补字段,保留现有wire兼容 | | Services/KVUserService.cs:282、288 | GetPlayLv/GetPlayInfo接等价远端资料;原参考逻辑在UserService.cs:810、849、874,保留同一占位对象和异步更新事件 | | Services/TileNewsManager.cs:24 | ReadTitleNews替换公告取得,保留首条选择、红点、阅读标记及原异步流程 | | Duel/UI/EventFishingDuelPanel.cs:608、685、740、811 | 原创建/查询/结果/取消调用接替代服务;保留原3秒轮询及原状态处理,不伪造EntityKey | 服务器接口内部实现由服务器开发者负责;客户端Agent不改本地或远程服务器。若已有正式接口能直接满足合同,以实证收敛草案,避免新建重复路由。当前`event/GetLeaderboards`是活动榜,不是已确认的LevelB等级榜替代入口。 ## 4. 当前资料与待办 - [x] 从待设计项移除LevelB公式、统计名称、本人保存方向及登录时间方向;已定规则只作接线验收依据。 - [x] 确认原等级榜客户端入口已存在;撤回必须另造等级榜URL的含义。 - [x] 完成[好友资料扩展草案](M2-好友KV资料服务端接口设计-待完整审核-2026-09-30.md)与[等级榜等价读取草案](M2-等级榜读取与本人统计键接口设计-待完整审核-2026-09-30.md)。后者第2节只作为原存储映射说明,结合[LevelB范围纠正](M2-等级榜设计范围纠正-LevelB沿用原逻辑-2026-09-30.md)阅读。 - [ ] 一次核齐以上四类已有替代入口及确需补齐的字段/合同;不得重新询问已测好友路由是否存在、新ID或KV方向。 - [ ] 将确需新增/补字段的合同与客户端最小实现、失败映射、准确文件/方法白名单并入同一C3c完整审核。本人统计写实现也须遵守完整审核门槛,但不另开LevelB业务设计或逐项送审。 - [ ] 完整裁决后连续接线及测试:KV分支相关PF调用为0,原PF/AGG对照保持;离线协议测试与正式联调分别记录,不能把草案或夹具当线上通过。 - [ ] 最终全链验证前恢复已登记开发冻结/忽略路径,仅清理迁移造成且无消费者的实现。命名调整及业务缺陷修正仍待整个迁移完成后另行授权。 ## 5. 本检查点 只更新当前设计清单、接手入口、状态、TODO和日志;未修改客户端/测试/服务器代码,未发正式网络请求,未运行Unity或打包。正式地址仍http://s101.local:18080/,Unity验证仅CLI Loop。没有要求用户重复裁决,也没有向审核/服务端会话发送消息。