[发明专利]一种基于游戏移动逻辑客户端与服务端同步的延迟计算方法有效
申请号: | 201210229113.X | 申请日: | 2012-07-04 |
公开(公告)号: | CN102769616A | 公开(公告)日: | 2012-11-07 |
发明(设计)人: | 陈杰;怀宾;彭鹏 | 申请(专利权)人: | 珠海金山网络游戏科技有限公司 |
主分类号: | H04L29/06 | 分类号: | H04L29/06;H04L29/08 |
代理公司: | 广州嘉权专利商标事务所有限公司 44205 | 代理人: | 谭志强 |
地址: | 519000 广东省珠*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 游戏 移动 逻辑 客户端 服务端 同步 延迟 计算方法 | ||
技术领域
本发明涉及一种基于游戏移动逻辑客户端与服务端同步的延迟计算方法。
背景技术
近年来,随着宽带的普及,网络游戏得到了极大的发展,现在网游已经成为了一个举足轻重的产业,创造了可观的经济效益。
在网游中,用户需要控制对象移动以实现某些目的,比如到达某些特定位置或者做出某些动作,这些移动需要系统进行移动逻辑运算。此类移动逻辑运算可在客户端或者服务器端上进行,并在客户端与服务器端之间同步数据。现阶段,移动逻辑运算更多的选择在客户端运算,在提供更好的用户体验的同时避免加重服务器端的负载,目前市面上许多游戏都采用了客户端运算这种方法。但是事实证明这种方法存在严重的安全隐患,容易被一些游戏外挂恶意篡改数据。而在服务端运算,又存在太过依赖网络延迟,移动容易被扯动的问题。
在客户端进行运算可靠性较低的原因在于:由于客户端运算容易被外挂等工具篡改数值,所以移动逻辑在玩家客户端进行计算,并需要在服务端进行相同的计算与之校验;由于游戏服务器与玩家客户端之间不可避免地存在延时,所以导致玩家的操作在传送到服务器后,有一定的滞后性(服务器计算的结果在传送到客户端的时候也有相似的问题),造成两边的运算结果不一致而严重影响玩家体验。
发明内容
为解决以上问题,本发明在客户端(或者服务端)将所有操作指令添加一个基于服务端延迟的参数,然后发送,发送端与接收端同时在接收到操作后在指定时间点执行该操作。
本发明的目的在于防止移动运算在客户端上被外挂等工具篡改数值,将移动逻辑的运算放到服务器上。
本发明的目的还在于避免游戏服务器与玩家客户端之间因为不可避免的延时,导致玩家的操作在传送到服务器计算后,得到的结果与客户端运算得到的结果不一样,导致服务器不断扯动客户端,严重影响玩家体验。
本发明的技术方案为:
一种基于游戏移动逻辑客户端与服务端同步的延迟计算方法,包括游戏的客户端与服务器端,包括以下步骤:
1.玩家在客户端上发出移动请求;
2.客户端计算出时间点K,其中时间点K为当前时间和预设的延迟期望值的和;
3.客户端将移动请求和时间点K发送给服务器端,并要求服务器端在时间点K开始移动逻辑运算;
4.客户端和服务器端同时在时间点K开始移动逻辑计算,并将计算结果保存;
5.服务器端将计算结果发送给客户端;
6.客户端获取到服务器端发送过来的计算结果,并对客户端的计算结果和服务器端的计算结果进行校验,如果一致,则不修改,如果不一致,认为数据被篡改过,使用服务器端的计算结果覆盖客户端的计算结果;
其中,赋予游戏中受玩家控制的角色一不受玩家控制的惯性动作,所述惯性动作的时长覆盖所述延迟期望值。
作为以上技术方案的一种改进,玩家通过鼠标键盘等方式在客户端上发出移动请求。
作为以上技术方案的一种改进,服务器端的计算结果中含有帧数标志,客户端根据所述帧数标记在其保存的历史计算结果中寻找相应的计算结果,并进行验证。
由于添加了延迟同步,所以包括急停,快速启动这些动作玩家会感觉到角色的动作并不会在按键按下的那一瞬间响应,但是不会影响用户体验(如果网络流畅,一般可以控制在0.1 ~ 0.2 S以内,低于人的正常反应速度,其实可以忽略不计)。另外,在这部分动作中可以添加一些惯性的动作(例如急停的时候添加“刹车滑步”动作)也可以降低延迟造成的对用户造成的影响。
另外,通过客户端与服务端同步计算移动逻辑,有效避免了外挂等工具篡改游戏数据的现象;延迟计算有效地避免了客户端与服务端同步计算移动逻辑过程中网络延迟带来的负面效果。
附图说明
以下结合附图对本发明进行进一步的说明,其中:
图1为现有技术中移动逻辑计算的示意图;
图2为本发明中移动逻辑计算的示意图。
具体实施方式
为了解决延迟问题,本发明使用了一套延迟计算的模式,当客户端获取移动操作的时候,并不直接开始计算移动结果,而是先发送该操作至服务器端,告诉服务器在某一个时间点进行这个操作,然后当这个时间到了以后,客户端与服务器端同步进行计算(即干脆两边同时将这个操作延迟到时间点K),然后服务器端会将计算结果发送回客户端,与客户端进行数据校验。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于珠海金山网络游戏科技有限公司,未经珠海金山网络游戏科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210229113.X/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种不湿脚雨衣
- 下一篇:一种有机电致发光器件测量夹具