














在前段时间,舞萌更新 DX2026 时,有个特殊的搭档liz,也许是因为 SEGA/ 华立在乎kaleidcsope模式的特殊性,也可能是因为过于泛滥,在七月 22 日,华立对国服非法获取 liz 搭档的账号全部发了 bs1 封禁,上一次发生这种官方下场声明发 bs 大概还是 2024 的集章卡乐曲latent kingdom,那么相信很多人对国服的封禁机制有一些好奇,甚至有些试图以科技方式修改掉 bs1,本文就简单讲下,关于 banState 你想知道的那些事情
国服账号有一个叫 banState 的字段,也就是封禁状态,由服务器下发
其他值客户端按正常处理
这个字段由服务器在你扫号时返回,客户端只执行
扫号后,机台会向服务器请求一次 preview 数据,响应里就带着 banState,客户端拿到这个值之后,走一套状态机来决定你号怎么被处理
正常(0):直接进游戏
警告(bs1):弹出警告窗口,,等满 600 帧(60fps 下 10 秒)窗口自动关闭,之后放行进选曲界面
封禁(bs2):弹出封禁窗口,同样等 10 秒。关闭后直接调用 Context.SetState(StateType.ConfirmEntry),把你踢出去不让玩
bs2 账号的全量数据 GetUserDataApi 照常下载,数据下载不会被拦截,只是下载了你也玩不了
警告和封禁账号进入游戏后(bs2 进不来,但如果以任何方式绕过入口),会触发三类判断,判断条件统一是 BanState != 0,且检查双人 任何一侧被标记,双方都受限
PRTCL // CSHARP
if (!IsAnyUserWarningState())
{
AddVsGhost(...);
AddMapGhost(...);
AddBossGhost(...);
AddReliefGhost(...);
}
如上,友人对战等玩法会直接被禁用
万花镜进度会被强制回退到 FoundCenterTower 阶段,CenterTowerCleared 及以上的进度一律不显示:
PRTCL // CSHARP
if (kaleidxScopePhase >= KaleidxScopePhase.CenterTowerCleared && IsEntryBanUser())
{
kaleidxScopePhase = KaleidxScopePhase.FoundCenterTower;
}
UnlockMusicProcess.IsAnyLegend 会检查所有玩家的 BanState,只要有一方非零就返回 false :不计入 LEGEND 段位,传导作废
没有任何手段去更改 bs 状态,因为这玩意是服务器侧控制的,哪怕通过 mitm 把传下来的 bs 状态改成 0,也没法彻底改变服务器里的值,纯粹自欺欺人
误封等误解
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。