한국어English日本語简体中文繁體中文DeutschไทยTiếng ViệtРусскийPortuguês (Brasil)EspañolBahasa Indonesia

游戏卡顿白皮书 › 只有部分人遇到的问题

一个网络差的队友与 BOSS 机制 One laggy member in a synchronized mechanic

原因 ID pt-raid-member · 主责 研发团队·服务器开发 · 配合 研发团队·客户端开发

在含图示和实验的完整版中打开此卡片 →

在需要所有人在规定时刻一起反应的团本机制中,一个网络差的人反应晚了,就会让整个队伍失败。

起因 “所有人同时散开”“一个人按按钮”这类团队机制 → 结果 网络差的人预警看到得晚,输入也到得晚 → 画面表现 因为这一个人而团灭,其他队友觉得“都怪那个卡的人”

症状
吞操作/回档, 操作延迟
因素
延迟
谁会遇到
特定地点/分线, 只有某个角色看起来异常
何时出现
人多的时候, 做特定操作时
负责方
主责 研发团队·服务器开发 · 配合 研发团队·客户端开发
研发团队要做的事
服务器:机制判定窗口按 ping 留出余量,预警按服务器时间提前下发,设计上避免一个人失败就导致团灭。客户端:收到的预警按服务器时间播放。
监控图上
仅部分偏高 · 导致机制失败的各玩家 RTT
查看位置
在服务器机制日志中记录导致失败的玩家、他的输入到达时刻、判定窗口、他的 RTT 和丢包
确认依据
导致团灭的输入大多来自同一个人,此人的 RTT 明显高于队伍平均值,输入在判定窗口结束后不久才到达
排除依据
失败在队友之间分布均匀,是判定窗口本身太短的问题,看“被 ping 吃掉的短判定窗口”。网络差的人的输入在判定窗口内到达却仍然失败,看服务器判定代码
确认手段
需要游戏服务器/客户端的日志和指标

出处

  1. NetworkTime and ticks (Netcode for GameObjects 2.5) Unity
    按服务器时间预约事件,让所有人在同一时刻播放的方法
  2. Factors influencing the latency of simple reaction time (Frontiers in Human Neuroscience, 2015) Frontiers
    简单反应时间平均约 231 ms

相关原因

同一层:只有部分人遇到的问题

其他层中同样导致“吞操作/回档”的原因

查看含图示和实验的原卡片