一种虚拟对象的决策方法和装置与流程

文档序号:18401808发布日期:2019-08-09 23:58阅读:214来源:国知局
一种虚拟对象的决策方法和装置与流程

本发明涉及游戏技术领域,特别是涉及一种虚拟对象的决策方法和一种虚拟对象的决策装置。



背景技术:

对于游戏而言,游戏npc(non-playercharacter,非玩家角色)是必不可少的元素,为了使npc更加生动,游戏开发者通常赋予npc以ai(artificialintelligence,人工智能),并将游戏npc的行为逻辑统称为游戏ai,优秀的游戏ai能够给玩家带来较好的游戏体验。

在游戏中,可以根据智能水平分为低级游戏ai和高级游戏ai。低级游戏ai通常为游戏中非主要npc,如小怪、野怪等,低级游戏ai只需要按照一定的设计好的路线行进,并通过简单逻辑与游戏玩家进行交互。而对于高级ai,则是带有博弈性质的游戏主角之一,它与玩家唯一的不同点在于它由电脑来操控。因此,为了使能够给玩家带来较好的游戏体验,需要高级游戏ai具有较高的决策能力。

当前采用的是有限状态机,或者行为树,或者深度学习设计游戏ai,使得游戏ai具备一定的决策。然而,上述方式当游戏规则发生变化时,基于状态机或行为树实现的游戏ai需要对整个逻辑进行调整,假设游戏ai逻辑结构已经较为复杂,则调整工作困难,难以进行扩展和维护。其次,有限状态机是按照有限条件进行状态跳转,行为树是按照开发人员指定的有限条件节点选择行为,两种游戏ai的开发方法通常都会导致游戏ai行为出现明显的固化且可被预测的问题。



技术实现要素:

鉴于上述问题,提出了本发明实施例以便提供一种克服上述问题或者至少部分地解决上述问题的一种虚拟对象的决策方法和相应的一种虚拟对象的决策装置。

为了解决上述问题,本发明实施例公开了一种虚拟对象的决策方法,包括:

获取游戏中目标阵营的游戏数据,所述游戏数据包括所述目标阵营中虚拟对象的收益信息以及代价信息,以及针对所述虚拟对象的游戏策略;

根据所述收益信息以及所述代价信息,计算所述游戏策略对应的第一策略分值;

根据所述第一策略分值,从所述游戏策略中确定第一目标策略;

所述虚拟对象执行所述第一目标策略。

可选的,还包括:

获取与预设时间段对应的惯性因子;

在所述预设时间段内,采用所述惯性因子以及所述第一策略分值,计算针对所述第一目标策略的第二策略分值;

获取所述游戏策略对应的第三策略分值;

将所述第二策略分值与所述第三策略分值进行比较;

当所述第二策略分值小于所述第三策略分值时,从所述游戏策略中提取与所述第三策略分值对应的游戏策略作为第二目标策略;

所述虚拟对象执行所述第二目标策略。

可选的,所述根据所述收益信息以及所述代价信息,计算所述游戏策略对应的第一策略分值,包括:

采用所述收益信息,计算所述游戏策略对应的收益总分值;

采用所述代价信息,计算所述游戏策略对应的代价总分值;

采用所述收益总分值以及所述代价总分值,计算所述游戏策略对应的所述第一策略分值。

可选的,所述收益信息包括单体信息以及团队信息,所述采用所述收益信息,计算所述游戏策略对应的收益总分值,包括:

获取所述目标阵营中目标虚拟对象的所述单体信息,以及与所述目标虚拟对象对应的团队信息;

采用所述单体信息,计算针对所述目标虚拟对象的游戏策略对应的第一收益分值;

采用所述团队信息,计算针对所述目标虚拟对象的游戏策略对应的第二收益分值;

将所述第一收益分值以及所述第二收益分值进行加和,计算针对所述目标虚拟对象的游戏策略对应的收益总分值。

可选的,所述代价信息包括距离信息以及攻克难度信息,所述采用所述代价信息,计算所述游戏策略对应的代价总分值,包括:

获取所述目标阵营中所述目标虚拟对象的距离信息以及攻克难度信息;

采用所述距离信息,计算针对所述目标虚拟对象的游戏策略对应的第一代价分值;

采用所述攻克难度信息,计算针对所述目标虚拟对象的游戏策略对应的第二代价分值;

根据所述第一代价分值以及所述第二代价分值,计算针对所述目标虚拟对象的游戏策略对应的所述代价总分值。

可选的,所述根据所述第一代价分值以及所述第二代价分值,计算针对所述目标虚拟对象的游戏策略对应的所述代价总分值,包括:

获取与所述第一代价分值对应的第一加权系数,以及与所述第二代价分值对应的第二加权系数;

采用所述第一加权系数以及所述第一代价分值,计算第一加权分值;

采用所述第二加权系数以及所述第二代价分值,计算第二加权分值;

将所述第一加权分值以及所述第二加权分值进行加和,计算针对所述目标虚拟对象的游戏策略对应的所述代价总分值。

可选的,所述采用所述收益总分值以及所述代价总分值,计算所述游戏策略对应的所述第一策略分值,包括:

获取与所述代价总分值对应的代价系数;

将所述代价系数乘以所述代价总分值,得到目标代价总分值;

将所述收益总分值减去所述目标代价总分值,得到所述游戏策略对应的所述第一策略分值。

可选的,所述采用所述收益总分值以及所述代价总分值,计算所述游戏策略对应的所述第一策略分值,包括:

获取与所述代价总分值对应的代价系数;

采用所述代价系数对所述代价总分值进行负相关处理,计算目标代价总分值;

将所述收益总分值乘以所述目标代价总分值,得到所述游戏策略对应的所述第一策略分值。

可选的,所述根据所述第一策略分值,从所述游戏策略中确定第一目标策略,包括:

将各个所述游戏策略对应的第一策略分值进行比较;

将数值最大的第一策略分值对应的游戏策略,作为所述第一目标策略。

本发明实施例还公开了一种虚拟对象的决策装置,包括:

游戏数据获取模块,用于获取游戏中目标阵营的游戏数据,所述游戏数据包括所述目标阵营中虚拟对象的收益信息以及代价信息,以及针对所述虚拟对象的游戏策略;

第一分值计算模块,用于根据所述收益信息以及所述代价信息,计算所述游戏策略对应的第一策略分值;

第一策略确定模块,用于根据所述第一策略分值,从所述游戏策略中确定第一目标策略;

第一策略执行模块,用于所述虚拟对象执行所述第一目标策略。

可选的,还包括:

惯性因子获取模块,用于获取与预设时间段对应的惯性因子;

第二分值计算模块,用于在所述预设时间段内,采用所述惯性因子以及所述第一策略分值,计算针对所述第一目标策略的第二策略分值;

第三分值获取模块,用于获取所述游戏策略对应的第三策略分值;

分值比较模块,用于将所述第二策略分值与所述第三策略分值进行比较;

第二策略确定模块,用于当所述第二策略分值小于所述第三策略分值时,从所述游戏策略中提取与所述第三策略分值对应的游戏策略作为第二目标策略;

第二策略执行模块,用于所述虚拟对象执行所述第二目标策略。

可选的,所述第一分值计算模块包括:

收益分值计算子模块,用于采用所述收益信息,计算所述游戏策略对应的收益总分值;

代价分值计算子模块,用于采用所述代价信息,计算所述游戏策略对应的代价总分值;

策略分值计算子模块,用于采用所述收益总分值以及所述代价总分值,计算所述游戏策略对应的所述第一策略分值。

可选的,所述收益信息包括单体信息以及团队信息,所述收益分值计算子模块包括:

信息获取单元,用于获取所述目标阵营中目标虚拟对象的所述单体信息,以及与所述目标虚拟对象对应的团队信息;

单体收益计算单元,用于采用所述单体信息,计算针对所述目标虚拟对象的游戏策略对应的第一收益分值;

团队收益计算单元,用于采用所述团队信息,计算针对所述目标虚拟对象的游戏策略对应的第二收益分值;

收益分值计算单元,用于将所述第一收益分值以及所述第二收益分值进行加和,计算针对所述目标虚拟对象的游戏策略对应的收益总分值。

可选的,所述代价信息包括距离信息以及攻克难度信息,所述代价分值计算子模块包括:

信息获取单元,用于获取所述目标阵营中所述目标虚拟对象的距离信息以及攻克难度信息;

距离分值计算单元,用于采用所述距离信息,计算针对所述目标虚拟对象的游戏策略对应的第一代价分值;

难度分值计算单元,用于采用所述攻克难度信息,计算针对所述目标虚拟对象的游戏策略对应的第二代价分值;

代价分值计算单元,用于根据所述第一代价分值以及所述第二代价分值,计算针对所述目标虚拟对象的游戏策略对应的所述代价总分值。

可选的,所述代价分值计算单元具体用于:

获取与所述第一代价分值对应的第一加权系数,以及与所述第二代价分值对应的第二加权系数;

采用所述第一加权系数以及所述第一代价分值,计算第一加权分值;

采用所述第二加权系数以及所述第二代价分值,计算第二加权分值;

将所述第一加权分值以及所述第二加权分值进行加和,计算针对所述目标虚拟对象的游戏策略对应的所述代价总分值。

可选的,所述策略分值计算子模块包括:

第一计算单元,用于获取与所述代价总分值对应的代价系数;将所述代价系数乘以所述代价总分值,得到目标代价总分值;将所述收益总分值减去所述目标代价总分值,得到所述游戏策略对应的所述第一策略分值。

可选的,所述策略分值计算子模块包括:

第二计算单元,用于获取与所述代价总分值对应的代价系数;采用所述代价系数对所述代价总分值进行负相关处理,计算目标代价总分值;将所述收益总分值乘以所述目标代价总分值,得到所述游戏策略对应的所述第一策略分值。

可选的,所述第一策略确定模块包括:

策略分值比较子模块,用于将各个所述游戏策略对应的第一策略分值进行比较;

策略确定子模块,用于将数值最大的第一策略分值对应的游戏策略,作为所述第一目标策略。

本发明实施例还公开了一种装置,包括:

一个或多个处理器;和

其上存储有指令的一个或多个机器可读介质,当由所述一个或多个处理器执行时,使得所述装置执行如上所述的一个或多个的方法。

本发明实施例还公开了一个或多个机器可读介质,其上存储有指令,当由一个或多个处理器执行时,使得所述处理器执行如上所述的一个或多个的方法。

本发明实施例包括以下优点:

在本发明实施例中,通过获取游戏中目标阵营的游戏数据,其中,游戏数据包括目标阵营中虚拟对象的收益信息以及代价信息,以及针对虚拟对象的游戏策略,根据收益信息以及代价信息,计算游戏策略对应的第一策略分值,根据第一策略分值,从游戏策略中确定第一目标策略,虚拟对象执行第一目标策略,从而一方面通过对虚拟对象赋予游戏ai,使其在游戏中表现更加智能,避免了虚拟对象的行为固化,提高了用户的游戏体验,另一方面,通过结合收益与代价计算策略分值,避免状态机、行为树规则中大量分散的单一条件判断,方便开发者对游戏进行扩展以及维护,提高了开发者的工作效率。

附图说明

图1是本发明的一种虚拟对象的决策方法实施例一的步骤流程图;

图2是本发明的一种虚拟对象的决策方法实施例二的步骤流程图;

图3是本发明的一种虚拟对象的决策装置实施例的结构框图。

具体实施方式

为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。

参照图1,示出了本发明的一种虚拟对象的决策方法实施例一的步骤流程图,具体可以包括如下步骤:

步骤101,获取游戏中目标阵营的游戏数据;

对应游戏而言,游戏npc是必不可少的元素,游戏npc可以分为剧情npc、战斗npc以及服务npc,其中,剧情npc及服务npc属于不可攻击对象,或者属于可攻击对象但不主动攻击,但是被玩家攻击后会反击,并且之后不能正常对话了。通常某些npc会掉落道具,或可以为玩家提供一些游戏信息,或触发剧情。

为了使游戏npc更加生动,游戏开发者可以赋予npc以ai,并将游戏npc的行为逻辑成为游戏ai,优秀的游戏ai能够为玩家带来较好的游戏体验。

以下为了方便描述和理解,本发明实施例以多人在线战术竞技游戏(multiplayeronlinebattlearena,moba)为例进行说明。在moba网络游戏场景中,通常被分为两个阵营,两个阵营中的虚拟对象被分散在游戏地图中互相竞争,虚拟对象可以为双方阵营选择的虚拟英雄角色。在地图中,除了双方阵营选择的虚拟英雄角色外,还有小兵、防御塔、小野怪、特殊野怪等非玩家操控的游戏单位(non-playercharacter,npc),阵营中的虚拟英雄角色可以在地图上击杀敌方英雄或中立方单位,获取资源,最终摧毁敌方基地,获取最终胜利。

对于moba网络游戏,两个阵营可以包括人类玩家以及电脑玩家,还可以包括两方不同的人类玩家。其中,当人类玩家与电脑玩家进行竞技时,可以通过赋予电脑玩家选择的虚拟对象以ai,使得虚拟对象具有较高的决策能力,提高电脑玩家与人类玩家进行竞技的能力,为人类玩家带来较好的游戏体验。

在本发明实施例中,当人类玩家与电脑玩家开展竞技游戏时,可以将电脑玩家对应的阵营作为目标阵营,获取与电脑玩家对应的游戏数据。其中,游戏数据可以包括电脑玩家对应的虚拟对象的收益信息以及代价信息,以及游戏策略。

在具体实现中,收益信息对应的是为虚拟对象所在阵营团队胜率起正面作用的衡量指标,可以包括单体信息以及团队信息。代价信息对应的是为虚拟对象所在阵营团队付出的预期收益的衡量指标,可以包括距离信息以及攻克难度信息。游戏策略对应的是预先对虚拟对象制定的行为策略。

在本发明实施例的一种示例中,以某moba游戏为例,可以根据地图区域、中立游戏npc以及敌方虚拟英雄角色,制定针对不同虚拟对象的游戏策略。中立游戏npc可以包括大boss以及小boss,大boss对应阵营兵线加成,小boss对应阵营兵线辅助。

地图区域可以包括上路线、中路线、下路线、我方第一野区、我方第二野区、敌方第一野区、敌方第二野区以及我方泉水、敌方泉水。

其中,在上路线、中路线以及下路线各对应我方兵线以及敌方兵线,在我方第一野区、我方第二野区、敌方第一野区、敌方第二野区对应不同的状态buffnpc,在我方第一野区、我方第二野区、敌方第一野区、敌方第二野区每个野区还对应于若干个小野区,每个小野区对应若干个野怪,泉水对应补给,虚拟英雄角色位于泉水中可以进行状态恢复。

此外,虚拟对象可以包括打野英雄角色、射手英雄角色、辅助英雄角色、魔法英雄角色以及突进英雄角色,其中,打野英雄角色可以对应野区,射手英雄角色以及辅助英雄角色可以对应下路线,魔法英雄角色可以对应中路线,突进英雄角色可以对应上路线。其中,不同虚拟英雄角色也可以活动于其他区域。

则可以根据地图区域、中立游戏npc以及敌方虚拟英雄角色,制定针对不同虚拟对象的游戏策略,如下表1所示:

表1

需要说明的是,在本发明实施例中,以moba游戏进行示例性说明,可以理解的是,基于本发明实施例的思想下,本领域技术人员可以根据不同的游戏类型,或不同的moba游戏进行游戏策略设计,本发明对此不作限制。

步骤102,根据收益信息以及代价信息,计算游戏策略对应的第一策略分值;

在本发明实施例中,获取了游戏中目标阵营的游戏数据后,可以从游戏数据中提取收益信息以及代价信息,接着可以根据收益信息以及代价信息,计算针对目标阵营中虚拟对象的游戏策略的第一策略值。

在本发明实施例的一种可选实施例中,步骤102可以包括如下子步骤:

子步骤s11,采用收益信息,计算游戏策略对应的收益总分值;

在本发明实施例中,收益信息可以包括单体信息以及团队信息,针对同一阵营的不同虚拟对象,可以通过获取目标阵营中目标虚拟对象的单体信息,以及与目标虚拟对象对应的团队信息,接着可以采用单体信息,计算针对目标虚拟对象的游戏策略对应的第一收益分值,采用团队信息,计算针对目标虚拟对象的游戏策略对应的第二收益分值,再将第一收益分值以及第二收益分值进行加和,计算针对目标虚拟对象的游戏策略对应的收益总分值。

在具体实现中,单体信息为虚拟对象个体的资源获取情况,可以包括虚拟金钱以及虚拟经验,其中,虚拟金钱对应装备和未消费虚拟金钱,虚拟经验对应虚拟对象等级和属性。团队信息可以为我方阵营团队获取战略目标,进而对胜利起正面作用的效果。

在具体实现中,第一收益分值为单体收益分值,第二收益分值为团队收益分值,可以通过采用单体信息,计算针对虚拟对象的单体收益分值,以及可以通过采用团队信息,计算针对虚拟对象的团队收益分值,接着可以将单体收益分值与团队收益分值进行加和,得到针对该虚拟对象的各个游戏策略的收益总分值。

其中,对于同一阵营的不同虚拟对象,由于单体信息不同,单体收益分值以及团队收益分值可以不同,且不同虚拟对象对应的各个游戏策略对应的收益总分值也可以不同。

在本发明实施例的一种示例中,以moba游戏为例,分为两方阵营,其中一方为人类玩家控制的阵营,另一方为电脑玩家控制的阵营,每方阵营包括5个虚拟英雄角色,可以将电脑玩家对应的阵营作为目标阵营。其中,单体信息可以表现为:虚拟英雄角色单体可以通过击杀敌方英雄角色、小兵、中立游戏npc以及摧毁敌方防御塔,以获取虚拟金钱以及虚拟经验。团队信息可以表现为:阵营团队可以通过击杀大boss、小boss获得团队增益,也可以保护我方防御塔、基地,摧毁敌方防御塔、敌方基地等战略目标的达成。则可以通过如下单体收益公式计算单体收益分值:

可以通过如下团队收益公式计算团队收益分值:

可以通过如下总收益公式计算针对该虚拟对象的各个游戏策略的收益总分值:

p(si)=pindividual(si)+pteam(si)

其中,pindividual(si)表示的是虚拟对象的个体收益分值,pteam(si)表示的是虚拟对象对应的团队收益分值,targets(si)是游戏策略si对应的游戏策略集合,tim是游戏策略集合中的第m个游戏策略。

如单体收益公式所示,个体收益的组成部分是击杀单位获取的相应的虚拟金钱(gold)和虚拟经验(exp);

如团队收益公式所示,团队收益分值的组成部分是包括boss、防御塔、基地等重要的战略目的。其中,对于团队收益分值的计算,可以包括击杀敌方英雄可以有额外的收益,因为减少敌方收益就是增加了团队收益,还可以包括击杀boss、敌方英雄(hero),摧毁敌方防御塔(tower)、基地(base)等有对应的收益,或阻止了对方击杀boss,保护友方英雄、防御塔、基地等也同样有对应的收益。

如总收益公式所示,策略收益是个体资源收益与团队战略收益的综合;

需要说明的是,在本发明实施例中以计算单体收益分值和团队收益分值为例进行示例性说明,基于本发明实施例的思想,本领域技术人员根据实际游戏的类型、游戏规则设计以及游戏技巧,可以采用其他方式进行收益分值的计算,本发明对此不作限制。

子步骤s12,采用代价信息,计算游戏策略对应的代价总分值;

在本发明实施例中,代价信息可以与游戏本身的游戏规则设定以及游戏技巧关联的信息,通过采用代价信息,可以计算游戏策略对应的代价总分值。

在具体实现中,对于moba游戏而言,代价信息可以包括距离信息以及攻克难度信息,可以通过获取目标阵营中目标虚拟对象的距离信息以及攻克难度信息,接着可以采用距离信息,计算针对目标虚拟对象的游戏策略对应的第一代价分值,采用攻克难度信息,计算针对目标虚拟对象的游戏策略对应的第二代价分值,再根据第一代价分值以及第二代价分值,计算针对目标虚拟对象的游戏策略对应的代价总分值。

在具体实现中,距离信息为虚拟对象离策略目标点的距离呈正相关的惩罚函数,距离越远,则代价越大。攻克难度信息为完成某个游戏策略的难度。

在具体实现中,第一代价分值为距离代价分值,第二代价分值为难度代价分值,可以通过采用距离信息,计算针对虚拟对象的距离代价分值,采用攻克难度信息,计算针对虚拟对象的难度代价分值,接着可以根据距离代价分值以及难度代价分值,计算针对目标虚拟对象的游戏策略对应的代价总分值。

具体的,距离代价分值对应第一加权系数,难度代价分值对应第二加权系数,可以采用第一加权系数乘以距离代价分值,计算第一加权分值,采用第二加权系数以及难度代价分值,计算第二加权分值,接着可以将第一加权分值以及第二加权分值进行加和,计算针对目标虚拟对象的游戏策略对应的代价总分值。

其中,对于同一阵营的不同虚拟对象,由于距离信息以及攻克难度信息不同,距离代价分值以及难度代价分值可以不同,且不同虚拟对象对应的各个游戏策略对应的代价总分值也可以不同。

在本发明实施例的一种示例中,以moba游戏为例,可以将电脑玩家对应的阵营作为目标阵营,距离信息可以表现为:虚拟对象移动到策略目标点的距离,攻克难度信息可以表现为:虚拟对象击败或摧毁目标的难度。其中,可以通过与离策略目标点距离呈相关的距离惩罚函数得到距离代价分值,如

d(si)=θ*dist

可以通过如下难度代价公式计算难度代价分值:

可以通过如下总代价公式计算针对该虚拟对象的各个游戏策略的总代价分值:

c(si)=γd(si)+h(si)

其中,在距离惩罚函数中θ表示距离系数,θ>0,dist表示虚拟对象与策略目标点之间的距离,表示距离越远,距离代价分值越大。

如难度代价公式所示,策略难度惩罚函数h(si)由两部分组成,一部分是敌方整体防御水平与我方虚拟对象的战斗力的比例,这部分表征了虚拟对象击败或摧毁策略目标的难度;另一部分是敌方整体战斗力与我方虚拟对象的防御水平的比例,这部分表征了策略目标对虚拟对象个体的威胁程度。

如总代价公式所示,策略代价是距离惩罚函数d(si)和策略难度惩罚函数h(si)两个部分的加权和。

需要说明的是,在本发明实施例中以计算距离代价分值和难度代价分值为例进行示例性说明,基于本发明实施例的思想,本领域技术人员根据实际游戏的类型、游戏规则设计以及游戏技巧,可以采用其他方式进行代价分值的计算,本发明对此不作限制。

子步骤s13,采用收益总分值以及代价总分值,计算游戏策略对应的第一策略分值。

在本发明实施例中,当通过单体信息以及团队信息,计算收益总分值,以及通过距离信息以及攻克难度信息,计算代价总分值后,可以采用收益总分值以及代价总分值,计算针对目标阵营中虚拟对象的各个游戏策略对应的第一策略分值。

在具体实现中,第一策略分值为游戏策略的综合评分。可以通过一个评价函数将收益总分值以及代价总分值进行处理,得到对游戏策略的综合评分,其中,在评价函数中,对于第i个游戏策略的评分与收益总分值p(si)呈正相关关系,与代价总分值d(si)呈负相关关系。

在本发明实施例的一种示例中,可以通过获取与代价总分值对应的代价系数,将代价系数乘以代价总分值,得到目标代价总分值,再将收益总分值减去目标代价总分值,得到游戏策略对应的第一策略分值。

在具体实现中,可以通过如下公式计算第一策略分值:

u(p(si),c(si))=p(si)-λic(si),λi>0

其中,λi是正数,对于不同的游戏策略,对应的λi可以不同。

在本发明实施例的另一种示例中,可以通过获取与代价总分值对应的代价系数,采用代价系数对代价总分值进行负相关处理,再计算目标代价总分值,将收益总分值乘以目标代价总分值,得到游戏策略对应的第一策略分值。

在具体实现中,可以通过如下公式计算第一策略分值:

其中,λi是正数,对于不同的游戏策略,对应的λi可以不同。

需要说明的是,在本发明实施例中,通过上述公式为例进行示例性说明,基于本发明实施例的思想,本领域技术人员还可以采用其他方式对综合评分进行计算,本发明对此不作限制。

步骤103,根据第一策略分值,从游戏策略中确定第一目标策略;

步骤104,虚拟对象执行第一目标策略。

在本发明实施例中,得到针对虚拟对象的各个游戏策略对应的第一策略分值后,可以根据第一策略分值,从所有游戏策略中,确定针对虚拟对象的第一目标策略,并由对应的虚拟对象执行该第一目标策略。

在具体实现中,通过计算得到目标阵营中目标虚拟对象对应的各个游戏策略对应的第一策略分值后,可以将各个游戏策略对应的第一策略分值进行数值大小比较,将数值最大的第一策略分值对应的游戏策略,作为第一目标策略,以使目标虚拟对象执行该第一目标策略。

在本发明实施例中,通过获取游戏中目标阵营的游戏数据,其中,游戏数据包括目标阵营中虚拟对象的收益信息以及代价信息,以及针对虚拟对象的游戏策略,根据收益信息以及代价信息,计算游戏策略对应的第一策略分值,根据第一策略分值,从游戏策略中确定第一目标策略,虚拟对象执行第一目标策略,从而一方面通过对虚拟对象赋予游戏ai,使其在游戏中表现更加智能,避免了虚拟对象的行为固化,提高了用户的游戏体验,另一方面,通过结合收益与代价计算策略分值,避免状态机、行为树规则中大量分散的单一条件判断,方便开发者对游戏进行扩展以及维护,提高了开发者的工作效率。

参照图2,示出了本发明的一种虚拟对象的决策方法实施例二的步骤流程图,具体可以包括如下步骤:

步骤201,获取游戏中目标阵营的游戏数据;

在具体实现中,当玩家与电脑玩家进行游戏竞技时,可以将电脑玩家对应的阵营作为目标阵营,从而获取目标阵营中虚拟对象的收益信息、代价信息以及针对虚拟对象的所有游戏策略。

步骤202,根据收益信息以及代价信息,计算游戏策略对应的第一策略分值;

在本发明实施例中,获取了游戏中目标阵营的游戏数据后,可以从游戏数据中提取收益信息以及代价信息,接着可以根据收益信息以及代价信息,计算针对目标阵营中虚拟对象的游戏策略的第一策略值。

在具体实现中,收益信息可以包括单体信息以及团队信息,可以通过单体信息,计算针对目标虚拟对象的游戏策略对应的第一收益分值,采用团队信息,计算针对目标虚拟对象的游戏策略对应的第二收益分值,再将第一收益分值以及第二收益分值进行加和,计算针对目标虚拟对象的游戏策略对应的收益总分值。

在具体实现中,代价信息可以包括距离信息以及攻克难度信息,可以通过获取目标阵营中目标虚拟对象的距离信息以及攻克难度信息,接着可以采用距离信息,计算针对目标虚拟对象的游戏策略对应的第一代价分值,采用攻克难度信息,计算针对目标虚拟对象的游戏策略对应的第二代价分值,再根据第一代价分值以及第二代价分值,计算针对目标虚拟对象的游戏策略对应的代价总分值。

在具体实现中,第一策略分值为游戏策略的综合评分。可以通过一个评价函数将收益总分值以及代价总分值进行处理,得到对游戏策略的综合评分,其中,在评价函数中,对于第i个游戏策略的评分与收益总分值p(si)呈正相关关系,与代价总分值d(si)呈负相关关系。

步骤203,根据第一策略分值,从游戏策略中确定第一目标策略;

步骤204,虚拟对象执行第一目标策略;

在具体实现中,通过计算得到目标阵营中目标虚拟对象对应的各个游戏策略对应的第一策略分值后,可以将各个游戏策略对应的第一策略分值进行数值大小比较,将数值最大的第一策略分值对应的游戏策略,作为第一目标策略,以使目标虚拟对象执行该第一目标策略。

步骤205,获取与预设时间段对应的惯性因子;

在本发明实施例中,当确定第一目标策略后,可以获取与预设时间段对应的惯性因子,其中,惯性因子与当前选择的游戏策略关联。

在具体实现中,由于每次决策都是重新计算所有游戏策略对应的第一策略分值,然后选择数值最大的第一策略分值,则会导致某些情况下,虚拟对象在连续的一段时间内在两个甚至多个游戏策略之间来回跳转,破坏决策的连贯性,不符合人类玩家的决策习惯,在一定程度上降低了智能化程度。因此,当确定第一目标策略后,可以获取与预设时间段对应的惯性因子,并将惯性因子与虚拟对象当前选择的第一目标策略进行关联,对第一目标策略的第一策略分值计算进行调整,从而通过引入惯性因子,避免了虚拟对象在两个甚至多个游戏策略之间来回跳转,提高了游戏决策的连贯性,进而提高了电脑玩家与人类玩家进行竞技的能力。

步骤206,在预设时间段内,采用惯性因子以及第一策略分值,计算针对第一目标策略的第二策略分值;

在本发明实施例中,惯性因子可以为与时间呈负相关的函数,即经过的时间越多,则惯性因子的值越趋近于0。

在具体实现中,在一定的时间段内,可以采用惯性因子以及第一策略分值,对虚拟对象当前选择的游戏策略i对应的评分计算过程进行调整,并保持其他游戏策略的评分计算过程不变。

在本发明实施例的一种示例中,假设当前t时刻虚拟对象选择了第i游戏策略,则在后续t+t时刻的计算中,对第i游戏策略计算评分时,可以通过如下公式进行调整:

uajusted(p(si),c(si))=uoriginal(p(si),c(si))*φi(t)+u(p(si),c(si)),0<φ(t)<1

其中,φi(t)为惯性因子,表示与经过时间呈负相关的函数,即经过时间越多,φi(t)的值越趋近于0。uoriginal是最近第一次选择第i游戏策略时该策略的评分值,即第一策略分值,uajusted是调整后的策略评分值,即第二策略分值。

步骤207,获取游戏策略对应的第三策略分值;

在具体实现中,当虚拟对象执行第一目标策略后,可以重新对各个游戏策略对应的策略分值进行计算,并对第一目标策略对应的新策略分值进行调整,得到第二策略分值,以及得到其他游戏策略对应的第三策略分值。其中,计算过程参考上述步骤201-203,在此不再赘述。

步骤208,将第二策略分值与第三策略分值进行比较;

在具体实现中,通过惯性因子对第一目标策略对应的第一策略分值进行调整,得到第二策略分值后,可以将第一目标策略对应的第二策略分值与其他游戏策略对应的第三策略分值进行比较。

步骤209,当第二策略分值小于第三策略分值时,从游戏策略中提取与第三策略分值对应的游戏策略作为第二目标策略;

步骤210,虚拟对象执行第二目标策略。

在本发明实施例中,当得到第一目标策略对应的第二策略分值,以及其他游戏策略对应的第三策略分值后,可以将第二策略分值与各个第三策略分值进行数值大小比较,然后根据比较结果,从游戏策略中确定最优的游戏策略。

在具体实现中,可以将第一目标策略对应的第二策略分值与其他游戏策略对应的第三策略分值进行数值大小比较,当第二策略分值小于第三策略分值时,可以从其他游戏策略中提取与该第三策略分值对应的游戏策略作为第二目标策略。

例如,当前虚拟对象执行的为第i游戏策略,当第i游戏策略对应的第二策略分值小于第三策略分值时,则将第i游戏策略切换为与该第三策略分值对应的第j游戏策略。

在具体实现中,当虚拟对象执行了非第i游戏策略,即切换成了别的游戏策略,那么第i游戏策略的φi(t)就置为0。因此,对于连续执行了t时间的第j策略的情况,φi(t)可用下面式子表示,

此外,当第二策略分值大于第三策略分值时,则虚拟对象依旧执行第一目标策略,从而通过引入惯性因子,避免了虚拟对象在两个甚至多个游戏策略之间来回跳转,提高了游戏决策的连贯性,进而提高了电脑玩家与人类玩家进行竞技的能力。

在本发明实施例中,通过获取游戏中目标阵营的游戏数据,其中,游戏数据包括目标阵营中虚拟对象的收益信息以及代价信息,以及针对虚拟对象的游戏策略,根据收益信息以及代价信息,计算游戏策略对应的第一策略分值,根据第一策略分值,从游戏策略中确定第一目标策略,虚拟对象执行第一目标策略,从而一方面通过对虚拟对象赋予游戏ai,使其在游戏中表现更加智能,避免了虚拟对象的行为固化,提高了用户的游戏体验,另一方面,通过结合收益与代价计算策略分值,避免状态机、行为树规则中大量分散的单一条件判断,方便开发者对游戏进行扩展以及维护,提高了开发者的工作效率。

需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。

参照图3,示出了本发明的一种虚拟对象的决策装置实施例的结构框图,具体可以包括如下模块:

游戏数据获取模块301,用于获取游戏中目标阵营的游戏数据,所述游戏数据包括所述目标阵营中虚拟对象的收益信息以及代价信息,以及针对所述虚拟对象的游戏策略;

第一分值计算模块302,用于根据所述收益信息以及所述代价信息,计算所述游戏策略对应的第一策略分值;

第一策略确定模块303,用于根据所述第一策略分值,从所述游戏策略中确定第一目标策略;

第一策略执行模块304,用于所述虚拟对象执行所述第一目标策略。

在本发明实施例的一种可选实施例中,所述装置还可以包括:

惯性因子获取模块,用于获取与预设时间段对应的惯性因子;

第二分值计算模块,用于在所述预设时间段内,采用所述惯性因子以及所述第一策略分值,计算针对所述第一目标策略的第二策略分值;

第三分值获取模块,用于获取所述游戏策略对应的第三策略分值;

分值比较模块,用于将所述第二策略分值与所述第三策略分值进行比较;

第二策略确定模块,用于当所述第二策略分值小于所述第三策略分值时,从所述游戏策略中提取与所述第三策略分值对应的游戏策略作为第二目标策略;

第二策略执行模块,用于所述虚拟对象执行所述第二目标策略。

在本发明实施例的一种可选实施例中,所述第一分值计算模块302可以包括:

收益分值计算子模块,用于采用所述收益信息,计算所述游戏策略对应的收益总分值;

代价分值计算子模块,用于采用所述代价信息,计算所述游戏策略对应的代价总分值;

策略分值计算子模块,用于采用所述收益总分值以及所述代价总分值,计算所述游戏策略对应的所述第一策略分值。

在本发明实施例的一种可选实施例中,所述收益信息包括单体信息以及团队信息,所述收益分值计算子模块可以包括:

信息获取单元,用于获取所述目标阵营中目标虚拟对象的所述单体信息,以及与所述目标虚拟对象对应的团队信息;

单体收益计算单元,用于采用所述单体信息,计算针对所述目标虚拟对象的游戏策略对应的第一收益分值;

团队收益计算单元,用于采用所述团队信息,计算针对所述目标虚拟对象的游戏策略对应的第二收益分值;

收益分值计算单元,用于将所述第一收益分值以及所述第二收益分值进行加和,计算针对所述目标虚拟对象的游戏策略对应的收益总分值。

在本发明实施例的一种可选实施例中,所述代价信息包括距离信息以及攻克难度信息,所述代价分值计算子模块可以包括:

信息获取单元,用于获取所述目标阵营中所述目标虚拟对象的距离信息以及攻克难度信息;

距离分值计算单元,用于采用所述距离信息,计算针对所述目标虚拟对象的游戏策略对应的第一代价分值;

难度分值计算单元,用于采用所述攻克难度信息,计算针对所述目标虚拟对象的游戏策略对应的第二代价分值;

代价分值计算单元,用于根据所述第一代价分值以及所述第二代价分值,计算针对所述目标虚拟对象的游戏策略对应的所述代价总分值。

在本发明实施例的一种可选实施例中,所述代价分值计算单元具体可以用于:

获取与所述第一代价分值对应的第一加权系数,以及与所述第二代价分值对应的第二加权系数;

采用所述第一加权系数以及所述第一代价分值,计算第一加权分值;

采用所述第二加权系数以及所述第二代价分值,计算第二加权分值;

将所述第一加权分值以及所述第二加权分值进行加和,计算针对所述目标虚拟对象的游戏策略对应的所述代价总分值。

在本发明实施例的一种可选实施例中,所述策略分值计算子模块可以包括:

第一计算单元,用于获取与所述代价总分值对应的代价系数;将所述代价系数乘以所述代价总分值,得到目标代价总分值;将所述收益总分值减去所述目标代价总分值,得到所述游戏策略对应的所述第一策略分值。

在本发明实施例的一种可选实施例中,所述策略分值计算子模块还可以包括:

第二计算单元,用于获取与所述代价总分值对应的代价系数;采用所述代价系数对所述代价总分值进行负相关处理,计算目标代价总分值;将所述收益总分值乘以所述目标代价总分值,得到所述游戏策略对应的所述第一策略分值。

在本发明实施例的一种可选实施例中,所述第一策略确定模块303可以包括:

策略分值比较子模块,用于将各个所述游戏策略对应的第一策略分值进行比较;

策略确定子模块,用于将数值最大的第一策略分值对应的游戏策略,作为所述第一目标策略。

对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

本发明实施例还提供了一种装置,包括:

一个或多个处理器;和

其上存储有指令的一个或多个机器可读介质,当由所述一个或多个处理器执行时,使得所述装置执行本发明实施例所述的方法。

本发明实施例还提供了一个或多个机器可读介质,其上存储有指令,当由一个或多个处理器执行时,使得所述处理器执行本发明实施例所述的方法。

本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。

本领域内的技术人员应明白,本发明实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本发明实施例是参照根据本发明实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

尽管已描述了本发明实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例范围的所有变更和修改。

最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。

以上对本发明所提供的一种虚拟对象的决策方法和一种虚拟对象的决策装置,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1