验证战斗游戏作弊的方法、系统、电子装置和存储介质与流程

文档序号:30096297发布日期:2022-05-18 10:58阅读:258来源:国知局
验证战斗游戏作弊的方法、系统、电子装置和存储介质与流程

1.本技术涉及网络游戏技术领域,特别是涉及验证战斗游戏作弊的方法、系统、电子装置和存储介质。


背景技术:

2.动作类实时战斗游戏如果想要获得更好的体验感,最重要的是玩家的实时操作以及画面的实时响应。为了追求实时战斗的高品质要求,游戏一般都是采用将战斗逻辑完全在客户端运行,只有在战斗结束后将战斗结果发送给服务器进行关卡结算,这样可以避免因为与服务器进行网络通信带来的延迟响应,影响游戏体验。但这样会导致部分玩家在游戏过程中存在作弊行为,例如,通过内存修改器修改血量和攻击力等数据,严重影响了网络游戏本身的正常运作和其他玩家对游戏的兴趣,破坏了网络游戏的公平性。
3.在相关技术中,通过在战斗结果中携带一些数据校验参数来判断玩家是否存在作弊行为,但是这种方案有很大的局限性,如果玩家发现了一种新的作弊方法,服务器就需要根据新的作弊方法进行相应的防作弊数据校验处理,维护起来非常麻烦,而且需要花费大量的时间去收集玩家的各种作弊方法,并研究如何对这些作弊方法进行防作弊校验处理。
4.目前针对相关技术中通过在战斗结果中携带数据校验参数来判断玩家是否存在作弊行为,效率低,维护成本高的问题,尚未提出有效的解决方案。


技术实现要素:

5.本技术实施例提供了一种验证战斗游戏作弊的方法、系统、电子装置和存储介质,以至少解决相关技术中通过在战斗结果中携带数据校验参数来判断玩家是否存在作弊行为,效率低,维护成本高的问题。
6.第一方面,本技术实施例提供了一种验证战斗游戏作弊的方法,所述方法包括:
7.战斗服务器获取玩家客户端本局战斗的操作指令输入集合和战斗相关信息,其中,所述战斗相关信息包括战斗结束后的第一状态数据和战斗结算协议;
8.所述战斗服务器根据所述战斗相关信息对玩家的战斗结果进行结算,将所述战斗结果反馈至所述玩家客户端,并将所述操作指令输入集合和所述第一状态数据发送至验证服务器;
9.所述验证服务器根据所述操作指令输入集合和所述第一状态数据,判断玩家是否在战斗中作弊。
10.在其中一些实施例中,所述验证服务器根据所述操作指令输入集合和所述第一状态数据,判断玩家是否在战斗中作弊包括:
11.所述验证服务器根据所述操作指令输入集合运行战斗逻辑副本,获得第二状态数据,将所述第一状态数据和所述第二状态数据进行比对,根据比对结果判断玩家是否在战斗中作弊。
12.在其中一些实施例中,将所述操作指令输入集合和所述第一状态数据发送至验证
服务器之后,所述方法还包括:
13.所述验证服务器将所述操作指令输入集合和所述第一状态数据存储到一个待消费的缓存队列中。
14.在其中一些实施例中,所述获取玩家客户端本局战斗的操作指令输入集合和战斗相关信息之前,所述方法还包括:
15.对游戏逻辑进行重构,包括:将战斗逻辑代码封装成单独的模块,将战斗逻辑修改为通过操作指令输入的方式,并采用帧同步的方式驱动战斗逻辑的运行。
16.在其中一些实施例中,对游戏逻辑进行重构后,所述方法还包括:
17.在根据同一个操作指令输入集合运行战斗逻辑的情况下,使获得的状态数据一致,其中,所述状态数据包括第一状态数据和第二状态数据。
18.在其中一些实施例中,判断玩家是否在战斗中作弊之后,所述方法还包括:
19.在判断出玩家在战斗中作弊的情况下,将玩家的作弊行为发送至战斗服务器,所述战斗服务器根据预设规则对玩家进行警告,和/或进行作弊惩罚。
20.在其中一些实施例中,所述战斗服务器根据预设规则对玩家进行警告,和/或进行作弊惩罚包括:
21.对玩家的作弊行为进行累计,获取玩家的作弊行为次数和所述作弊行为次数所在目标区间;
22.根据所述目标区间对应的惩罚规则对玩家进行警告,和/或进行作弊惩罚。
23.第二方面,本技术实施例提供了一种验证战斗游戏作弊的系统,所述系统包括玩家客户端,战斗服务器和验证服务器,
24.所述战斗服务器,用于获取玩家客户端本局战斗的操作指令输入集合和战斗相关信息,其中,所述战斗相关信息包括战斗结束后的第一状态数据和战斗结算协议;
25.所述战斗服务器,还用于根据所述战斗相关信息对玩家的战斗结果进行结算,将所述战斗结果反馈至所述玩家客户端,并将所述操作指令输入集合和所述第一状态数据发送至验证服务器;
26.所述验证服务器,用于根据所述操作指令输入集合和所述第一状态数据,判断玩家是否在战斗中作弊。
27.第三方面,本技术实施例提供了一种电子装置,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上述第一方面所述的验证战斗游戏作弊的方法。
28.第四方面,本技术实施例提供了一种存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上述第一方面所述的验证战斗游戏作弊的方法。
29.相比于相关技术,本技术实施例提供的验证战斗游戏作弊的方法,通过战斗服务器获取玩家客户端本局战斗的操作指令输入集合和战斗相关信息,其中,战斗相关信息包括战斗结束后的第一状态数据和战斗结算协议;战斗服务器根据战斗相关信息对玩家的战斗结果进行结算,将战斗结果反馈至玩家客户端,并将操作指令输入集合和第一状态数据发送至验证服务器;验证服务器根据操作指令输入集合和第一状态数据,判断玩家是否在战斗中作弊,战斗服务器先行给玩家进行本局的战斗结算,验证服务器后续再完成作弊验证,在保证游戏实时操作及画面实时响应的情况下,实现了一种通用的游戏防作弊方案,无
需根据不同的作弊方法进行不同的防作弊数据校验处理,解决了相关技术中通过在战斗结果中携带数据校验参数来判断玩家是否存在作弊行为,效率低,维护成本高的问题。
附图说明
30.此处所说明的附图用来提供对本技术的进一步理解,构成本技术的一部分,本技术的示意性实施例及其说明用于解释本技术,并不构成对本技术的不当限定。在附图中:
31.图1是根据本技术实施例的验证战斗游戏作弊的方法的流程图;
32.图2是根据本技术第二实施例的验证战斗游戏作弊的方法的流程图;
33.图3是根据本技术实施例的验证战斗游戏作弊的系统的结构框图;
34.图4是根据本技术实施例的电子设备的内部结构示意图。
具体实施方式
35.为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本技术进行描述和说明。应当理解,此处所描述的具体实施例仅仅用以解释本技术,并不用于限定本技术。基于本技术提供的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都属于本技术保护的范围。此外,还可以理解的是,虽然这种开发过程中所作出的努力可能是复杂并且冗长的,然而对于与本技术公开的内容相关的本领域的普通技术人员而言,在本技术揭露的技术内容的基础上进行的一些设计,制造或者生产等变更只是常规的技术手段,不应当理解为本技术公开的内容不充分。
36.在本技术中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本技术的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域普通技术人员显式地和隐式地理解的是,本技术所描述的实施例在不冲突的情况下,可以与其它实施例相结合。
37.除非另作定义,本技术所涉及的技术术语或者科学术语应当为本技术所属技术领域内具有一般技能的人士所理解的通常意义。本技术所涉及的“一”、“一个”、“一种”、“该”等类似词语并不表示数量限制,可表示单数或复数。本技术所涉及的术语“包括”、“包含”、“具有”以及它们任何变形,意图在于覆盖不排他的包含;例如包含了一系列步骤或模块(单元)的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可以还包括没有列出的步骤或单元,或可以还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。本技术所涉及的“连接”、“相连”、“耦接”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电气的连接,不管是直接的还是间接的。本技术所涉及的“多个”是指大于或者等于两个。“和/或”描述关联对象的关联关系,表示可以存在三种关系,例如,“a和/或b”可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。本技术所涉及的术语“第一”、“第二”、“第三”等仅仅是区别类似的对象,不代表针对对象的特定排序。
38.本实施例提供了一种验证战斗游戏作弊的方法,图1是根据本技术实施例的验证战斗游戏作弊的方法的流程图,如图1所示,该方法包括如下步骤:
39.步骤s101,战斗服务器获取玩家客户端本局战斗的操作指令输入集合和战斗相关信息,战斗相关信息包括战斗结束后的第一状态数据和战斗结算协议;操作指令输入集合
是一局战斗里玩家总共输入的操作指令,示例性的,玩家在第30帧输入了一个普通攻击,第60帧输入了一个技能,则操作指令输入集合为{第30帧执行普攻指令,第60帧执行技能指令},输入的操作指令需严格按照先后顺序执行。
40.战斗结束后的第一状态数据包括所有角色的属性数据、怪物属性数据以及战斗过程中的一些统计数据,例如造成的伤害值、受到的伤害值等,玩家进行一局战斗后,将本局战斗的操作指令输入集合和战斗相关信息上报至战斗服务器。
41.步骤s102,战斗服务器根据战斗相关信息对玩家的战斗结果进行结算,将战斗结果反馈至玩家客户端,并将操作指令输入集合和第一状态数据发送至验证服务器;本实施例中,战斗服务器对战斗结果先行进行结算,并立即反馈结果给玩家,无需等待验证服务器的作弊验证结果。
42.步骤s103,验证服务器根据操作指令输入集合和第一状态数据,判断玩家是否在战斗中作弊。本实施例中,验证服务器对玩家作弊行为的验证,采用后置验证的方案,即在验证服务器还未验证玩家该局战斗逻辑时,战斗服务器可以先行给玩家进行本局的战斗结算,验证服务器后续再完成作弊验证,提升了玩家的整个战斗流程的体验。
43.通过步骤s101至步骤s103,相对于相关技术中通过在战斗结果中携带数据校验参数来判断玩家是否存在作弊行为,效率低,维护成本高的问题,本实施例通过获取玩家客户端本局战斗的操作指令输入集合和战斗相关信息,并根据战斗相关信息对玩家的战斗结果进行结算,将战斗结果反馈至玩家客户端,并将操作指令输入集合和第一状态数据发送至验证服务器,验证服务器根据操作指令输入集合和第一状态数据,判断玩家是否在战斗中作弊,在保证游戏实时操作及画面实时响应的情况下,实现了一种通用的游戏防作弊方案,无需根据不同的作弊方法进行不同的防作弊数据校验处理,并能够可靠的判定玩家是否存在作弊行为,降低了后期的维护成本,解决了相关技术中通过在战斗结果中携带数据校验参数来判断玩家是否存在作弊行为,效率低,维护成本高的问题。
44.在其中一些实施例中,验证服务器根据操作指令输入集合和第一状态数据,判断玩家是否在战斗中作弊包括:
45.验证服务器根据操作指令输入集合运行战斗逻辑副本,获得第二状态数据,将第一状态数据和第二状态数据进行比对,根据比对结果判断玩家是否在战斗中作弊。本实施例中,若第一状态数据和第二状态数据一致,则判定玩家没有作弊,否则,判定玩家存在作弊行为。
46.可选的,战斗服务器将操作指令输入集合和第一状态数据发送至验证服务器之后,验证服务器不立即对玩家是否作弊行为进行验证,而是将操作指令输入集合和第一状态数据存储到一个待消费的缓存队列中,再从缓存队列中获取操作指令输入集合和第一状态数据对玩家是否作弊行为进行验证。
47.在相关技术中,会通过服务器实时获取玩家的实际战斗信息,并将实际战斗信息同步至模拟客户端,服务器通过比较由玩家的实时战斗信息获得的战斗结果和模拟客户端的实时战斗信息获得的战斗结果验证玩家是否作弊的。这种方案需实时与服务器进行通信,在网络波动时,玩家客户端可能会出现卡顿的现象,导致操作指令延迟响应,无法保证实时操作以及画面的实时响应,且如果有大量玩家同时各自进行单局战斗,服务器需为每一个玩家同步启动一个模拟客户端,导致服务器资源消耗高。
48.而本实施例中,采用后置验证的方式,玩家在战斗的过程中,无需与战斗服务器进行通信,只需在战斗结束后与战斗服务器进行通信,将本局战斗的操作指令输入集合和战斗相关信息上报至战斗服务器,保证玩家在网络延迟的情况下,还可以实现实时操作以及画面的实时响应,提高了玩家实时战斗操作体验感。同时,后置验证的方式,不需要实时同步验证玩家的操作行为,而是采用缓存队列的方式,一个一个处理,保证了验证服务器资源最大限度的合理利用,大大减少验证服务器主机的配置成本。
49.在其中一些实施例中,图2是根据本技术第二实施例的验证战斗游戏作弊的方法的流程图,如图2所示,获取玩家客户端本局战斗的操作指令输入集合和战斗相关信息之前,该方法包括如下步骤:
50.步骤s201,对游戏逻辑进行重构,包括:将战斗逻辑代码封装成单独的模块,使战斗逻辑和画面显示逻辑进行分离,将战斗逻辑修改为通过操作指令输入的方式,并采用帧同步的方式驱动战斗逻辑的运行。
51.本实施例中,游戏逻辑包括战斗逻辑和画面显示逻辑,其中,战斗逻辑主要负责纯逻辑的战斗机制实现,与画面显示完全无关,主要包括数据的处理、输入指令的处理、功能逻辑流程的实现等等,可以完全脱离画面显示独立运行。画面显示逻辑是用来处理图形表现的,只做画面显示的渲染处理,画面的呈现会根据战斗逻辑的数据进行显示,但无法直接操作和修改战斗逻辑的数据与功能,不影响战斗逻辑的数据及流程处理。
52.画面显示逻辑的处理需要消耗大量的时间和内存,玩家进行战斗需要运行战斗逻辑和画面显示逻辑,但验证服务器对玩家的作弊行为进行验证时,只需运行战斗逻辑,若战斗逻辑和画面显示逻辑不分离,则无法只运行战斗逻辑,通过该步骤分离战斗逻辑和画面显示逻辑后,验证服务器只运行战斗逻辑,大大提升了验证的处理效率。
53.通过操作指令输入的方式可以使验证服务器完全独立于显示画面逻辑,单独运行战斗逻辑,在玩家未作弊的情况下,跑出与玩家完全一致的战斗逻辑数据,而采用帧同步的方式驱动战斗逻辑的运行可以精确控制玩家的操作是在游戏第几帧或者第几秒输入的,这样可以让程序在重头开始运行的情况下,以帧同步处理,模拟玩家每个时间点的帧操作输入,在玩家未作弊的情况下,最终跑出与玩家完全一致的战斗逻辑数据。
54.若每一局战斗的初始环境不一致,将会导致根据同一个操作指令输入集合运行战斗逻辑时,得到的状态数据不一致,示例性的,若获取随机值的计算方式是根据系统时间进行随机的,则会导致重新运行验证的时候会得到不同的结果,例如,在游戏执行到某一时刻,需要获取随机值,如果该随机值的计算是根据系统的时间戳得到的结果,那么在玩家客户端运行时获取的随机值将与验证服务器进行验证时获取的随机值不一致,这可能会引起程序走向另一个分支的逻辑行为,最终导致得到的状态数据的不一致,从而导致验证结果不准确。
55.所以需要进行战斗逻辑层的数据一致性改造工作,以保证验证服务器重新运行模拟玩家输入指令时,能够输出相同的结果。
56.故在其中一些实施例中,在根据同一个操作指令输入集合运行战斗逻辑的情况下,使获得的状态数据一致,其中,状态数据包括第一状态数据和第二状态数据。本实施例中,基于重构后的战斗逻辑,进一步实现以下功能:对于同一个操作指令输入集合,每次重新运行战斗逻辑,得到的整个游戏从战斗开始到战斗结束的每一帧的过程运算及输出结果
都是一样的,且所有数据都保持一致,使在根据同一个操作指令输入集合运行战斗逻辑的情况下,获得的状态数据一致;实现本实施例中的功能之后,在玩家未作弊的情况下,验证服务器根据操作指令输入集合运行战斗逻辑副本,获得的第二状态数据才会和玩家根据该操作指令输入集合运行战斗逻辑得到的第一状态数据一致,防止验证结果不准确,提高了验证的准确率。
57.在其中一些实施例中,判断玩家是否在战斗中作弊之后,在判断出玩家在战斗中作弊的情况下,将玩家的作弊行为发送至战斗服务器,战斗服务器根据预设规则对玩家进行警告,和/或进行作弊惩罚。本实施例中,预设规则预先存储在战斗服务器中,可以根据需求设置预设规则并进行修改。
58.可选的,战斗服务器根据预设规则对玩家进行警告,和/或进行作弊惩罚包括:对玩家的作弊行为进行累计,获取玩家的作弊行为次数和作弊行为次数所在目标区间;根据目标区间对应的惩罚规则对玩家进行进行警告,和/或进行作弊惩罚。示例性的,玩家作弊行为次数在1-3次之间,则仅对玩家进行警告,若在4-6次之间,则对玩家进行警告并给予惩罚,例如,接下来的24小时内无奖励收益,若在7次以上,则进行封号处理,通过对作弊的玩家进行惩罚,提高网络游戏的公平性。
59.需要说明的是,在上述流程中或者附图的流程图中示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
60.本实施例还提供了一种验证战斗游戏作弊的系统,该系统用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”、“单元”、“子单元”等可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
61.图3是根据本技术实施例的验证战斗游戏作弊的系统的结构框图,如图3所示,该系统包括玩家客户端31,战斗服务器32和验证服务器33,战斗服务器32用于获取玩家客户端31本局战斗的操作指令输入集合和战斗相关信息,其中,战斗相关信息包括战斗结束后的第一状态数据和战斗结算协议;战斗服务器32还用于根据战斗相关信息对玩家的战斗结果进行结算,将战斗结果反馈至玩家客户端31,并将操作指令输入集合和第一状态数据发送至验证服务器33;验证服务器33用于根据操作指令输入集合和第一状态数据,判断玩家是否在战斗中作弊,解决了相关技术中通过在战斗结果中携带数据校验参数来判断玩家是否存在作弊行为,效率低,维护成本高的问题。
62.需要说明的是,上述各个模块可以是功能模块也可以是程序模块,既可以通过软件来实现,也可以通过硬件来实现。对于通过硬件来实现的模块而言,上述各个模块可以位于同一处理器中;或者上述各个模块还可以按照任意组合的形式分别位于不同的处理器中。
63.本实施例还提供了一种电子装置,包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。
64.可选地,上述电子装置还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。
65.需要说明的是,本实施例中的具体示例可以参考上述实施例及可选实施方式中所
描述的示例,本实施例在此不再赘述。
66.另外,结合上述实施例中的验证战斗游戏作弊的方法,本技术实施例可提供一种存储介质来实现。该存储介质上存储有计算机程序;该计算机程序被处理器执行时实现上述实施例中的任意一种验证战斗游戏作弊的方法。
67.在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种验证战斗游戏作弊的方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
68.在一个实施例中,图4是根据本技术实施例的电子设备的内部结构示意图,如图4所示,提供了一种电子设备,该电子设备可以是服务器,其内部结构图可以如图4所示。该电子设备包括通过内部总线连接的处理器、网络接口、内存储器和非易失性存储器,其中,该非易失性存储器存储有操作系统、计算机程序和数据库。处理器用于提供计算和控制能力,网络接口用于与外部的终端通过网络连接通信,内存储器用于为操作系统和计算机程序的运行提供环境,计算机程序被处理器执行时以实现一种验证战斗游戏作弊的方法,数据库用于存储数据。
69.本领域技术人员可以理解,图4中示出的结构,仅仅是与本技术方案相关的部分结构的框图,并不构成对本技术方案所应用于其上的电子设备的限定,具体的电子设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
70.本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,该计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本技术所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram)或者外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双数据率sdram(ddrsdram)、增强型sdram(esdram)、同步链路(synchlink)dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)等。
71.本领域的技术人员应该明白,以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
72.以上所述实施例仅表达了本技术的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本技术构思的前提下,还可以做出若干变形和改进,这些都属于本技术的保护
范围。因此,本技术专利的保护范围应以所附权利要求为准。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1