网络游戏中的帧同步和状态同步

区别帧同步状态同步
流程- 同步随机种子,服务器广播随机种子给客户端
- 客户端上传操作指令,服务端广播指令 (如果没有操作, 也要广播空指令来驱动游戏帧前进)
- 每个客户端各自计算操作指令
- 客户端上传指令。
- 服务端计算指令,计算完把计算后的状态(比如剩余血量)发送给客户端。
- 客户端同步显示。
流量
回放服务端发送所有之前客户端上传的指令,客户端进行计算显示想对难一些
安全性计算在客户端,客户端较容易被破解,安全性相对低,必要时可在防外挂期间开启服务端计算验证高,但是有的计算比如3D场景的碰撞计算很难在服务端实现,一般还是交给客户端
服务器压力
断线重连麻烦,有可能需要重新计算断线时长的所有指令。发送完整的一次状态即可
适用场景单位(小兵、地图道具等)较多,玩家较少(不需要一个客户端计算太多玩家操作)单位少,玩家多的

思考:

  • 是否能通过如下方案减少服务端压力,并尽量保证安全性:对于场景有玩家ABCD,A的操作计算交给交给A和B同时计算,如果两个玩家计算不一致,这两个玩家记录一个 "外挂"系数+1,并下次计算更换这对玩家,如A和C为一组。当某玩家外挂系数达到一定数值判为作弊?
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值