CN109718556A - 游戏数据处理方法、装置及服务器 - Google Patents

游戏数据处理方法、装置及服务器 Download PDF

Info

Publication number
CN109718556A
CN109718556A CN201910093030.4A CN201910093030A CN109718556A CN 109718556 A CN109718556 A CN 109718556A CN 201910093030 A CN201910093030 A CN 201910093030A CN 109718556 A CN109718556 A CN 109718556A
Authority
CN
China
Prior art keywords
game
moment
speed
deviation
data
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
CN201910093030.4A
Other languages
English (en)
Other versions
CN109718556B (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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen 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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201910093030.4A priority Critical patent/CN109718556B/zh
Publication of CN109718556A publication Critical patent/CN109718556A/zh
Application granted granted Critical
Publication of CN109718556B publication Critical patent/CN109718556B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本申请公开了一种游戏数据处理方法、装置及服务器,该方法包括:获取待检测的游戏玩家的游戏数据,该游戏数据包括:游戏中多个不同时刻的游戏状态数据,游戏状态数据包括:游戏对象在游戏中的实际速度和实际位置;对于该多个不同时刻中的每个时刻,利用该时刻之前至少一个时刻的该游戏状态数据,预测该游戏对象在该时刻的预测速度和预测位置;基于该多个不同时刻各自对应的实际速度、实际位置、预测速度以及预测位置,确定该游戏对象在速度和位置上的偏差程度;在该游戏对象在速度和位置上的偏差程度表征该游戏数据存在异常的情况下,将该游戏玩家识别为异常游戏玩家。本申请的方案有利于更为准确、有效的识别出异常游戏玩家。

Description

游戏数据处理方法、装置及服务器
技术领域
本申请涉及游戏技术领域,尤其涉及一种游戏数据处理方法、装置及服务器。
背景技术
在游戏领域中,经常会出现游戏玩家通过修改游戏的程序逻辑等手段来实现游戏作弊,以增强游戏对象的能力。如,在竞速类游戏中,游戏玩家通过不正当手段来提高游戏对象的速度,以降低完成游戏所需的用时。
为了保证游戏的公平性,需要识别出游戏中利用不正当手段提高游戏对象能力的异常玩家。因此,如何准确、有效的识别出游戏中的异常玩家是本领域技术人员迫切需要解决的技术问题。
发明内容
有鉴于此,本申请提供了一种游戏数据处理方法、装置及服务器,以实现更为准确、有效的识别出游戏中的异常游戏玩家。
为实现上述目的,本申请提供了如下方案:
一方面,本申请提供了一种游戏数据处理方法,包括:
获取待检测的游戏玩家的游戏数据,所述游戏数据包括:游戏中多个不同时刻的游戏状态数据,所述游戏状态数据至少包括:所述游戏玩家控制的游戏对象在游戏中的实际速度和实际位置;
对于所述多个不同时刻中的每个时刻,利用该时刻之前至少一个时刻的所述游戏状态数据,预测所述游戏对象在该时刻的预测速度和预测位置;
基于所述多个不同时刻各自对应的实际速度、实际位置、预测速度以及预测位置,确定所述游戏对象在速度和位置上的偏差程度;
在所述游戏对象在速度和位置上的偏差程度表征所述游戏数据存在异常的情况下,将所述游戏玩家识别为异常游戏玩家。
在一种可能的实现方式中,所述利用该时刻之前至少一个时刻的所述游戏状态数据,预测所述游戏对象在该时刻的预测速度和预测位置,包括:
将该时刻之前至少一个时刻的所述游戏状态数据输入到预置的预测模型,得到所述预测模型预测出的该时刻的预测速度和预测位置,所述预测模型为利用多个正常游戏玩家的游戏数据样本训练得到;
其中,所述游戏数据样本包括:所述游戏中多个不同时刻的游戏状态数据样本,所述游戏状态数据样本至少包括:所述正常游戏玩家控制的游戏对象在游戏中的实际速度和实际位置。
在又一种可能的实现方式中,在所述获取待检测的游戏玩家的游戏数据之前,还包括:
获取游戏中多个游戏玩家的游戏完成用时;
根据所述多个游戏玩家的游戏完成用时,确定完成所述游戏的基准用时;
从所述游戏完成用时小于所述基准用时的游戏玩家中,确定待检测的游戏玩家。
在又一种可能的实现方式中,所述游戏对象在速度和位置上的偏差程度表征所述游戏数据存在异常,包括:
所述游戏对象在速度和位置上的偏差程度与至少一个设定阈值之间的关系满足预设条件,所述设定阈值用于表征游戏玩家的游戏数据存在异常。
又一方面,本申请还提供了一种游戏数据处理装置,包括:
数据获取单元,用于获取待检测的游戏玩家的游戏数据,所述游戏数据包括:游戏中多个不同时刻的游戏状态数据,所述游戏状态数据至少包括:所述游戏玩家控制的游戏对象在游戏中的实际速度和实际位置;
状态预测单元,用于对于所述多个不同时刻中的每个时刻,利用该时刻之前至少一个时刻的所述游戏状态数据,预测所述游戏对象在该时刻的预测速度和预测位置;
偏差确定单元,用于基于所述多个不同时刻各自对应的实际速度、实际位置、预测速度以及预测位置,确定所述游戏对象在速度和位置上的偏差程度;
异常识别单元,用于在所述游戏对象在速度和位置上的偏差程度表征所述游戏数据存在异常的情况下,将所述游戏玩家识别为异常游戏玩家。
又一方面,本申请还提供了一种服务器,包括:处理器和存储器;
其中,所述处理器用于执行所述存储器中存储的程序;
所述存储器用于存储程序,所述程序至少用于:
获取待检测的游戏玩家的游戏数据,所述游戏数据包括:游戏中多个不同时刻的游戏状态数据,所述游戏状态数据至少包括:所述游戏玩家控制的游戏对象在游戏中的实际速度和实际位置;
对于所述多个不同时刻中的每个时刻,利用该时刻之前至少一个时刻的所述游戏状态数据,预测所述游戏对象在该时刻的预测速度和预测位置;
基于所述多个不同时刻各自对应的实际速度、实际位置、预测速度以及预测位置,确定所述游戏对象在速度和位置上的偏差程度;
在所述游戏对象在速度和位置上的偏差程度表征所述游戏数据存在异常的情况下,将所述游戏玩家识别为异常游戏玩家。
可见,本申请实施例,对于待检测的游戏玩家,会获取该游戏玩家的游戏数据。而依据游戏数据中多个不同时刻的游戏状态数据,可以预测出游戏对象在不同时刻的预测速度和预测位置,这样,根据游戏玩家对应的多个不同时刻的实际速度、实际位置、预测速度以及预测位置,可以确定出该游戏对象在游戏中的速度和位置上的偏差程度,通过该偏差程度可以客观、准确的反映出该游戏玩家的游戏数据是否存在异常,从而可以有效、准确的识别出异常游戏玩家。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1示出了本申请一种游戏数据处理系统的一种组成架构示意图;
图2示出了本申请一种游戏数据处理方法的一种流程示意图;
图3示出了本申请实施例中确定待检测的游戏玩家的一种流程示意图;
图4示出了本申请一种游戏数据处理方法的又一种流程示意图;
图5示出了本申请实施例中确定第一平均偏差程度的一种流程示意图;
图6示出了本申请中预测模型的一种训练流程示意图;
图7示出了本申请实施例的一种游戏数据处理装置的一种组成结构示意图;
图8示出了本申请一种服务器的组成架构示意图。
具体实施方式
本申请实施例的方案适用于识别游戏中的通过非正常手段提升游戏对象的能力效果的异常玩家。尤其适用于竞速类游戏中异常游戏玩家的检测。
为了便于理解,先对本申请的方案所适用的系统进行介绍。
如,参见图1,其示出了本申请的方案所适用的游戏数据处理系统的一种组成架构示意图。
该游戏数据处理系统包括:游戏服务平台100以及至少一个终端101。其中,该游戏服务平台包括:一个或者多个提供游戏服务的服务器102;
一般情况下,为了提高游戏服务平台的游戏服务的安全性和可靠性,该游戏服务平台会同时设置有多台服务器,该多台服务器可以同时向外提供游戏服务,也可以是不同服务器针对不同地区提供游戏服务器等等,具体不加限制。
其中,终端101可以为手机、平板电脑等等,本申请对此不加限制。
该终端101中运行有游戏应用。该终端101通过游戏应用可以与游戏服务平台的服务器建立通信连接。如,终端的用户(即本申请实施例中的游戏玩家)通过该游戏应用登录该游戏服务平台的服务器,以实现在线游戏。
相应的,终端可以从游戏服务平台的服务器请求游戏数据包,并基于游戏数据包进行游戏界面展现。
在本申请实施例中,为了能够分析该终端中的游戏玩家是否存在异常,在游戏运行过程中,该终端还会获取该游戏玩家在游戏中的游戏数据,并将游戏数据发送给游戏服务平台的服务器。
该服务器102可以基于终端提供的游戏玩家的游戏数据,分析该游戏玩家是否存在异常,以识别出存在异常的异常游戏玩家。
基于以上共性,下面对本申请的游戏数据处理方法进行介绍。
如,参见图2,其示出了本申请一种游戏数据处理方法一个实施例的流程示意图,本实施例的方法应用于如上的服务器,本实施例的方式可以包括:
S201,获取待检测的游戏玩家的游戏数据。
其中,该游戏数据包括:游戏中多个不同时刻的游戏状态数据。
可以理解的是,游戏玩家的游戏数据可以该游戏玩家所在终端采集并上报给服务器。由于终端会在游戏玩家游戏的过程中,周期性的采集该游戏过程中的游戏状态数据,因此,游戏玩家的游戏数据可以包括对应游戏中多个不同时刻的游戏状态数据。
该游戏状态数据用于表征游戏玩家操控的游戏的具体状态,如,游戏状态数据可以包括:游戏中涉及到的游戏对象、游戏模式等状态数据。
可以理解的是,考虑到游戏玩家一般是通过控制游戏中的游戏对象来实现游戏目的,相应的,对于一些采用非正常手段的异常游戏玩家而言,该类游戏玩家也会通过特殊手段来提升游戏对象的游戏技能,以达到较为快速的取得游戏胜利的目的。如,以竞速类游戏为例,可以异常游戏玩家可以通过特殊手段使得汽车等游戏对象的行车速度超过该游戏对象所能达到的最大速度,以缩短游戏用时。
由此可知,游戏对象的状态数据可以更为直观的反映出游戏玩家的游戏数据是否存在异常,因此,本申请实施例中,每个时刻的游戏状态数据至少包括表征游戏对象的游戏状态信息的状态数据。具体的,某个时刻的游戏状态数据至少包括:该游戏对象在该时刻的实际位置以及实际速度。
当然,在实际应用中,为了能够更为全面的分析该游戏玩家的是否存在异常,该游戏状态数据还可以包括:游戏对象的加速度、侧向速度衰减系统、转向角速度、该游戏对象与其他游戏对象的距离等等与游戏对象相关的状态数据。相应的,该游戏状态数据还可以包括:游戏玩家对该游戏对象释放的技能等与游戏玩家相关的操作数据;以及与当前的游戏对象所在游戏地图的地图数据,如路况、路段以及路段限速等等与游戏背景相关的数据。
可以理解的是,根据识别异常玩家的不同需求,该游戏玩家的游戏数据可以是游戏玩家在游戏中一段时长内的游戏数据,也可以是游戏玩家在整个游戏中的全部游戏数据。如,考虑到某个游戏的某部分游戏环节容易出现作弊行为,该种情况下,可以获取该游戏玩家在该部分游戏环节内的游戏数据。
可选的,考虑到竞速类游戏可能会在一局游戏过程中都可能会存在作弊行为,在该种情况下,该游戏玩家的游戏数据可以为该游戏玩家在一局游戏中的游戏数据。
如,以赛车游戏为例,游戏玩家的终端会在一局赛车游戏中每个指定时长(例如100ms)采集一次游戏数据并传输给服务器,而服务器可以在游戏玩家完成该局赛车游戏之后,获取该游戏玩家完成该局赛车游戏的游戏数据。相应的,在需要对于该游戏玩家进行异常分析时,则可以获取该游戏玩家在一局赛车游戏中的游戏数据,以分析该局赛车游戏中,该游戏玩家是否存在异常。
作为一种可选方式,考虑到目前大部分终端在游戏过程中,都会生成该游戏的录像文件,因此,该游戏玩家的游戏数据可以为该游戏玩家对应的录像文件。其中,该录像文件并不是终端中游戏画面的截图,而是获取能够反映游戏运行过程中整体状态的数据文件。
相应的,服务器通过该游戏玩家的录像文件进行解析,可以得到该游戏玩家对应的多个不同时刻的数据包,每个数据包包括游戏状态数据。
S202,对于该多个不同时刻中的每个时刻,利用该时刻之前至少一个时刻的游戏状态数据,预测该游戏对象在该时刻的预测速度和预测位置。
可以理解的是,由于游戏对象在游戏中的连续不断变化的,而游戏对象在某一时刻的速度和位置与该时刻之前该游戏对象的位置、速度以及用户操作等操控行为有关。因此,对于获取到游戏状态数据的多个时刻中的每个时刻,可以基于该时刻之前的一个或者多个游戏状态数据,来预测该游戏对象在该时刻所应具有的速度和位置。
其中,为了便于区分,将预测出的该游戏对象的速度称为预测速度,并将预测出的该游戏对象的位置称为预测位置。
需要说明的,对于该多个不同时刻中最靠前的第一个时刻而言,由于该第一个时刻之前不存在其他时刻,在该种情况下,可以不对该第一个时刻的位置和速度进行预测;也可以是,将该第一个时刻的实际速度作为预测速度,并将实际位置作为预测位置。
可以理解的是,对于某个时刻,预测该游戏对象在该时刻的预测速度和预测位置的具体实现方式可以有多种可能。
如,在一种可能的实现方式中,可以预先训练出用于预测游戏对象的速度和位置的预测模型,如,服务器或者该服务器之外的其他设备训练得到该预测模型,并预置到该服务器中。相应的,对于某个时刻而言,服务器可以将该时刻之前至少一个时刻的游戏状态数据输入到预置的预测模型,得到该预测模型预测出的该时刻的预测速度和预测位置。
其中,该预测模型可以为利用多个正常游戏玩家的游戏数据样本训练得到。正常游戏玩家是指不存在游戏作弊等不正常手段的游戏玩家。该正常游戏玩家可以预先根据游戏玩家的级别、信用等筛选出来,也可以是由人工根据需要预先标注出来。
其中,训练该预测模型所用的游戏数据样本与游戏数据相似,具体的,该游戏数据样本包括:游戏中多个不同时刻的游戏状态数据样本,该游戏状态数据样本至少包括:正常游戏玩家控制的游戏对象在游戏中的实际速度和实际位置。当然,该游戏状态数据样本还可以包括正常游戏玩家的输入操作、游戏背景数据以及游戏对象的其他状态数据等等,具体的与前面游戏状态数据相似,在此不再赘述。
在又一种可能的实现方式中,还可以是预先构建出游戏状态数据与游戏对象的位置和速度的函数转换关系。针对某一时刻,基于该函数转换关系,并利用该时刻之前的至少一个时刻的游戏状态数据,可以转换出该时刻游戏对象的预测速度和预测位置。
当然,在实际应用中,预测该游戏对象的预测速度和预测位置的方式可以有其他可能,本申请对此不加限制。
S203,基于该多个不同时刻各自对应的实际速度、实际位置、预测速度以及预测位置,确定该游戏对象在速度和位置上的偏差程度。
其中,该偏差程度可以用于反映游戏对象在游戏中的实际位置和实际速度与预测出的实际位置与速度相符程度。
可以理解的是,由于每个时刻都对应了一对实际速度与预设速度以及一对实际位置与预测位置,因此,基于该时刻实际速度与预测速度的偏差以及实际位置与预测位置的偏差,可以分析出该时刻游戏对象在速度和位置上的偏差。相应的,结合各个时刻的偏差可以得到游戏对象在速度和位置上的偏差程度。
可以理解的是,在各个时刻的实际速度、实际位置、预测速度以及预测位置确定的情况下,确定该偏差程度的具体方式可以有多种,本申请在此不加限制。
相应的,该偏差程度可以包括一个或者多个维度的偏差程度。如,可以是游戏对象在速度和位置上的综合偏差程度,也可以包括:游戏对象在速度上的偏差程度以及游戏对象在位置上的偏差程度。又如,针对每一种类型的偏差程度,还可以包括:多个不同时刻的平均偏差以及多个不同时刻的偏差程度的总和等多个维度中的一种或者多种。
可以理解的是,为了能够更为全面的反映出游戏对象在游戏中的状态,该实际速度可以是一个速度矢量,如,实际速度包括分别处于相互垂直的三个轴向上的速度;相应的,该预测速度也是个速度矢量。类似的,该实际位置为一个位置矢量,如实际位置包括分别处于相互垂直的三个轴向上的位置;相应的,该预测位置也是一个位置矢量。
S204,在该游戏对象在速度和位置上的偏差程度表征该游戏数据存在异常的情况下,将该游戏玩家识别为异常游戏玩家。
可以理解的是,游戏对象对应的偏差程度越大,则说明该游戏玩家存在异常的可能性越大。因此,基于该游戏对象对应的偏差情况,可以判断该游戏玩家是否属于异常游戏玩家。
在一种实现方式中,可以预先设置用于表征游戏玩家的游戏数据存在异常的至少一个设定阈值,并设定该偏差程度与该至少一个设定阈值之间所需满足的预设条件。相应的,如果该游戏对象在速度和位置上的偏差程度与该至少一个设定阈值之间的关系满足预设条件,则确定该游戏玩家属于异常游戏玩家。
如,在该偏差程度为一个用于反映位置和速度的综合偏差情况的参数的情况下,则可以设置一个设定阈值,该偏差程度大于该设定阈值,则认为该游戏玩家的游戏数据存在异常,即该游戏玩家属于异常游戏玩家。
又如,在偏差程度包括多个不同维度的偏差的情况下,可以是设置一个设定阈值,只有当该多个维度的偏差均大于该设定阈值的情况下,才确认该游戏玩家的游戏数据存在异常。在该种情况下,也可以是设置多个维度各自对应的设定阈值,其中,不同维度的偏差所对应的设定阈值可以不同,只有在多个维度的偏差均对应各自对应的设定阈值的情况下,才确认该游戏玩家为异常游戏玩家。
当然,在实际应用中,该偏差程度与该至少一个设定阈值之间所需满足的预设条件还可以有其他可能,相应的,该设定阈值也可以根据需要设定,本申请对此不加限制。
可见,对于待检测的游戏玩家,本申请实施例会获取该游戏玩家的游戏数据。而依据游戏数据中多个不同时刻的游戏状态数据,可以预测出游戏对象在不同时刻的预测速度和预测位置,这样,根据游戏玩家对应的多个不同时刻的实际速度、实际位置、预测速度以及预测位置,可以确定出该游戏对象在游戏中的速度和位置上的偏差程度,通过该偏差程度可以客观、准确的反映出该游戏玩家的游戏数据是否存在异常,从而可以有效、准确的识别出异常游戏玩家。
同时,与通过设置限制速度等限制策略的方式来对游戏玩家进行异常检测相比,本申请的方案不易被游戏玩家察觉,从而不易被游戏玩家采取相应的策略而规避异常检测,有效减少了由于游戏玩家察觉到相应策略之后,而采用相应措施来避免被识别出来的情况。而且,由于本申请的方案,需要结合游戏玩家多个时刻的游戏数据来进行游戏对象的位置和速度的预测,因此,游戏玩家也很难通过某种手段而逃避检测,从而有利于更为长效的对游戏玩家进行识别。
可以理解的是,在实际应用中,服务器中可能会获取到大量游戏玩家的游戏数据,如果服务器对每个游戏玩家的游戏数据均进行分析,则会导致服务器的数据处理量过大。为了降低服务器的数据处理量,该服务器在确定出待监控的游戏之后,会先获取游戏中多个游戏玩家的游戏完成用时,确定一个基准用时,并从游戏完成用时小于该基准用时的至少一个游戏玩家中,确定待进行异常检测游戏玩家。
如,参见图3,其示出了本申请一种游戏数据处理方法中确定待检测的游戏玩家的一种流程示意图,本实施例的方法可以服务器,本实施例包括:
S301,获取多个游戏玩家的游戏完成用时。
其中,该游戏完成用时可以为完成该游戏中待监测部分所用的时长,其中,该游戏中待检测部分可以为一局游戏,也可以是一局游戏中指定待监测环节。
游戏完成用时可以是终端上报给服务器的,如,在终端上报游戏玩家的游戏数据时,可以在该游戏数据中包括游戏完成用时,或者是终端单独向该服务器发送游戏完成用时。
该游戏完成用时也可以是服务器在确定游戏或者游戏某个环节完成时,确定该游戏玩家的游戏完成用时。
如,以该竞速类游戏为例,服务器可以检测不同游戏玩家在一局游戏中是否存在异常行为,在该种情况下,游戏完成用时可以为游戏玩家完成一局游戏所用的时长,而游戏玩家所在的终端可以将完成该局所用的游戏完成用时发送给服务器。
该多个游戏玩家可以是服务器所能获取到的所有游戏玩家,为了减少数据处理量,服务器可以仅仅获取当前时刻之前指定时长内的获取到的游戏玩家对应的游戏完成用时。例如,获取最近7天内服务器中存储的游戏玩家的游戏完成用时。
S302,根据该多个游戏玩家的游戏完成用时,确定完成该游戏的基准用时。
其中,该基准用时为用于评判游戏玩家的游戏完成用时是否正常的时长基准。
其中,确定该基准用时的方式可以有多种,如,在一种可能的实现方式中,可以将该多个游戏玩家的游戏完成用时的平均值作为基准用时。又如,在又一种可能的实现方式中,还可以是,按照游戏完成用时从短到长的顺序,从该多个游戏玩家中,选取排序靠前的指定比例(例如百分之四十)的游戏玩家,并将选取出的游戏玩家的游戏完成用时的平均值作为该基准用时。当然,确定基准用时的方式还可以有其他可能,在此不加限制。
S303,从游戏完成用时小于该基准用时的游戏玩家中,确定待检测的游戏玩家。
可以理解的是,服务器触发确定待检测到的游戏玩家的触发条件可以有多种,因此,服务器中作为待检测的候选游戏玩家可以是前面步骤S303中的多个游戏玩家,也可能是该多个游戏玩家中的部分游戏玩家。
如,服务器可以是按照预设周期,周期性(例如,每隔一个小时)执行游戏玩家异常检测。在该种情况下,服务器需要先确定未被执行检测的多个候选游戏玩家,然后,基于该基准用时,确定游戏完成用时小于该基准用时的至少一个候选游戏玩家,并从该至少一个候选游戏玩家中确定待检测的游戏玩家。其中,该多个候选游戏玩家有可能并不是确定基准用时所依据的该服务器中存储的最近指定时长内的多个游戏玩家。
在一种可能的实现方式中,确定出游戏完成用时小于该基准用时的游戏玩家之后,可以是将游戏完成用时小于该基准用时的游戏玩家都确定待检测的游戏玩家。例如,将游戏完成用时小于基准用时的至少一个游戏玩家均确定为待检测的游戏玩家。
在又一种可能的实现方式中,确定出游戏完成用时小于该基准用时的游戏玩家可以仅仅是为了游戏玩家的数据过滤,在此基础上,还可以确定另一个检测标准用时,并从游戏完成用时小于该基准用时的游戏玩家中,确定出游戏完成用时小于标准用时的游戏玩家。其中,该检测标准用时小于该基准用时。如,该基准用时可以为将最近时长内长存储的该多个游戏玩家的游戏完成用时的平均值;而该检测标准用时可以是,最近指定时长内存储服务器的游戏完成用时较多的指定数量或者指定比例个游戏玩家的游戏完成用时的平均值。
在图3的基础上,确定出待检测的游戏玩家之后,对于每一个游戏玩家,均可以通过本申请实施例的游戏数据处理方法,来判别该游戏玩家是否属于异常游戏玩家。
可以理解的是,由于根据多个游戏玩家的游戏完成用时,可以得到能够反映出大部分正常的游戏玩家完成该游戏所需的用时,从而可以得到用于判别有可能属于非正常的游戏玩家的基准用时,这样,基于该基准用时可以排除一部分肯定不适于异常游戏玩家的游戏玩家,从而有利于减少服务器待进行异常检测的游戏玩家的数量,进而减少了服务器的数据处理量。
可以理解的是,在本申请以上任意一个实施例中,基于游戏对象的实际位置、实际速度、预测位置和预测速度,确定游戏对象在位置和速度上的偏差程度的具体实现方式可以有多种。
为了便于理解,下面以一种确定该偏差程度的一种情况为例进行说明。如,参见图4,其示出了本申请一种游戏数据处理方法又一个实施例的流程示意图;本申请实施例的方法可以包括:
S401,获取待检测的游戏玩家的游戏数据。
其中,该游戏数据包括:游戏中多个不同时刻的游戏状态数据。游戏状态数据至少包括:该游戏对象的实际位置以及实际速度。
在本实施例中,该游戏状态数据还包括:游戏对象当前处于的游戏路段的信息,以及,该游戏路段对应的设定最大速度。
其中,游戏路段为该游戏的地图中的路段。可以理解的是,游戏的背景有游戏地图,该游戏地图可以包括一些游戏中的路段以及建筑物等等。如,对于竞速类游戏而言,游戏中的汽车等需要在游戏内的路段中行驶。
游戏路段对应的设定最大速度为在该游戏中,为该游戏路段设定的建议最大速度。
可以理解的是,该游戏状态数据还可以包括前面实施例中提到的其他数据,在此不再赘述。
S402,对于该多个不同时刻中的每个时刻,将该时刻之前至少一个时刻的游戏状态数据输入到预置的预测模型,得到该预测模型预测出的该时刻的预测速度和预测位置。
其中,该预测模型为利用多个正常游戏玩家的游戏数据样本训练得到。
如,对于第t个时刻,可以利用前t-1个时刻的游戏状态数据,以及该预测模型,预测该游戏对象在该第t个时刻的预测速度和预测位置。
本实施例是以将游戏状态数据输入到预测模型,以预测出预测速度和预测位置为例,但是对于其他可能情况也同样适用于本实施例。
S403,针对该多个不同时刻中的任意一个时刻,依据游戏对象在该时刻所处的游戏路段对应的设定最大速度,确定该时刻的实际速度对应的速度类别。
其中,速度类别包括:高速速度和低速速度两种。相应的,任意一个时刻的实际速度对应的速度类别属于高速速度和低速速度中的一种。
如,如果实际速度大于设定最大速度,则该实际速度的速度类别可以为高速速度;否则,该实际速度属于低速速度。
又如,如果该实际速度大于该设定最大速度的指定倍数(例如,0.3倍),则该实际速度的速度类别为高速速度;如果该实际速度不大于该设定最大速度的指定倍数,则该实际速度的速度类别为低速速度。
S404,从该多个不同时刻中,确定该实际速度属于低速速度的第一时刻的第一数量,以及该实际速度属于高速速度的第二时刻的第二数量。
本申请实施例中,为了便于区分,对于游戏玩家对应的多个不同时刻的游戏状态数据,将对应的实际速度的速度类别属于低速速度的时刻称为第一时刻,并将该多个不同时刻中,第一时刻的总数称为第一数量。相应的,将对应的实际速度属于高速速度的时刻称为第二时刻,并将该多个不同时刻中,第二时刻的总数称为第二数量。可以理解的是,第一数量与第二数量的总和就是该多个不同时刻包含的时刻的总数目。
S405,根据该游戏对象在各个第一时刻的实际速度、实际位置、预测速度以及预设位置,确定该游戏对象在该第一数量个第一时刻的速度与位置的第一平均偏差程度。
在本实施例中,针对属于低速速度的各个第一时刻,计算游戏对象在处于低速速度的各个第一时刻的速度与位置的平均偏差程度,为了便于区分,并将该平均偏差程度称为第一平均偏差程度。
与前面实施例相似,确定该第一平均偏差程度的方式可以有多种。
如,在一种实现方式中,可以针对每个时刻可以计算该时刻实际速度与预测速度之间的速度偏差,以及该时刻实际位置与预测位置之间的位置偏差,并确定该速度偏差与该位置偏差之和,得到该时刻的第一综合偏差;然后,将各个时刻的第一综合偏差求平均,得到该第一平均偏差程度。
又如,在又一种可能的实现方式中,可以考虑到本申请实施例中的速度和位置可以为矢量,即实际速度和预测速度均为速度矢量,该速度矢量包括三个相互垂直的轴向上的速度,而该实际位置和预测位置也为位置矢量,该位置矢量包括:三个相互垂直的轴向上的位置,因此,结合考虑三个轴向上的实际速度、预测速度、实际位置与预设位置来综合分析,确定该第一平均偏差程度。如,参见图5,其示出了确定第一平均偏差程度的一种实现流程示意图,该流程包括:
S501,分别确定每个第一时刻对应的三个相互垂直的轴向上的速度矢量偏差绝对值和位置矢量偏差绝对值。
其中,每个轴向上的速度矢量偏差绝对值为该轴向上的实际速度与预设速度之间的差值的绝对值,每个轴向上的位置矢量偏差绝对值为该轴向上的实际位置与预测位置之间差值的绝对值。
在图5中,对于每个第一时刻,针对该第一时刻中每个轴向上的预测速度以及实际速度,计算该轴向上的速度矢量偏差绝对值,从而得到三个轴向的速度偏差绝对值;相应的,可以得到该第一时刻中每个轴向上的位置矢量偏差绝对值。
S502,依据各个第一时刻各自对应的三个相互垂直的轴向上的速度矢量偏差绝对值和位置矢量偏差绝对值,确定该第一数量个第一时刻的第一综合平均偏差。
如,将各个第一时刻对应的三个轴向上的速度绝对值和位置矢量偏差绝对值求和,再除以该第一数量得到该第一综合平均偏差。
可选的,考虑到在利用预测模型确定预测速度和预测位置的情况下,还可以是将预测模型训练过程中,确定多输出预测误差L1的计算公式作为该第一综合平均偏差的计算公式。相应的,计算该第一综合平均偏差的公式可以为如下公式一,通过公式一计算出的L1可以认为是第一综合平均偏差。
在利用公式一计算该第一综合平均偏差的情况下,M可以认为是第一时刻的第一数量,i表示第i个第一时刻。n的数量为速度矢量和位置矢量的总个数,由于速度矢量包括三个轴向上的速度,而位置矢量也包括是三个轴向上的位置,因此,n的取值为6。
其中,f(xij)表示在第i个第一时刻,该三个轴向中的一个轴向上的实际速度或者实际位置,如,f(xi1)、f(xi2)和f(xi3)分别表示在第i个第一时刻,三个不同轴向上的实际速度、f(xi4)、f(xi5)、f(xi6)分别表示第i个第一时刻,该三个不同轴向上的实际位置。
yij表示在第i个第一时刻,三个轴向中的一个轴向上的预测速度或者预测位置,如,yi1、yi2、yi3分别表示在第i个第一时刻,该三个不同轴向上的预测速度,则yi4、yi5、yi6分别表示在第i个第一时刻,三个不同轴向上的预测位置。
S503,分别确定每个第一时刻的瞬时速度偏差,并计算该第一数量个第一时刻的瞬时速度偏差的平均值,得到第一平均速率偏差。
如,该第一平均速度偏差可以通过如下公式二计算得到,利用如下公式二中计算出的L2的取值就是该第一平均速率偏差:
其中,M的含义同上,表示在第i个时刻x轴上的实际速度,表示在第i个时刻y轴上的实际速度,表示在第i个时刻z轴上的实际速度;相应的,分别表示该第i个时刻,在x轴、y轴及z轴上的预测速度。其中,x轴、y轴及z轴为相互垂直的三个轴向。
其中,表示第i个第一时刻的实际瞬时速率,而表示第i个第一时刻的预测瞬时速率,基于该实际瞬时速率与该预测瞬时速率的差值的绝对值可以得到瞬时速度偏差。
S504,基于该第一综合平均偏差和该第一平均速度偏差,确定第一平均偏差程度。
如,可以直接将该第一综合平均偏差和该第一平均速度偏差的和,确定为该第一平均偏差程度。
又如,还可以预先设置第一综合平均偏差的权重,以及,该第一平均速度偏差的权重,然后对该第一综合平均偏差和该第一平均速度偏差进行加权求和,将加权求和的结果确定为该第一平均偏差程度。例如,该第一平均偏差程度L可以通过如下公式三计算得到:
L=w1L1+w2L2 (公式三);
其中,w1和w2分别为L1和L2的权重系数,其可以根据实际情况设定。
以上图5的流程是确定第一平均偏差程度的一种实现方式,但是对于其他实现方式也同样适用于本实施例。
S406,根据该游戏对象在各个第二时刻的实际速度、实际位置、预测速度以及预设位置,确定该游戏对象在该第二数量个第二时刻的速度与位置的第二平均偏差程度。
其中,该第二平均偏差程度可以与第一平均偏差程度的确定过程相似。如在一种可能的实现方式中,该第二平均偏差程度可以通过如下方式得到:
分别确定每个第二时刻对应的三个相互垂直的轴向上的速度矢量偏差绝对值和位置矢量偏差绝对值;
依据各个第二时刻各自对应的三个相互垂直的轴向上的速度矢量偏差绝对值和位置矢量偏差绝对值,确定该第二数量个第二时刻的第二综合平均偏差;
分别确定每个第二时刻的瞬时速度偏差,并计算该第二数量个第二时刻的瞬时速度偏差的平均值,得到第二平均速率偏差;
基于该第二综合平均偏差和该第二平均速度偏差,确定第二平均偏差程度。
其中,第二综合平均偏差同样可以采用如上公式一得到,在此基础上,公式一中的M表示第二时刻的第二数量,i表示第i个第二时刻,公式一中的其他参数的含义只需要把第一时刻替换为第二时刻即可,在此不再赘述。
相应的,该第二平均速率偏差可以与第一平均速度偏差的确定方式相同,而该第二平均偏差程度可以与第一平均偏差程度的确定过程相似,在此不再赘述。
S407,根据该第一数量、该第一平均偏差程度、该第二数量以及该第二平均偏差程度,确定该游戏对象在该多个不同时刻的全局平均偏差程度。
如,全局平均偏差程度可以为:((第一平均偏差程度*第一数量)+(第二平均偏差程度*第二数量))/(第一数量+第二数量)。
当然,还可以设置第一平均偏差程度与第二平均偏差程度的权重,并结合这二者的权重,来综合确定该全局平均偏差程度,无论通过何种方式确定该全局平均偏差程度均适用于本申请实施例。
S408,在游戏对象对应的第一平均偏差程度、第二平均偏差程度以及全局平均偏差程度与至少一个设定阈值之间的关系满足预设条件,将该游戏玩家识别为异常游戏玩家。
其中,该预设条件可以有多种可能,下面以几种情况为例说明。
如,在设定阈值为一个的情况下,该预设条件可以是:第一平均偏差程度、第二平均偏差程度与全局平均偏差程度均大于该设定阈值。
可选的,在游戏玩家在游戏过程中,有可能会出现由于因为临时有事而离开终端,使得终端上的游戏处于挂机状态等情况下,在该种情况下,也会导致游戏中的游戏对象的位置与速度等出现异常。为了减少由于类似该种情况而导致将该游戏玩家识别为异常游戏玩家的情况,本申请还可以是结合第一数量以及第二数量中的一个或者多个进行异常检测。如:在第一平均偏差程度、第二平均偏差程度、全局平均偏差程度、第一数量和第二数量与至少一个设定阈值之间的关系满足预设条件时,则确定该游戏玩家为异常游戏玩家。
例如,该第一平均偏差程度、全局平均偏差程度均大于设定阈值,第二平均偏差程度大于设定阈值的指定倍数,且,第二数量大于设定数量的情况下,则认为满足预设条件。该指定倍数为大于1的数值。
又如,在设定阈值为多个,例如,针对第一平均偏差程度、第二平均偏差程度以及全局平均偏差程度分别设置不同的设定阈值,在该种情况下,预设条件可以为:该第一平均偏差程度、第二平均偏差程度以及全局平均偏差程度均大于各自对应的设定阈值。又例如,设定阈值可以包括:第一设定阈值和第二设定阈值,第一设定阈值小于第二设定阈值,则预设条件可以是:第一平均偏差程度、第二平均偏差程度以及全局平均偏差程度均大于第一设定阈值,且第二平均偏差程度大于第二设定阈值等。
可以理解的是,根据实际的游戏场景,设置的预设条件也会有多种不同可能,在此不加限制。
当然,本申请实施例是以第一平均偏差程度、第二平均偏差程度以及全局平均偏差程度与至少一个设定阈值之间的关系满足预设条件为例进行说明,在实际应用中,也可以是仅仅在该全局平均偏差程度与该设定阈值之间的关系满足预设阈值的条件下,将该游戏玩家确定为异常游戏玩家。
可以理解的是,本申请实施例的设定阈值可以根据需要设定。可选的,在基于预测模型确定该预测速度和预测位置的情况下,本申请还可以基于预测模型训练过程中计算出的损失误差的取值,来设定该设定阈值。
如,可以将该预测模型训练过程中的最后指定次数(例如100次)的损失误差的均值作为基准阈值,在根据该基准阈值来确定设定阈值。例如,将基准阈值设定为该设定阈值,或者,在基础阈值的基础上进行某种变换,得到至少一个设定阈值等。
在本实施例中,为了能够更为准确的分析游戏玩家的游戏数据是否存在异常,会根据各个时刻的实际速度确定各个时刻所属的速度类别,从而分析出属于高速速度的时刻以及属于低速速度的时刻,并针对低速速度的各个时刻,以及属于高速速度的各个时刻,分别计算平均偏差程度,同时,还会计算全部时刻对应的全局平均偏差程度,并结合这多种类型的偏差程度对游戏玩家进行异常分析,从而有利于更为准确的识别出异常玩家。而且,结合这几类偏差程度,并通过设定的预设条件可以有效降低正常玩家被误识别为异常游戏玩家的情况。
可以理解的是,在本申请以上实施例中,预测模型可以是通过对各种类型的神经网络模型进行训练得到,如,长短期记忆网络(Long Short-Term Memory,LSTM)模型、双向长短期记忆网络(Bi-directional Long Short-Term Memory,BiLSTM)等。
为了便于理解该预测模型的训练过程,下面以对BiLSTM模型进行训练得到该预测模型为例说明。如,参见图6,其示出了本申请实施例中训练该预测模型的一种流程示意图,本实施例的方法可以包括:
S601,获取属于多个被识别为正常游戏玩家的多份游戏数据样本。
其中,每份游戏数据样本包括:游戏中多个不同时刻的游戏状态数据样本,该游戏状态数据样本至少包括:正常游戏玩家控制的游戏对象在游戏中的实际速度和实际位置。
可以理解的是,游戏状态数据样本与前面游戏状态数据所包含的内容相似,如,该游戏状态数据样本可以包括正常游戏玩家的操作数据、游戏对象相关的多种数据以及游戏界面数据等等。此处仅仅是为了便于区分用于训练该预测模型的游戏状态数据,而将该游戏状态数据称为游戏状态数据样本。
可以理解的是,为了能够提高训练准确度,避免一些样本数据存在异常而干扰正常训练,在本申请实施例中,在获取到该多份游戏数据样本之后,还需要进行样本过滤。
具体的,可以检测游戏数据样本中是否存在连续丢包情况。如,游戏数据样本可以是录像文件,而每个时刻的游戏状态数据样本可以认为是该录像文件中的一个数据包,如果录像文件中连续丢包数量超过第一指定数量(如,15个),则去除该游戏数据样本。又如,如果该录像文件中连续丢包第二指定数量(该第二指定数量小于第一指定数量,如为3个)且出现连续丢包第二指定数量的情况超过设定次数,也可以去除该游戏数据样本。
可选的,在经过如上样本过滤之后,还可以从该游戏数据样本中选取前指定数量个游戏状态数据样本作为该游戏数据样本中用于训练模型的游戏状态数据样本。
S602,针对每份游戏数据样本中每个游戏状态数据样本对应的时刻,将该时刻之前至少一个时刻的游戏状态数据样本输入到该待训练的BiLSTM模型中,得到该BiLSTM模型预测出的该时刻的预测位置和预测速度。
该步骤S602与前面步骤利用预测模型预测游戏对象的预测位置和预测速度的过程相似,在此不再赘述。
S603,针对每份游戏数据样本,基于该游戏数据样本中包含的各个时刻的实际位置和实际速度,以及该BiLSTM模型预测出的各个时刻的预测位置和预测速度,计算该BiLSTM模型的损失函数的取值。
其中,该BiLSTM模型的损失函数可以根据需要设置。
可选的,该BiLSTM模型的损失函数可以参见如上公式三。在该种情况下,该损失函数由公式一计算出的L1和公式二中计算出的L2与相应的系数w1和w2相乘得到。在该种情况下,公式一、公式二以及公式三中的M可以认为是游戏数据样本中包含的游戏状态数据样本的个数。其中公式一多输出预测误差,该公式一中的n为该模型输出的输出个数,由于预测的速度和位置为矢量,所以n与前面含义相同。在公式一、公式二以及公式三中,i表示游戏数据样本对应的第i个时刻,其它参数与前面类似,在此不再赘述。
S604,依据不同游戏数据样本对应的该BiLSTM模型的损失函数的取值,判断该BiLSTM模型是否训练结束,如果是,则完成训练,将该BiLSTM模型模型确定为训练得到的预测模型;如果否,则调整该BiLSTM模型的内部参数,并返回步骤S602。
可以理解的是,如果基于每次训练得到的各个该损失函数的取值,确定出该BiLSTM模型的精准度满足要求,或者该BiLSTM模型的训练次数达到预设次数,则可以认为训练完成,否则,则需要调整该模型的内部参数继续训练。
对应本申请的一种游戏数据处理方法,本申请还提供了一种游戏数据处理装置。
如图7所示,其示出了本申请一种游戏数据处理装置的结构示意图,该装置可以应用于服务器,包括:
数据获取单元701,用于获取待检测的游戏玩家的游戏数据,所述游戏数据包括:游戏中多个不同时刻的游戏状态数据,所述游戏状态数据至少包括:所述游戏玩家控制的游戏对象在游戏中的实际速度和实际位置;
状态预测单元702,用于对于所述多个不同时刻中的每个时刻,利用该时刻之前至少一个时刻的所述游戏状态数据,预测所述游戏对象在该时刻的预测速度和预测位置;
偏差确定单元703,用于基于所述多个不同时刻各自对应的实际速度、实际位置、预测速度以及预测位置,确定所述游戏对象在速度和位置上的偏差程度;
异常识别单元704,用于在所述游戏对象在速度和位置上的偏差程度表征所述游戏数据存在异常的情况下,将所述游戏玩家识别为异常游戏玩家。
在一种可能的实现方式中,所述状态预测单元,具体用于,将该时刻之前至少一个时刻的所述游戏状态数据输入到预置的预测模型,得到所述预测模型预测出的该时刻的预测速度和预测位置,所述预测模型为利用多个正常游戏玩家的游戏数据样本训练得到;其中,所述游戏数据样本包括:所述游戏中多个不同时刻的游戏状态数据样本,所述游戏状态数据样本至少包括:所述正常游戏玩家控制的游戏对象在游戏中的实际速度和实际位置。
可选的,还包括:
用时获取单元,用于在所述数据获取单元获取待检测的游戏玩家的游戏数据之前,获取游戏中多个游戏玩家的游戏完成用时;
基准用时确定单元,用于根据所述多个游戏玩家的游戏完成用时,确定完成所述游戏的基准用时;
玩家确定单元,用于从所述游戏完成用时小于所述基准用时的游戏玩家中,确定待检测的游戏玩家。
在一种可能的实现方式中,以上异常识别单元704,用于在游戏对象在速度和位置上的偏差程度与至少一个设定阈值之间的关系满足预设条件的情况下,将所述游戏玩家识别为异常游戏玩家,该设定阈值用于表征游戏玩家的游戏数据存在异常。
可选的,所述游戏状态数据还包括:所述游戏对象当前处于的游戏路段的信息,以及,所述游戏路段对应的设定最大速度,所述游戏路段为所述游戏的地图中的路段;
所述偏差确定单元,包括:
类别确定单元,用于针对所述多个不同时刻中的任意一个时刻,依据游戏对象在该时刻所处的游戏路段对应的设定最大速度,确定该时刻的实际速度对应的速度类别,速度类别属于高速速度和低速速度中的一种;
数量确定单元,用于从所述多个不同时刻中,确定所述实际速度属于低速速度的第一时刻的第一数量,以及所述实际速度属于高速速度的第二时刻的第二数量;
第一偏差确定单元,用于根据所述游戏对象在各个第一时刻的实际速度、实际位置、预测速度以及预设位置,确定所述游戏对象在所述第一数量个第一时刻的速度与位置的第一平均偏差程度;
第二偏差确定单元,用于根据所述游戏对象在各个第二时刻的实际速度、实际位置、预测速度以及预设位置,确定所述游戏对象在所述第二数量个第二时刻的速度与位置的第二平均偏差程度;
全局偏差确定单元,用于根据所述第一数量、所述第一平均偏差程度、所述第二数量以及所述第二平均偏差程度,确定所述游戏对象在所述多个不同时刻的全局平均偏差程度。
可选的,如上提到的实际速度和所述预测速度均为速度矢量,所述速度矢量包括三个相互垂直的轴向上的速度;所述实际位置和预测位置均为位置矢量,所述位置矢量包括:所述三个相互垂直的轴向上的位置;
相应的,所述第一偏差确定单元,包括:
第一绝对值确定子单元,用于分别确定每个第一时刻对应的三个相互垂直的轴向上的速度矢量偏差绝对值和位置矢量偏差绝对值,其中,每个轴向上的速度矢量偏差绝对值为该轴向上的实际速度与预设速度之间的差值的绝对值,每个轴向上的位置矢量偏差绝对值为该轴向上的实际位置与预测位置之间差值的绝对值;
第一综合确定子单元,用于依据各个第一时刻各自对应的三个相互垂直的轴向上的速度矢量偏差绝对值和位置矢量偏差绝对值,确定该第一数量个第一时刻的第一综合平均偏差;
第一速率确定子单元,用于分别确定每个第一时刻的瞬时速度偏差,并计算该第一数量个第一时刻的瞬时速度偏差的平均值,得到第一平均速率偏差;
第一偏差确定子单元,用于基于所述第一综合平均偏差和所述第一平均速度偏差,确定第一平均偏差程度;
所述第二偏差确定单元,包括:
第二绝对值确定子单元,用于分别确定每个第二时刻对应的三个相互垂直的轴向上的速度矢量偏差绝对值和位置矢量偏差绝对值;
第二综合确定子单元,用于依据各个第二时刻各自对应的三个相互垂直的轴向上的速度矢量偏差绝对值和位置矢量偏差绝对值,确定该第二数量个第二时刻的第二综合平均偏差;
第二速率确定子单元,用于分别确定每个第二时刻的瞬时速度偏差,并计算该第二数量个第二时刻的瞬时速度偏差的平均值,得到第二平均速率偏差;
第二偏差确定子单元,用于基于所述第二综合平均偏差和所述第二平均速度偏差,确定第二平均偏差程度。
可选的,所述异常识别单元,包括:
所述异常识别子单元,用于在游戏对象对应的第一平均偏差程度、第二平均偏差程度以及全局平均偏差程度与至少一个设定阈值之间的关系满足预设条件的情况下,将所述游戏玩家识别为异常游戏玩家。
为了便于理解,参见图8,其示出了本申请实施例的游戏数据处理方法所适用的服务器的一种组成结构示意图。在图8中,该服务器800可以包括:处理器801、存储器802、通信接口803、输入单元804和显示器805和通信总线806。
处理器801、存储器802、通信接口803、输入单元804、显示器805、均通过通信总线806完成相互间的通信。
在本申请实施例中,该处理器801,可以为中央处理器(Central ProcessingUnit,CPU)或者可编程逻辑器件等。
该处理器可以调用存储器802中存储的程序,具体的,可以处理器可以执行如上图2以及图5所示流程中的操作。
存储器802中用于存放一个或者一个以上程序,程序可以包括程序代码,所述程序代码包括计算机操作指令,在本申请实施例中,该存储器中至少存储有用于实现以下功能的程序:
获取待检测的游戏玩家的游戏数据,该游戏数据包括:游戏中多个不同时刻的游戏状态数据,该游戏状态数据至少包括:该游戏玩家控制的游戏对象在游戏中的实际速度和实际位置;
对于该多个不同时刻中的每个时刻,利用该时刻之前至少一个时刻的该游戏状态数据,预测该游戏对象在该时刻的预测速度和预测位置;
基于该多个不同时刻各自对应的实际速度、实际位置、预测速度以及预测位置,确定该游戏对象在速度和位置上的偏差程度;
在该游戏对象在速度和位置上的偏差程度表征该游戏数据存在异常的情况下,将该游戏玩家识别为异常游戏玩家。
在一种可能的实现方式中,该存储器802可包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、以及至少一个功能(比如声音播放功能等)所需的应用程序等;存储数据区可存储根据计算机的使用过程中所创建的数据。
此外,存储器802可以包括高速随机存取存储器,还可以包括非易失性存储器等。该通信接口803可以为通信模块的接口,如GSM模块的接口。
本申请还可以包括显示器804和输入单元805,该显示器804包括显示面板,如触摸显示面板等;该输入单元可以触摸感应单元、键盘等等。
当然,图8所示的服务器结构并不构成对本申请实施例中服务器的限定,在实际应用中服务器可以包括比图8所示的更多或更少的部件,或者组合某些部件。
另一方面,本申请还提供了一种存储介质,该存储介质中存储有计算机程序,所述计算机程序被处理器加载并执行时,实现如上任意一个实施例中所描述的游戏数据处理方法。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (10)

1.一种游戏数据处理方法,其特征在于,包括:
获取待检测的游戏玩家的游戏数据,所述游戏数据包括:游戏中多个不同时刻的游戏状态数据,所述游戏状态数据至少包括:所述游戏玩家控制的游戏对象在游戏中的实际速度和实际位置;
对于所述多个不同时刻中的每个时刻,利用该时刻之前至少一个时刻的所述游戏状态数据,预测所述游戏对象在该时刻的预测速度和预测位置;
基于所述多个不同时刻各自对应的实际速度、实际位置、预测速度以及预测位置,确定所述游戏对象在速度和位置上的偏差程度;
在所述游戏对象在速度和位置上的偏差程度表征所述游戏数据存在异常的情况下,将所述游戏玩家识别为异常游戏玩家。
2.根据权利要求1所述的游戏数据处理方法,其特征在于,所述利用该时刻之前至少一个时刻的所述游戏状态数据,预测所述游戏对象在该时刻的预测速度和预测位置,包括:
将该时刻之前至少一个时刻的所述游戏状态数据输入到预置的预测模型,得到所述预测模型预测出的该时刻的预测速度和预测位置,所述预测模型为利用多个正常游戏玩家的游戏数据样本训练得到;
其中,所述游戏数据样本包括:所述游戏中多个不同时刻的游戏状态数据样本,所述游戏状态数据样本至少包括:所述正常游戏玩家控制的游戏对象在游戏中的实际速度和实际位置。
3.根据权利要求1或2所述的游戏数据处理方法,其特征在于,在所述获取待检测的游戏玩家的游戏数据之前,还包括:
获取游戏中多个游戏玩家的游戏完成用时;
根据所述多个游戏玩家的游戏完成用时,确定完成所述游戏的基准用时;
从所述游戏完成用时小于所述基准用时的游戏玩家中,确定待检测的游戏玩家。
4.根据权利要求1所述的游戏数据处理方法,其特征在于,所述游戏对象在速度和位置上的偏差程度表征所述游戏数据存在异常,包括:
所述游戏对象在速度和位置上的偏差程度与至少一个设定阈值之间的关系满足预设条件,所述设定阈值用于表征游戏玩家的游戏数据存在异常。
5.根据权利要求4所述的游戏数据处理方法,其特征在于,所述游戏状态数据还包括:所述游戏对象当前处于的游戏路段的信息,以及,所述游戏路段对应的设定最大速度,所述游戏路段为所述游戏的地图中的路段;
所述基于所述多个不同时刻各自对应的实际速度、实际位置、预测速度以及预测位置,确定所述游戏对象在速度和位置上的偏差程度,包括:
针对所述多个不同时刻中的任意一个时刻,依据游戏对象在该时刻所处的游戏路段对应的设定最大速度,确定该时刻的实际速度对应的速度类别,速度类别属于高速速度和低速速度中的一种;
从所述多个不同时刻中,确定所述实际速度属于低速速度的第一时刻的第一数量,以及所述实际速度属于高速速度的第二时刻的第二数量;
根据所述游戏对象在各个第一时刻的实际速度、实际位置、预测速度以及预设位置,确定所述游戏对象在所述第一数量个第一时刻的速度与位置的第一平均偏差程度;
根据所述游戏对象在各个第二时刻的实际速度、实际位置、预测速度以及预设位置,确定所述游戏对象在所述第二数量个第二时刻的速度与位置的第二平均偏差程度;
根据所述第一数量、所述第一平均偏差程度、所述第二数量以及所述第二平均偏差程度,确定所述游戏对象在所述多个不同时刻的全局平均偏差程度。
6.根据权利要求5所述的游戏数据处理方法,其特征在于,所述游戏对象在速度和位置上的偏差程度与至少一个设定阈值之间的关系满足预设条件,包括:
所述游戏对象对应的第一平均偏差程度、第二平均偏差程度以及全局平均偏差程度与至少一个设定阈值之间的关系满足预设条件。
7.根据权利要求5所述的游戏数据处理方法,其特征在于,所述实际速度和所述预测速度均为速度矢量,所述速度矢量包括三个相互垂直的轴向上的速度;所述实际位置和预测位置均为位置矢量,所述位置矢量包括:所述三个相互垂直的轴向上的位置;
所述根据所述游戏对象在各个第一时刻的实际速度、实际位置、预测速度以及预设位置,确定所述游戏对象在所述第一数量个第一时刻的速度与位置的第一平均偏差程度,包括:
分别确定每个第一时刻对应的三个相互垂直的轴向上的速度矢量偏差绝对值和位置矢量偏差绝对值,其中,每个轴向上的速度矢量偏差绝对值为该轴向上的实际速度与预设速度之间的差值的绝对值,每个轴向上的位置矢量偏差绝对值为该轴向上的实际位置与预测位置之间差值的绝对值;
依据各个第一时刻各自对应的三个相互垂直的轴向上的速度矢量偏差绝对值和位置矢量偏差绝对值,确定该第一数量个第一时刻的第一综合平均偏差;
分别确定每个第一时刻的瞬时速度偏差,并计算该第一数量个第一时刻的瞬时速度偏差的平均值,得到第一平均速率偏差;
基于所述第一综合平均偏差和所述第一平均速度偏差,确定第一平均偏差程度;
所述根据所述游戏对象在各个第二时刻的实际速度、实际位置、预测速度以及预设位置,确定所述游戏对象在所述第二数量个第二时刻的速度与位置的第二平均偏差程度,包括:
分别确定每个第二时刻对应的三个相互垂直的轴向上的速度矢量偏差绝对值和位置矢量偏差绝对值;
依据各个第二时刻各自对应的三个相互垂直的轴向上的速度矢量偏差绝对值和位置矢量偏差绝对值,确定该第二数量个第二时刻的第二综合平均偏差;
分别确定每个第二时刻的瞬时速度偏差,并计算该第二数量个第二时刻的瞬时速度偏差的平均值,得到第二平均速率偏差;
基于所述第二综合平均偏差和所述第二平均速度偏差,确定第二平均偏差程度。
8.一种游戏数据处理装置,其特征在于,包括:
数据获取单元,用于获取待检测的游戏玩家的游戏数据,所述游戏数据包括:游戏中多个不同时刻的游戏状态数据,所述游戏状态数据至少包括:所述游戏玩家控制的游戏对象在游戏中的实际速度和实际位置;
状态预测单元,用于对于所述多个不同时刻中的每个时刻,利用该时刻之前至少一个时刻的所述游戏状态数据,预测所述游戏对象在该时刻的预测速度和预测位置;
偏差确定单元,用于基于所述多个不同时刻各自对应的实际速度、实际位置、预测速度以及预测位置,确定所述游戏对象在速度和位置上的偏差程度;
异常识别单元,用于在所述游戏对象在速度和位置上的偏差程度表征所述游戏数据存在异常的情况下,将所述游戏玩家识别为异常游戏玩家。
9.根据权利要求8所述的游戏数据处理装置,其特征在于,所述状态预测单元,具体用于,将该时刻之前至少一个时刻的所述游戏状态数据输入到预置的预测模型,得到所述预测模型预测出的该时刻的预测速度和预测位置,所述预测模型为利用多个正常游戏玩家的游戏数据样本训练得到;其中,所述游戏数据样本包括:所述游戏中多个不同时刻的游戏状态数据样本,所述游戏状态数据样本至少包括:所述正常游戏玩家控制的游戏对象在游戏中的实际速度和实际位置。
10.一种服务器,其特征在于,包括:处理器和存储器;
其中,所述处理器用于执行所述存储器中存储的程序;
所述存储器用于存储程序,所述程序至少用于:
获取待检测的游戏玩家的游戏数据,所述游戏数据包括:游戏中多个不同时刻的游戏状态数据,所述游戏状态数据至少包括:所述游戏玩家控制的游戏对象在游戏中的实际速度和实际位置;
对于所述多个不同时刻中的每个时刻,利用该时刻之前至少一个时刻的所述游戏状态数据,预测所述游戏对象在该时刻的预测速度和预测位置;
基于所述多个不同时刻各自对应的实际速度、实际位置、预测速度以及预测位置,确定所述游戏对象在速度和位置上的偏差程度;
在所述游戏对象在速度和位置上的偏差程度表征所述游戏数据存在异常的情况下,将所述游戏玩家识别为异常游戏玩家。
CN201910093030.4A 2019-01-30 2019-01-30 游戏数据处理方法、装置及服务器 Active CN109718556B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910093030.4A CN109718556B (zh) 2019-01-30 2019-01-30 游戏数据处理方法、装置及服务器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910093030.4A CN109718556B (zh) 2019-01-30 2019-01-30 游戏数据处理方法、装置及服务器

Publications (2)

Publication Number Publication Date
CN109718556A true CN109718556A (zh) 2019-05-07
CN109718556B CN109718556B (zh) 2021-09-28

Family

ID=66300378

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910093030.4A Active CN109718556B (zh) 2019-01-30 2019-01-30 游戏数据处理方法、装置及服务器

Country Status (1)

Country Link
CN (1) CN109718556B (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110415710A (zh) * 2019-08-06 2019-11-05 大众问问(北京)信息科技有限公司 车载语音交互系统的参数调整方法、装置、设备及介质
CN110812836A (zh) * 2019-10-31 2020-02-21 广州市网星信息技术有限公司 一种游戏的同步方法、装置、计算机设备和存储介质
CN111265884A (zh) * 2020-02-25 2020-06-12 腾讯科技(深圳)有限公司 虚拟对象的作弊检测方法、装置、设备及介质
CN111558226A (zh) * 2020-04-28 2020-08-21 腾讯科技(成都)有限公司 一种异常操作行为的检测方法、装置、设备及存储介质
CN111760276A (zh) * 2020-07-16 2020-10-13 腾讯科技(深圳)有限公司 游戏行为控制方法、装置、终端、服务器和存储介质
CN112149736A (zh) * 2020-09-22 2020-12-29 腾讯科技(深圳)有限公司 一种数据处理方法、装置、服务器及介质
CN112402982A (zh) * 2020-02-13 2021-02-26 上海哔哩哔哩科技有限公司 基于机器学习的用户作弊行为检测方法和系统

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102163251A (zh) * 2010-02-22 2011-08-24 深圳市腾讯计算机系统有限公司 一种游戏作弊的识别方法和设备
US8926423B2 (en) * 2009-11-13 2015-01-06 Igt Gaming systems, gaming devices and methods for providing progressive awards
CN104850726A (zh) * 2014-02-13 2015-08-19 博雅网络游戏开发(深圳)有限公司 基于碰撞游戏的异常数据检测方法和系统
US20170036117A1 (en) * 2004-06-28 2017-02-09 Winview, Inc. Methods and apparatus for distributed gaming over a mobile device
CN107080944A (zh) * 2017-05-26 2017-08-22 合肥泽诺信息科技有限公司 一种检测网络游戏外挂的方法
CN107335214A (zh) * 2017-06-14 2017-11-10 张永良 一种新昌麻将游戏的作弊检测方法
CN108654091A (zh) * 2018-05-14 2018-10-16 网易(杭州)网络有限公司 用于游戏中作弊校验的方法、介质、装置和计算设备

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170036117A1 (en) * 2004-06-28 2017-02-09 Winview, Inc. Methods and apparatus for distributed gaming over a mobile device
US8926423B2 (en) * 2009-11-13 2015-01-06 Igt Gaming systems, gaming devices and methods for providing progressive awards
CN102163251A (zh) * 2010-02-22 2011-08-24 深圳市腾讯计算机系统有限公司 一种游戏作弊的识别方法和设备
CN104850726A (zh) * 2014-02-13 2015-08-19 博雅网络游戏开发(深圳)有限公司 基于碰撞游戏的异常数据检测方法和系统
CN107080944A (zh) * 2017-05-26 2017-08-22 合肥泽诺信息科技有限公司 一种检测网络游戏外挂的方法
CN107335214A (zh) * 2017-06-14 2017-11-10 张永良 一种新昌麻将游戏的作弊检测方法
CN108654091A (zh) * 2018-05-14 2018-10-16 网易(杭州)网络有限公司 用于游戏中作弊校验的方法、介质、装置和计算设备

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110415710A (zh) * 2019-08-06 2019-11-05 大众问问(北京)信息科技有限公司 车载语音交互系统的参数调整方法、装置、设备及介质
CN110812836A (zh) * 2019-10-31 2020-02-21 广州市网星信息技术有限公司 一种游戏的同步方法、装置、计算机设备和存储介质
CN112402982A (zh) * 2020-02-13 2021-02-26 上海哔哩哔哩科技有限公司 基于机器学习的用户作弊行为检测方法和系统
CN111265884A (zh) * 2020-02-25 2020-06-12 腾讯科技(深圳)有限公司 虚拟对象的作弊检测方法、装置、设备及介质
CN111265884B (zh) * 2020-02-25 2021-10-12 腾讯科技(深圳)有限公司 虚拟对象的作弊检测方法、装置、设备及介质
CN111558226A (zh) * 2020-04-28 2020-08-21 腾讯科技(成都)有限公司 一种异常操作行为的检测方法、装置、设备及存储介质
CN111558226B (zh) * 2020-04-28 2023-04-18 腾讯科技(成都)有限公司 一种异常操作行为的检测方法、装置、设备及存储介质
CN111760276A (zh) * 2020-07-16 2020-10-13 腾讯科技(深圳)有限公司 游戏行为控制方法、装置、终端、服务器和存储介质
CN112149736A (zh) * 2020-09-22 2020-12-29 腾讯科技(深圳)有限公司 一种数据处理方法、装置、服务器及介质
CN112149736B (zh) * 2020-09-22 2024-02-09 腾讯科技(深圳)有限公司 一种数据处理方法、装置、服务器及介质

Also Published As

Publication number Publication date
CN109718556B (zh) 2021-09-28

Similar Documents

Publication Publication Date Title
CN109718556A (zh) 游戏数据处理方法、装置及服务器
Zwick et al. Consumer sequential search: Not enough or too much?
RU2331096C1 (ru) Способ моделирования процессов управления техническими средствами и система для его осуществления
CN110503207A (zh) 联邦学习信用管理方法、装置、设备及可读存储介质
CN109815155A (zh) 一种游戏测试的方法及装置、电子设备、存储介质
CN110443284A (zh) Ai模型的训练方法、调用方法、服务器及可读存储介质
CN107767055A (zh) 一种基于串谋检测的众包结果汇聚方法及装置
CN107335220A (zh) 一种消极用户的识别方法、装置及服务器
CN107026845A (zh) 任务作弊行为识别方法及装置
CN108021505A (zh) 数据上线方法、装置和计算机设备
CN105512762A (zh) 一种基于相关分析的游戏数值投放评估方法及装置
CN109409952A (zh) 一种基于区块链的营销数据获取系统及方法
Khan et al. Optimal Skipping Rates: Training Agents with Fine‐Grained Control Using Deep Reinforcement Learning
CN104753949B (zh) 一种游戏数据包有效性检测方法及装置
CN108304853A (zh) 游戏相关度的获取方法、装置、存储介质和电子装置
CN110599040A (zh) 维修训练的评估方法、系统及终端设备
Gregory et al. Testing for forecast consensus
RU2487386C2 (ru) Способ моделирования процессов централизованного управления техническими средствами и система для его осуществления (варианты)
CN107230020B (zh) 评测高铁调度员工作组织效率的方法及其相关方法和系统
US7835296B2 (en) Analyzing system of network traffic according to variable communication's mass and analyzing method thereof
CN105159826B (zh) 一种定位目标程序中的错误语句的方法和装置
KR102104007B1 (ko) 경기 결과 예측 모델을 이용한 경기 결과 예측 장치 및 방법
RU2461859C2 (ru) Способ моделирования процессов трехуровневого управления техническими средствами и система для его осуществления
CN109726087A (zh) 多网页方案测试方法、装置、设备及计算机可读存储介质
CN109615204A (zh) 医疗数据的质量评估方法、装置、设备及可读存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant