技术新讯 > 休闲运动,玩具,娱乐用品的装置及其制品制造技术 > 一种游戏外挂检测方法、装置及计算机可读存储介质与流程  >  正文

一种游戏外挂检测方法、装置及计算机可读存储介质与流程

  • 国知局
  • 2024-07-11 16:09:15

本发明涉及游戏,具体而言,涉及一种游戏外挂检测方法、装置及计算机可读存储介质。

背景技术:

1、游戏技能作为网游中一种非常重要的系统,可以让玩家体验不同的pvp以及pve的乐趣,同时也是游戏中社交互动的一种重要方式。然而由于服务器以及客户低端的负载不同,会导致不同服务器执行与客户端会有差异,为玩家体验的流畅性,往往会通过将客户端执行的消息发送到服务器,以通过服务器来校验是否执行正确。

2、但由于没有完全依赖服务器运行时数据,会导致出现游戏外挂,游戏外挂是一种使得玩家在游戏中作弊的工具通称,通过游戏外挂恶意篡改客户端发送到服务器的技能数据,从而利用服务器校验的不准确性进行作弊,严重影响游戏的平衡和玩家的体验。

3、现有技术中,通常会先对客户端的技能数据进行加密打包,然后再将加密后的技能数据发送给服务器进行校验,会大大增加数据量。且有些游戏外挂会通过反编译直接修改客户端的程序代码,从而可不对技能数据做出修改的情况下使得技能执行异常,此情况则无法进行技能数据的校验。

技术实现思路

1、本发明的目的包括,例如,提供了一种游戏外挂检测方法、装置及计算机可读存储介质,其能够在不增加客户端技能消息数据量的前提下,直接通过服务器验证技能消息的准确性,保证游戏的公平性以及玩家的游戏体验。

2、本发明的实施例可以这样实现:

3、第一方面,本技术提供一种游戏外挂检测方法,应用于服务器,所述服务器存储不同执行状态下每个技能间的技能执行顺序,所述游戏外挂检测方法包括以下步骤:

4、确定第一技能执行顺序;其中,所述第一技能执行顺序用于确定客户端的待检测用户在使用技能时是否采用外挂行为;

5、接收客户端发送的技能执行反馈,并以所述技能执行反馈的接收时间为第一技能起始时间戳;

6、接收客户端发送的事件判定消息,并以所述事件判定消息的接收时间为事件发生时间戳;其中,所述判定消息包括待检测用户的第二技能执行顺序以及第二技能起始时间戳;

7、依据所述事件发生时间戳、所述第一技能起始时间戳以及所述第二技能起始时间戳比较所述第一技能执行顺序与所述第二技能执行顺序是否一致,以判定待检测用户在使用技能时是否采用外挂行为,得到检测结果。

8、进一步地,所述技能执行顺序包括各技能流下的事件的执行顺序,其中,每个事件对应一个事件id作为游戏外挂检测的判定消息,所述第一技能执行顺序包括至少一个第一事件,所述第二技能执行顺序包括至少一个第二事件;所述依据所述事件发生时间戳、所述第一技能起始时间戳以及所述第二技能起始时间戳比较所述第一技能执行顺序与所述第二技能执行顺序是否一致的步骤为:

9、判断所述第二技能执行顺序中是否存在与第一事件id一致的第二事件id;其中,所述第一事件id为所述事件判定消息所对应的事件id;

10、若存在,则依据所述事件发生时间戳与所述第一技能起始时间戳确定所述第一事件id第一事件帧数;

11、判断所述第二事件id对应的第二事件帧数是否大于所述第一事件帧数;

12、若大于,则判定所述待检测用户在使用技能时采用外挂行为。

13、进一步地,所述技能执行顺序包括各技能流下的事件的执行顺序,其中,每个技能流对应一个技能流id;所述第一技能执行顺序包括至少一个第一技能流,所述第一技能流包括至少一个第一事件,所述第二技能执行顺序包括至少一个第二技能流,所述第二技能流包括至少一个第二事件;所述判断所述第二技能执行顺序中是否存在与第一事件id一致的第二事件id的步骤之前还包括:

14、依据所述第一事件id确定第一技能流id,并判断所述事件发生时间戳之前,所述第二技能执行顺序中是否存在与所述第一技能流id一致的第二技能流id;

15、若存在,则判断所述第一技能流id是否与所述第二技能流id一致。

16、进一步地,所述判断所述第二事件id对应的第二事件帧数是否大于所述第一事件帧数的步骤后还包括:

17、若所述第二事件id对应的第二事件帧数不超过所述第一事件帧数,则判断所述第一技能流id中是否存在与所述第二事件帧数一致的第三事件,若不存在,则判定所述待检测用户在使用技能时采用外挂行为。

18、进一步地,所述判断所述第二技能执行顺序中是否存在与第一事件id一致的第二事件id的步骤前还包括:

19、判断所述事件发生时间戳之前,所述第一技能执行顺序中各第一技能流id顺序是否与所述第二技能执行顺序中各第二技能流id顺序一致。

20、进一步地,所述判断所述事件发生时间戳之前所述第一技能执行顺序中各第一技能流id顺序是否与所述第二技能执行顺序中各第二技能流id顺序一致的步骤之前还包括:

21、依据所述第一技能起始时间戳确定所述第一技能执行顺序上对应时间戳上的第一技能id;

22、依据所述第二技能起始时间戳确定所述第二技能执行顺序上对应时间戳上的第二技能id;

23、判断所述第一技能id是否与所述第二技能id一致。

24、进一步地,每个技能对应一个技能id,所述确定第一技能执行顺序的步骤包括:

25、接收客户端发送的技能请求数据;其中,所述技能请求数据包括当前执行状态,以及当前请求技能id;

26、依据所述当前执行状态以及所述当前请求技能id,确定在当前技能id在当前执行状态下的第一技能执行顺序。

27、第二方面,本技术还提供一种游戏外挂检测装置,包括:接收模块以及处理模块;所述接收模块与所述处理模块通信连接;

28、其中,所述接收模块用于:

29、接收客户端发送的技能执行反馈,并以所述技能执行反馈的接收时间为第一技能起始时间戳;

30、接收客户端发送的事件判定消息,并以所述事件判定消息的接收时间为事件发生时间戳;其中,所述判定消息包括待检测用户的第二技能执行顺序以及第二技能起始时间戳;

31、所述处理模块用于:

32、确定第一技能执行顺序;其中,所述第一技能执行顺序用于确定客户端的待检测用户在使用技能时是否采用外挂行为;

33、依据所述事件发生时间戳、所述第一技能起始时间戳以及所述第二技能起始时间戳比较所述第一技能执行顺序与所述第二技能执行顺序是否一致,以判定待检测用户在使用技能时是否采用外挂行为,得到检测结果。

34、进一步地,所述技能执行顺序包括各技能流下的事件的执行顺序,其中,每个事件对应一个事件id作为游戏外挂检测的判定消息,所述第一技能执行顺序包括至少一个第一事件,所述第二技能执行顺序包括至少一个第二事件;所述处理模块还用于:

35、判断所述第二技能执行顺序中是否存在与第一事件id一致的第二事件id;其中,所述第一事件id为所述事件判定消息所对应的事件id;

36、若存在,则依据所述事件发生时间戳与所述第一技能起始时间戳确定所述第一事件id第一事件帧数;

37、判断所述第一事件帧数是否大于所述第二事件id对应的第二事件帧数;

38、若大于,则判定所述待检测用户为外挂用户。

39、第三方面,本技术还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序用于实现如上述第一方面任一项所述的游戏外挂检测方法。

40、本发明实施例的有益效果包括,例如:

41、本技术提供一种游戏外挂检测方法、装置及计算机可读存储介质,涉及游戏技术领域,通过服务器确定第一技能执行顺序,接收客户端发送的技能执行反馈,并以技能执行反馈的接收时间为第一技能起始时间戳;接收客户端发送的事件判定消息,并以事件判定消息的接收时间为事件发生时间戳;从而依据事件发生时间戳、第一技能起始时间戳以及第二技能起始时间戳比较第一技能执行顺序与第二技能执行顺序是否一致;本技术通过比对服务器与客户端之间的技能执行顺序是否一致,尤其是关键事件帧数以判定待检测用户在使用技能时是否采用外挂行为,其能够在不增加客户端技能消息数据量的前提下,直接通过服务器验证技能消息的准确性,保证游戏的公平性以及玩家的游戏体验。

本文地址:https://www.jishuxx.com/zhuanli/20240615/77768.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。