一种游戏行为树控制方法技术

技术编号:20362631 阅读:22 留言:0更新日期:2019-02-16 16:25
本发明专利技术提供了一种游戏行为树控制方法,通过建立行为节点间的关联关系,由控制模块查找可执行的行为节点时,优先查找该行为节点的关联节点,如果关联节点均不满足条件则等待输入。实施本发明专利技术,可以高度模块化行为节点,提高了行为树的可重用性,便于游戏的快速迭代。

【技术实现步骤摘要】
一种游戏行为树控制方法
本专利技术属于网络游戏
,具体涉及一种游戏行为树控制方法。
技术介绍
行为树作为开发游戏时一个简单,可扩展的编辑逻辑的方案,可以加速游戏开发的迭代速度。在游戏中,行为树响应游戏中的各种信息,进行决策以挑选接下来将要执行的行动并且监控该行动的执行。行为树中,将游戏逻辑划分为行为节点,通过逻辑节点控制行为节点的执行;每次查找行为节点时,通常需要从根节点出发,遍历各个节点,直到找到满足条件的行为节点。现有技术中,每个游戏单位或者多个游戏单位共享一棵行为树,通过搜索模块快速匹配满足条件的行为节点;由于各行为之间完全独立,割裂了各行为之前存在的内在联系;执行过程中,每次都是从根节点出发,游戏中出现问题,也不易定位问题。现有技术中根据第一游戏单位的属性信息从行为树上搜索到第一抽象行为;根据所述第一抽象行为从行为委托池中获取到对应的第一行为委托;将所述第一行为委托加载到所述第一抽象行为上从而生成第一具体行为,并由所述第一游戏单位执行所述第一具体行为。现有技术中的上述方案实现过程较为复杂,且需要建立行为委托池,搜索模块等,行为间切换时均从根节点进行查找;而对于行为树数量较少,行为之间联系比较紧密,行为切换明确的游戏行为,执行效率低下。
技术实现思路
为克服上述现有技术的不足,针对行为树数量较少,行为节点之间联系比较紧密,切换明确的游戏领域,在保证游戏可扩展性的同时,建立行为节点间联系,进一步提高游戏行为的执行效率。本专利技术提供了一种游戏行为树控制预处理方法,其特征在于,包括:S101.建立控制模块,用于控制行为节点的跳转;S102.在创建行为节点过程中,将所有与该行为节点相关的行为节点关联起来,并作为该行为节点的一部分,同时将该行为节点作为某一具体逻辑节点的子节点;S103.某一行为节点执行完成后,控制模块查找与该行为节点相关联的行为节点;并进行行为节点切换。优选地,所述行为树中包含有三种逻辑节点:1)选择节点:用于选择其子节点的某一个执行;2)序列节点:用于将其所有子节点依次执行,即当前一个子节点执行完成,返回“完成”状态后,再运行下一个子节点;3)并行节点:用于将其所有子节点都运行一遍。本专利技术还提供了一种游戏行为树控制方法,包含以下步骤:S201、提取游戏中的行为节点;所述行为节点为游戏逻辑执行的独立单元,包含该行为节点执行所需要的数据及具体逻辑;S202、添加行为节点的执行条件;当满足执行条件,且有输入时,控制模块开始执行该行为节点,直到该行为节点返回状态;S203、建立行为节点间的关联关系;S204、增加根节点,然后将行为节点添加到相应的根节点中;S205、行为树等待用户输入,当有输入时,由控制模块执行相应操作;S206、行为节点完成执行后,通知控制模块其状态。优选地,行为节点的执行条件包括但不限于满足行为节点所需数据全部准备完成。优选地,行为节点状态有两个:1)完成;2)执行中;如果行为节点为完成状态,当有输入时,控制模块将重新查找行为节点执行;如果行为节点为执行中状态,当有输入时,控制模块将继续执行当前行为节点。优选地,所述S203中的建立行为节点间的关联关系,进一步包括:将行为节点与可执行的后续行为节点相关联。优选地,所述S205中行为树等待用户输入,当有输入时,由控制模块执行相应操作,进一步包括:S601、判断是否为初次执行;如果判断结果为是,则执行S602;如果判断结果为否,则执行S603;S602、遍历所有节点,查找符合条件的行为节点;S603、判断当前是否有状态为执行中的行为节点;如果判断结果为是,则执行S604;如果判断结果为否,则执行S605;S604、继续执行状态为执行中的行为节点;S605、遍历前一次执行的行为节点的关联节点,转而继续执行S604。优选地,S605中的遍历前一次执行的行为节点的关联节点,进一步包括:如果找到符合条件的行为节点,执行该行为节点对应的操作;如果未找到符合条件的行为节点,则返回S205。优选地,所述输入包含但不限于:1)用户操作;2)用户操作超时后,由系统替代用户执行操作。优选地,控制模块接收到行为节点通知的状态后进一步执行如下步骤:S701、确认行为树中某个行为节点已执行完成;S702、判断游戏是否结束;如果判断结果为是,则执行S703;如果判断结果为否,则执行S205;S703、停止调用行为树。上述说明仅是本专利技术技术方案的概述,为了能够更清楚了解本专利技术的技术手段,并可依照说明书的内容予以实施,以下以本专利技术的较佳实施例并配合附图详细说明如后。附图说明图1示出了根据本专利技术的一个实施例的游戏行为树控制预处理方法流程图;图2示出了根据本专利技术的一个实施例的游戏行为树控制方法流程图;图3示出了根据本专利技术的一个实施例的行为节点提取示意图;图4示出了根据本专利技术的一个实施例的行为节点关联示意图;图5示出了根据本专利技术的一个实施例的逻辑节点添加示意图。图6示出了根据本专利技术的一个实施例的控制模块操作示意图;图7示出了根据本专利技术的另一个实施例的控制模块操作示意图。具体实施方式为更进一步阐述本专利技术为达成预定专利技术目的所采取的技术手段及功效,以下结合附图及较佳实施例,对依据本专利技术提出的游戏行为树控制方法其具体实施方式、特征及其功效,详细说明如后。在下述说明中,不同的“一实施例”或“实施例”指的不一定是同一实施例。此外,一或多个实施例中的特定特征、结构、或特点可由任何合适形式组合。行为树:用于控制人工智能(ArtificialIntelligence,AI)决策行为的、包含了层级节点的树结构。如图1所示,本专利技术的一个具体实施方式中,提供了一种游戏行为树控制预处理方法,包含以下步骤:S101.建立控制模块,用于控制行为节点的跳转;根据本专利技术的一个优选实施方式,行为树中包含有三种逻辑节点:1)选择(Selector)节点:用于选择其子节点的某一个执行;2)序列(Sequence)节点:用于将其所有子节点依次执行,即当前一个子节点执行完成,返回“完成”状态后,再运行下一个子节点;3)并行(Parallel)节点:用于将其所有子节点都运行一遍。S102.在创建行为节点过程中,将所有与该行为节点相关的行为节点关联起来,并作为该行为节点的一部分,同时将该行为节点作为某一具体逻辑节点的子节点;S103.某一行为节点执行完成后,控制模块查找与该行为节点相关联的行为节点;并进行行为节点切换。通过实施上述游戏行为树控制预处理方法,使得在行为节点执行完成后,首先从关联节点进行查找,如果均不满足条件,则行为树返回至根节点,等待新的输入;减少了遍历节点的数量,提高了行为节点的执行效率。如图2所示,本专利技术的一个具体实施方式中,提供了一种游戏行为树控制方法,包含以下步骤:S201、提取游戏中的行为节点;所述行为节点为游戏逻辑执行的独立单元,包含该行为节点执行所需要的数据及具体逻辑;根据本专利技术的一个优选实施方式,如图3所示,以斗地主游戏为例,根据游戏规则可提取出的行为节点包括:洗牌、发牌、叫分、出牌、算分。S202、添加行为节点的执行条件;当满足执行条件,且有输入时,控制模块开始执行该行为节点,直到该行为节点返回状态;根据本专利技术的一个优选实施方式,行为节点的执行条件包括但不限于满足行为节点本文档来自技高网...

【技术保护点】
1.一种游戏行为树控制预处理方法,其特征在于,包括:S101.建立控制模块,用于控制行为节点的跳转;S102.在创建行为节点过程中,将所有与该行为节点相关的行为节点关联起来,并作为该行为节点的一部分,同时将该行为节点作为某一具体逻辑节点的子节点;S103.某一行为节点执行完成后,控制模块查找与该行为节点相关联的行为节点;并进行行为节点切换。

【技术特征摘要】
1.一种游戏行为树控制预处理方法,其特征在于,包括:S101.建立控制模块,用于控制行为节点的跳转;S102.在创建行为节点过程中,将所有与该行为节点相关的行为节点关联起来,并作为该行为节点的一部分,同时将该行为节点作为某一具体逻辑节点的子节点;S103.某一行为节点执行完成后,控制模块查找与该行为节点相关联的行为节点;并进行行为节点切换。2.根据权利要求1所述的游戏行为树控制预处理方法,其特征在于:所述行为树中包含有三种逻辑节点:1)选择节点:用于选择其子节点的某一个执行;2)序列节点:用于将其所有子节点依次执行,即当前一个子节点执行完成,返回“完成”状态后,再运行下一个子节点;3)并行节点:用于将其所有子节点都运行一遍。3.一种游戏行为树控制方法,包含以下步骤:S201、提取游戏中的行为节点;所述行为节点为游戏逻辑执行的独立单元,包含该行为节点执行所需要的数据及具体逻辑;S202、添加行为节点的执行条件;当满足执行条件,且有输入时,控制模块开始执行该行为节点,直到该行为节点返回状态;S203、建立行为节点间的关联关系;S204、增加根节点,然后将行为节点添加到相应的根节点中;S205、行为树等待用户输入,当有输入时,由控制模块执行相应操作;S206、行为节点完成执行后,通知控制模块其状态。4.根据权利要求3所述的游戏行为树控制方法,其特征在于:行为节点的执行条件包括但不限于:满足行为节点所需数据全部准备完成。5.根据权利要求3或4所述的游戏行为树控制方法,其特征在于:行为节点状态有两个:1)完成;2)执行中;如果行为节点为完成状态,当有输入时,控制模块将重新查找行为节点执...

【专利技术属性】
技术研发人员:刘亥彬
申请(专利权)人:竞技世界北京网络技术有限公司
类型:发明
国别省市:北京,11

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

1