CN110134375B - 游戏角色行为的控制方法、装置及可读存储介质 - Google Patents
游戏角色行为的控制方法、装置及可读存储介质 Download PDFInfo
- Publication number
- CN110134375B CN110134375B CN201910398381.6A CN201910398381A CN110134375B CN 110134375 B CN110134375 B CN 110134375B CN 201910398381 A CN201910398381 A CN 201910398381A CN 110134375 B CN110134375 B CN 110134375B
- Authority
- CN
- China
- Prior art keywords
- algorithm
- development
- logic
- behavior
- game
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 42
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 181
- 238000011161 development Methods 0.000 claims abstract description 146
- 230000006399 behavior Effects 0.000 claims abstract description 133
- 230000006870 function Effects 0.000 claims abstract description 124
- 230000002787 reinforcement Effects 0.000 claims abstract description 72
- 238000004590 computer program Methods 0.000 claims description 8
- 239000008280 blood Substances 0.000 description 14
- 210000004369 blood Anatomy 0.000 description 14
- 238000010586 diagram Methods 0.000 description 8
- 238000004364 calculation method Methods 0.000 description 6
- 210000005155 neural progenitor cell Anatomy 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 230000009471 action Effects 0.000 description 4
- 238000013473 artificial intelligence Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000010391 action planning Effects 0.000 description 1
- 230000003542 behavioural effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000012549 training Methods 0.000 description 1
Classifications
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/55—Controlling game characters or game objects based on the game progress
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/60—Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/60—Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
- A63F13/67—Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor adaptively or by learning from player actions, e.g. skill level adjustment or by storing successful combat sequences for re-use
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/20—Software design
Abstract
本公开提供的一种游戏角色行为的控制方法、装置及可读存储介质,通过获取预设的开发逻辑;调用开发组件,以使所述开发组件根据所述开发逻辑生成包括有算法调用函数的逻辑节点树,其中,所述算法调用函数用于调用预设的强化学习算法模型;基于所述逻辑节点树和游戏角色的当前状态信息,确定游戏角色的行为,从而使得开发人员可直接基于开发逻辑调用开发组件实现对于行为的开发,降低对于开发人员的专业能力要求,也有效提高了开发效率。
Description
技术领域
本公开涉及计算机技术领域,尤其涉及一种游戏角色行为的控制方法、装置及可读存储介质。
背景技术
非玩家角色(Non-Player Characte,简称NPC)的行为是游戏的人工智能(Artificial Intelligence,简称AI)开发的一个很重要的组成部分,特别是在一些对抗类型的游戏中,如格斗类游戏、多人在线战术竞技类游戏等,其行为(战斗、集合、逃跑等)的优劣直接影响到了用户对于游戏的体验。
在现有技术中,对游戏NPC的AI进行开发控制是由开发人员人工实现的,即开发人员通过人工输入开发代码,以完成对于NPC的AI运行逻辑的编译,以使NPC能够按照编译获得的开发代码运行相应的逻辑相应的行为。
一方面,由于人工输入开发代码的开发方式对于开发人员的专业性要求较高,开发的人工成本较高;另一方面,各开发人员的编码水平差异较大,游戏NPC的AI整体开发效率也无法得到保证。
发明内容
为了解决上述提及的问题,本公开提供了一种游戏角色行为的控制方法、装置及可读存储介质。
一方面,本公开提供了一种游戏角色行为的控制方法,包括:
获取预设的开发逻辑;
调用开发组件,以使所述开发组件根据所述开发逻辑生成包括有算法调用函数的逻辑节点树,其中,所述算法调用函数用于调用预设的强化学习算法模型;
基于所述逻辑节点树和游戏角色的当前状态信息,确定游戏角色的行为。
在其他可选的实施例中,所述逻辑节点树包括至少一个行为节点、至少一个算法调用函数节点以及至少一个判定节点;
所述调用开发组件,以使所述开发组件根据所述开发逻辑生成包括有算法调用函数的逻辑节点树,包括:
利用所述开发组件生成所述逻辑节点树中的行为节点、算法调用函数节点以及判定节点;
根据所述开发逻辑,确定各节点之间的执行关系。
在其他可选的实施例中,不同的所述判定节点用于判定游戏角色的不同的游戏状态;
不同的所述算法调用函数节点包括有用于调用不同强化学习算法模型的算法调用函数;
不同的所述行为节点用于表示游戏角色的不同行为。
在其他可选的实施例中,利用所述开发组件生成所述逻辑节点树中的行为节点、算法调用函数节点以及判定节点,包括:
获取各强化学习算法模型所需的游戏状态信息;
根据各强化学习算法模型所需的游戏状态信息,生成强化学习算法模型的算法调用函数,不同的算法调用函数作为不同的算法调用函数节点以构成所述逻辑节点树。
在其他可选的实施例中,所述根据各强化学习算法模型所述的游戏状态信息,生成强化学习算法模型的算法调用函数,包括:
根据各强化学习算法模型相应的游戏状态信息确定各强化学习算法模型所需的函数接口;
利用各游戏状态信息相应的函数接口,生成各算法调用函数。
在其他可选的实施例中,所述基于所述逻辑节点树和游戏角色的当前状态信息,确定游戏角色的行为,包括:
根据逻辑节点树中采集所述逻辑节点树中的目标算法调用函数所需的游戏角色的当前状态信息,以使所述逻辑节点树按照预设的开发逻辑确定并执行目标算法调用函数;
基于目标算法调用函数调用强化学习算法模型,并对所述当前状态信息进行计算,获得算法返回值;
根据所述逻辑节点树和算法返回值确定游戏角色的行为。
另一方面,本公开提供了一种游戏角色行为的控制装置,包括:
收发模块,用于获取预设的开发逻辑;
开发模块,用于调用开发组件,以使所述开发组件根据所述开发逻辑生成包括有算法调用函数的逻辑节点树,其中,所述算法调用函数用于调用预设的强化学习算法模型;
运行模块,用于基于所述逻辑节点树和游戏角色的当前状态信息,确定游戏角色的行为。
在其他可选的实施例中,所述开发模块,具体用于:利用所述开发组件生成所述逻辑节点树中的行为节点、算法调用函数节点以及判定节点;根据所述开发逻辑,确定各节点之间的执行关系。
再一方面,本公开提供了一种游戏角色行为的控制装置,包括:存储器、处理器以及计算机程序;
其中,所述计算机程序存储在所述存储器中,并被配置为由所述处理器执行以实现如前任一项所述的方法。
最后一方面,本公开提供了一种可读存储介质,其上存储有计算机程序,所述计算机程序被处理执行以实现如前任一项所述的方法。
本公开提供的一种游戏角色行为的控制方法、装置及可读存储介质,通过获取预设的开发逻辑;调用开发组件,以使所述开发组件根据所述开发逻辑生成包括有算法调用函数的逻辑节点树,其中,所述算法调用函数用于调用预设的强化学习算法模型;基于所述逻辑节点树和游戏角色的当前状态信息,确定游戏角色的行为,从而使得开发人员可直接基于开发逻辑调用开发组件实现对于行为的开发,降低对于开发人员的专业能力要求,也有效提高了开发效率。
附图说明
通过上述附图,已示出本公开明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本公开构思的范围,而是通过参考特定实施例为本领域技术人员说明本公开的概念。
图1为本公开基于的网络架构示意图;
图2为本公开一可选的实施例一提供的一种游戏角色行为的控制方法的流程示意图;
图3为本公开提供的一种逻辑节点树的结构示意图;
图4为本公开实施例二提供的一种游戏角色行为的控制方法的流程示意图;
图5为本公开实施例三提供的一种游戏角色行为的控制装置的结构示意图;
图6为本公开实施例四提供的一种游戏角色行为的控制装置的硬件示意图。
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
具体实施方式
下面将参照附图更详细地描述本公开的实施例。虽然附图中显示了本公开的某些实施例,然而应当理解的是,本公开可以通过各种形式来实现,而且不应该被解释为限于这里阐述的实施例,相反提供这些实施例是为了更加透彻和完整地理解本公开。应当理解的是,本公开的附图及实施例仅用于示例性作用,并非用于限制本公开的保护范围。
本公开实施例的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开实施例例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
非玩家角色(Non-Player Characte,简称NPC)的行为是游戏的人工智能(Artificial Intelligence,简称AI)开发的一个很重要的组成部分。
传统的NPC的AI开发是基于例如有限状态机、分层有限状态机、面向目标的动作规划、分层任务网络、行为树等技术实现的。随着新型技术的发展,强化学习技术被应用到游戏NPC的AI的开发中来,一般来说,通过在游戏环境中不断的模拟战斗获取经验样本,从而使得AI能够学会快速在战斗中获胜,最终获得较强的行为。
但是,无论基于何种算法,现有的AI开发均是通过人工编写的,其开发成本较高,开发效率较低。
基于上述问题,本公开提供了一种游戏角色行为的控制方法、装置及可读存储介质。
在本公开一可选的实施方式中,如图1所示,该实施方式所基于的网络架构中至少包括安装于终端的游戏角色行为的控制装置1以及位于云端的算法服务器2。
其中,游戏角色行为的控制装置1具体可采用客户端的方式安装在终端上,开发人员可通过游戏角色行为的控制装置1提供的操作界面在游戏角色行为的控制装置1中触发各类操作。
此外,游戏角色行为的控制装置1可与算法服务器2通过无线通信或有线通信的方式取得连接并进行数据交互。当算法服务器2接收到游戏角色行为的控制装置1发送的计算请求时,将按照预设算法模型执行相应的计算,并将计算结果反馈至游戏角色行为的控制装置1。具体来说,在实施方式中,算法服务器2具体可为基于多个强化学习算法模型的算法服务器,计算结果则为用于指示行为的返回值等。
图2为本公开一可选的实施例一提供的一种游戏角色行为的控制方法的流程示意图,如图2所示,该游戏角色行为的控制方法,包括:
步骤101、获取预设的开发逻辑;
步骤102、调用开发组件,以使所述开发组件根据所述开发逻辑生成包括有算法调用函数的逻辑节点树,其中,所述算法调用函数用于调用预设的强化学习算法模型;
步骤103、基于所述逻辑节点树和游戏角色的当前状态信息,确定游戏角色的行为。
需要说明的是,逻辑节点树包含流程图、行为树等具体的表现形式。
通过本实施例中的方法,将强化学习与传统的基于规则(例如,流程图)的AI结合起来。强化学习函数的泛化能力可以解决游戏中的状态数量很多不便于一一编写具体的规则,训练好的强化学习模型针对任意的游戏状态,都能给出合适的行为决策;基于规则(例如,流程图)的AI(例如,战斗NPC在战斗状态下,当敌方血量低于指定值时需要执行降低自己的能力的行为,而在自己血量低于指定值时需要执行要逃跑的行为),拥有规则明确、对确定性任务目标的支持好的优点。
使用流程图将强化学习与基于规则(流程图)的AI结合起来,用于游戏中的AI开发控制。在流程图中每个节点可以是一个条件判断节点,或是一个接口调用节点。当一个节点是条件判断节点时,根据判断结构为真或假而运行对应的后续节点。而接口调用节点,则可以调用游戏接口或是强化学习函数接口,以获取游戏状态,控制游戏对象进行不同的行为。
流程图所表示的游戏AI将在游戏中运行。流程图中的每一个节点可以借助预设工具自动翻译成可运行的代码。当流程图开始运行时,从起始节点依次执行每个节点,并根据节点的运行结果,执行相应的后续节点,不断运行这个过程直到结束。
同时为了提高强化学习模型的训练效果,会根据不同的游戏状态,训练不同模型的强化学习模型。例如在篮球游戏,当球在自己手中时,采用进攻的强化学习模型来确定当前的行为,当球处于对方球员手中时,则采用防守的强化学习模型。而在何种情况下使用哪个强化学习模型,也是一种基于规则的描述。需要说明的是,本实施方式提供的游戏角色行为的控制方法的执行主体是图1所示的游戏角色行为的控制装置。
本公开提供的游戏角色行为的控制方法可运用在游戏场景中,如前述的对战类游戏中,游戏角色行为的控制装置能够为开发人员提供更快生成前述场景行为的技术方案。
具体来说,本公开所述的游戏角色均为前述的NPC,即非玩家游戏角色。游戏角色行为的控制装置可获取预设的开发逻辑。
需要说明的是,基于开发需求的不同,开发人员可预先构建与开发需求匹配的开发逻辑。该开发逻辑具体可用于表示NPC在不同游戏状态下的行为。例如,战斗NPC在战斗状态下,当敌方血量低于指定值时需要执行降低自己的能力的行为,而在自己血量低于指定值时需要执行要逃跑的行为。
随后,游戏角色行为的控制装置可调用开发组件并根据前述的开发逻辑生成包括有算法调用函数的逻辑节点树,其中,所述算法调用函数用于调用预设的强化学习算法模型。
具体来说,为了便于开发人员的开发,在本公开中,游戏角色行为的控制装置为开发人员提供了开发组件,开发人员可利用该开发组件将前述的开发逻辑转变为逻辑节点树,以便确定行为。
进一步来说,在逻辑节点树包括至少一个行为节点、至少一个算法调用函数节点以及至少一个判定节点。
相应的,在游戏角色行为的控制装置调用开发组件,以使所述开发组件根据所述开发逻辑生成包括有算法调用函数的逻辑节点树,具体可采用如下步骤:
利用所述开发组件生成所述逻辑节点树中的行为节点、算法调用函数节点以及判定节点;根据所述开发逻辑,确定各节点之间的执行关系。
图3为本公开提供的一种逻辑节点树的结构示意图,如图3所示,逻辑节点树是由若干节点构成的逻辑树结构,其每一节点可用于表示一种判定逻辑或一种函数调用逻辑。同时,在该逻辑树结构中,节点与节点之间还存在关联关系,该关联关系用于表示各节点相应逻辑之间的相对执行顺序或执行关系,而该执行顺序及执行关系则是基于开发逻辑确定的。其中,不同的所述判定节点用于判定游戏角色的不同的游戏状态,例如,游戏角色是否处于战斗状态的判定,又例如,游戏角色的血量是否低于预设阈值的判定。进一步的,该判定节点具体可为判定函数组成,其可基于采集获得的游戏状态信息执行相应的判定,以获得判定结果,基于该判定结果确定需要执行的下一节点。其中该下一节点可能依旧为判定节点,也可为其他类型节点。
其中,不同的所述算法调用函数节点包括有用于调用不同强化学习算法模型的算法调用函数。具体来说,在本公开中,为了有效提高NPC的AI程度,获得与当前NPC游戏状态更为匹配的行为,逻辑节点树中可包括有多个算法调用函数。相应的,在如图3所示的逻辑节点树中包括有2种算法调用函数。其中,每一个算法调用函数用于调用一种预设的强化学习算法模型,该强化学习算法模型是预先完成训练并预存在算法服务器中的。
需要说明的是,不同的强化学习算法模型可针对游戏角色在不同状态下的游戏信息进行处理,相应的,对于选取那种强化学习算法模型作为本次所使用的模型则需要基于前述的判定节点的判定结果确定。例如,针对于用于处理低血量状态的强化学习算法模型来说,其所处理计算信息为敌人的距离和自身血量值;对于降低自身能力的强化学习算法模型来说,其所处理的计算信息可为自身血量值和敌人血量值等。
特别的,在对于游戏AI进行开发的过程中,开发人员反复修改强化学习算法模型所基于的游戏状态信息是常见的事情。一般来说,每一次的修改均需要开发人员手动编译或手动修改相应的算法调用函数,以便强化学习算法模型接收到正确的数据信息。为了使得开发的快速进行,在本实施例方式中,游戏角色行为的控制装置可自动生成该算法调用函数,具体来说:
游戏角色行为的控制装置获取各强化学习算法模型所需的游戏状态信息,根据各强化学习算法模型所需的游戏状态信息,生成强化学习算法模型的算法调用函数,不同的算法调用函数作为不同的算法调用函数节点以构成所述逻辑节点树。
进一步的,游戏角色行为的控制装置可根据各强化学习算法模型相应的游戏状态信息确定各强化学习算法模型所需的函数接口;利用各游戏状态信息相应的函数接口,生成各算法调用函数。其中,针对不同的游戏状态信息,编码人员可预先留设有多种函数接口,以便游戏角色行为的控制装置调用。例如,用于表示自身血量的函数接口、用于表示与敌人之间距离的函数接口等。通过利用这些函数接口,游戏角色行为的控制装置可快速生成各算法调用函数,进一步提高开发效率。
不同的所述行为节点用于表示游戏角色的不同行为。具体来说,依照游戏类型或NPC功能的不同,行为节点可为多种类型的行为函数组成。例如,执行技能A的函数、执行技能B的函数,或者,执行动作A的函数、执行动作B的函数等等。
最后,当完成对于逻辑节点树的构建之后,游戏角色行为的控制装置可在执行逻辑节点树时,同步采集逻辑节点树所需要的游戏角色的当前状态信息,以使逻辑节点树基于这些当前状态信息获得包括游戏角色的行为的行为。
本公开提供的一种游戏角色行为的控制方法,通过获取预设的开发逻辑;调用开发组件,以使所述开发组件根据所述开发逻辑生成包括有算法调用函数的逻辑节点树,其中,所述算法调用函数用于调用预设的强化学习算法模型;基于所述逻辑节点树和游戏角色的当前状态信息,确定游戏角色的行为,从而使得开发人员可直接基于开发逻辑调用开发组件实现对于行为的开发,降低对于开发人员的专业能力要求,也有效提高了开发效率。
图4为本公开实施例二提供的一种游戏角色行为的控制方法的流程示意图,如图4所示,该游戏角色行为的控制方法,包括:
步骤201、获取预设的开发逻辑;
步骤202、调用开发组件,以使所述开发组件根据所述开发逻辑生成包括有算法调用函数的逻辑节点树,其中,所述算法调用函数用于调用预设的强化学习算法模型;
步骤203、根据逻辑节点树中采集所述逻辑节点树中的目标算法调用函数所需的游戏角色的当前状态信息,以使所述逻辑节点树按照预设的开发逻辑确定并执行目标算法调用函数;
步骤204、基于目标算法调用函数调用强化学习算法模型,并对所述当前状态信息进行计算,获得算法返回值;
步骤205、根据所述逻辑节点树和算法返回值确定游戏角色的行为。
需要说明的是,本实施方式提供的游戏角色行为的控制方法的执行主体是图1所示的游戏角色行为的控制装置。
与前述实施方式类似的是,本公开所述的游戏角色均为前述的NPC,即非玩家游戏角色,游戏角色行为的控制装置可获取预设的开发逻辑。基于开发需求的不同,开发人员可预先构建与开发需求匹配的开发逻辑。该开发逻辑具体可用于表示NPC在不同游戏状态下的行为。例如,战斗NPC在战斗状态下,当敌方血量低于指定值时需要执行降低自己的能力的行为,而在自己血量低于指定值时需要执行要逃跑的行为。
随后,游戏角色行为的控制装置可调用开发组件并根据前述的开发逻辑生成包括有算法调用函数的逻辑节点树,其中,所述算法调用函数用于调用预设的强化学习算法模型。随后,游戏角色行为的控制装置可调用开发组件并根据前述的开发逻辑生成包括有算法调用函数的逻辑节点树,其中,所述算法调用函数用于调用预设的强化学习算法模型。
进一来说,在游戏角色行为的控制装置调用开发组件,以使所述开发组件根据所述开发逻辑生成包括有算法调用函数的逻辑节点树,其具体的实现方式可参见上述实施例,本实施例在此不进行赘述。
与前述实施方式不同的是,在本实施例中,游戏角色行为的控制装置将根据逻辑节点树中的目标算法调用函数所需要的状态信息,对游戏角色的当前状态信息进行采集。其中,游戏角色的当前状态信息可为从游戏环境中提取的,其具体可包括自身血量值、自身内力值、敌人血量值、敌人内力值、与敌人的距离等等。
也就是说,逻辑节点树将基于采集获得的游戏角色的当前状态信息按照预设的开发逻辑执行目标算法调用函数。
游戏角色行为的控制装置中的逻辑节点树将从起点节点开始,依次执行相应的节点逻辑。具体的,当前状态信息将首先经过判定节点以便判定节点将根据自身预设的判定逻辑对其进行判定,并得到用于表示游戏角色游戏状态的判定结果,随后,基于逻辑节点树的结构,任务流程将扭转至需要执行的下一节点。其中该下一节点可能依旧为判定节点,也可为其他类型节点。
当下一节点为判定节点时,其执行流程与前述内容类似,在此不做赘述。
当下一节点为算法调用函数节点时,该节点将读取并执行相应的算法调用函数,其可将状态信息发送至云端的算法服务器,以使算法服务器可根据相应的强化学习算法模型进行相应计算。需要说明的是,如前所述的,不同的强化学习算法模型的侧重点不同,在运行不同的算法调用函数时,各算法调用函数将在接收的当前状态信息中抽取自身对应的强化学习算法模型所需要的状态信息,并将其发送至云端的算法服务器。
随后,游戏角色行为的控制装置将接收到云端的算法服务器返回的算法返回值。基于逻辑节点树结构,游戏角色行为的控制装置将根据算法返回至确定相应的行为节点,以生成包括有该行为节点对应的行为函数在内的游戏角色的行为。
本公开提供的一种游戏角色行为的控制方法,通过获取预设的开发逻辑;调用开发组件,以使所述开发组件根据所述开发逻辑生成包括有算法调用函数的逻辑节点树,其中,所述算法调用函数用于调用预设的强化学习算法模型;基于所述逻辑节点树和游戏角色的当前状态信息,确定游戏角色的行为,从而使得开发人员可直接基于开发逻辑调用开发组件实现对于行为的开发,降低对于开发人员的专业能力要求,也有效提高了开发效率。
图5为本公开实施例三提供的一种游戏角色行为的控制装置的结构示意图,如图5所示,该游戏角色行为的控制装置包括:
收发模块10,用于获取预设的开发逻辑;
开发模块20,用于调用开发组件,以使所述开发组件根据所述开发逻辑生成包括有算法调用函数的逻辑节点树,其中,所述算法调用函数用于调用预设的强化学习算法模型;
运行模块30,用于基于所述逻辑节点树和游戏角色的当前状态信息,确定游戏角色的行为。
可选的,所述逻辑节点树包括至少一个行为节点、至少一个算法调用函数节点以及至少一个判定节点;
开发模块20,具体用于:利用所述开发组件生成所述逻辑节点树中的行为节点、算法调用函数节点以及判定节点;
根据所述开发逻辑,确定各节点之间的执行关系。
可选的,所述不同的所述判定节点用于判定游戏角色的不同的游戏状态;不同的所述算法调用函数节点包括有用于调用不同强化学习算法模型的算法调用函数;不同的所述行为节点用于表示游戏角色的不同行为。
可选的,开发模块20,具体用于:获取各强化学习算法模型所需的游戏状态信息;根据各强化学习算法模型所需的游戏状态信息,生成强化学习算法模型的算法调用函数,不同的算法调用函数作为不同的算法调用函数节点以构成所述逻辑节点树。
可选的,开发模块20,具体用于:根据各强化学习算法模型相应的游戏状态信息确定各强化学习算法模型所需的函数接口;利用各游戏状态信息相应的函数接口,生成各算法调用函数。
可选的,运行模块30,具体用于根据逻辑节点树中采集所述逻辑节点树中的目标算法调用函数所需的游戏角色的当前状态信息,以使所述逻辑节点树按照预设的开发逻辑确定并执行目标算法调用函数;基于目标算法调用函数调用强化学习算法模型,并对所述当前状态信息进行计算,获得算法返回值;根据所述逻辑节点树和算法返回值确定游戏角色的行为。
本公开提供的一种游戏角色行为的控制装置,通过获取预设的开发逻辑;调用开发组件,以使所述开发组件根据所述开发逻辑生成包括有算法调用函数的逻辑节点树,其中,所述算法调用函数用于调用预设的强化学习算法模型;基于所述逻辑节点树和游戏角色的当前状态信息,确定游戏角色的行为,从而使得开发人员可直接基于开发逻辑调用开发组件实现对于行为的开发,降低对于开发人员的专业能力要求,也有效提高了开发效率。
图6为本公开实施例四提供的一种游戏角色行为的控制装置的硬件示意图,如图6所示,该游戏角色行为的控制装置包括:处理器42及存储在存储器41上并可在处理器42上运行的计算机程序,处理器42运行计算机程序时执行上述实施例的方法。
本公开还提供一种可读存储介质,包括程序,当其在终端上运行时,使得终端执行上述任一实施例的方法。
本文中以上描述的功能可以至少部分地由一个或多个硬件逻辑部件来执行。例如,非限制性地,可以使用的示范类型的硬件逻辑部件包括:场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、负载可编程逻辑设备(CPLD)等等。
用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
此外,虽然采用特定次序描绘了各操作,但是这应当理解为要求这样操作以所示出的特定次序或以顺序次序执行,或者要求所有图示的操作应被执行以取得期望的结果。在一定环境下,多任务和并行处理可能是有利的。同样地,虽然在上面论述中包含了若干具体实现细节,但是这些不应当被解释为对本公开的范围的限制。在单独的实施例的上下文中描述的某些特征还可以组合地实现在单个实现中。相反地,在单个实现的上下文中描述的各种特征也可以单独地或以任何合适的子组合的方式实现在多个实现中。
尽管已经采用特定于结构特征和/或方法逻辑动作的语言描述了本主题,但是应当理解所附权利要求书中所限定的主题未必局限于上面描述的特定特征或动作。相反,上面所描述的特定特征和动作仅仅是实现权利要求书的示例形式。
Claims (7)
1.一种游戏角色行为的控制方法,其特征在于,包括:
获取预设的开发逻辑;
调用开发组件,以使所述开发组件根据所述开发逻辑生成包括有算法调用函数的逻辑节点树,其中,所述算法调用函数用于调用预设的强化学习算法模型,所述逻辑节点树包括至少一个行为节点、至少一个算法调用函数节点以及至少一个判定节点;
基于所述逻辑节点树和游戏角色的当前状态信息,确定游戏角色的行为;
所述调用开发组件,以使所述开发组件根据所述开发逻辑生成包括有算法调用函数的逻辑节点树,包括:
利用所述开发组件生成所述逻辑节点树中的行为节点、算法调用函数节点以及判定节点;
根据所述开发逻辑,确定各节点之间的执行关系;
不同的所述判定节点用于判定游戏角色的不同的游戏状态;
不同的所述算法调用函数节点包括有用于调用不同强化学习算法模型的算法调用函数;
不同的所述行为节点用于表示游戏角色的不同行为。
2.根据权利要求1所述的游戏角色行为的控制方法,其特征在于,利用所述开发组件生成所述逻辑节点树中的行为节点、算法调用函数节点以及判定节点,包括:
获取各强化学习算法模型所需的游戏状态信息;
根据各强化学习算法模型所需的游戏状态信息,生成强化学习算法模型的算法调用函数,不同的算法调用函数作为不同的算法调用函数节点以构成所述逻辑节点树。
3.根据权利要求2所述的游戏角色行为的控制方法,其特征在于,所述根据各强化学习算法模型所述的游戏状态信息,生成强化学习算法模型的算法调用函数,包括:
根据各强化学习算法模型相应的游戏状态信息确定各强化学习算法模型所需的函数接口;
利用各游戏状态信息相应的函数接口,生成各算法调用函数。
4.根据权利要求1-3任一项所述的游戏角色行为的控制方法,其特征在于,所述基于所述逻辑节点树和游戏角色的当前状态信息,确定游戏角色的行为,包括:
根据逻辑节点树中采集所述逻辑节点树中的目标算法调用函数所需的游戏角色的当前状态信息,以使所述逻辑节点树按照预设的开发逻辑确定并执行目标算法调用函数;
基于目标算法调用函数调用强化学习算法模型,并对所述当前状态信息进行计算,获得算法返回值;
根据所述逻辑节点树和算法返回值确定游戏角色的行为。
5.一种游戏角色行为的控制装置,其特征在于,包括:
收发模块,用于获取预设的开发逻辑;
开发模块,用于调用开发组件,以使所述开发组件根据所述开发逻辑生成包括有算法调用函数的逻辑节点树,其中,所述算法调用函数用于调用预设的强化学习算法模型,所述逻辑节点树包括至少一个行为节点、至少一个算法调用函数节点以及至少一个判定节点;
运行模块,用于基于所述逻辑节点树和游戏角色的当前状态信息,确定游戏角色的行为;
所述开发模块,具体用于:利用所述开发组件生成所述逻辑节点树中的行为节点、算法调用函数节点以及判定节点;根据所述开发逻辑,确定各节点之间的执行关系;不同的所述判定节点用于判定游戏角色的不同的游戏状态;不同的所述算法调用函数节点包括有用于调用不同强化学习算法模型的算法调用函数;不同的所述行为节点用于表示游戏角色的不同行为。
6.一种游戏角色行为的控制装置,其特征在于,包括:存储器、处理器以及计算机程序;
其中,所述计算机程序存储在所述存储器中,并被配置为由所述处理器执行以实现如权利要求1-4任一项所述的方法。
7.一种可读存储介质,其特征在于,其上存储有计算机程序,所述计算机程序被处理执行以实现如权利要求1-4任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910398381.6A CN110134375B (zh) | 2019-05-14 | 2019-05-14 | 游戏角色行为的控制方法、装置及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910398381.6A CN110134375B (zh) | 2019-05-14 | 2019-05-14 | 游戏角色行为的控制方法、装置及可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110134375A CN110134375A (zh) | 2019-08-16 |
CN110134375B true CN110134375B (zh) | 2023-11-21 |
Family
ID=67573770
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910398381.6A Active CN110134375B (zh) | 2019-05-14 | 2019-05-14 | 游戏角色行为的控制方法、装置及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110134375B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111111201B (zh) * | 2019-12-25 | 2023-09-08 | 上海米哈游天命科技有限公司 | 一种基于游戏的技能创建方法、装置、服务器及介质 |
CN111249733B (zh) * | 2020-01-09 | 2023-10-13 | 完美世界(北京)软件科技发展有限公司 | 一种创建虚拟对象的方法和装置 |
CN111701246B (zh) * | 2020-06-17 | 2024-02-23 | 网易(杭州)网络有限公司 | 一种游戏ai的决策配置方法和装置 |
CN112907741B (zh) * | 2021-02-05 | 2024-02-02 | 深圳市润谦科技有限公司 | 地形场景生成方法、装置、电子设备及存储介质 |
CN112870721B (zh) * | 2021-03-16 | 2023-07-14 | 腾讯科技(深圳)有限公司 | 一种游戏互动方法、装置、设备及存储介质 |
CN113144609A (zh) * | 2021-04-25 | 2021-07-23 | 上海雷鸣文化传播有限公司 | 一种基于遗传算法的游戏角色行为算法 |
GB2609207A (en) * | 2021-07-22 | 2023-02-01 | Sony Interactive Entertainment Inc | Virtual environment development method and system |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106155658A (zh) * | 2015-04-08 | 2016-11-23 | 广州四三九九信息科技有限公司 | 基于u3d插件机制实现的行为树编辑器 |
CN106390456A (zh) * | 2016-09-30 | 2017-02-15 | 腾讯科技(深圳)有限公司 | 游戏中角色行为的生成方法和装置 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2080110A4 (en) * | 2006-10-05 | 2014-01-15 | Nat Ict Australia Ltd | MULTI-USER AND DECENTRALIZED ONLINE ENVIRONMENT |
CN104063460B (zh) * | 2014-06-25 | 2018-10-09 | 北京奇虎科技有限公司 | 一种在浏览器中加载网页的方法和装置 |
CN117205539A (zh) * | 2016-06-13 | 2023-12-12 | 索尼互动娱乐有限责任公司 | 游戏运行配套应用程序 |
-
2019
- 2019-05-14 CN CN201910398381.6A patent/CN110134375B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106155658A (zh) * | 2015-04-08 | 2016-11-23 | 广州四三九九信息科技有限公司 | 基于u3d插件机制实现的行为树编辑器 |
CN106390456A (zh) * | 2016-09-30 | 2017-02-15 | 腾讯科技(深圳)有限公司 | 游戏中角色行为的生成方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN110134375A (zh) | 2019-08-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110134375B (zh) | 游戏角色行为的控制方法、装置及可读存储介质 | |
CN109499068B (zh) | 对象的控制方法和装置、存储介质、电子装置 | |
US20210365782A1 (en) | Method and apparatus for generating neural network model, and computer-readable storage medium | |
US20190118085A1 (en) | Data processing method and apparatus, and storage medium | |
CN108090561B (zh) | 存储介质、电子装置、游戏操作的执行方法和装置 | |
CN109847366B (zh) | 用于游戏的数据处理方法和装置 | |
CN109794065B (zh) | 游戏角色创建方法、装置、电子设备及存储介质 | |
CN111701246B (zh) | 一种游戏ai的决策配置方法和装置 | |
CN110152290A (zh) | 游戏运行方法和装置、存储介质及电子装置 | |
CN111589166A (zh) | 交互式任务控制、智能决策模型训练方法、设备和介质 | |
CN113032268B (zh) | 软件测试方法、装置及存储介质 | |
CN112783781A (zh) | 游戏测试方法、装置、电子设备及存储介质 | |
CN109731338A (zh) | 游戏中的人工智能训练方法及装置、存储介质及电子装置 | |
US20230311002A1 (en) | Decision model training method and apparatus | |
Qin et al. | Mp5: A multi-modal open-ended embodied system in minecraft via active perception | |
CN111068329B (zh) | 一种游戏关卡配置方法、装置、电子设备及存储介质 | |
CN113689001B (zh) | 一种基于反事实遗憾最小化的虚拟自我对弈方法和装置 | |
CN112973130B (zh) | 虚拟场景的回放模型构建方法、装置、设备及存储介质 | |
CN116361138A (zh) | 测试方法及设备 | |
US8265789B2 (en) | Network-based robot system and method for action execution of robot | |
CN116776751B (zh) | 一种智能决策算法模型设计开发辅助系统 | |
KR102343354B1 (ko) | 게임의 에너지 충전 장치 및 방법 | |
CN116747521B (zh) | 控制智能体进行对局的方法、装置、设备及存储介质 | |
CN116808590B (zh) | 一种数据处理方法和相关装置 | |
KR102343359B1 (ko) | 친구 감정 표정을 이용한 게임의 에너지 충전 장치 및 방법 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |