一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

操作数据的校验方法和装置、存储介质及电子设备与流程

2022-04-16 18:24:07 来源:中国专利 TAG:


1.本发明涉及计算机领域,具体而言,涉及一种操作数据的校验方法和装置、存储介质及电子设备。


背景技术:

2.在多人在线战术竞技游戏(multiplayer online battle arena简称为moba)应用中,不同客户端各自控制的虚拟角色在对抗过程中,往往会产生不同的攻击伤害。为了在不同客户端之间同步对目标虚拟角色产生的伤害值,目前常用的方式是由服务器向各个客户端发送对目标虚拟角色触发的攻击事件,然后由各个客户端各自计算该攻击事件对目标虚拟角色产生的伤害值,再由服务器对各个客户端上报的伤害值进行校验。
3.然而为了提高游戏对抗成绩,常常会有个别玩家安装额外的外挂软件,并通过这些外挂软件的辅助来篡改上述攻击事件对目标虚拟角色产生的伤害值。而目前相关技术中的服务器仅能识别出不符合操作常规的离谱操作数值,但对于篡改幅度较小的篡改结果却无法校验出,从而导致针对多人对抗游戏中的操作数据进行校验的校验结果准确性较低的问题。
4.针对上述的问题,目前尚未提出有效的解决方案。


技术实现要素:

5.本发明实施例提供了一种操作数据的校验方法和装置、存储介质及电子设备,以至少解决现有技术对操作数据进行校验的准确率较低的技术问题。
6.根据本发明实施例的一个方面,提供了一种操作数据的校验方法,包括:获取参与目标游戏任务的第一客户端控制的第一虚拟角色所触发的目标攻击事件,及第一客户端基于目标攻击事件的事件信息所生成的第一攻击操作结果数据;将目标攻击事件的事件信息同步给参与目标游戏任务的第二客户端,其中,第二客户端控制的第二虚拟角色为目标游戏任务中除第一虚拟角色之外的虚拟角色;获取第二客户端基于目标攻击事件的事件信息所生成的第二攻击操作结果数据;对第一攻击操作结果数据及第二攻击操作结果数据进行校验,得到目标攻击事件中的攻击操作对应的校验结果。
7.根据本发明实施例的另一方面,还提供了一种操作数据的校验装置,包括:第一获取单元,用于获取参与目标游戏任务的第一客户端控制的第一虚拟角色所触发的目标攻击事件,及第一客户端基于目标攻击事件的事件信息所生成的第一攻击操作结果数据;同步单元,用于将目标攻击事件的事件信息同步给参与目标游戏任务的第二客户端,其中,第二客户端控制的第二虚拟角色为目标游戏任务中除第一虚拟角色之外的虚拟角色;第二获取单元,用于获取第二客户端基于目标攻击事件的事件信息所生成的第二攻击操作结果数据;校验单元,用于对第一攻击操作结果数据及第二攻击操作结果数据进行校验,得到目标攻击事件中的攻击操作对应的校验结果。
8.根据本发明实施例的又一方面,还提供了一种计算机可读的存储介质,该计算机
可读的存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述操作数据的校验方法。
9.根据本技术实施例的又一个方面,提供一种计算机程序产品,该计算机程序产品包括计算机程序/指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机程序/指令,处理器执行该计算机程序/指令,使得该计算机设备执行如以上操作数据的校验方法。
10.根据本发明实施例的又一方面,还提供了一种电子设备,包括存储器和处理器,上述存储器中存储有计算机程序,上述处理器被设置为通过上述计算机程序执行上述的操作数据的校验方法。
11.在本发明实施例中,通过获取参与目标游戏任务的第一客户端控制的第一虚拟角色所触发的目标攻击事件,及第一客户端基于目标攻击事件的事件信息所生成的第一攻击操作结果数据;将目标攻击事件的事件信息同步给参与目标游戏任务的第二客户端,其中,第二客户端控制的第二虚拟角色为目标游戏任务中除第一虚拟角色之外的虚拟角色;获取第二客户端基于目标攻击事件的事件信息所生成的第二攻击操作结果数据;对第一攻击操作结果数据及第二攻击操作结果数据进行校验,得到目标攻击事件中的攻击操作对应的校验结果,从而通过从第二客户端获取的并计算得到的攻击操作结果数据信息对第一客户端中的攻击操作结果数据进行校验,进而实现了在第一客户端提供失实的攻击操作结果数据的情况下,对失实的数据进行校验和识别的技术效果,解决了现有技术对操作数据进行校验的准确率低的技术问题。
附图说明
12.此处所说明的附图用来提供对本发明的进一步理解,构成本技术的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
13.图1是根据本发明实施例的一种可选的操作数据的校验方法的硬件环境的示意图;
14.图2是根据本发明实施例的一种可选的操作数据的校验方法的流程图;
15.图3是根据本发明实施例的一种可选的操作数据的校验方法的示意图;
16.图4是根据本发明实施例的另一种可选的操作数据的校验方法的示意图;
17.图5是根据本发明实施例的又一种可选的操作数据的校验方法的示意图;
18.图6是根据本发明实施例的又一种可选的操作数据的校验方法的示意图;
19.图7是根据本发明实施例的又一种可选的操作数据的校验方法的示意图;
20.图8是根据本发明实施例的另一种可选的操作数据的校验方法的流程图;
21.图9是根据本发明实施例的一种可选的操作数据的校验装置的结构示意图;
22.图10是根据本发明实施例的一种可选的电子设备的结构示意图。
具体实施方式
23.为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人
员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
24.需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
25.根据本发明实施例的一个方面,提供了一种操作数据的校验方法,作为一种可选的实施方式,上述操作数据的校验方法可以但不限于应用于如图1所示的硬件环境中的操作数据的校验系统,其中,该操作数据的校验系统可以包括但不限于终端设备102、网络104、服务器106、数据库108及终端设备110。终端设备102和终端设备110中分别运行有目标客户端(如图1所示,以目标客户端为一种射击游戏应用客户端为例)。上述终端设备102和终端设备110中分别包括人机交互屏幕,处理器及存储器。人机交互屏幕用于显示虚拟游戏场景(如图1所示的虚拟射击游戏场景),还用于提供人机交互接口以接收用于控制虚拟场景中受控的虚拟对象的人机交互操作,该虚拟对象将完成虚拟场景中设置的游戏任务。处理器用于响应上述人机交互操作生成交互指令,并将该交互指令发送给服务器。存储器用于存储相关属性数据,如所控制的虚拟对象的对象属性信息,及所持有的道具属性信息等,这里的属性信息可以包括但不限于用于识别其身份及当前所在位置等信息。其中,终端设备102中运行有控制第一虚拟对象的客户端;可选地,在第二虚拟对象为由终端设备控制的虚拟对象的情况下,终端设备110中运行有控制第二虚拟对象的客户端。这里的第二虚拟对象与第一虚拟对象为不同阵营。在本技术实施例中,第二虚拟对象可以但不限于使用目标射击道具瞄准第一虚拟对象以执行瞄准射击操作。
26.此外,服务器106中包括处理引擎,处理引擎用于对数据库108执行存储或读取操作。具体地,处理引擎从数据库108中读取各个虚拟对象各自的位置及其所使用的射击道具的瞄准射击信息。
27.具体过程如以下步骤:如步骤s102,在显示界面中显示射击游戏任务中第一虚拟对象所在的虚拟场景;如步骤s104,在终端设备102中响应于对显示界面的触控操作,生成目标攻击事件并产生攻击操作结果数据;然后执行步骤s106,终端设备102通过网络104发送目标攻击事件的事件信息至终端设备110和服务器106,其中,终端设备110运行有第二客户端;接着执行步骤s108-s110,终端设备110基于目标攻击事件的事件信息生成第二攻击操作结果数据,并通过网络104向服务器106发送第二攻击操作结果数据;步骤s112,对第一攻击操作结果数据及第二攻击操作结果数据进行校验,得到目标攻击事件中的攻击操作对应的校验结果;然后执行步骤s114,服务器106通过网络104向终端设备102发送校验结果;最后执行步骤s116,终端设备102响应校验结果,根据校验结果处理攻击操作结果数据。
28.作为另一种可选的实施方式,在终端设备102具备较强大的计算处理能力时,上述步骤s112也可以由终端设备102来完成。这里为示例,本实施例中对此不作任何限定。
29.可选地,在本实施例中,上述终端设备可以是配置有目标客户端的终端设备,可以
包括但不限于以下至少之一:手机(如android手机、ios手机等)、笔记本电脑、平板电脑、掌上电脑、mid(mobile internet devices,移动互联网设备)、pad、台式电脑、智能电视等。目标客户端可以是视频客户端、即时通信客户端、浏览器客户端、教育客户端等支持提供射击游戏任务的客户端。上述网络可以包括但不限于:有线网络,无线网络,其中,该有线网络包括:局域网、城域网和广域网,该无线网络包括:蓝牙、wifi及其他实现无线通信的网络。上述服务器可以是单一服务器,也可以是由多个服务器组成的服务器集群,或者是云服务器。上述仅是一种示例,本实施例中对此不作任何限定。
30.可选地,在本实施例中,上述操作数据的校验方法可以但不限于应用于在虚拟场景中完成既定对抗游戏任务的游戏类终端应用(application,简称app)中,如多人在线战术竞技游戏(multiplayer online battle arena简称为moba)应用中射击游戏应用,其中,上述对抗游戏任务可以但不限于是当前玩家通过人机交互操作数据的校验虚拟场景中的虚拟对象与其他玩家控制的虚拟对象通过对抗互动完成的游戏任务,这里的对抗游戏任务可以但不限于以插件、小程序形式运行在应用(如非独立运行的游戏app)中,或在游戏引擎中运行在应用(如独立运行的游戏app)中。上述游戏应用的类型可以包括但不限于以下至少之一:二维(two dimension,简称2d)游戏应用、三维(three dimension,简称3d)游戏应用、虚拟现实(virtual reality,简称vr)游戏应用、增强现实(augmented reality,简称ar)游戏应用、混合现实(mixed reality,简称mr)游戏应用。以上只是一种示例,本实施例对此不作任何限定。
31.在本发明实施例中,通过获取参与目标游戏任务的第一客户端控制的第一虚拟角色所触发的目标攻击事件,及第一客户端基于目标攻击事件的事件信息所生成的第一攻击操作结果数据;将目标攻击事件的事件信息同步给参与目标游戏任务的第二客户端,其中,第二客户端控制的第二虚拟角色为目标游戏任务中除第一虚拟角色之外的虚拟角色;获取第二客户端基于目标攻击事件的事件信息所生成的第二攻击操作结果数据;对第一攻击操作结果数据及第二攻击操作结果数据进行校验,得到目标攻击事件中的攻击操作对应的校验结果,从而通过从第二客户端获取的并计算得到的攻击操作结果数据信息对第一客户端中的攻击操作结果数据进行校验,进而实现了在第一客户端提供失实的攻击操作结果数据的情况下,对失实的数据进行校验和识别的技术效果,解决了现有技术对操作数据进行校验的准确率低的技术问题。
32.作为一种可选的实施方式,如图2所示,上述操作数据的校验方法包括以下步骤:
33.s202,获取参与目标游戏任务的第一客户端控制的第一虚拟角色所触发的目标攻击事件,及第一客户端基于目标攻击事件的事件信息所生成的第一攻击操作结果数据;
34.可选地,在本实施例中,上述操作数据的校验方法可以应用在不限于射击应用中,其中该射击应用可以包括但不限于:第一人称射击应用(first-person shooting game,fps)、第三人称射击应用(third-person shooting game,tps)等包含但不仅限于此的所有使用热兵器类进行远程攻击的游戏。其中,第一人称射击应用属于动作应用(action game,act)的一个分支,顾名思义,第一人称射击应用就是以操作者(玩家)的主观视角来进行射击的射击应用。第三人称射击应用也是射击应用的一种,与第一人称射击应用的区别在于,操作者(玩家)控制的虚拟控制对象将直接显示在观察视野画面中。
35.可以理解的是,上述射击游戏任务可以但不限于是当前玩家通过人机交互操作控
制虚拟场景中的第一虚拟对象与其他玩家控制的虚拟对象通过射击对抗互动完成的游戏任务。
36.在一种可选的方式中,上述射击游戏任务还可以是一种团队协作对抗射击运动,即若干玩家控制若干虚拟角色组成几只队伍,每只队伍中由多名玩家组成。从而通过队伍内部的协作互助,以及队伍之间的射击对抗,以最终在游戏任务中幸存的最后一只队伍作为胜利队伍。
37.可以理解的是,上述目标攻击事件可以指第一客户端控制第一虚拟角色执行了一次攻击操作,在攻击操作的类型为一次射击操作的情况下,上述目标攻击事件可以用于指示该攻击操作发生在射击应用的虚拟场景中的具体坐标位置、事件发生的时间点、射击子弹发射速度、发射角度、武器属性等信息,进而第一客户端通过上述信息结合虚拟场景的模型数据计算攻击操作的结果数据,比如在射击操作命中虚拟角色失败的情况下,射击操作命中的地点信息即为攻击操作结果数据;在射击操作命中虚拟角色成功的情况下,确定射击操作命中的虚拟角色的身体部位,进而通过命中的身体部位计算第一攻击操作造成的攻击伤害,上述身体部位信息以及造成的攻击伤害数值信息即为攻击操作结果数据。可以理解的是,上述事件信息以及攻击操作结果数据的具体内容仅为示例,不对具体事件信息以及操作结果数据的内容进行限制。
38.s204,将目标攻击事件的事件信息同步给参与目标游戏任务的第二客户端,其中,第二客户端控制的第二虚拟角色为目标游戏任务中除第一虚拟角色之外的虚拟角色;
39.需要说明的是,在获取到第一客户端的目标攻击事件信息后,将上述目标攻击事件信息同步转发给游戏任务中的第二客户端。上述目标攻击事件可以包括但不限于发起目标攻击事件的账号信息、目标攻击事件的发生位置、攻击角度、攻击速度等事件信息。
40.s206,获取第二客户端基于目标攻击事件的事件信息所生成的第二攻击操作结果数据;
41.可以理解的是,上述控制除第一虚拟角色以外的全部虚拟角色的第二客户端可以基于目标攻击事件生成第二攻击操作结果。也就是说,对应于第一客户端的剩余全部客户端均会基于第一客户端发出的目标攻击事件信息计算攻击操作结果数据,在上述第二客户端存在多个的情况下,即可计算出对应于多个第二客户端的多个攻击操作结果数据。
42.具体地,计算上述第二攻击操作结果数据的方法可以是在第二客户端上基于指示该攻击操作发生在射击应用的虚拟场景中的具体坐标位置、事件发生的时间点、射击子弹发射速度、发射角度、武器属性等信息,结合虚拟场景的模型数据计算攻击操作的结果数据,比如在射击操作命中虚拟角色失败的情况下,射击操作命中的地点信息即包括在第二攻击操作结果数据中;在射击操作命中虚拟角色成功的情况下,确定射击操作命中的虚拟角色的身体部位,进而通过命中的身体部位计算第二攻击操作造成的攻击伤害,上述身体部位信息以及造成的攻击伤害数值信息即包括在第二攻击操作结果数据中。
43.s208,对第一攻击操作结果数据及第二攻击操作结果数据进行校验,得到目标攻击事件中的攻击操作对应的校验结果。
44.以上述攻击操作结果数据包括攻击操作造成的伤害数值的情况下,假设上述第一攻击操作结果数据为a,上述第二攻击操作结果数据为b1,b2,b3,b4的情况下,校验上述第一攻击操作结果数据的方式可以是:获取取上述第二攻击操作结果数据b1,b2,b3,b4的加
权平均值b5,在b5与上述第一攻击操作结果数据a的差值小于阈值的情况下,确定校验成功;在大于阈值的情况下,确定校验失败。可以理解的是,上述校验方法仅为一种示例,不对实际采用的校验方法进行限制。
45.在本发明实施例中,通过获取参与目标游戏任务的第一客户端控制的第一虚拟角色所触发的目标攻击事件,及第一客户端基于目标攻击事件的事件信息所生成的第一攻击操作结果数据;将目标攻击事件的事件信息同步给参与目标游戏任务的第二客户端,其中,第二客户端控制的第二虚拟角色为目标游戏任务中除第一虚拟角色之外的虚拟角色;获取第二客户端基于目标攻击事件的事件信息所生成的第二攻击操作结果数据;对第一攻击操作结果数据及第二攻击操作结果数据进行校验,得到目标攻击事件中的攻击操作对应的校验结果,从而通过从第二客户端获取的并计算得到的攻击操作结果数据信息对第一客户端中的攻击操作结果数据进行校验,进而实现了在第一客户端提供失实的攻击操作结果数据的情况下,对失实的数据进行校验和识别的技术效果,解决了现有技术对操作数据进行校验的准确率低的技术问题。
46.作为一种可选的方案,对第一攻击操作结果数据及第二攻击操作结果数据进行校验,得到目标攻击事件中的攻击操作对应的校验结果包括:
47.s1,对第一攻击操作结果数据中携带的第一命中位置数据,及第二攻击操作结果数据中携带的第二命中位置数据进行比对,得到比对结果,其中,第一命中位置数据用于指示第一客户端计算得到的与攻击操作匹配的第一命中位置,第二命中位置数据用于指示第二客户端计算得到的与攻击操作匹配的第二命中位置;
48.s2,在比对结果指示第一命中位置数据与第二命中位置数据匹配的情况下,确定校验结果为攻击操作并未出现异常;
49.s3,在比对结果指示第一命中位置数据与第二命中位置数据不匹配的情况下,确定校验结果为攻击操作出现异常。
50.以下结合图3、图4对上述方法进行说明。可以理解的是,在射击游戏中,通常会设定射击操作造成的伤害值与命中的身体部位相关。如图3所示,在触发攻击控件301,且命中第二虚拟角色302的腿部的情况下,显示可以造成的伤害值为“28”;如图4所示,在命中的部位为第二虚拟角色302的头部的情况下,显示可以造成的伤害值为“40”。可见,现有的游戏作弊软件可以通过调整实际命中的位置数据以实现游戏作弊的目的。比如,在客户端中实际命中的位置为虚拟角色的腿部的情况下,直接修改命中位置数据,将命中位置修改为头部。
51.在发生客户端的射击操作的情况下,客户端在命中敌人的情况下,会向服务器上报射击操作信息,其中关键的信息有:命中的位置,伤害,武器id(用于指示武器的类型),时间等等。而在出现篡改命中位置的作弊行为的情况时,现有通过服务器无法实现对上述作弊操作的校验。因为虚拟角色模型的头部与腿的距离不远,虽然服务器在基于发射信息进行模拟射击结果得到的命中位置的为腿部,但服务器为了保证客户端的表现正确,通常都会以客户端上发的结果为主。
52.也就是说,在现有技术中,虽然服务器在接收到上述攻击事件信息(如射击角度信息等攻击操作所产生的信息)的情况下,会进行模拟计算以得到一个攻击操作结果数据,但由于通过服务器计算得出的攻击操作结果数据只有一个,也就是说,仅通过服务器对上述
攻击事件以及位置数据进行校验,校验信源较少,进而会导致校验的效果较差。同时,在服务器计算得到的攻击操作结果数据与第一客户端发送的第一攻击操作结果数据存在出入,但是差值在一定范围内的情况下,通常也会以第一客户端发送的第一攻击操作结果数据作为最终的攻击操作结果数据。比如说,在上述作弊场景中,由于虚拟角色的头部和腿部的位置实际相差范围也在设定的控制阈值内,因此,服务器会采用第一客户端发送的第一攻击操作结果数据作为最终攻击操作结果数据。
53.在本实施例中,对第一攻击操作结果数据中携带的第一命中位置数据,及第第二客户端产生的二攻击操作结果数据中携带的第二命中位置数据进行比对,得到比对结果的方式进行校验,以克服通过服务器进行校验带来的校验结果不准确的技术问题。
54.第一攻击操作结果数据及第二攻击操作结果数据进行校验的方式可以但不限于是,根据第一攻击操作结果数据与第二攻击操作结果数据中包括的命中位置数据、命中对象属性数据、命中伤害数值、命中对象的存活状态等数据进行比对校验。以上方式仅为示例性说明,在此不对上述方法构成限制。
55.在本实施例中,通过对第一攻击操作结果数据中携带的第一命中位置数据,及第二攻击操作结果数据中携带的第二命中位置数据进行比对,得到比对结果;在比对结果指示第一命中位置数据与第二命中位置数据匹配的情况下,确定校验结果为攻击操作并未出现异常;在比对结果指示第一命中位置数据与第二命中位置数据不匹配的情况下,确定校验结果为攻击操作出现异常,从而解决了通过服务器对命中位置数据校验的校验效果不好的技术问题,实现了第二客户端产生的第二命中位置对第一命中位置进行校验,实现了提高校验结果准确率的技术效果。
56.作为一种可选的方式,对第一攻击操作结果数据中携带的第一命中位置数据,及第二攻击操作结果数据中携带的第二命中位置数据进行比对,得到比对结果包括:
57.s1,获取第一命中位置数据所指示的第一命中位置所在命中对象的第一对象属性标签,及第二命中位置数据所指示的第二命中位置所在命中对象的第二对象属性标签;
58.s2,在第一对象属性标签与第二对象属性标签不一致的情况下,确定比对结果为第一命中位置数据与第二命中位置数据不匹配。
59.需要说明的是,在另一种作弊方式中,可以通过隐藏遮挡物的方式以直接攻击遮挡物后的虚拟角色,从而实现作弊效果。如图5所示,在使用作弊软件之前,目标游戏中通过射击道具只能瞄准虚拟场景中的墙壁,同时也无法看到墙壁后面的虚拟场景以及虚拟角色;在启用了作弊软件的情况下,如图6所示,在该虚拟场景中已将虚拟墙壁隐藏显示,且直接将墙壁后的第二虚拟角色501显示出来,且可以直接使用射击道具瞄准并攻击第二虚拟角色501。
60.在本实施例中,获取到第一命中位置数据和第二命中位置数据的情况下,进一步获取第一命中位置数据所指示的对象属性标签,以及第二命中位置数据所指示的对象属性标签,通过属性标签的比对以进行校验。继续以图5、图6为例进行说明。在使用了作弊软件的第一客户端中,如图6所示,显示可以直接通过射击道具瞄准在墙壁后面的第二虚拟角色501。根据第一客户端上传的第一攻击操作事件以及第一攻击操作结果数据,确定第一攻击操作命中对象的对象属性标签为“虚拟角色”,即指示第一攻击操作命中了虚拟角色。但是在第二客户端中,由于没有使用作弊软件,如图5所示,显示的虚拟场景中存在虚拟墙壁,因
此第二攻击操作命中的对象应为“虚拟墙壁”。因此在多个第二客户端返回的第二攻击操作的命中对象为“虚拟墙壁”的情况下,确定与第一客户端返回的命中对象“虚拟角色”不匹配,进而确定第一命中位置数据和第二命中位置数据不匹配,从而可以确定第一客户端进行了作弊操作。
61.在本实施例中,通过获取第一命中位置数据所指示的第一命中位置所在命中对象的第一对象属性标签,及第二命中位置数据所指示的第二命中位置所在命中对象的第二对象属性标签;在第一对象属性标签与第二对象属性标签不一致的情况下,确定比对结果为第一命中位置数据与第二命中位置数据不匹配,以第二客户端的数据对第一攻击操作进行了校验,解决了通过服务器校验攻击操作结果数据不准确的技术问题。
62.作为一种可选的方式,对第一攻击操作结果数据中携带的第一命中位置数据,及第二攻击操作结果数据中携带的第二命中位置数据进行比对,得到比对结果包括:
63.s1,获取第一命中位置数据所指示的第一命中位置的位置坐标,与第二命中位置数据所指示的第二命中位置的位置坐标之间的距离差;
64.s2,在距离差小于或等于第一阈值的情况下,确定比对结果为第一命中位置数据与第二命中位置数据匹配;
65.s3,在距离差大于第一阈值的情况下,确定比对结果为第一命中位置数据与第二命中位置数据不匹配。
66.具体地,如图4所示,假设上述第一攻击操作结果数据指示在虚拟场景中命中的位置为虚拟角色的头部,坐标数据为(x1,y1);如图3所示,上述第二攻击操作结果数据指示在虚拟场景中命中的位置为虚拟角色的腿部,坐标数据分别为(x2,y2)、(x3,y3)、(x4,y4)、(x5,y5)的情况下,校验上述第一攻击操作结果数据的方式可以是:获取上述第二攻击操作结果数据指示命中的位置的坐标数据(x2,y2)、(x3,y3)、(x4,y4)、(x5,y5)的加权平均值(x6,y6),在(x6,y6)与上述第一攻击操作结果数据(x1,y1)的差值大于阈值的情况下,确定数据不匹配,攻击操作出现异常;在另一种实施方式中,在(x6,y6)与上述第一攻击操作结果数据(x1,y1)的差值小于阈值的情况下,确定数据匹配,攻击操作未出现异常。需要说明是,上述校验方法仅为一种示例,不对实际采用的校验方法进行限制。
67.通过本技术的上述实施例,通过获取第一命中位置数据所指示的第一命中位置的位置坐标,与第二命中位置数据所指示的第二命中位置的位置坐标之间的距离差;在距离差小于或等于第一阈值的情况下,确定比对结果为第一命中位置数据与第二命中位置数据匹配;在距离差大于第一阈值的情况下,确定比对结果为第一命中位置数据与第二命中位置数据不匹配,从而根据第一命中位置数据和第二命中位置数据进行比对以对第一攻击操作进行校验,解决了现有对攻击操作进行校验的效果较差的技术问题。
68.作为一种可选的方式,还包括:
69.s1,获取第一客户端基于目标攻击事件的事件信息所生成的第一攻击操作结果数据包括:在目标攻击事件的事件信息指示攻击操作所使用的攻击道具为射击类道具的情况下,获取第一客户端基于攻击道具的射击属性信息计算得到的第一射击命中位置的位置坐标;基于第一射击命中位置的位置坐标生成第一攻击操作结果数据;
70.s2,获取第二客户端基于目标攻击事件的事件信息所生成的第二攻击操作结果数据包括:在目标攻击事件的事件信息指示攻击操作所使用的攻击道具为射击类道具的情况
下,获取第二客户端基于攻击道具的射击属性信息计算得到的第二射击命中位置的位置坐标;基于第二射击命中位置的位置坐标生成第二攻击操作结果数据。
71.可以理解的是,在本实施例中,基于攻击事件的事件信息生成攻击操作结果数据可以是:先识别攻击事件中使用的攻击道具,在确定为射击道具后,进一步获取射击属性信息,上述射击属性信息包括但不限于是发射位置、发射角度、发射初速度、空气阻尼、子弹类型、弹道属性等信息,基于上述设计属性信息确定出射击命中位置的位置坐标,并结合上述射击属性信息确定出攻击操作结果数据。可以理解的是,在获取得到位置坐标后,可以进一步以命中部位的标记信息的形式对命中坐标进行记录,比如可以直接记录为“腿部”、“头部”等。进一步地,通过比对上述第一攻击操作结果数据以及第二攻击操作结果数据,确定出攻击操作是否异常。
72.通过本技术的上述实施方式,以获取第一客户端基于目标攻击事件的事件信息所生成的第一攻击操作结果数据包括:在目标攻击事件的事件信息指示攻击操作所使用的攻击道具为射击类道具的情况下,获取第一客户端基于攻击道具的射击属性信息计算得到的第一射击命中位置的位置坐标;基于第一射击命中位置的位置坐标生成第一攻击操作结果数据;获取第二客户端基于目标攻击事件的事件信息所生成的第二攻击操作结果数据包括:在目标攻击事件的事件信息指示攻击操作所使用的攻击道具为射击类道具的情况下,获取第二客户端基于攻击道具的射击属性信息计算得到的第二射击命中位置的位置坐标;基于第二射击命中位置的位置坐标生成第二攻击操作结果数据,从而在攻击道具的类型为射击道具的情况下,进一步基于射击属性信息计算攻击操作结果数据,进而解决现有攻击操作的校验效果差的技术问题。
73.作为一种可选的实施方式,还包括:
74.s1,获取第一客户端基于目标攻击事件的事件信息所生成的第一攻击操作结果数据包括:在目标攻击事件的事件信息指示攻击操作所使用的攻击道具为投掷类道具的情况下,获取第一客户端基于攻击道具的投掷属性信息计算得到的第一投掷命中位置;基于第一投掷命中位置生成第一攻击操作结果数据;
75.s2,获取第二客户端基于目标攻击事件的事件信息所生成的第二攻击操作结果数据包括:获取第二客户端基于攻击道具的投掷属性信息计算得到的第二投掷命中位置;基于第二投掷命中位置生成第二攻击操作结果数据。
76.如图7所示,在攻击道具为投掷类型的道具的情况下,攻击控件701显示为投掷炸弹的形式。同时,可以理解的是,投掷类的攻击道具如虚拟炸弹道具、虚拟烟雾弹道具,通常会设置一个爆炸范围,并对爆炸范围内的虚拟角色造成伤害,且距离爆炸中心越近的虚拟角色会受到越多的伤害,如图7中示出的第二虚拟角色702,处于爆炸范围的边缘,则会受到较少的伤害。在一种作弊方式中,可以控制修改投掷类道具的爆炸位置,即控制投掷类道具在距离虚拟角色附近发生爆炸,从而使得原本距离爆炸中心较远的虚拟角色受到更高额的伤害。
77.而在移动端的游戏中,由于投掷物如手雷的飞行轨迹都是各个客户端和服务器自行模拟的,那么本身就有最终落地位置的计算存在偏差的情况。原因在于,手雷在空中飞行过程中会碰到障碍物,或者落地后会反弹,因而经过模拟的反弹多次的最终位置信息可能由于不同的客户端的计算能力而产生偏差。因此现有技术在计算爆炸伤害的时候还是以使
用手雷玩家的客户端上报的操作结果数据为准,然后再通过服务器进行校验。只要在一定范围内都是校验通过的,因而就会存在可以利用外挂把爆炸点直接修改为敌人的位置,这样就可以把伤害值改到最大。
78.在本实施例中,在确定攻击道具为投掷类道具的情况下,在不同的客户端上述根据投掷属性对命中位置进行计算并校验。上述投掷属性包括但不限于是投掷武器类型、投掷角度、投掷初速度、环境模型数据、预设爆炸范围、伤害数值等投掷属性信息,进而基于上述投掷属性信息计算得到第一投掷命中位置,并基于命中位置计算攻击操作结果数据。通过在第二客户端和第一客户端上分别通过上述方式计算得到第二攻击操作结果数据和第二攻击操作结果数据,以对第一客户端的攻击操作结果数据进行校验。
79.在本实施例中,通过获取第一客户端基于目标攻击事件的事件信息所生成的第一攻击操作结果数据包括:在目标攻击事件的事件信息指示攻击操作所使用的攻击道具为投掷类道具的情况下,获取第一客户端基于攻击道具的投掷属性信息计算得到的第一投掷命中位置;基于第一投掷命中位置生成第一攻击操作结果数据;获取第二客户端基于目标攻击事件的事件信息所生成的第二攻击操作结果数据包括:获取第二客户端基于攻击道具的投掷属性信息计算得到的第二投掷命中位置;基于第二投掷命中位置生成第二攻击操作结果数据,从而实现通过其他客户端的计算数据对第一客户端的计算数据进行校验,解决了现有校验方法准确率低的技术问题。
80.作为一种可选的方式,还包括:
81.s1,基于第一投掷命中位置生成第一攻击操作结果数据包括:获取第二虚拟角色各自所在位置分别与第一投掷命中位置之间的第一参考距离;根据第一参考距离与攻击道具的攻击半径之间的比例,确定第二虚拟角色各自对应的第一资源消耗值;基于第一资源消耗值生成第一攻击操作结果数据;
82.s2,基于第二投掷命中位置生成第二攻击操作结果数据包括:获取第二虚拟角色各自所在位置分别与第二投掷命中位置之间的第二参考距离;根据第二参考距离与攻击道具的攻击半径之间的比例,确定第二虚拟角色各自对应的第二资源消耗值;基于第二资源消耗值生成第二攻击操作结果数据。
83.可以理解的是,对于投掷类道具,造成的伤害的数值与爆炸中心点和虚拟角色所在距离相关。因此在确定出命中位置后,进一步根据命中位置和虚拟角色的参考距离以及投掷类道具可以造成伤害的半径之间比例,以确定最终造成的伤害的数值。在造成的伤害的数据大于虚拟角色剩余生命值的情况下,确定虚拟角色被淘汰。
84.在本实施例中,通过基于第一投掷命中位置生成第一攻击操作结果数据包括:获取第二虚拟角色各自所在位置分别与第一投掷命中位置之间的第一参考距离;根据第一参考距离与攻击道具的攻击半径之间的比例,确定第二虚拟角色各自对应的第一资源消耗值;基于第一资源消耗值生成第一攻击操作结果数据;基于第二投掷命中位置生成第二攻击操作结果数据包括:获取第二虚拟角色各自所在位置分别与第二投掷命中位置之间的第二参考距离;根据第二参考距离与攻击道具的攻击半径之间的比例,确定第二虚拟角色各自对应的第二资源消耗值;基于第二资源消耗值生成第二攻击操作结果数据,即根据第一客户端和第二客户端各自计算得到的操作结果数据对第一客户端的第一攻击操作结果数据进行校验,进而解决了现有技术对攻击操作结果的校验效果较差的技术问题。
85.作为一种可选的方式,在对第一攻击操作结果数据及第二攻击操作结果数据进行校验,得到目标攻击事件中的攻击操作对应的校验结果之后,还包括:
86.s1,获取各个第二客户端各自计算得到的第二资源消耗值的平均值;
87.s2,利用第二资源消耗值的平均值对第一资源消耗值进行校正,得到校正结果;
88.s3,将校正结果发送给第一客户端,以使第一客户端显示校正结果。
89.可以理解的是,在本实施例中,通过多个第二攻击操作结果数据对第一攻击操作结果数据进行校验,在确定第一攻击操作结果数据存在异常的情况下,删除第一攻击操作结果数据,以多个第二攻击操作结果数据的平均值作为最终的攻击操作结果数据。在攻击操作结果数据指示的结果为资源消耗值的情况下,以第二客户端各自计算得到的第二资源消耗值的平均值作为校验结果,并将该校验结果发送给第一客户端,以在第一客户端显示正常的攻击操作结果。
90.在本实施例中,通过获取各个第二客户端各自计算得到的第二资源消耗值的平均值;利用第二资源消耗值的平均值对第一资源消耗值进行校正,得到校正结果;将校正结果发送给第一客户端,以使第一客户端显示校正结果,从而在识别出第一客户端的攻击操作结果数据异常的情况下,通过多个第二资源消耗的平均值对第一客户端的攻击操作结果数据进行校验,进而解决了现有校验方式不准确的技术问题。
91.以下对射击命中原理进行说明:
92.当玩家瞄准敌人后松手即可开火,开火的瞬间会从镜头处发射一条射线进行物理碰撞的检测。此时如果射线检测到目标身上的碰撞盒子,则表示开火射击中敌人,否则就打不中。同时射线检测还能检测到玩家的命中部位,然后根据命中的部位来计算伤害,一般来说命中头部的伤害数值较高,客户端把这些计算好的数据发给服务器,服务器校验成功后返回客户端,并通知客户端最终造成的伤害。若伤害超过虚拟角色的生命值,则目标虚拟角色死亡。
93.以下对命中人体部位的检测原理进行说明:
94.每个模型身上外围会挂一个大范围的伤害检测框,当只有检测到该碰撞框的时候才会进一步检测伤害检测框内部的每一个骨骼的碰撞盒子。因为虚拟角色的每个骨骼都挂了检测盒子,进而在检测到某个盒子的时候就能获取到命中部位的信息,然后把标记直接挂在其子节点下面。这样命中标记就能跟随命中部位移动。
95.以下对投掷物轨迹形成的实现原理进行说明:
96.当玩家切换出投掷物类型的武器后,就可以按下开火键进入预瞄准状态,这时候会显示出一条红色抛物线。该抛物线是显示的是该投掷物即将要飞行的轨迹。而该抛物线是通过当前的位置,反向,以及配置的速度在一帧内计算出来的,然后每个一小段位置收集一个点,最终把所有收集的点传递给一条特效线,然后该特效线就会根据这些点来形成一个轨迹。
97.以下结合图8对一个完整的实施例进行说明,如图8所示,首先执行步骤s802,战斗开始;
98.具体地,可以是玩家控制一个虚拟角色进入一局虚拟射击游戏。
99.执行判断步骤s804,判断是否持有虚拟枪支道具,在持有虚拟枪支道具即普通道具的情况下,执行步骤s804-1,在未持有虚拟枪支道具,即持有的是投掷类道具的情况下,
执行步骤s804-2;
100.如步骤s804-1,判断是否命中敌人,在命中敌人的情况下,执行步骤s804-3,所有客户端上报伤害信息;
101.需要说明的是,此处的所有客户端包括了执行了射击操作的客户端,也包括了本局游戏中的其他全部客户端。
102.如步骤s804-2,判断是否投掷爆炸,在爆炸的情况下,执行步骤s804-4,所有客户端上报爆炸位置;
103.然后执行步骤s806,服务器开始校验数据;
104.然后执行判断步骤s808,判断是否异常,在数据异常的情况下,执行步骤s808-1,即其中一份与其他数据差异过大,判定为作弊;在数据没有异常的情况下执行步骤s808-2,即所有数据差别不大,正常。最后结束。
105.在本发明实施例中,通过获取参与目标游戏任务的第一客户端控制的第一虚拟角色所触发的目标攻击事件,及第一客户端基于目标攻击事件的事件信息所生成的第一攻击操作结果数据;将目标攻击事件的事件信息同步给参与目标游戏任务的第二客户端,其中,第二客户端控制的第二虚拟角色为目标游戏任务中除第一虚拟角色之外的虚拟角色;获取第二客户端基于目标攻击事件的事件信息所生成的第二攻击操作结果数据;对第一攻击操作结果数据及第二攻击操作结果数据进行校验,得到目标攻击事件中的攻击操作对应的校验结果,从而通过从第二客户端获取的并计算得到的攻击操作结果数据信息对第一客户端中的攻击操作结果数据进行校验,进而实现了在第一客户端提供失实的攻击操作结果数据的情况下,对失实的数据进行校验和识别的技术效果,解决了现有技术对操作数据进行校验的准确率低的技术问题。
106.需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
107.根据本发明实施例的另一个方面,还提供了一种用于实施上述操作数据的校验方法的操作数据的校验装置。如图9所示,该装置包括:
108.第一获取单元902,用于获取参与目标游戏任务的第一客户端控制的第一虚拟角色所触发的目标攻击事件,及第一客户端基于目标攻击事件的事件信息所生成的第一攻击操作结果数据;
109.同步单元904,用于将目标攻击事件的事件信息同步给参与目标游戏任务的第二客户端,其中,第二客户端控制的第二虚拟角色为目标游戏任务中除第一虚拟角色之外的虚拟角色;
110.第二获取单元906,用于获取第二客户端基于目标攻击事件的事件信息所生成的第二攻击操作结果数据;
111.校验单元908,用于对第一攻击操作结果数据及第二攻击操作结果数据进行校验,得到目标攻击事件中的攻击操作对应的校验结果。
112.可选地,在本实施例中,上述各个单元模块所要实现的实施例,可以参考上述各个
方法实施例,这里不再赘述。
113.根据本发明实施例的又一个方面,还提供了一种用于实施上述操作数据的校验方法的电子设备,该电子设备可以是图10所示的终端设备或服务器。本实施例以该电子设备为终端设备为例来说明。如图10所示,该电子设备包括存储器1002和处理器1004,该存储器1002中存储有计算机程序,该处理器1004被设置为通过计算机程序执行上述任一项方法实施例中的步骤。
114.可选地,在本实施例中,上述电子设备可以位于计算机网络的多个网络设备中的至少一个网络设备。
115.可选地,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:
116.s1,获取参与目标游戏任务的第一客户端控制的第一虚拟角色所触发的目标攻击事件,及第一客户端基于目标攻击事件的事件信息所生成的第一攻击操作结果数据;
117.s2,将目标攻击事件的事件信息同步给参与目标游戏任务的第二客户端,其中,第二客户端控制的第二虚拟角色为目标游戏任务中除第一虚拟角色之外的虚拟角色;
118.s3,获取第二客户端基于目标攻击事件的事件信息所生成的第二攻击操作结果数据;
119.s4,对第一攻击操作结果数据及第二攻击操作结果数据进行校验,得到目标攻击事件中的攻击操作对应的校验结果。
120.可选地,本领域普通技术人员可以理解,图10所示的结构仅为示意,电子设备也可以是智能手机(如android手机、ios手机等)、平板电脑、掌上电脑以及移动互联网设备(mobile internet devices,mid)、pad等终端设备。图10其并不对上述电子设备的结构造成限定。例如,电子设备还可包括比图10中所示更多或者更少的组件(如网络接口等),或者具有与图10所示不同的配置。
121.其中,存储器1002可用于存储软件程序以及模块,如本发明实施例中的操作数据的校验方法和装置对应的程序指令/模块,处理器1004通过运行存储在存储器1002内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的操作数据的校验方法。存储器1002可包括高速随机存储器,还可以包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器1002可进一步包括相对于处理器1004远程设置的存储器,这些远程存储器可以通过网络连接至终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。其中,存储器1002具体可以但不限于用于存储场景画面中的各个元素、操作数据的校验信息等信息。作为一种示例,如图10所示,上述存储器1002中可以但不限于包括上述操作数据的校验装置中的第一获取单元902、同步单元904、第二获取单元906以及校验单元908。此外,还可以包括但不限于上述操作数据的校验装置中的其他模块单元,本示例中不再赘述。
122.可选地,上述的传输装置1006用于经由一个网络接收或者发送数据。上述的网络具体实例可包括有线网络及无线网络。在一个实例中,传输装置1006包括一个网络适配器(network interface controller,nic),其可通过网线与其他网络设备与路由器相连从而可与互联网或局域网进行通讯。在一个实例中,传输装置1006为射频(radio frequency,rf)模块,其用于通过无线方式与互联网进行通讯。
123.此外,上述电子设备还包括:显示器1008,用于显示游戏界面中的虚拟场景;和连
接总线1010,用于连接上述电子设备中的各个模块部件。
124.在其他实施例中,上述终端设备或者服务器可以是一个分布式系统中的一个节点,其中,该分布式系统可以为区块链系统,该区块链系统可以是由该多个节点通过网络通信的形式连接形成的分布式系统。其中,节点之间可以组成点对点(p2p,peer to peer)网络,任意形式的计算设备,比如服务器、终端等电子设备都可以通过加入该点对点网络而成为该区块链系统中的一个节点。
125.根据本技术的一个方面,提供了一种计算机程序产品,该计算机程序产品包括计算机程序/指令,该计算机程序/指令包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分从网络上被下载和安装,和/或从可拆卸介质被安装。在该计算机程序被中央处理器执行时,执行本技术实施例提供的各种功能。
126.上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
127.根据本技术的一个方面,提供了一种计算机可读存储介质,计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述操作数据的校验方法。
128.可选地,在本实施例中,上述计算机可读存储介质可以被设置为存储用于执行以下步骤的计算机程序:
129.s1,获取参与目标游戏任务的第一客户端控制的第一虚拟角色所触发的目标攻击事件,及第一客户端基于目标攻击事件的事件信息所生成的第一攻击操作结果数据;
130.s2,将目标攻击事件的事件信息同步给参与目标游戏任务的第二客户端,其中,第二客户端控制的第二虚拟角色为目标游戏任务中除第一虚拟角色之外的虚拟角色;
131.s3,获取第二客户端基于目标攻击事件的事件信息所生成的第二攻击操作结果数据;
132.s4,对第一攻击操作结果数据及第二攻击操作结果数据进行校验,得到目标攻击事件中的攻击操作对应的校验结果。
133.可选地,在本实施例中,本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令终端设备相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(read-only memory,rom)、随机存取器(random access memory,ram)、磁盘或光盘等。
134.上述实施例中的集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在上述计算机可读取的存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在存储介质中,包括若干指令用以使得一台或多台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例上述方法的全部或部分步骤。
135.在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
136.在本技术所提供的几个实施例中,应该理解到,所揭露的客户端,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如上述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者
可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
137.上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
138.另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
139.以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献