CN102769616A - 一种基于游戏移动逻辑客户端与服务端同步的延迟计算方法 - Google Patents

一种基于游戏移动逻辑客户端与服务端同步的延迟计算方法 Download PDF

Info

Publication number
CN102769616A
CN102769616A CN201210229113XA CN201210229113A CN102769616A CN 102769616 A CN102769616 A CN 102769616A CN 201210229113X A CN201210229113X A CN 201210229113XA CN 201210229113 A CN201210229113 A CN 201210229113A CN 102769616 A CN102769616 A CN 102769616A
Authority
CN
China
Prior art keywords
client
calculation
result
server
server end
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201210229113XA
Other languages
English (en)
Other versions
CN102769616B (zh
Inventor
陈杰
怀宾
彭鹏
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhuhai Kingsoft Digital Network Technology Co Ltd
Original Assignee
Zhuhai Kingsoft Online Game Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhuhai Kingsoft Online Game Technology Co Ltd filed Critical Zhuhai Kingsoft Online Game Technology Co Ltd
Priority to CN201210229113.XA priority Critical patent/CN102769616B/zh
Publication of CN102769616A publication Critical patent/CN102769616A/zh
Application granted granted Critical
Publication of CN102769616B publication Critical patent/CN102769616B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Computer And Data Communications (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明提出了一种基于游戏移动逻辑客户端与服务端同步的延迟计算方法,包括以下步骤:玩家在客户端上发出移动请求;客户端计算出时间点K;要求服务器端在时间点K开始移动逻辑运算;客户端和服务器端同时在时间点K开始移动逻辑计算;服务器端将计算结果发送给客户端;客户端获取到服务器端发送过来的计算结果,并对客户端的计算结果和服务器端的计算结果进行校验;其中,赋予游戏中受玩家控制的角色一不受玩家控制的惯性动作值。本发明不仅有效避免了外挂等工具篡改游戏数据的现象,而且有效地避免了客户端与服务端同步计算移动逻辑过程中网络延迟带来的负面效果。

Description

一种基于游戏移动逻辑客户端与服务端同步的延迟计算方法
技术领域
本发明涉及一种基于游戏移动逻辑客户端与服务端同步的延迟计算方法。
背景技术
近年来,随着宽带的普及,网络游戏得到了极大的发展,现在网游已经成为了一个举足轻重的产业,创造了可观的经济效益。
在网游中,用户需要控制对象移动以实现某些目的,比如到达某些特定位置或者做出某些动作,这些移动需要系统进行移动逻辑运算。此类移动逻辑运算可在客户端或者服务器端上进行,并在客户端与服务器端之间同步数据。现阶段,移动逻辑运算更多的选择在客户端运算,在提供更好的用户体验的同时避免加重服务器端的负载,目前市面上许多游戏都采用了客户端运算这种方法。但是事实证明这种方法存在严重的安全隐患,容易被一些游戏外挂恶意篡改数据。而在服务端运算,又存在太过依赖网络延迟,移动容易被扯动的问题。
在客户端进行运算可靠性较低的原因在于:由于客户端运算容易被外挂等工具篡改数值,所以移动逻辑在玩家客户端进行计算,并需要在服务端进行相同的计算与之校验;由于游戏服务器与玩家客户端之间不可避免地存在延时,所以导致玩家的操作在传送到服务器后,有一定的滞后性(服务器计算的结果在传送到客户端的时候也有相似的问题),造成两边的运算结果不一致而严重影响玩家体验。
发明内容
为解决以上问题,本发明在客户端(或者服务端)将所有操作指令添加一个基于服务端延迟的参数,然后发送,发送端与接收端同时在接收到操作后在指定时间点执行该操作。
本发明的目的在于防止移动运算在客户端上被外挂等工具篡改数值,将移动逻辑的运算放到服务器上。
本发明的目的还在于避免游戏服务器与玩家客户端之间因为不可避免的延时,导致玩家的操作在传送到服务器计算后,得到的结果与客户端运算得到的结果不一样,导致服务器不断扯动客户端,严重影响玩家体验。
本发明的技术方案为:
一种基于游戏移动逻辑客户端与服务端同步的延迟计算方法,包括游戏的客户端与服务器端,包括以下步骤:
1.玩家在客户端上发出移动请求;
2.客户端计算出时间点K,其中时间点K为当前时间和预设的延迟期望值的和;
3.客户端将移动请求和时间点K发送给服务器端,并要求服务器端在时间点K开始移动逻辑运算;
4.客户端和服务器端同时在时间点K开始移动逻辑计算,并将计算结果保存;
5.服务器端将计算结果发送给客户端;
6.客户端获取到服务器端发送过来的计算结果,并对客户端的计算结果和服务器端的计算结果进行校验,如果一致,则不修改,如果不一致,认为数据被篡改过,使用服务器端的计算结果覆盖客户端的计算结果;
其中,赋予游戏中受玩家控制的角色一不受玩家控制的惯性动作,所述惯性动作的时长覆盖所述延迟期望值。
作为以上技术方案的一种改进,玩家通过鼠标键盘等方式在客户端上发出移动请求。
作为以上技术方案的一种改进,服务器端的计算结果中含有帧数标志,客户端根据所述帧数标记在其保存的历史计算结果中寻找相应的计算结果,并进行验证。
由于添加了延迟同步,所以包括急停,快速启动这些动作玩家会感觉到角色的动作并不会在按键按下的那一瞬间响应,但是不会影响用户体验(如果网络流畅,一般可以控制在0.1 ~ 0.2 S以内,低于人的正常反应速度,其实可以忽略不计)。另外,在这部分动作中可以添加一些惯性的动作(例如急停的时候添加“刹车滑步”动作)也可以降低延迟造成的对用户造成的影响。
另外,通过客户端与服务端同步计算移动逻辑,有效避免了外挂等工具篡改游戏数据的现象;延迟计算有效地避免了客户端与服务端同步计算移动逻辑过程中网络延迟带来的负面效果。
附图说明
以下结合附图对本发明进行进一步的说明,其中:
图1为现有技术中移动逻辑计算的示意图;
图2为本发明中移动逻辑计算的示意图。
具体实施方式
为了解决延迟问题,本发明使用了一套延迟计算的模式,当客户端获取移动操作的时候,并不直接开始计算移动结果,而是先发送该操作至服务器端,告诉服务器在某一个时间点进行这个操作,然后当这个时间到了以后,客户端与服务器端同步进行计算(即干脆两边同时将这个操作延迟到时间点K),然后服务器端会将计算结果发送回客户端,与客户端进行数据校验。
其中留意到,客户端获得的、由服务器端计算出来的结果也会受到延迟的影响,所以会带上帧数的标志,客户端会将之前一段时间的计算结果保存下来,这样当获取服务器端发送下来的计算结果的时候,可以在历史计算结果中找到并进行验证。
本发明的运算步骤详细如下:
1.  玩家通过鼠标键盘等方式,在网游的客户端上发出移动请求;
2.  客户端计算出时间点K,其中时间点K为当前时间和预设的延迟期望值的和,其中所述延迟期望值一般大于或者等于网络的延迟时间;
3.  客户端将移动请求和时间点K发送给服务器端,并告诉服务器端在时间点K开始运算;
4.  客户端在时间点K开始运算玩家的移动请求,并将计算结果保存;服务器端在时间点K也开始运算玩家的移动请求;
5.  服务器端将计算结果发送给客户端;
6.  客户端获取到服务器端发送过来的计算结果,与客户端保存的K时间点的数据进行校验,如果数据一致,则对移动进行操作;如果数据不一致,认为数据被篡改过,则进行修复动作,即使用服务器端的数据覆盖客户端的数据。
在现有技术中,如图1所示,假设玩家正在向右移动,然后在S点发出停止指令,但是由于延迟的原因,在服务器端接收到命令的时候,人物的位置可能已经运行S1的位置,这个时候,服务器端会把人物校验到S1的位置,就会发生扯动,从而影响用户体验。
然而,在本发明中,如图2所示,假设玩家正在向右移动,然后在S点发出停止指令,这个时候,客户端就会服务器端发出一条在时间点K停止的指令(即上文所说的在时间点K进行移动逻辑运算),并在时间点K停止在S1处,此时服务器端和客户端将同时停止,避免了扯动的出现,保证了用户的体验。
其中,为解决处理客户端与服务端之间同步的时候存在的延时问题,本发明主要是引入一个延迟操作的思想,将延迟转嫁到玩家操作上,用一部分类似惯性的动作去填补延迟带来的体验问题。
在网游中,延迟的主要影响主要是玩家按下按钮可能需要一定的反应时间,但是实际操作中这个很短的时间一般很难察觉出来。本发明的延迟参数(即预设的延迟期望值)一般设置在一个玩家无法察觉的值,比如0.1~0.2秒  一般玩家体验不出来,但是对于网络延时来说已经足够了。
举例来说,本发明在角色切换移动状态的时候,引入惯性的概念,这样当你在运动中突然停止,因为延迟的缘故,需要一定的时间服务器才能响应停止操作(从位置S到位置S1的过程)这个时候,给角色一个表现,例如刹车的动作,这个时候玩家的角色会短暂地不受控制,平滑地度过这个延时过程。
本发明通过客户端与服务端同步计算移动逻辑,有效避免了外挂等工具篡改游戏数据的现象,在目前运营的游戏中,还没有出现过这方面的现象。本发明的延迟计算有效地避免了客户端与服务端同步计算移动逻辑过程中网络延迟带来的负面效果。
当然,本发明除了上述实施方式之外,其它等同技术方案也应当在其保护范围之内。

Claims (3)

1.一种基于游戏移动逻辑客户端与服务端同步的延迟计算方法,包括游戏的客户端与服务器端,其特征在于:包括以下步骤:
玩家在客户端上发出移动请求;
客户端计算出时间点K,其中时间点K为当前时间和预设的延迟期望值的和;
客户端将移动请求和时间点K发送给服务器端,并要求服务器端在时间点K开始移动逻辑运算;
客户端和服务器端同时在时间点K开始移动逻辑计算,并将计算结果保存;
服务器端将计算结果发送给客户端;
客户端获取到服务器端发送过来的计算结果,并对客户端的计算结果和服务器端的计算结果进行校验,如果一致,则不修改,如果不一致,则认为数据被篡改过,并使用服务器端的计算结果覆盖客户端的计算结果;
其中,赋予游戏中受玩家控制的角色一不受玩家控制的惯性动作,所述惯性动作的时长覆盖所述延迟期望值。
2.根据权利要求1所述的基于游戏移动逻辑客户端与服务端同步的延迟计算方法,其特征在于:玩家通过鼠标、键盘等方式在客户端上发出移动请求。
3.根据权利要求1所述的基于游戏移动逻辑客户端与服务端同步的延迟计算方法,其特征在于:服务器端的计算结果中含有帧数标志,客户端根据所述帧数标记在其保存的历史计算结果中寻找相应的计算结果,并进行验证。
CN201210229113.XA 2012-07-04 2012-07-04 一种基于游戏移动逻辑客户端与服务端同步的延迟计算方法 Active CN102769616B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210229113.XA CN102769616B (zh) 2012-07-04 2012-07-04 一种基于游戏移动逻辑客户端与服务端同步的延迟计算方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210229113.XA CN102769616B (zh) 2012-07-04 2012-07-04 一种基于游戏移动逻辑客户端与服务端同步的延迟计算方法

Publications (2)

Publication Number Publication Date
CN102769616A true CN102769616A (zh) 2012-11-07
CN102769616B CN102769616B (zh) 2015-03-25

Family

ID=47096866

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210229113.XA Active CN102769616B (zh) 2012-07-04 2012-07-04 一种基于游戏移动逻辑客户端与服务端同步的延迟计算方法

Country Status (1)

Country Link
CN (1) CN102769616B (zh)

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103678919A (zh) * 2013-12-13 2014-03-26 广东天拓资讯科技有限公司 游戏服务端虚拟时间实现方法
CN103701918A (zh) * 2013-12-31 2014-04-02 北京像素软件科技股份有限公司 客户端和服务器同步方法和装置
CN104598832A (zh) * 2015-01-08 2015-05-06 盟游(北京)科技有限公司 网络游戏中游戏数值防篡改的设备和方法、网络游戏系统
CN105677318A (zh) * 2015-12-28 2016-06-15 心动网络股份有限公司 一种防止游戏被内存修改器修改的方法
CN106126723A (zh) * 2016-06-30 2016-11-16 乐视控股(北京)有限公司 一种移动目标对象的方法及装置
CN106302679A (zh) * 2016-08-08 2017-01-04 腾讯科技(深圳)有限公司 一种虚拟对象移动同步方法、客户端及服务器
CN107544940A (zh) * 2017-09-06 2018-01-05 深圳市金蝶精斗云网络科技有限公司 一种web的计算方法及装置
CN109045703A (zh) * 2018-07-24 2018-12-21 合肥爱玩动漫有限公司 一种检测网络游戏外挂的方法
JP2019508084A (ja) * 2016-04-08 2019-03-28 テンセント・テクノロジー・(シェンジェン)・カンパニー・リミテッド ゲーム内の役割の移動制御方法、サーバ及びクライアント
CN109529355A (zh) * 2018-12-24 2019-03-29 网易(杭州)网络有限公司 虚拟现实场景的信息同步方法、装置、处理器及服务器
CN109660559A (zh) * 2019-01-21 2019-04-19 竞技世界(北京)网络技术有限公司 一种基于时间戳的客户端与服务器端场景同步方法
CN111773680A (zh) * 2020-07-28 2020-10-16 网易(杭州)网络有限公司 虚拟角色的位置校验方法、装置、电子设备和存储介质
CN112241328A (zh) * 2020-09-10 2021-01-19 长沙市到家悠享网络科技有限公司 数据处理方法、装置及系统
CN112511256A (zh) * 2020-11-24 2021-03-16 高小翎 在线游戏中动态延迟优化的稳健同步方法
CN113827955A (zh) * 2021-09-26 2021-12-24 网易(杭州)网络有限公司 游戏数据处理方法及装置、存储介质、电子设备

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040078572A1 (en) * 2002-07-31 2004-04-22 Pearson Siani Lynne Method of validating performance of a participant in an interactive computing environment
CN101453456A (zh) * 2007-12-06 2009-06-10 雷爵网络科技股份有限公司 用户端程序验证方法及系统
CN100511254C (zh) * 2006-07-12 2009-07-08 珠海市西山居软件有限公司 一种可反外挂的网络游戏系统及网络游戏系统反外挂的方法
CN102130908A (zh) * 2011-01-30 2011-07-20 上海盈游网络技术有限公司 延时敏感型网络游戏中异步计算同步回朔方法及系统
CN102158367A (zh) * 2010-12-17 2011-08-17 中国科学技术大学苏州研究院 主动反外挂的网络游戏系统及网络游戏系统反外挂方法
CN102387132A (zh) * 2011-08-25 2012-03-21 北京像素软件科技股份有限公司 战斗系统实现方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040078572A1 (en) * 2002-07-31 2004-04-22 Pearson Siani Lynne Method of validating performance of a participant in an interactive computing environment
CN100511254C (zh) * 2006-07-12 2009-07-08 珠海市西山居软件有限公司 一种可反外挂的网络游戏系统及网络游戏系统反外挂的方法
CN101453456A (zh) * 2007-12-06 2009-06-10 雷爵网络科技股份有限公司 用户端程序验证方法及系统
CN102158367A (zh) * 2010-12-17 2011-08-17 中国科学技术大学苏州研究院 主动反外挂的网络游戏系统及网络游戏系统反外挂方法
CN102130908A (zh) * 2011-01-30 2011-07-20 上海盈游网络技术有限公司 延时敏感型网络游戏中异步计算同步回朔方法及系统
CN102387132A (zh) * 2011-08-25 2012-03-21 北京像素软件科技股份有限公司 战斗系统实现方法

Cited By (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103678919B (zh) * 2013-12-13 2017-01-04 广东星辉天拓互动娱乐有限公司 游戏服务端虚拟时间实现方法
CN103678919A (zh) * 2013-12-13 2014-03-26 广东天拓资讯科技有限公司 游戏服务端虚拟时间实现方法
CN103701918A (zh) * 2013-12-31 2014-04-02 北京像素软件科技股份有限公司 客户端和服务器同步方法和装置
CN103701918B (zh) * 2013-12-31 2017-04-12 北京像素软件科技股份有限公司 客户端和服务器同步方法和装置
CN104598832A (zh) * 2015-01-08 2015-05-06 盟游(北京)科技有限公司 网络游戏中游戏数值防篡改的设备和方法、网络游戏系统
CN105677318A (zh) * 2015-12-28 2016-06-15 心动网络股份有限公司 一种防止游戏被内存修改器修改的方法
US10661164B2 (en) 2016-04-08 2020-05-26 Tencent Technology (Shenzhen) Company Limited Method for controlling character movement in game, server, and client
JP2019508084A (ja) * 2016-04-08 2019-03-28 テンセント・テクノロジー・(シェンジェン)・カンパニー・リミテッド ゲーム内の役割の移動制御方法、サーバ及びクライアント
CN106126723A (zh) * 2016-06-30 2016-11-16 乐视控股(北京)有限公司 一种移动目标对象的方法及装置
CN106302679A (zh) * 2016-08-08 2017-01-04 腾讯科技(深圳)有限公司 一种虚拟对象移动同步方法、客户端及服务器
WO2018028566A1 (zh) * 2016-08-08 2018-02-15 腾讯科技(深圳)有限公司 虚拟对象的移动同步方法、客户端、服务器及存储介质
US11235234B2 (en) 2016-08-08 2022-02-01 Tencent Technology (Shenzhen) Company Limited Method for movement synchronization of virtual object, client, server, and storage medium
CN107544940A (zh) * 2017-09-06 2018-01-05 深圳市金蝶精斗云网络科技有限公司 一种web的计算方法及装置
CN109045703A (zh) * 2018-07-24 2018-12-21 合肥爱玩动漫有限公司 一种检测网络游戏外挂的方法
CN109529355A (zh) * 2018-12-24 2019-03-29 网易(杭州)网络有限公司 虚拟现实场景的信息同步方法、装置、处理器及服务器
CN109660559A (zh) * 2019-01-21 2019-04-19 竞技世界(北京)网络技术有限公司 一种基于时间戳的客户端与服务器端场景同步方法
CN109660559B (zh) * 2019-01-21 2021-05-04 竞技世界(北京)网络技术有限公司 一种基于时间戳的客户端与服务器端场景同步方法
CN111773680A (zh) * 2020-07-28 2020-10-16 网易(杭州)网络有限公司 虚拟角色的位置校验方法、装置、电子设备和存储介质
CN111773680B (zh) * 2020-07-28 2024-04-26 网易(杭州)网络有限公司 虚拟角色的位置校验方法、装置、电子设备和存储介质
CN112241328A (zh) * 2020-09-10 2021-01-19 长沙市到家悠享网络科技有限公司 数据处理方法、装置及系统
CN112241328B (zh) * 2020-09-10 2024-01-23 长沙市到家悠享网络科技有限公司 数据处理方法、装置及系统
CN112511256A (zh) * 2020-11-24 2021-03-16 高小翎 在线游戏中动态延迟优化的稳健同步方法
CN113827955A (zh) * 2021-09-26 2021-12-24 网易(杭州)网络有限公司 游戏数据处理方法及装置、存储介质、电子设备

Also Published As

Publication number Publication date
CN102769616B (zh) 2015-03-25

Similar Documents

Publication Publication Date Title
CN102769616A (zh) 一种基于游戏移动逻辑客户端与服务端同步的延迟计算方法
US11452941B2 (en) Emoji-based communications derived from facial features during game play
EP2919874B1 (en) Systems and methods for cloud processing and overlaying of content on streaming video frames of remotely processed applications
CN110559651A (zh) 云游戏的控制方法及装置、计算机存储介质、电子设备
EP2750032B1 (en) Methods and systems for generation and execution of miniapp of computer application served by cloud computing system
WO2017076224A1 (zh) 基于虚拟现实的用户交互方法及系统
CN107185232B (zh) 虚拟对象运动控制方法、装置、电子设备及存储介质
WO2011087887A3 (en) Tracking groups of users in motion capture system
US9041621B2 (en) Apparatus and method for implementing haptic-based networked virtual environment which supports high-resolution tiled display
JP6730415B2 (ja) 仮想現実の長距離相互作用のためのシステム及び方法
CN103096156A (zh) 机顶盒的控制方法和设备
CN108579079B (zh) 虚拟对象转向控制方法及装置、电子设备、存储介质
CN110772784B (zh) 载具控制方法和装置、存储介质及电子装置
CN107413048A (zh) Vr游戏过程中的处理方法及装置
CN109815557A (zh) 一种机器人模型的展示方法、装置及智能终端
CN105068653A (zh) 确定虚拟空间中触摸事件的方法及装置
WO2024077872A1 (zh) 显示位置调整方法、装置、存储介质与电子设备
CN108854054B (zh) 带触摸板式体感手柄的角色及镜头控制方法
CN202042069U (zh) 多角色空间模拟系统和太空飞船模拟系统
WO2022227934A1 (zh) 虚拟载具的控制方法、装置、设备、介质及程序产品
CN109189218A (zh) 一种手势识别的方法、装置、设备及计算机可读存储介质
CN105630169A (zh) 一种体感输入方法及装置
KR101398862B1 (ko) 터치 스크린을 이용한 스마트 기기 간 던지기 액션 수행방법
CN103139198B (zh) 信息处理系统、信息处理服务器和信息处理方法
CN112546627A (zh) 路线指引方法、装置、存储介质及计算机设备

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CP03 Change of name, title or address
CP03 Change of name, title or address

Address after: 519000 Room 102, 202, 302 and 402, No. 325, Qiandao Ring Road, Tangjiawan Town, high tech Zone, Zhuhai City, Guangdong Province, Room 102 and 202, No. 327 and Room 302, No. 329

Patentee after: Zhuhai Jinshan Digital Network Technology Co.,Ltd.

Address before: 519000 Jinshan software building, 8 Lanshan lane, Jida Jingshan Hill Road, Zhuhai, Guangdong

Patentee before: ZHUHAI KINGSOFT ONLINE GAME TECHNOLOGY Co.,Ltd.