Skip to main content

账号、登录与游戏更新

本页覆盖启动更新、账号认证、角色入服及重连。角色资料编辑见玩家资料。审计确认的是源码结构;没有本次游戏画面或服务端联调结果。旧策划来源的批准状态仍为 unknown。

入口与完整流程​

玩家启动客户端后先判断版本,再进入登录、账号认证、角色入服及主界面初始化。登录画面包含游戏背景、Logo、版本号、资源下载进度;更新完成之前不能把尚未初始化的主界面作为可操作大厅。

情形来源规定的行为
当前已是最新版本正常进入游戏
启动时发现资源热更新下载并解压资源,完成后自动重新进入;中途退出,下次启动重新检查并执行更新
启动时发现必须更换安装包显示不可关闭的更新提示;前往对应商店的应用页面更新;只允许跳转或退出,不继续游戏
游戏过程中收到热更新要求强制提示重新启动;iOS 按钮退出游戏后由玩家重新启动
游戏过程中收到换包要求先提示重启,重启进入启动检查后再展示换包提示
认证、入服或初始化失败保留可理解的失败/重试/退出结果,不能将不完整快照视作登录成功

飞书登录方案明确“所有玩家同服,无手动选服”,多服只作为未来需求。旧 Markdown 同时描述了服务器展示、选服、开服时间、维护、白名单和审核服检查;这属于待核实的另一套设计,不能与单服方案并列为现行玩家操作。服务器身份与可进入性仍由登录回包决定,不能因为前端不提供选服就跳过维护检查。

启动页的Logo、背景与更新进度分区

该原型用于说明启动页信息层级,版本号为示例;不同更新分支的强制行为以正文表格为准。

更新状态与强制提示图​

状态设计画面
检测资源检测到资源更新
下载已下载量、总量与速度
解压/优化优化资源中
进入进入游戏与新版本号

换包提示及前往商店按钮

换包提示只提供前往入口,没有继续游戏/关闭按钮。

游戏内重要更新要求重启

游戏内提示要求先重启,再回到启动版本检查;这张图不能证明操作系统已经重启应用。

账号和角色边界​

账号认证建立账户身份;角色入服关联 AccountId、ServerId、RoleId。首次角色创建、已有角色恢复、重连都必须落到对应角色的数据,不能把本机临时状态当作服务器角色状态。登录响应/JoinResponse 提供的角色和功能快照用于初始化;道具、邮件、活动等后续增量各由所属功能处理。

登录本身不产生额外奖励。初始角色资源、初始英雄和引导资源归对应初始化配置及功能规则,不能把登录重复执行当作再次发放条件。玩家身份、设备信息、SDK 认证与服信息属于认证链路;错误提示和维护提示不能伪装成成功状态。

已核实实现​

审计基准为 frontend origin/develop 的 7f0636c9。

源码入口可以确认的事实
Infrastructure/Network/State/StateAccountLogin.cs存在 RoleLoginToken 时发 TokenLoginReq;否则发 LoginRequest。账号标识来自 SDK LoginAccess 或设备唯一标识;有 SDK 登录凭证时带设备信息
同上登录回包服务器为空或处于 MainTain 时弹提示并退出;普通登录进入 StateRoleLogin,Reload 进入 SdkEnterGame;连接中断和无网络有对应状态处理
Infrastructure/Network/State/StateRoleLogin.cs从 LoginModel 取 AccountId/ServerId/RoleId,以 ChannelId=0 发 JoinRequest;JoinServer 后进入 StateSdkEnterGame
AppMain/Procedure/ProcedureLoginSdk.cs登录过程的 SDK 入口定位点;是否覆盖全部渠道行为仍需按实际 SDK/环境观察

上述已读网络状态没有手动选服步骤,但不足以证明所有 SDK、渠道与启动分支均不存在选服。更新强制弹窗、商店跳转、下载中断恢复与后台角色创建,本次没有逐路径运行确认。

差异与待确认​

  • 单服自动进入与旧 Markdown 的手动选服描述冲突;现行代码倾向自动使用回包服务器,最终运营服策略未确认。
  • 版本比较、热更资源校验与更新失败恢复的实际配置尚未逐项核实;策划中的“自动重新进入”不能据此称已实现。
  • SDK 退出/重登、Token 失效、维护白名单及首次角色创建的服务端判定,缺少本次端到端证据。

来源与现有测试入口​

来源已整合内容
旧 features/account-server-login.md认证、服务器/角色关系、初始化与重连边界、失败状态
飞书 GrcIbPLb7oN2T0x9kC4cp78Cnbd,2026-10-13 阅读件登录界面、单服、启动/游戏内热更和换包全部分支
frontend 上述登录状态文件当前认证及入服参数和维护处理

现有源码测试入口:Infrastructure/Network/Tests/PlayMode/NetworkLoginLifecycleTests.cs。仅定位已有文件,未运行、未增加或扩写测试。本地验证:根据项目策略禁止执行。