网络环境差解决
关键协议保证,心跳,断线重连,协议补发
关键协议保证,
后端返回协议加上返回时间,超过一定秒数没收到,进入重连
每秒心跳,没收到心跳进入重连,心跳也可以判断玩家是否加速
断线重连,主动断开当前socket 重新尝试建立新的socket
协议补发,协议有顺序自增长序号,重连时,把后端最后发的协议号发给后端,后端补发之后的协议,同时把后端最后收到前端的协议发给前端,前端根据协议号请求协议
手机运算性能差,协议分帧处理,后端过滤非关键的协议,多人时,部分其他人的同步信息可以不发,或者前端抛弃这些非关键协议的处理
视野变小,摄像机拉远
网络延迟解决方案
伪随机异步交互,用表现掩盖问题,星际争霸刀塔传奇
伪随机异步,解决本地客户端延迟,只要随机因子确定,前端能独立计算先表现,后端再计算伤害并转发同步
前端申请进入某个场景,服务器返回随机因子5
防止前端作弊
星际争霸仅仅记录操作,随机因子确定就可以重播录像
表现覆盖问题,解决玩家间同步问题
了解玩家在乎什么不在乎什么,在乎位置飘忽,无法定位,一刀出去砍不中人,多人时副本连招连不上
位移,操作同步,客户端自己独立计算行走,位置相差较大,加速跳跃冲锋等特殊处理
避免同时间影响一个状态,如被攻击后,受击者不能操作(硬直)
客户端计算命中,避免服务器返回