如何在游戏客户端和服务器之间精确同步玩家的状态?

欢迎来到unity学习、unity培训、unity企业培训教育专区,这里有很多Unity3D资源、Unity3D培训视频、Unity3D教程、Unity3D常见问题、Unity3D项目源码,【狗刨学习网】unity极致学院,致力于打造业内unity3d培训、学习第一品牌。假定技能有前摇,攻击,后摇3个阶段。前摇阶段可以理解为发招前的酝酿或者念几句咒语,攻击阶段可以理解为开始挥刀砍直至砍中目标身上这个时间段,后摇阶段可以理解为收刀恢复攻击姿势的阶段。我们的技能的连招系统允许在某些技能(称为技能A)的后摇阶段,使用另一个技能(称为技能B)的时候,会忽略掉技能B的前摇阶段,直接进入技能B的攻击阶段。现在玩家使用了技能A,并且进入了技能A的后摇阶段,假设技能A的后摇阶段为500ms,在技能A的后摇阶段快结束的时候,玩家使用技能B,为了保证游戏效果,技能表现是客户端先行的,客户端判断可以忽略掉技能B的前摇从而直接进入技能B的攻击阶段,服务器收到使用技能B的消息,此时极有可能出现技能A的后摇阶段已经结束,导致服务器端从技能B的前摇阶段开始。所以就会导致玩家使用技能的时候,会出现客户端和服务器对是否忽略前摇不一致的情况,像上面的这种情况,客户端明显可以看到技能B砍中目标隔了一会之后才出现伤害的打击字,,因为服务器多计算了一个前摇的时间。对于这种情况,我想了一下几个思路:1:服务器端适当延长技能的后摇阶段时间2:客户端向服务器发送使用技能的消息时,把是否忽略前摇一起发送给服务器更多内容,请访问【狗刨学习网】unity极致学院

青春一经典当即永不再赎

如何在游戏客户端和服务器之间精确同步玩家的状态?

相关文章:

你感兴趣的文章:

标签云: