CN113926196A - 虚拟游戏角色的控制方法、装置、存储介质和电子装置 - Google Patents

虚拟游戏角色的控制方法、装置、存储介质和电子装置 Download PDF

Info

Publication number
CN113926196A
CN113926196A CN202111130405.3A CN202111130405A CN113926196A CN 113926196 A CN113926196 A CN 113926196A CN 202111130405 A CN202111130405 A CN 202111130405A CN 113926196 A CN113926196 A CN 113926196A
Authority
CN
China
Prior art keywords
node
behavior
virtual game
behavior tree
tree
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.)
Pending
Application number
CN202111130405.3A
Other languages
English (en)
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.)
Netease Hangzhou Network Co Ltd
Original Assignee
Netease Hangzhou Network 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 Netease Hangzhou Network Co Ltd filed Critical Netease Hangzhou Network Co Ltd
Priority to CN202111130405.3A priority Critical patent/CN113926196A/zh
Publication of CN113926196A publication Critical patent/CN113926196A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/55Controlling game characters or game objects based on the game progress
    • A63F13/56Computing the motion of game characters with respect to other game characters, game objects or elements of the game scene, e.g. for simulating the behaviour of a group of virtual soldiers or for path finding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N20/10Machine learning using kernel methods, e.g. support vector machines [SVM]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Software Systems (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Human Computer Interaction (AREA)
  • Artificial Intelligence (AREA)
  • Processing Or Creating Images (AREA)

Abstract

本发明公开了一种虚拟游戏角色的控制方法、装置、存储介质和电子装置。该方法包括:调用与虚拟游戏角色集合相关联的第一行为树,且通过第一行为树确定与虚拟游戏角色集合相关联的目标对象,其中,虚拟游戏角色集合包括多个虚拟游戏角色,第一行为树的至少部分节点包括与每个虚拟游戏角色相关联的第二行为树;通过第一行为树确定与目标对象对应的第一游戏行为,其中,第一游戏行为为虚拟游戏角色集合待执行的行为;通过第一行为树调用与每个虚拟游戏角色相关联的第二行为树,且通过第二行为树控制对应的每个虚拟游戏角色执行第一游戏行为。通过本发明,达到了降低对虚拟游戏角色集合进行控制的逻辑实现难度的效果。

Description

虚拟游戏角色的控制方法、装置、存储介质和电子装置
技术领域
本发明涉及计算机领域,具体而言,涉及一种虚拟游戏角色的控制方法、装置、存储介质和电子装置。
背景技术
目前,在人工智能(Artificial Intelligence,简称为AI)的发展历程中,游戏AI可以控制虚拟游戏角色的行动与表现。为了使游戏中的虚拟游戏角色的战斗方式更多样、有更强的表现力,有时需要虚拟游戏角色集合共同执行一些游戏行为。
在相关技术中,通常是在游戏实体的有限状态机或分层状态机中,附加激活团队策略的行为。但是,该方法需要在设计中详细设计每一个状态,列出层次化状态结构,同时还需要针对具体问题严格限制状态跳转,状态机结构的设计和维护也需要花费大量精力;而虚拟游戏角色集合在共同执行游戏行为时,每个虚拟游戏角色难以获得其它虚拟游戏角色的数据信息,从而使得对虚拟游戏角色集合进行控制的逻辑实现难度大。
在另一种相关技术中,可以通过深度学习技术构建并训练复杂的神经网络,可以实现类似一个控制者操控虚拟游戏角色集合中每个虚拟游戏角色的功能,在这种情况下,团队策略将由特定的网络层进行训练,并在网络运行时被执行。但是,神经网络本身的决策实际上是一个黑盒,开发人员无法得知虚拟游戏角色会在何时执行何种游戏行为,更无法保证游戏性与逻辑难度的可控,再加之网络的构建与训练需要投入大量的研发资源,在每次游戏更新、数据变化都需要重新训练模型,从而使得对虚拟游戏角色集合进行控制的逻辑实现难度大。
针对现有技术中对虚拟游戏角色集合进行控制的逻辑实现难度大的效果的问题,目前尚未提出有效的解决方案。
发明内容
本发明的主要目的在于提供一种虚拟游戏角色的控制方法、装置、存储介质和电子装置,以至少解决对虚拟游戏角色集合进行控制的逻辑实现难度大的效果的问题。
为了实现上述目的,根据本发明的一个方面,提供了一种虚拟游戏角色的控制方法。该方法可以包括:调用与虚拟游戏角色集合相关联的第一行为树,且通过第一行为树确定与虚拟游戏角色集合相关联的目标对象,其中,虚拟游戏角色集合包括多个虚拟游戏角色,第一行为树的至少部分节点包括与每个虚拟游戏角色相关联的第二行为树;通过第一行为树确定与目标对象对应的第一游戏行为,其中,第一游戏行为为虚拟游戏角色集合待执行的行为;通过第一行为树调用与每个虚拟游戏角色相关联的第二行为树,且通过第二行为树控制对应的每个虚拟游戏角色执行第一游戏行为。
可选地,通过第一行为树确定与虚拟游戏角色集合相关联的目标对象,包括:通过第一行为树的第一顺序节点,确定目标对象,其中,第一顺序节点为第一行为树的第一选择节点的一个子节点。
可选地,通过第一行为树的第一顺序节点,确定目标对象,包括:通过第一顺序节点中的第一条件节点,确定当前未确定出目标对象;通过第一顺序节点中的第一执行节点,从多个第一目标对象中确定出目标对象,其中,多个第一目标对象与多个虚拟游戏角色中的至少一虚拟游戏角色相关联。
可选地,第一执行节点包括第一子执行节点和第二子执行节点,通过第一顺序节点的第一执行节点,从多个第一目标对象中确定出目标对象,包括:通过第一子执行节点,获取每个虚拟游戏角色和与每个虚拟游戏角色相关联的每个第一目标对象之间的相关度,得到多个关联度,且从多个关联度中确定出最高关联度;通过第二子执行节点,将最高关联度对应的第一目标对象确定为目标对象。
可选地,调用与虚拟游戏角色集合相关联的第一行为树,包括:当确定出与多个虚拟游戏角色中任意一个虚拟游戏角色相关联的至少一个第一目标对象时,调用第一行为树。
可选地,通过第一行为树确定与目标对象对应的第一游戏行为,包括:通过第一行为树的第二顺序节点,确定第一游戏行为,其中,第二顺序节点为第一行为树的第一选择节点的一个子节点。
可选地,通过第一行为树的第二顺序节点,确定第一游戏行为,包括:通过第二顺序节点的第二执行节点,确定第一游戏行为。
可选地,通过第一行为树调用与每个虚拟游戏角色相关联的第二行为树,且通过第二行为树控制对应的每个虚拟游戏角色执行第一游戏行为,包括:在通过第二顺序节点的第二执行节点,确定第一游戏行为之后,通过第二顺序节点的筛选节点,调用与每个虚拟游戏角色相关联的第二行为树,且通过第二行为树控制对应的每个虚拟游戏角色执行第一游戏行为。
可选地,该方法还包括:通过第一行为树的第三顺序节点,禁止调用第一行为树,其中,第三顺序节点为第一行为树的第一选择节点的一个子节点。
可选地,通过第一行为树的第三顺序节点,禁止调用第一行为树,包括:通过第三顺序节点的第二条件节点,确定已获取禁止指令,其中,禁止指令用于禁止调用第一行为树;通过第三顺序节点的第三执行节点,响应禁止指令,禁止调用第一行为树。
可选地,通过第二行为树控制对应的每个虚拟游戏角色执行第一游戏行为,包括:通过第二行为树的第四顺序节点,控制对应的每个虚拟游戏角色执行第一游戏行为中的子游戏行为,其中,第四顺序节点为第二行为树的第二选择节点的一个子节点。
可选地,通过第二行为树的第四顺序节点,控制对应的每个虚拟游戏角色执行第一游戏行为中的子游戏行为,包括:通过第四顺序节点的第三条件节点,确定允许调用第一行为树;通过第四顺序节点的第四执行节点,控制对应的每个虚拟游戏角色执行子游戏行为。
可选地,该方法还包括:通过第二行为树的第五顺序节点,控制对应的每个虚拟游戏角色执行每个虚拟游戏角色的第二游戏行为,其中,第五顺序节点为第二行为树的第二选择节点的一个子节点。
可选地,通过第二行为树的第五顺序节点,控制对应的每个虚拟游戏角色执行每个虚拟游戏角色的独立行为,包括:通过第五顺序节点的第四条件节点,确定禁止调用第一行为树;通过第五顺序节点的第五执行节点,控制对应的每个虚拟游戏角色执行第二游戏行为。
可选地,每个虚拟游戏角色通过虚拟游戏角色集合的标识信息获取团队信息,其中,团队信息包括虚拟游戏角色集合的信息和/或多个虚拟游戏角色中除每个虚拟游戏角色之外的虚拟游戏角色的信息。
为了实现上述目的,根据本发明的另一方面,还提供了一种虚拟游戏角色的控制装置。该装置可以包括:第一确定单元,用于调用与虚拟游戏角色集合相关联的第一行为树,且通过第一行为树确定与虚拟游戏角色集合相关联的目标对象,其中,虚拟游戏角色集合包括多个虚拟游戏角色,第一行为树的至少部分节点包括与每个虚拟游戏角色相关联的第二行为树;第二确定单元,用于通过第一行为树确定与目标对象对应的第一游戏行为,其中,第一游戏行为为虚拟游戏角色集合待执行的行为;控制单元,用于通过第一行为树调用与每个虚拟游戏角色相关联的第二行为树,且通过第二行为树控制对应的每个虚拟游戏角色执行第一游戏行为。
为了实现上述目的,根据本发明的另一方面,还提供了一种计算机可读存储介质。该计算机可读存储介质中存储有计算机程序,其中,在计算机程序被处理器运行时控制计算机可读存储介质所在设备执行本发明实施例的虚拟游戏角色的控制方法。
为了实现上述目的,根据本发明的另一方面,还提供了一种电子装置,包括存储器和处理器。该存储器中存储有计算机程序,处理器被设置为被处理器运行计算机程序以执行本发明实施例的虚拟游戏角色的控制方法。
在本发明实施例中,调用与虚拟游戏角色集合相关联的第一行为树,且通过第一行为树确定与虚拟游戏角色集合相关联的目标对象,其中,虚拟游戏角色集合包括多个虚拟游戏角色,第一行为树的至少部分节点包括与每个虚拟游戏角色相关联的第二行为树;通过第一行为树确定与目标对象对应的第一游戏行为,其中,第一游戏行为为虚拟游戏角色集合待执行的行为;通过第一行为树调用与每个虚拟游戏角色相关联的第二行为树,且通过第二行为树控制对应的每个虚拟游戏角色执行第一游戏行为。也就是说,本申请采用两级行为树,虚拟游戏角色集合具有自己的第一行为树,用于管理所有的虚拟游戏角色,可以根据不同的行为树的节点配置构建出第一游戏行为,每个虚拟游戏角色也保持自己的第二行为树开启,使得每个虚拟游戏角色执行第一游戏行为,由于行为树的结构清晰、灵活、易于维护,拓展性强,可利用不同的节点实现风格化的AI战术,从而解决了对虚拟游戏角色集合的控制逻辑实现难度较大的技术问题,达到了降低对虚拟游戏角色集合的控制逻辑实现难度的技术效果。
附图说明
构成本申请的一部分的附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是本发明实施例的一种虚拟游戏角色的控制方法的移动终端的硬件结构框图;
图2是根据本发明实施例的一种虚拟游戏角色的控制方法的流程图;
图3是根据相关技术中的一种分层状态机的示意图;
图4是根据本发明实施例的一种OpenAIFive的网络结构的示意图;
图5是根据本发明实施例的一种在游戏的战斗空间中创建的AI团队实体的管理器与AI团队实体以及AI成员实体之间的关系的示意图;
图6是根据本发明实施例的一种AI团队实体的行为树的示意图;
图7是根据本发明实施例的一种AI成员实体的行为树的示意图;
图8是根据本发明实施例的一种虚拟游戏角色的控制装置的示意图。
具体实施方式
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本发明。
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
本申请实施例所提供的方法实施例可以在移动终端、计算机终端或者类似的运算装置中执行。以运行在移动终端上为例,图1是本发明实施例的一种虚拟游戏角色的控制方法的移动终端的硬件结构框图。如图1所示,移动终端可以包括一个或多个(图1中仅示出一个)处理器102(处理器102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)和用于存储数据的存储器104,可选地,上述移动终端还可以包括用于通信功能的传输设备106以及输入输出设备108。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述移动终端的结构造成限定。例如,移动终端还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。
存储器104可用于存储计算机程序,例如,应用软件的软件程序以及模块,如本发明实施例中的一种数据处理的方法对应的计算机程序,处理器102通过运行存储在存储器104内的计算机程序,从而执行各种功能应用以及数据处理,即实现上述的方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至移动终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输设备106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括移动终端的通信供应商提供的无线网络。在一个实例中,传输设备106包括一个网络适配器(Network Interface Controller,简称为NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输设备106可以为射频(Radio Frequency,简称为RF)模块,其用于通过无线方式与互联网进行通讯。
在本实施例中提供了一种运行于上述移动终端的一种虚拟游戏角色的控制方法。图2是根据本发明实施例的一种虚拟游戏角色的控制方法的流程图。如图2所示,该方法可以包括如下步骤:
步骤S202,调用与虚拟游戏角色集合相关联的第一行为树,且通过第一行为树确定与虚拟游戏角色集合相关联的目标对象。
在本发明上述步骤S202提供的技术方案中,虚拟游戏角色集合包括多个虚拟游戏角色,第一行为树的至少部分节点包括与每个虚拟游戏角色相关联的第二行为树。
在该实施例中,虚拟游戏角色集合可以为通过AI进行控制的团队,也可以称为团队AI、AI团队实体,其可以包括一组虚拟游戏角色,每个虚拟游戏角色可以为通过AI进行控制的团队成员,也可以称为独立AI、AI角色、AI成员,其中,每个虚拟游戏角色可以为怪物或非玩家角色(Non-Player Character,简称为NPC)。该实施例可以调用与虚拟游戏角色集合相关联的第一行为树,也即,开启第一行为树,可以通过第一行为树确定与虚拟游戏角色集合相关联的目标对象,该目标对象为虚拟戏角色集合中每个虚拟游戏角色相关联的对象,可以是多个虚拟游戏就是需要共同攻击的目标虚拟游戏角色,比如,共同的仇恨对象,也可以是需要共同抵达的地理位置,也可以是为了共同完成任务而所使用的技能或模式,而非各自作战,也可以是敌方的建筑模型等任何用于虚拟游戏角色集合中的每个虚拟游戏角色开启合作的对象,此处不做具体限制。因而,上述关联可以指虚拟游戏角色集合在协同执行团队任务时与目标对象之间所建立的联系。
可选地,该实施例可以在游戏场景中建立全局管理器,其中,游戏场景可以为游戏的战斗空间,全局管理器可以为全局的团队管理器,其可以为一个类对象,该类对象内可以包括一个字典,用于存放和管理游戏场景中所有的虚拟游戏角色集合。可选地,该实施例通过上述全局管理器创建虚拟游戏角色集合的实体,也即,创建AI团队实体,可以将虚拟游戏角色集合中每个虚拟游戏角色集合注册到虚拟游戏角色集合的实体中。可选地,该实施例的全局管理器的开放接口用于使其他模块获取任意一个虚拟游戏角色集合的实体,并且用于进行数据的清理和销毁工作,可以在游戏场景创建或销毁时,统一调用所有虚拟游戏角色集合的初始化与销毁接口,其中,全局管理器可以为每个虚拟游戏角色添加监听事件,当某个虚拟游戏角色销毁或死亡后,会将其从虚拟游戏角色集合中移除。可选地,该实施例的虚拟游戏角色集合的实体中包含一个列表,该列表可以用于存放每个虚拟游戏角色的唯一标识信息(ID),从而通过该标识信息可以用于统一管理每个虚拟游戏角色的生存周期。
在该实施例中,行为树是AI运行方案中最灵活、拓展性强的方案,该实施例的虚拟游戏角色集合具有自己运行的第一行为树,该第一行为树也可以称为团队行为树、AI行为树,其可以由定制化的团队战术节点、通用节点以及筛选节点及其子节点等组成,可以由策划人员配置每个虚拟游戏角色集合具体要执行的行为。可选地,上述战术节点用于实现虚拟游戏角色的战斗,比如,可以为双子船夹击战术节点,也即,在海战中,两艘AI船可以分别从虚拟游戏角色左右侧后方驶向左右正侧方,在此过程中对夹在中间的虚拟游戏角色进行开火攻击,在攻击结束后,双子船快速移动到虚拟游戏角色的前方相向交叉行驶,面向虚拟游戏角色继续夹击,其中,虚拟游戏角色可以是由玩家控制的虚拟船。可选地,队列战术节点还可以是例如3至5艘AI船只头尾衔接组成队列,对虚拟游戏角色进行环绕攻击,并在减员情况下能保持队列。可选地,该实施例的通用节点可以包括每个虚拟游戏角色同时播放喊话交互界面(User Interface,简称为UI)、音效等表现类节点。
该实施例的虚拟游戏角色集合的实体可以充当队伍的大脑,进行搜索、锁定和归位等一系列操作,同时也可以根据第一行为树的不同节点配置构建出风格各异的游戏战术(团队战术)。
可选地,第一行为树的至少部分节点包括与每个虚拟游戏角色相关联的第二行为树,该第二行为树也可以称为成员行为树,该第二行为树会在其被创建时就同时启动,其结构可以与第一行为树的结构相同。
该实施例的上述第一行为树和第二行为树的结构可以在游戏运行前就已经确定,从而其具有静态性,这种静态性保证了AI运行的稳定,同时第一行为树和第二行为树可以由执行节点、条件节点、组合节点等节点构成。其中,执行节点为行为树的叶节点,该执行节点用于执行具体的功能;当运行到条件节点时,条件满足才会继续执行后续的节点;组合节点包括选择节点、顺序节点,其中,选择节点会从上到下依次执行其子节点,只要子节点运行结果返回失败,就可以继续执行后续的子节点,直至有一个子节点运行结果返回成功,则停止执行后续的子节点,并且向父节点返回运行结果,顺序节点会从上到下依次执行其子节点,只要子节点运行结果返回成功,就继续执行后续的子节点,直至有一个子节点运行结果返回失败,则停止执行后续的子节点,向父节点返回失败,筛选节点允许添加子节点,用于定义对子节点做不同的特殊处理。
该实施例的第一行为树和第二行为树的组织结构直观、易于维护。另外,组成第一行为树和第二行为树的节点具有很强的复用性,可以通过不同的组织方式,获得具有不同功能的AI。
步骤S204,通过第一行为树确定与目标对象对应的第一游戏行为,其中,第一游戏行为为虚拟游戏角色集合待执行的行为。
在本发明上述步骤S204提供的技术方案中,在通过第一行为树确定与虚拟游戏角色集合相关联的目标对象之后,可以通过第一行为树确定与目标对象对应的第一游戏行为,其中,第一游戏行为为虚拟游戏角色集合待执行的行为。
在该实施例中,由于第一行为树可以由策划配置虚拟游戏角色集合具体要执行的游戏行为,而该游戏行为是针对虚拟游戏角色集合为了完成团队任务在合作时所关联的目标对象而产生的,因而,该实施例可以通过第一行为树确定与上述目标对象对应的第一游戏行为,该第一游戏行为为虚拟游戏角色集合待执行的行为,该第一游戏行为可以为针对团队任务而确定的团队战术逻辑,可以是复杂的战术逻辑,比如,打出连续技能的行为或开启合作攻势的行为。可选地,当目标对象不同时,第一游戏行为也可以不同,比如,当目标对象为多个虚拟游戏角色需要共同攻击的目标虚拟游戏角色时,则第一游戏行为为攻击游戏行为,当目标对象为需要共同抵达的地理位置,则第一游戏行为可以为前进游戏行为,此处不做具体限制。
步骤S206,通过第一行为树调用与每个虚拟游戏角色相关联的第二行为树,且通过第二行为树控制对应的每个虚拟游戏角色执行第一游戏行为。
在本发明上述步骤S206提供的技术方案中,在通过第一行为树确定与目标对象对应的第一游戏行为之后,可以通过第一行为树调用与每个虚拟游戏角色相关联的第二行为树,且通过第二行为树控制对应的每个虚拟游戏角色执行第一游戏行为。
在该实施例中,第一行为树开启时,可以通过第一行为树调用与每个虚拟游戏角色相关联的第二行为树,从而构成两级行为树共同运行的结构,通过上述第二行为树的节点控制对应的虚拟游戏角色执行第一游戏行为,可选地,每个虚拟游戏角色的第二行为树可以控制该虚拟游戏角色执行相同的第一游戏行为,比如,该第一游戏行为为射击游戏行为,可选地,该第一游戏行为为一类游戏行为,可以包括子游戏行为,每个虚拟游戏角色的第二行为树可以控制该虚拟游戏角色执行对应的子游戏行为,通过每个虚拟游戏角色执行对应的子游戏行为共同形成了第一游戏行为,比如,第一游戏行为为攻击游戏行为,则子游戏行为可以为开火行为、砍打行为等,此处不做具体限制。
通过本申请上述步骤S202至步骤S206,调用与虚拟游戏角色集合相关联的第一行为树,且通过第一行为树确定与虚拟游戏角色集合相关联的目标对象,其中,虚拟游戏角色集合包括多个虚拟游戏角色,第一行为树的至少部分节点包括与每个虚拟游戏角色相关联的第二行为树;通过第一行为树确定与目标对象对应的第一游戏行为,其中,第一游戏行为为虚拟游戏角色集合待执行的行为;通过第一行为树调用与每个虚拟游戏角色相关联的第二行为树,且通过第二行为树控制对应的每个虚拟游戏角色执行第一游戏行为。也就是说,本申请采用两级行为树,虚拟游戏角色集合具有自己的第一行为树,用于管理所有的虚拟游戏角色,可以根据不同的行为树的节点配置构建出第一游戏行为,每个虚拟游戏角色也保持自己的第二行为树开启,使得每个虚拟游戏角色执行第一游戏行为,由于行为树的结构清晰、灵活、易于维护,拓展性强,可利用不同的节点实现风格化的AI战术,从而解决了对虚拟游戏角色集合的控制逻辑实现难度较大的技术问题,达到了降低对虚拟游戏角色集合的控制逻辑实现难度的技术效果。
下面对该实施例的上述方法进行进一步介绍。
作为一种可选的实施方式,步骤S202,通过第一行为树确定与虚拟游戏角色集合相关联的目标对象,包括:通过第一行为树的第一顺序节点,确定目标对象,其中,第一顺序节点为第一行为树的第一选择节点的一个子节点。
在该实施例中,第一行为树包括根节点,该根节点上具有第一选择节点,该第一选择节点上具有第一顺序节点,可选地,该实施例通过第一顺序节点确定目标对象,该确定目标对象的过程也即确定锁定目标的过程,从而该目标对象也可以称为锁定目标。
作为一种可选的实施方式,通过第一行为树的第一顺序节点,确定目标对象,包括:通过第一顺序节点中的第一条件节点,确定当前未确定出目标对象;通过第一顺序节点中的第一执行节点,从多个第一目标对象中确定出目标对象,其中,多个第一目标对象与多个虚拟游戏角色中的至少一虚拟游戏角色相关联。
在该实施例中,第一顺序节点可以包括第一条件节点和第一执行节点,可以通过第一条件节点确定当前未确定出目标对象,可以是确定当前未选择到合适的锁定目标,然后执行第一执行节点,可以从而多个第一目标对象中确定出目标对象,可选地,多个第一目标对象与多个虚拟游戏角色中的至少一虚拟游戏角色相关联,比如,该至少一个第一目标对象为对应的虚拟游戏角色的仇恨对象,每个虚拟游戏角色可以通过自己的仇恨系统获取一份仇恨列表,在该仇恨列表中确定出上述至少一个第一目标对象,进而得到上述多个第一目标对象,在多个第一目标对象中确定出目标对象,该目标对象的信息可以传递至所有的虚拟游戏角色。
作为一种可选的实施方式,第一执行节点包括第一子执行节点和第二子执行节点,通过第一顺序节点的第一执行节点,从多个第一目标对象中确定出目标对象,包括:通过第一子执行节点,获取每个虚拟游戏角色和与每个虚拟游戏角色相关联的每个第一目标对象之间的相关度,得到多个关联度,且从多个关联度中确定出最高关联度;通过第二子执行节点,将最高关联度对应的第一目标对象确定为目标对象。
在该实施例中,上述第一执行节点可以进一步包括第一子执行节点和第二子执行节点,该实施例可以通过第一子执行节点,获取每个虚拟游戏角色和与每个虚拟游戏角色相关联的每个第一目标对象之间的相关度,得到多个关联度,该关联度用于表示每个虚拟游戏角色和对应的一个第一目标对象之间相关联的程度,比如,为仇恨值。该实施例可以对多个关联度进行排序,从排序后的多个关联度中选择出最高关联度,比如,选择出最高仇恨值,可以通过第二子执行节点,将最高关联度对应的第一目标对象确定为目标对象,将其作为在锁定目标,并将该锁定目标的信息传递至所有的虚拟游戏角色。
可选地,在确定好上述目标对象之后,可以正式通过调用第二行为树来控制多个虚拟游戏角色执行与目标对象对应的第一游戏行为,以实现正式运行团队战术逻辑的目的。
作为一种可选的实施方式,步骤S202,调用与虚拟游戏角色集合相关联的第一行为树,包括:当确定出与多个虚拟游戏角色中任意一个虚拟游戏角色相关联的至少一个第一目标对象时,调用第一行为树。
在该实施例中,当多个虚拟游戏角色中的任意一个虚拟游戏角色通过目标条件获取到与自己相关联的至少一个第一目标对象时,就可以调用第一行为树,也即,团队AI将被启动,其中,上述目标条件可以为通过距离、阵营、血量等而触发的条件,至少一个第一目标对象可以为锁定过滤列表中的仇恨对象。
作为一种可选的实施方式,该方法还包括:通过第一行为树的第三顺序节点,禁止调用第一行为树,其中,第三顺序节点为第一行为树的第一选择节点的一个子节点。
在该实施例中,第一行为树的第一选择节点还包括第三顺序节点,该第三顺序节点的优先级仅次于上述第一顺序节点,从而该实施例可以通过第三顺序节点禁止调用第一行为树,以实现及时关闭第一行为树的目的。
作为一种可选的实施方式,通过第一行为树的第三顺序节点,禁止调用第一行为树,包括:通过第三顺序节点的第二条件节点,确定已获取禁止指令,其中,禁止指令用于禁止调用第一行为树;通过第三顺序节点的第三执行节点,响应禁止指令,禁止调用第一行为树。
在该实施例中,第三顺序节点包括第二条件节点,可以通过第二条件节点确定已获取到禁止指令,比如,当多个虚拟游戏角色的数量减少而导致无法继续执行第一游戏行为(团队任务),或者虚拟游戏角色集合的对应的目标对象死亡或逃离战场,导致虚拟游戏角色集合在执行第一游戏行为时不再仇恨任何目标对象,则会触发禁止指令,通过第三顺序节点的第三执行节点响应该禁止指令,禁止调用第一行为树,从而实现关闭第一行为树的目的。
作为一种可选的实施方式,通过第一行为树确定与目标对象对应的第一游戏行为,包括:通过第一行为树的第二顺序节点,确定第一游戏行为,可以是通过第二顺序节点的第二执行节点,确定第一游戏行为,其中,第二顺序节点为第一行为树的第一选择节点的一个子节点。
在该实施例中,第一行为树的第一选择节点可以包括第二顺序节点,该实施例可以通过第二顺序节点确定第一游戏行为,比如,确定团队战术。可选地,考虑到游戏策略,该实施例的第二顺序节点的优先级可以低于上述第三顺序节点,也即,该实施例优先判断是否确定已获取禁止指令,如果是,则响应禁止指令,禁止调用第一行为树,如果不是,则可以通过第一行为树的第二顺序节点,确定第一游戏行为。可选地,第二顺序节点还包括第二执行节点,该实施例可以是通过该第二执行节点确定第一游戏行为。
作为一种可选的实施方式,通过第一行为树调用与每个虚拟游戏角色相关联的第二行为树,且通过第二行为树控制对应的每个虚拟游戏角色执行第一游戏行为,包括:在通过第二顺序节点的第二执行节点,确定第一游戏行为之后,通过第二顺序节点的筛选节点,调用与每个虚拟游戏角色相关联的第二行为树,且通过第二行为树控制对应的每个虚拟游戏角色执行第一游戏行为。
在该实施例中,为了更好地复用第一行为树的执行节点,该实施例制作了筛选节点,该筛选节点为所有虚拟游戏角色均执行的节点,其子节点可以为独立的虚拟游戏角色的执行节点,这样在通过第二顺序节点的第二执行节点,确定第一游戏行为之后,可以通过第二顺序节点的筛选节点,调用与每个虚拟游戏角色相关联的第二行为树,且通过第二行为树控制对应的每个虚拟游戏角色执行第一游戏行为,从而该实施例利用筛选节点,可以实现所有的虚拟游戏角色同时运行相同的执行节点,以执行第一游戏行为。
由于每个虚拟游戏角色对应的执行节点时都会获得自己的返回值,上述筛选节点在向父节点返回时,可以有三种返回方式,比如,如果某个虚拟游戏角色执行第一游戏行为成功,则返回成功;如果某个虚拟游戏角色执行第一游戏行为失败,则返回失败;所有虚拟游戏角色执行第一游戏行为完成之前,返回持续运行状态。
作为一种可选的实施方式,步骤S206,通过第二行为树控制对应的每个虚拟游戏角色执行第一游戏行为,包括:通过第二行为树的第四顺序节点,控制对应的每个虚拟游戏角色执行第一游戏行为中的子游戏行为,其中,第四顺序节点为第二行为树的第二选择节点的一个子节点。
在该实施例中,每个虚拟游戏角色的第二行为树包括根节点,该根节点上具有第二选择节点,该第二选择节点包括第四顺序节点,第一游戏行为包括子游戏行为,比如,第一游戏行为为攻击游戏行为,则子游戏行为可以为开火行为、砍打行为等,此处不做具体限制,则该实施例可以通过第四顺序节点控制对应的每个而虚拟游戏角色执行第一游戏行为中的子游戏行为,以使得多个虚拟游戏角色共同实现第一游戏行为。
作为一种可选的实施方式,通过第二行为树的第四顺序节点,控制对应的每个虚拟游戏角色执行第一游戏行为中的子游戏行为,包括:通过第四顺序节点的第三条件节点,确定允许调用第一行为树;通过第四顺序节点的第四执行节点,控制对应的每个虚拟游戏角色执行子游戏行为。
在该实施例中,上述第四顺序节点包括第三条件节点和第四执行节点,通过第三条件节点确定允许调用第一行为树,也即,团队AI开启,可以是当虚拟游戏角色集合中任意一个虚拟游戏角色通过距离、阵营、血量等条件获得自己的锁定过滤列表时,团队AI将被启动,进而通过第四执行节点控制对应的每个虚拟游戏角色执行对应的子游戏行为。
作为一种可选的实施方式,该方法还包括:通过第二行为树的第五顺序节点,控制对应的每个虚拟游戏角色执行每个虚拟游戏角色的第二游戏行为,其中,第五顺序节点为第二行为树的第二选择节点的一个子节点。
在该实施例中,每个虚拟游戏角色具有自己独立执行的第二游戏行为,比如,独立实体逻辑(特有的战斗逻辑)。第二行为树的第二选择节点还包括第五顺序节点,通过该第五顺序节点控制对应的每个虚拟游戏角色执行上述第二游戏行为。可选地,该第五顺序节点的优先级高于上述第四顺序节点的优先级。
作为一种可选的实施方式,通过第二行为树的第五顺序节点,控制对应的每个虚拟游戏角色执行每个虚拟游戏角色的独立行为,包括:通过第五顺序节点的第四条件节点,确定禁止调用第一行为树;通过第五顺序节点的第五执行节点,控制对应的每个虚拟游戏角色执行第二游戏行为。
在该实施例中,第五顺序节点进一步包括第四条件节点和第五执行节点,可以通过第四条件节点确定禁止调用第一行为树,比如,当多个虚拟游戏角色的数量减少而导致无法继续执行第一游戏行为,或者虚拟游戏角色集合对应的目标对象死亡或逃离战场,导致虚拟游戏角色集合在执行第一游戏行为时不再仇恨任何目标对象,则禁止调用第一行为树,从而实现关闭第一行为树,这时虚拟游戏角色集合处于静默状态,可以通过第五执行节点控制对应的每个虚拟游戏角色执行自己的第二游戏行为,也即,每个虚拟游戏角色在第一行为树关闭时,将各自执行自己的第二行为树的独立活动分支,该独立活动分支对应的是虚拟游戏角色的独立实体逻辑。
因而,该实施例通过第一行为树管理所有的虚拟游戏角色执行第一游戏行为,同时每个虚拟游戏角色也保持自己的第二行为树开启,执行每个虚拟游戏角色特有的第二游戏行为。也即,该实施例通过采用行为树这一种AI运行方案,就可以在实现虚拟游戏角色集合执行团队AI的功能的同时,兼容每个虚拟游戏角色独立执行AI行为逻辑。
作为一种可选的实施方式,每个虚拟游戏角色通过虚拟游戏角色集合的标识信息获取团队信息,其中,团队信息包括虚拟游戏角色集合的信息和/或多个虚拟游戏角色中除每个虚拟游戏角色之外的虚拟游戏角色的信息。
在该实施例中,虚拟游戏角色集合具有标识信息,比如,团队ID,每个虚拟游戏角色可以通过上述标识信息获取团队信息,可以是获取虚拟游戏角色集合的信息,比如,获取与团队有关的信息,还可以是获取多个虚拟游戏角色中除每个虚拟游戏角色之外的其它虚拟游戏角色的信息,比如,获取其它成员的信息。
该实施例为一种基于两级行为树的虚拟游戏角色协同执行游戏行为的方法,虚拟游戏角色集合具有自己的第一行为树,用于管理所有的虚拟游戏角色,以执行第一游戏行为,每个虚拟游戏角色也保持自己的第二行为树开启,执行每个虚拟游戏角色特有的第二游戏行为,从而将保证虚拟游戏角色集合在实现执行第一游戏行为的同时,可以兼容每个虚拟游戏角色独立执行第二游戏行为。由于行为树的结构清晰、灵活、易于维护,拓展性强,可利用不同的节点实现风格化的AI战术,从而解决了对虚拟游戏角色集合的控制逻辑实现难度较大的技术问题,达到了降低对虚拟游戏角色集合的控制逻辑实现难度的技术效果。
下面结合优选的实施方式对本发明实施例的上述方法进行进一步地举例说明。
在人工智能的发展历程中,游戏AI一直是重要的研究方向,也是应用与落地的关键领域。游戏AI控制着AI角色(怪物与NPC)的行动与表现,作为游戏世界的一部分,优秀的游戏AI大大增强了玩家的游戏体验。
为了使游戏中的AI角色的战斗方式更多样、有更强的表现力,有时也需要一组AI角色共同执行一些复杂的战术,具有打出连续技能或开启合作攻势等团队AI行为,而非各自为战。其中,一组AI角色也即AI团队实体,其也可以称为团队AI,其可以像编辑单个AI角色一样,由非开发人员进行配置,具有可控的变化,同时结构易于维护。其中,单个AI角色也可以称为AI成员实体、独立实体AI。
AI团队实体可以是基于独立的AI成员实体的设计而进行的拓展,可以是基于独立AI状态机的团队事件触发方案,每个独立的游戏实体都具有自己的AI决策系统,可以是有限状态机或分层状态机。在该有限状态机或分层状态机中,附加激活团队策略的行为,比如,获取队友或指定目标的信息,进行条件判断后发起(激活)一次团战或合作进攻。
在上述方案中,状态机将游戏的AI行为分为不同的单独状态,状态与状态之间的过渡通过事件来触发。而状态机结构在状态数量上升后将变得难以维护,所以引申出了分层状态机。在分层状态机中,会先将游戏实体的行为分类,将数个小状态归并到一个状态中,然后再定义高层状态和高层状态中内部小状态的跳转链接。
图3是根据相关技术中的一种分层状态机的示意图。如图3所示,分层状态机包括状态A、状态B和状态C之间的跳转,其在设计上就天然限制了一些状态的跳转,状态A、状态B和状态C内状态的跳转关系并不需要外部状态关心,这样就做到了无关状态间的隔离,各个层次只需要关注自己层内的状态跳转即可。
在上述分层状态机中,状态之间的转换同样依赖事件的触发,因此为了实现各个游戏实体在某些情况下可以形成团队行为,需要先在游戏中预置团队战术相关的逻辑的触发事件。而这些独立运行状态机的实体在收到团队事件后,就会进入团队战术子状态,执行预设好的团队逻辑。
对于有限状态机和分层状态机而言,在设计中需要详细设计每一个状态,列出层次化状态结构,同时还需要针对具体问题严格限制状态跳转,结构的设计和维护需要花费大量精力;而在执行团队状态行为时,实体成员之间难以获得其他队友的数据信息,这使得复杂的团队逻辑实现难度很大。
在另一种相关技术中,通过深度学习技术构建并训练复杂的神经网络,可以实现类似一个控制者操控团队中所有游戏实体的功能,在这种情况下,团队策略将由特定的网络层进行训练,并在网络运行时被执行。上述方案可以是用深度学习神经网络对游戏中的全局信息进行提取与训练,这些全局信息包括了所有友方成员的特征数据。因此,在实现神经网络训练时,每个单独的AI成员实体在获知到友方的状态以及技能情况时,都会做出更优的选择以使得惩罚函数收敛,这样实际上就构成了团队战术的出现。图4是根据本发明实施例的一种OpenAIFive的网络结构的示意图。如图4所示,在OpenAIFive下,待处理数据经过连接(concat)函数、两层神经网络(FC-relu)处理,得到数据Slice 0:512和数据Slice512:2048,其可以对应队内玩家特征信息和当前玩家特征信息,再将其经连接(concat)函数处理,可以得到一个长度为2048的特征向量将表示AI就是从游戏中学习到的全部知识。通过神经网络的不断训练,这些队友的信息特征将作为重要特征被学习,在最终的游戏实战中,也成为AI行为决策的重要参考。
但是,由于神经网络本身的决策实际上是一个黑盒,开发人员无法得知AI角色会在何时执行何种策略,更无法保证游戏性与难度的可控,加之网络的构建与训练需要投入大量的研发资源,每次游戏更新、数据变化都需要重新训练,导致该方案在实际项目中并非最佳选择。
针对以上问题,该实施例实现了一种AI成员实体协同处理团队任务的方法,将保证游戏只采用行为树这一种AI运行方案,就可以在实现团队的功能的同时,兼容独立实体AI的独立实体逻辑。团队AI管理所有成员的信息,可以统筹实现复杂的团队合作任务。另外,行为树的结构清晰易于维护,开发者可以利用不同的行动节点实现风格化的AI战术。
下面对该实施例的上述方法进行进一步介绍。
该实施例的方法可以包括以下步骤:
S1,在游戏的战斗空间中,建立全局的团队管理器来管理战斗中的所有团队,可以创建一个团队实体,将团队中的成员注册到团队实体中。
在游戏的战斗空间中,创建全局的团队管理器对象实体(实际上就是创建一个类对象),该对象内可以包含一个字典,用于存放并管理战斗空间中的所有的AI团队实体,团队管理器将用于在战斗空间创建或销毁时,统一调用所有AI团队实体的初始化与销毁接口。
可选地,该实施例的AI团队实体(团队AI)可以包含一个列表,用于存放所有团队成员的唯一ID,可以用于统一管理团队成员的生存周期。
S2,AI团队实体如同游戏实体一样,具有自己的AI行为树,行为树可以由定制化的团队战术节点、通用节点以及筛选节点及其子节点组成,可以由策划配置每个AI团队实体具体要执行的行为。
可选地,上述战术节点可以是双子船夹击战术节点,也即,在海战中,两艘AI船分别从玩家船左右侧后方驶向左右正侧方,在此过程中,对夹在中间的玩家船开火攻击,攻击结束后,双子船可以快速移动到玩家船前方相向交叉行驶,面向玩家船继续夹击;队列战术节点,可以是3~5艘AI船只头尾衔接组成队列,对玩家船进行环绕攻击,并在减员情况下能保持队列;通用节点可以包括团队成员同时播放喊话UI、音效等表现类节点。
S3,AI团队实体可以获取和管理所有AI成员实体的数据信息,具有自己的仇恨与目标锁定系统,在开启目标锁定流程并锁定后,团队AI实体正式启动。
可选地,上述开启目标锁定流程并锁定每个AI成员实体,指通过自己的仇恨系统获取一份仇恨列表,AI团队实体将挑选出所有AI成员实体的仇恨对象中,仇恨值最高的一个实体作为自己的锁定目标,并将锁定目标信息传递给所有的AI成员实体。
S4,在AI团队实体的行为树开启时,AI成员实体的行为树将运行在AI团队实体的行为树开启分支上,构成两级行为树共同运行的结构;而AI团队实体的行为树关闭时,AI成员实体将各自执行自己行为树的独立活动分支。
可选地,该实施例的AI团队实体可以依据减员、仇恨等条件选择是否关闭行为树,比如,当团队实体的仇恨目标死亡或逃离战场,导致AI团队实体不再仇恨任何目标,则会关闭AI团队实体的行为树。
下面对该实施例的上述方法进行进一步地详细介绍。
S1,在游戏的战斗空间中,可以创建一个管理所有AI团队实体的管理器(团队AI管理器),图5是根据本发明实施例的一种在游戏的战斗空间中创建的AI团队实体的管理器与AI团队实体以及AI成员实体之间的关系的示意图。如图5所示,管理器的开放接口可以供其它模块从第一AI团队实体、第二AI团队实体和第三AI团队实体中获取任意一个AI团队实体,并且用于进行数据的清理销毁工作。AI团队实体用于对AI成员实体进行管理,比如,对第一AI成员实体1、第二AI成员实体和第三AI成员实体进行管理。可选地,该实施例的AI团队实体会为每个AI成员实体添加监听事件,当AI成员实体销毁或死亡后会从团队中移除。
在该实施例中,AI成员实体也会在自身中记录自己所在的AI团队实体的唯一ID,通过这个唯一ID,AI成员实体将可以获取到AI团队实体所拥有的信息以及其它AI成员实体的信息。
S2,AI团队实体运行的行为树与AI成员实体的行为树的结构上是一致的。
行为树的叶节点可以为执行节点,这些执行节点用于执行具体的功能。当运行到条件节点时,条件满足才会继续执行后续的节点。组合节点中常用的有选择节点、顺序节点,其中:选择节点,会从上到下依次执行其子节点,只要子节点运行结果返回失败,就继续执行后续的子节点,直至有一个子节点运行结果返回成功,则停止执行后续的子节点,并且向父节点返回运行结果。顺序节点,会从上到下依次执行其子节点,只要子节点运行结果返回成功,就继续执行后续的子节点,直至有一个子节点运行结果返回失败,则停止执行后续的子节点,向父节点返回失败。筛选节点允许添加子节点,用于定义对子节点做不同的特殊处理。
该实施例为了更好的复用行为树的执行节点,制作了全体成员均执行的筛选节点,此处筛选节点的子节点为AI成员实体的执行节点,利用筛选节点,可以实现所有AI成员实体同时运行相同的执行节点。
由于每个AI成员实体执行节点时都会获得自己的返回值,全体成员均执行的筛选节点在向父节点返回时,定义了三种返回方式:(1)若某AI成员实体执行成功就返回成功;(2)若某AI成员实体执行失败就返回失败;(3)所有AI成员实体在执行完成前,返回持续运行。
S3,每个AI成员实体的行为树会在其被创建时同时启动,并运行在AI团队实体的行为树的独立活动分支上。当AI团队实体中任意一个AI成员实体通过距离、阵营、血量等条件获得自己的锁定过滤列表时,AI团队实体将被启动。
当AI团队实体没有选择到合适的锁定目标时,每个AI成员实体会通过自己的仇恨系统获取一份仇恨列表,AI团队实体将挑选出所有AI成员实体的仇恨对象中,仇恨值最高的一个仇恨对象作为自己的锁定目标,并将锁定目标信息传递给所有的AI成员。
S4,当AI团队实体具有合适的锁定目标时,AI团队实体将正式运行团队战术逻辑,此时AI成员实体的行为树运行在AI团队实体的行为树的分支上,执行各自的战斗逻辑(团队成员逻辑)。
在游戏进行的过程中,如果由于减员情况而导致无法继续执行团队任务,可以先通过执行关闭AI团队实体的行为树的节点,使团队AI处于静默状态,此时各AI成员实体的行为树将再次回到独立活动分支上,继续进行独立实体逻辑。
图6是根据本发明实施例的一种AI团队实体的行为树的示意图。如图6所示,AI团队实体的行为树包括一根节点,其包括选择节点,该选择节点可以包括一个顺序节点,在该顺序节点上,可以通过一条件节点确定当前没有锁定目标,通过一执行节点进行仇恨过滤,也即,AI团队实体挑选出所有AI成员实体的仇恨对象中,仇恨值最高的一个仇恨对象,通过另一执行节点将仇恨值最高的一个仇恨对象确定锁定目标。
AI团队实体的行为树的选择节点还可以包括另一顺序节点,其可以通过一条件节点确定AI团队实体中减员,则执行另一执行节点,关闭AI团队实体的行为树。
AI团队实体的行为树的选择节点还可以包括另一顺序节点,其可以通过一执行节点确定团队战术,利用筛选节点可以实现全体成员执行,可以使得所有成员同时运行相同的执行节点。
图7是根据本发明实施例的一种AI成员实体的行为树的示意图。如图7所示,AI成员实体的行为树包括一根节点,该根节点包括一选择节点,该选择节点具有一顺序节点,在该顺序节点上,可以通过条件节点确定AI成员实体的行为树关闭,则通过一执行节点使得AI成员实体在自己的独立活动分支上执行独立实体逻辑。可选地,AI成员实体的行为树的选择节点还可以包括另一顺序节点,可以通过条件节点确定AI成员实体的行为树开启,则通过另一执行节点使得AI成员实体执行团队成员逻辑。
行为树结构是AI运行方案中最灵活、拓展性强的方案。行为树结构在游戏运行前就已经确定,这种静态性保证了AI运行的稳定,同时行为树仅由组合节点、修饰节点、条件节点与执行节点构成,组织结构直观易于维护。组成行为树的节点具有很强的复用性,通过不同的组织方式,可以获得具有不同功能的AI。
该实施例提出的AI团队实体由独立的AI成员实体组成,它同时具备运行自己的行为树的功能。AI团队实体可以充当队伍的大脑进行搜索锁定和归位等一系列操作,同时也可以根据不同的行为树节点配置构建出风格各异的团队战术。这种方式结构简单,可拓展性、可维护性也较强,团队也可以随时创建、运行或解散,运用灵活。
该实施例为一种基于两级行为树的AI角色协同处理团队任务的方法,AI团队实体具有自己的行为树,用于管理所有的AI成员实体执行团队战术,AI成员实体也保持自己的行为树开启,执行每个AI成员特有的独立实体逻辑,从而将保证游戏在实现AI团队实体的功能的同时,还可以兼容AI成员实体的独立逻辑。由于行为树的结构清晰易于维护,开发者可以利用不同的节点实现风格化的AI战术,解决了游戏中团队逻辑实现难度大的技术问题,达到了降低游戏中团队逻辑实现难度的技术效果。
本发明实施例还提供了一种虚拟游戏角色的控制装置。需要说明的是,该实施例的虚拟游戏角色的控制装置可以用于执行本发明实施例的虚拟游戏角色的控制方法。
图8是根据本发明实施例的一种虚拟游戏角色的控制装置的示意图。如图8所示,该虚拟游戏角色的控制装置80可以包括:第一确定单元81、第二确定单元82和控制单元83。
第一确定单元81,用于调用与虚拟游戏角色集合相关联的第一行为树,且通过第一行为树确定与虚拟游戏角色集合相关联的目标对象,其中,虚拟游戏角色集合包括多个虚拟游戏角色,第一行为树的至少部分节点包括与每个虚拟游戏角色相关联的第二行为树。
第二确定单元82,用于通过第一行为树确定与目标对象对应的第一游戏行为,其中,第一游戏行为为虚拟游戏角色集合待执行的行为。
控制单元83,用于通过第一行为树调用与每个虚拟游戏角色相关联的第二行为树,且通过第二行为树控制对应的每个虚拟游戏角色执行第一游戏行为。
在该实施例的虚拟游戏角色的控制装置中,本申请采用两级行为树,虚拟游戏角色集合具有自己的第一行为树,用于管理所有的虚拟游戏角色,可以根据不同的行为树的节点配置构建出第一游戏行为,每个虚拟游戏角色也保持自己的第二行为树开启,使得每个虚拟游戏角色执行第一游戏行为,由于行为树的结构清晰、灵活、易于维护,拓展性强,可利用不同的节点实现风格化的AI战术,从而解决了对虚拟游戏角色集合的控制逻辑实现难度较大的技术问题,达到了降低对虚拟游戏角色集合的控制逻辑实现难度的技术效果。
本发明的实施例还提供了一种计算机可读存储介质。该计算机可读存储介质中存储有计算机程序,其中,在计算机程序被处理器运行时控制计算机可读存储介质所在设备执行本发明实施例的虚拟游戏角色的控制方法。
可选地,在本实施例中,上述计算机可读存储介质可以包括但不限于:U盘、只读存储器(Read-Only Memory,简称为ROM)、随机存取存储器(Random Access Memory,简称为RAM)、移动硬盘、磁碟或者光盘等各种可以存储计算机程序的介质。
本发明的实施例还提供了一种电子装置,包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。
可选地,上述电子装置还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (18)

1.一种虚拟游戏角色的控制方法,其特征在于,包括:
调用与虚拟游戏角色集合相关联的第一行为树,且通过所述第一行为树确定与所述虚拟游戏角色集合相关联的目标对象,其中,所述虚拟游戏角色集合包括多个虚拟游戏角色,所述第一行为树的至少部分节点包括与每个所述虚拟游戏角色相关联的第二行为树;
通过所述第一行为树确定与所述目标对象对应的第一游戏行为,其中,所述第一游戏行为为所述虚拟游戏角色集合待执行的行为;
通过所述第一行为树调用与每个所述虚拟游戏角色相关联的所述第二行为树,且通过所述第二行为树控制对应的每个所述虚拟游戏角色执行所述第一游戏行为。
2.根据权利要求1所述的方法,其特征在于,通过所述第一行为树确定与所述虚拟游戏角色集合相关联的目标对象,包括:
通过所述第一行为树的第一顺序节点,确定所述目标对象,其中,所述第一顺序节点为所述第一行为树的第一选择节点的一个子节点。
3.根据权利要求2所述的方法,其特征在于,通过所述第一行为树的第一顺序节点,确定所述目标对象,包括:
通过所述第一顺序节点中的第一条件节点,确定当前未确定出所述目标对象;
通过所述第一顺序节点中的第一执行节点,从多个第一目标对象中确定出所述目标对象,其中,所述多个第一目标对象与所述多个虚拟游戏角色中的至少一虚拟游戏角色相关联。
4.根据权利要求3所述的方法,其特征在于,所述第一执行节点包括第一子执行节点和第二子执行节点,通过所述第一顺序节点中的第一执行节点,从多个第一目标对象中确定出所述目标对象,包括:
通过所述第一子执行节点,获取每个所述虚拟游戏角色和与每个所述虚拟游戏角色相关联的每个所述第一目标对象之间的相关度,得到多个关联度,且从多个所述关联度中确定出最高关联度;
通过所述第二子执行节点,将所述最高关联度对应的所述第一目标对象确定为所述目标对象。
5.根据权利要求3所述的方法,其特征在于,调用与虚拟游戏角色集合相关联的第一行为树,包括:
当确定出与多个所述虚拟游戏角色中任意一个所述虚拟游戏角色相关联的至少一个所述第一目标对象时,调用所述第一行为树。
6.根据权利要求1所述的方法,其特征在于,通过所述第一行为树确定与所述目标对象对应的所述第一游戏行为,包括:
通过所述第一行为树的第二顺序节点,确定所述第一游戏行为,其中,所述第二顺序节点为所述第一行为树的第一选择节点的一个子节点。
7.根据权利要求6所述的方法,其特征在于,通过所述第一行为树的第二顺序节点,确定所述第一游戏行为,包括:
通过所述第二顺序节点的第二执行节点,确定所述第一游戏行为。
8.根据权利要求7所述的方法,其特征在于,通过所述第一行为树调用与每个所述虚拟游戏角色相关联的所述第二行为树,且通过所述第二行为树控制对应的每个所述虚拟游戏角色执行所述第一游戏行为,包括:
在通过所述第二顺序节点的第二执行节点,确定所述第一游戏行为之后,通过所述第二顺序节点的筛选节点,调用与每个所述虚拟游戏角色相关联的所述第二行为树,且通过所述第二行为树控制对应的每个所述虚拟游戏角色执行所述第一游戏行为。
9.根据权利要求1所述的方法,其特征在于,所述方法还包括:
通过所述第一行为树的第三顺序节点,禁止调用所述第一行为树,其中,所述第三顺序节点为所述第一行为树的第一选择节点的一个子节点。
10.根据权利要求9所述的方法,其特征在于,通过所述第一行为树的第三顺序节点,禁止调用所述第一行为树,包括:
通过所述第三顺序节点的第二条件节点,确定已获取禁止指令,其中,所述禁止指令用于禁止调用所述第一行为树;
通过所述第三顺序节点的第三执行节点,响应所述禁止指令,禁止调用所述第一行为树。
11.根据权利要求1所述的方法,其特征在于,通过所述第二行为树控制对应的每个所述虚拟游戏角色执行所述第一游戏行为,包括:
通过所述第二行为树的第四顺序节点,控制对应的每个所述虚拟游戏角色执行所述第一游戏行为中的子游戏行为,其中,所述第四顺序节点为所述第二行为树的第二选择节点的一个子节点。
12.根据权利要求11所述的方法,其特征在于,通过所述第二行为树的第四顺序节点,控制对应的每个所述虚拟游戏角色执行所述第一游戏行为中的子游戏行为,包括:
通过所述第四顺序节点的第三条件节点,确定允许调用所述第一行为树;
通过所述第四顺序节点的第四执行节点,控制对应的每个所述虚拟游戏角色执行所述子游戏行为。
13.根据权利要求1所述的方法,其特征在于,所述方法还包括:
通过所述第二行为树的第五顺序节点,控制对应的每个所述虚拟游戏角色执行每个所述虚拟游戏角色的第二游戏行为,其中,所述第五顺序节点为所述第二行为树的第二选择节点的一个子节点。
14.根据权利要求13所述的方法,其特征在于,通过所述第二行为树的第五顺序节点,控制对应的每个所述虚拟游戏角色执行每个所述虚拟游戏角色的独立行为,包括:
通过所述第五顺序节点的第四条件节点,确定禁止调用所述第一行为树;
通过所述第五顺序节点的第五执行节点,控制对应的每个所述虚拟游戏角色执行所述第二游戏行为。
15.根据权利要求1至14中任意一项所述的方法,其特征在于,
每个所述虚拟游戏角色通过所述虚拟游戏角色集合的标识信息获取团队信息,其中,所述团队信息包括所述虚拟游戏角色集合的信息和/或多个所述虚拟游戏角色中除每个所述虚拟游戏角色之外的虚拟游戏角色的信息。
16.一种虚拟游戏角色的控制装置,其特征在于,包括:
第一确定单元,用于调用与虚拟游戏角色集合相关联的第一行为树,且通过所述第一行为树确定与所述虚拟游戏角色集合相关联的目标对象,其中,所述虚拟游戏角色集合包括多个虚拟游戏角色,所述第一行为树的至少部分节点包括与每个所述虚拟游戏角色相关联的第二行为树;
第二确定单元,用于通过所述第一行为树确定与所述目标对象对应的第一游戏行为,其中,所述第一游戏行为为所述虚拟游戏角色集合待执行的行为;
控制单元,用于通过所述第一行为树调用与每个所述虚拟游戏角色相关联的所述第二行为树,且通过所述第二行为树控制对应的每个所述虚拟游戏角色执行所述第一游戏行为。
17.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,其中,在所述计算机程序被处理器运行时控制所述计算机可读存储介质所在设备执行所述权利要求1至15任一项中所述的方法。
18.一种电子装置,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为被所述处理器运行所述计算机程序以执行所述权利要求1至15任一项中所述的方法。
CN202111130405.3A 2021-09-26 2021-09-26 虚拟游戏角色的控制方法、装置、存储介质和电子装置 Pending CN113926196A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111130405.3A CN113926196A (zh) 2021-09-26 2021-09-26 虚拟游戏角色的控制方法、装置、存储介质和电子装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111130405.3A CN113926196A (zh) 2021-09-26 2021-09-26 虚拟游戏角色的控制方法、装置、存储介质和电子装置

Publications (1)

Publication Number Publication Date
CN113926196A true CN113926196A (zh) 2022-01-14

Family

ID=79276983

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111130405.3A Pending CN113926196A (zh) 2021-09-26 2021-09-26 虚拟游戏角色的控制方法、装置、存储介质和电子装置

Country Status (1)

Country Link
CN (1) CN113926196A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115814404A (zh) * 2022-09-14 2023-03-21 广州三七极耀网络科技有限公司 一种虚拟对象的移动控制方法、装置、设备及介质
WO2023142587A1 (zh) * 2022-01-27 2023-08-03 腾讯科技(深圳)有限公司 虚拟对象的控制方法、装置、设备、介质及程序产品

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023142587A1 (zh) * 2022-01-27 2023-08-03 腾讯科技(深圳)有限公司 虚拟对象的控制方法、装置、设备、介质及程序产品
CN115814404A (zh) * 2022-09-14 2023-03-21 广州三七极耀网络科技有限公司 一种虚拟对象的移动控制方法、装置、设备及介质
CN115814404B (zh) * 2022-09-14 2023-08-11 广州三七极耀网络科技有限公司 一种虚拟对象的移动控制方法、装置、设备及介质

Similar Documents

Publication Publication Date Title
Johnson et al. Computer games with intelligence
Weber et al. Reactive planning idioms for multi-scale game AI
US7636701B2 (en) Query controlled behavior models as components of intelligent agents
Dawe et al. Behavior selection algorithms: an overview
CN113926196A (zh) 虚拟游戏角色的控制方法、装置、存储介质和电子装置
Safadi et al. Artificial intelligence in video games: Towards a unified framework
CN104102522B (zh) 交互式游戏中智能非玩家角色的人工情感驱动方法
Young et al. Evolutionary learning of goal priorities in a real-time strategy game
CN108228251B (zh) 游戏应用中控制目标对象的方法和装置
Nguyen et al. Monte carlo tree search for collaboration control of ghosts in ms. pac-man
Zhao et al. On multi-agent learning in team sports games
Ma et al. Large language models play starcraft ii: Benchmarks and a chain of summarization approach
Gemine et al. Imitative learning for real-time strategy games
Shaker et al. Planning with applications to quests and story
Palma et al. Combining expert knowledge and learning from demonstration in real-time strategy games
CN117180750A (zh) 基于行为树的非用户角色控制方法、装置、设备及介质
Marius et al. Combining scripted behavior with game tree search for stronger, more robust game AI
Patel et al. Improving behavior of computer game bots using fictitious play
Rudolph et al. Design and evaluation of an extended learning classifier-based starcraft micro ai
Lim An AI player for DEFCON: An evolutionary approach using behavior trees
Patel et al. Designing BOTs with BDI agents
CN115957510B (zh) 一种角色行为控制的方法及系统
Wooldridge 18 Infinite Axis Utility System and Hierarchical
Gunnerud A CBR/RL system for learning micromanagement in real-time strategy games
Lin et al. AI Reinforcement Study of Gank Behavior in MOBA Games

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