一种游戏检测的方法及装置、电子设备、存储介质制造方法及图纸

技术编号:20992439 阅读:24 留言:0更新日期:2019-04-29 22:27
本发明专利技术实施例提供了一种游戏检测的方法及装置、电子设备、存储介质,所述方法包括:获取游戏中一非玩家对象对应的行为树,所述行为树包括多个节点;确定每个节点对应的节点类型,并根据所述节点类型,确定每个节点对应的标记信息,所述标记信息包括返回值与节点状态的对应关系;根据每个节点对应的标记信息,确定所述行为树中的死循环路径。通过本发明专利技术实施例,实现了对死循环路径的检测,避免非玩家对象陷入死循环状态,提升了游戏的稳定性。

A Game Detection Method and Device, Electronic Equipment and Storage Media

The embodiment of the present invention provides a method and device for game detection, an electronic device and a storage medium. The method includes: acquiring a behavior tree corresponding to a non-player object in a game, the behavior tree includes multiple nodes; determining the corresponding node type of each node, and determining the corresponding tag information of each node according to the node type, and the tag information includes return. The relationship between the return value and the state of the node; according to the label information corresponding to each node, the dead cycle path in the behavior tree is determined. The embodiment of the invention realizes the detection of the dead-cycle path, avoids the non-player object falling into the dead-cycle state, and improves the stability of the game.

【技术实现步骤摘要】
一种游戏检测的方法及装置、电子设备、存储介质
本专利技术涉及游戏领域,特别是涉及一种游戏检测的方法及装置、电子设备、存储介质。
技术介绍
在网络游戏中,非玩家对象是游戏的重要组成部分,如游戏中怪物、NPC(Non-PlayerCharacter,非玩家角色),通常可以采用行为树(BehaviorTree)的树形逻辑结构对非玩家角色进行控制。在采用行为树控制非玩家对象的过程中,当行为树存在配置错误时,可能进入病态的执行环路中,不断循环执行行为树中不阻塞的节点,导致非玩家对象不响应外界事件,陷入死循环状态,进而带来大量的资源消耗,降低服务器的运行速度,甚至导致服务器宕机,影响游戏的稳定性。
技术实现思路
鉴于上述问题,提出了本专利技术以便提供克服上述问题或者至少部分地解决上述问题的一种游戏检测的方法及装置、电子设备、存储介质,包括:一种游戏检测的方法,所述方法包括:获取游戏中一非玩家对象对应的行为树,所述行为树包括多个节点;确定每个节点对应的节点类型,并根据所述节点类型,确定每个节点对应的标记信息,所述标记信息包括返回值与节点状态的对应关系;根据每个节点对应的标记信息,确定所述行为树中的死循环路径。可选地,所述节点类型包括叶子节点,以及非叶子节点。可选地,所述根据所述节点类型,确定每个节点对应的标记信息的步骤包括:若当前节点为叶子节点,确定当前节点的一个或多个返回值;确定每个返回值对应的节点状态。可选地,所述根据所述节点类型,确定每个节点对应的标记信息的步骤包括:若当前节点为非叶子节点,确定当前节点的子节点对应的标记信息;采用所述子节点对应的标记信息,生成当前节点对应的标记信息。可选地,所述非叶子节点包括第一类非叶子节点和第二类非叶子节点,所述第一类非叶子节点的子节点数量为固定值,所述第二类非叶子节点的子节点数量为非固定值,所述在当前节点为非叶子节点时,确定当前节点的子节点对应的标记信息的步骤包括:在当前节点为第一类非叶子节点时,分别确定当前节点的每个子节点对应的标记信息;在当前节点为第二类非叶子节点时,确定当前节点的第一个子节点对应的标记信息,并基于所述当前节点的第一个子节点对应的标记信息,依次确定当前节点的每个子节点对应的标记信息。可选地,所述根据每个节点对应的标记信息,确定所述行为树中的死循环路径的步骤包括:确定满足第一预设条件的候选路径;当检测到所述候选路径中所有节点对应的标记信息满足第二预设条件时,判定所述候选路径为死循环路径。可选地,所述第一预设条件至少包括:所述候选路径中开始节点和末尾节点为同一节点,所述候选路径中开始节点为指定节点,所述候选路径中任意相邻的节点相连通;其中,所述指定节点为能够调用自身的节点。可选地,所述第二预设条件至少包括:在所述候选路径的任一节点对应的标记信息中,均存在至少一返回值对应的节点状态为非等待状态。可选地,还包括:对所述死循环路径进行修正。一种游戏检测的装置,所述装置包括:行为树检测模块,用于获取游戏中一非玩家对象对应的行为树,所述行为树包括多个节点;标记信息确定模块,用于确定每个节点对应的节点类型,并根据所述节点类型,确定每个节点对应的标记信息,所述标记信息包括返回值与节点状态的对应关系;死循环路径确定模块,用于根据每个节点对应的标记信息,确定所述行为树中的死循环路径。一种电子设备,包括处理器、存储器及存储在所述存储器上并能够在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如上所述的游戏检测的方法的步骤。一种计算机可读存储介质,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如上所述的游戏检测的方法的步骤。本专利技术实施例具有以下优点:在本专利技术实施例中,通过获取游戏中一非玩家对象对应的行为树,行为树包括多个节点,然后确定每个节点对应的节点类型,并根据节点类型,确定每个节点对应的标记信息,标记信息包括返回值与节点状态的对应关系,然后根据每个节点对应的标记信息,确定行为树中的死循环路径,实现了对死循环路径的检测,避免非玩家对象陷入死循环状态,提升了游戏的稳定性。附图说明为了更清楚地说明本专利技术的技术方案,下面将对本专利技术的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1是本专利技术一实施例提供的一种游戏检测的方法的步骤流程图;图2是本专利技术一实施例提供的一种标记信息的示意图;图3是本专利技术一实施例提供的一种行为树的示意图;图4是本专利技术一实施例提供的另一种行为树的示意图图5是本专利技术一实施例提供的另一种行为树的示意图;图6是本专利技术一实施例提供的另一种行为树的示意图;图7是本专利技术一实施例提供的一种游戏检测的装置的结构示意图。具体实施方式为使本专利技术的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本专利技术作进一步详细的说明。显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。参照图1,示出了本专利技术一实施例提供的一种游戏检测的方法的步骤流程图,具体可以包括如下步骤:步骤101,获取游戏中一非玩家对象对应的行为树,行为树包括多个节点;作为一示例,非玩家对象可以为游戏中怪物、NPC等。在实际应用中,每个非玩家对象可以具有对应的行为树,可以检测非玩家对象对应的行为树,确定行为树中的多个节点。由于游戏中部分动作是持续性的,如追击技能,持续性的动作无法在瞬时完成,则可以采用基于事件驱动的行为树,基于事件驱动的行为树通过执行结构来保证动作的有序发射和返回,实现一组动作的序列执行。具体的,基于事件驱动的行为树在执行节点时可以不直接返回,而可以将当前节点设置为等待状态,当外部事件通知节点执行完成时,如追击技能命中某个玩家角色,再返回重启。而且,在等待状态,当前节点也可以接收外部信息输入,中断当前节点的执行,以对环境的改变和玩家的交互进行反馈。步骤102,确定每个节点对应的节点类型,并根据节点类型,确定每个节点对应的标记信息,标记信息包括返回值与节点状态的对应关系;其中,返回值可以为节点执行完成时返回的值,如返回值为Ture或False,节点状态可以包括等待状态和非等待状态,在等待状态下,节点需要等待特定事件才能返回,在非等待状态下,节点可以直接返回。在具体实现中,行为树可以具有不同类型的节点,可以确定每个节点的节点类型,然后根据节点类型确定标记信息,标记信息的属性可以为字典。具体的,标记信息可以包括如下表所示的8种情况:在一示例中,可以通过图形来描述标记信息的8种情况,如图2,返回值Ture简写为T,False简写为F,等待状态/非等待状态进行区别显示,等待状态下为白色,非等待状态下染色为灰色。在本专利技术一实施例中,节点类型可以包括叶子节点,叶子节点不具有调度功能,不拥有子节点,其可以控制非玩家对象的Entity执行特定动作去影响外部环境,如寻路和攻击,则根据节点类型,确定每个节点对应的标记信息的步骤可以包括如下子步骤:若当前节点为叶子节点,确定当前节点的一个或多个返回值;确定每个返回值对本文档来自技高网...

【技术保护点】
1.一种游戏检测的方法,其特征在于,所述方法包括:获取游戏中一非玩家对象对应的行为树,所述行为树包括多个节点;确定每个节点对应的节点类型,并根据所述节点类型,确定每个节点对应的标记信息,所述标记信息包括返回值与节点状态的对应关系;根据每个节点对应的标记信息,确定所述行为树中的死循环路径。

【技术特征摘要】
1.一种游戏检测的方法,其特征在于,所述方法包括:获取游戏中一非玩家对象对应的行为树,所述行为树包括多个节点;确定每个节点对应的节点类型,并根据所述节点类型,确定每个节点对应的标记信息,所述标记信息包括返回值与节点状态的对应关系;根据每个节点对应的标记信息,确定所述行为树中的死循环路径。2.根据权利要求1所述的方法,其特征在于,所述节点类型包括叶子节点,以及非叶子节点。3.根据权利要求2所述的方法,其特征在于,所述根据所述节点类型,确定每个节点对应的标记信息的步骤包括:若当前节点为叶子节点,确定当前节点的一个或多个返回值;确定每个返回值对应的节点状态。4.根据权利要求2所述的方法,其特征在于,所述根据所述节点类型,确定每个节点对应的标记信息的步骤包括:若当前节点为非叶子节点,确定当前节点的子节点对应的标记信息;采用所述子节点对应的标记信息,生成当前节点对应的标记信息。5.根据权利要求4所述的方法,其特征在于,所述非叶子节点包括第一类非叶子节点和第二类非叶子节点,所述第一类非叶子节点的子节点数量为固定值,所述第二类非叶子节点的子节点数量为非固定值,所述在当前节点为非叶子节点时,确定当前节点的子节点对应的标记信息的步骤包括:在当前节点为第一类非叶子节点时,分别确定当前节点的每个子节点对应的标记信息;在当前节点为第二类非叶子节点时,确定当前节点的第一个子节点对应的标记信息,并基于所述当前节点的第一个子节点对应的标记信息,依次确定当前节点的每个子节点对应的标记信息。6.根据权利要求1所述的方法,其特征在于,所述根据每个节点对应的标...

【专利技术属性】
技术研发人员:黄慧良
申请(专利权)人:网易杭州网络有限公司
类型:发明
国别省市:浙江,33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1