虚拟角色的控制方法、装置、电子设备及存储介质与流程

文档序号:24787584发布日期:2021-04-23 11:15阅读:128来源:国知局
虚拟角色的控制方法、装置、电子设备及存储介质与流程

1.本申请涉及计算机人机交互技术,尤其涉及一种虚拟角色的控制方法、装置、电子设备及计算机可读存储介质。


背景技术:

2.基于图形处理硬件的虚拟场景的人机交互技术,能够根据实际应用需求实现受控于用户或人工智能的虚拟角色之间的多样化的交互,具有广泛的实用价值。例如在军事演习仿真、以及游戏等的虚拟场景中,能够模拟虚拟角色之间的真实的对战过程。
3.在虚拟场景中,用户可以控制同一阵营中的多个虚拟角色结成攻击阵型,以对处于敌对阵营中的目标虚拟角色释放组合攻击技能(或称连携攻击)。
4.然而,相关技术中,触发组合攻击技能的机制比较复杂,不易理解,不符合当下游戏(特别是手游)轻量化设计的需要;同时,由于组合攻击技能触发机制的复杂性,也会导致终端设备在处理场景数据的过程中需要消耗大量的计算资源。


技术实现要素:

5.本申请实施例提供一种虚拟角色的控制方法、装置、电子设备及计算机可读存储介质,能够以高效和资源集约的方式实现基于组合攻击技能的互动。
6.本申请实施例的技术方案是这样实现的:
7.本申请实施例提供一种虚拟角色的控制方法,包括:
8.显示虚拟场景,所述虚拟场景包括相互对抗的第一阵营和第二阵营;
9.响应于所述第一阵营中的第一虚拟角色与至少一个队友角色的位置满足组合攻击技能触发条件,显示向所述第二阵营中的第二虚拟角色释放的组合攻击技能,以及
10.显示所述第二虚拟角色响应于所述组合攻击技能的状态;
11.其中,所述组合攻击技能包括所述第一虚拟角色释放的至少一次攻击技能、以及所述至少一个队友角色释放的至少一次攻击技能。
12.本申请实施例提供一种虚拟角色的控制装置,包括:
13.显示模块,用于显示虚拟场景,所述虚拟场景包括相互对抗的第一阵营和第二阵营;
14.所述显示模块,还用于响应于所述第一阵营中的第一虚拟角色与至少一个队友角色的位置满足组合攻击技能触发条件,显示向所述第二阵营中的第二虚拟角色释放的组合攻击技能,以及
15.用于显示所述第二虚拟角色响应于所述组合攻击技能的状态;
16.其中,所述组合攻击技能包括所述第一虚拟角色释放的至少一次攻击技能、以及所述至少一个队友角色释放的至少一次攻击技能。
17.上述方案中,所述组合攻击技能触发条件包括以下至少之一:所述第二虚拟角色在所述虚拟场景中所处的位置处于所述第一虚拟角色的攻击范围内,且处于所述至少一个
队友角色的攻击范围内;所述第一虚拟角色相对于所述至少一个队友角色的方位是设定方位或属于设定方位范围。
18.上述方案中,所述显示模块,还用于响应于所述第一阵营中的第一虚拟角色与至少一个队友角色的位置满足组合攻击技能触发条件,且所述第一虚拟角色与所述至少一个队友角色的角色类型符合设定阵容组合,显示向所述第二阵营中的第二虚拟角色释放的组合攻击技能。
19.上述方案中,所述设定阵容组合包括以下至少之一:所述第一虚拟角色等级低于或等于所述至少一个队友角色的等级;所述第一虚拟角色与所述至少一个队友角色的属性相同或者相互适配;所述第一虚拟角色与所述至少一个队友角色的技能相同或相互适配。
20.上述方案中,当所述第二虚拟角色具有先攻技能时,所述显示模块在显示向所述第二阵营中的第二虚拟角色释放的组合攻击技能之前,还用于显示所述第二虚拟角色向所述第一虚拟角色释放的至少一次攻击技能,以及用于显示所述第一虚拟角色响应于所述第二虚拟角色释放的至少一次攻击技能的状态。
21.上述方案中,当所述第二阵营中存在具有护卫技能的第三虚拟角色时,所述显示模块在显示向所述第二虚拟角色释放的组合攻击技能之前,还用于显示向所述第三虚拟角色释放的组合攻击技能,以及显示所述第三虚拟角色响应于所述组合攻击技能的状态。
22.上述方案中,当所述第三虚拟角色响应于所述组合攻击技能包括的所述第一虚拟角色释放的至少一次攻击技能而处于死亡状态时,所述显示模块,还用于显示所述至少一个队友角色向所述第二虚拟角色释放的至少一次攻击技能,以及显示所述第二虚拟角色响应于所述至少一个队友角色释放的至少一次攻击技能的状态。
23.上述方案中,所述显示模块在显示向所述第二阵营中的第二虚拟角色释放的组合攻击技能之前,还用于针对所述虚拟场景中符合所述设定位置关系的至少一个队友角色,显示与所述至少一个队友角色对应的提示标识;其中,所述提示标识用于表征所述至少一个队友角色能够与所述第一虚拟角色结成阵容组合;以及用于响应于针对所述至少一个队友角色的选择操作,显示向所述第二阵营中的第二虚拟角色释放的组合攻击技能;其中,所述组合攻击技能包括所述第一虚拟角色释放的至少一次攻击技能、以及被选中的队友角色释放的至少一次攻击技能。
24.上述方案中,所述显示模块,还用于响应于所述第一阵营中的第一虚拟角色与多个队友角色的位置满足组合攻击技能触发条件,将所述多个队友角色中攻击力最高的队友角色与所述第一虚拟角色结成阵容组合,并显示所述阵容组合向所述第二虚拟角色释放的组合攻击技能;其中,所述组合攻击技能包括所述第一虚拟角色释放的至少一次攻击技能、以及所述攻击力最高的队友角色释放的至少一次攻击技能。
25.上述方案中,所述显示模块,还用于当所述第一虚拟角色的攻击范围小于范围阈值、且所述至少一个队友角色的攻击范围大于范围阈值时,在显示所述第一虚拟角色释放至少一次攻击技能的过程中,控制所述至少一个队友角色处于与所述第一虚拟角色固定的位置;以及用于当所述第一虚拟角色、以及所述至少一个队友角色的攻击范围均大于范围阈值时,在显示所述第一虚拟角色释放至少一次攻击技能的过程中,控制所述至少一个队友角色处于所述虚拟场景中的固定位置。
26.上述方案中,所述显示模块,还用于当所述第二虚拟角色响应于所述组合攻击技
能而处于未死亡的状态时,显示所述第二虚拟角色向所述第一阵营中的所述第一虚拟角色释放的至少一次攻击技能,以及显示所述第一虚拟角色响应于所述第二虚拟角色释放的至少一次攻击技能的状态;以及用于当所述第一虚拟角色以及所述至少一个队友角色中的任一虚拟角色处于异常状态时,显示无法释放组合攻击技能的提示信息。
27.上述方案中,所述组合攻击技能是通过调用机器学习模型预测得到的;所述装置还包括获取模块,用于获取所述第一虚拟角色、所述至少一个队友角色、以及所述第二虚拟角色的特征数据;所述装置还包括调用模型,用于基于所述特征数据调用机器学习模型,以确定所述组合攻击技能包括的攻击技能的释放次数、以及每次释放的攻击技能的类型;其中,所述特征数据包括以下至少之一:状态、技能等待时间、技能攻击强度。
28.本申请实施例提供一种电子设备,包括:
29.存储器,用于存储可执行指令;
30.处理器,用于执行所述存储器中存储的可执行指令时,实现本申请实施例提供的虚拟角色的控制方法。
31.本申请实施例提供一种计算机可读存储介质,存储有可执行指令,用于引起处理器执行时,实现本申请实施例提供的虚拟角色的控制方法。
32.本申请实施例具有以下有益效果:
33.当需要对处于敌对阵营中的第二虚拟角色进行攻击时,将处于同一阵营中的第一虚拟角色与至少一个队友角色在虚拟场景中所处的位置作为释放组合攻击技能的触发条件,简化了组合攻击技能的触发机制,进而节约了基于组合攻击技能的计算资源。
附图说明
34.图1a和图1b是本申请实施例提供的虚拟角色的控制方法的应用模式示意图;
35.图2是本申请实施例提供的终端设备400的结构示意图;
36.图3是本申请实施例提供的虚拟角色的控制方法的流程示意图;
37.图4a是本申请实施例提供的虚拟角色的控制方法的应用场景示意图;
38.图4b是本申请实施例提供的虚拟角色的控制方法的应用场景示意图;
39.图4c是本申请实施例提供的虚拟角色的控制方法的应用场景示意图;
40.图5是本申请实施例提供的神经网络模型训练和应用示意图;
41.图6是本申请实施例提供的神经网络模型的结构示意图;
42.图7是本申请实施例提供的神经网络模型根据特征数据确定组合攻击技能的示意图;
43.图8是本申请实施例提供的虚拟角色的控制方法的流程示意图;
44.图9是本申请实施例提供的虚拟角色的控制方法的应用场景示意图;
45.图10是本申请实施例提供的虚拟角色的控制方法的应用场景示意图;
46.图11是本申请实施例提供的虚拟角色的控制方法的应用场景示意图;
47.图12是本申请实施例提供的触发连携攻击的规则示意图;
48.图13是本申请实施例提供的攻击顺序设计示意图;
49.图14是本申请实施例提供的连携攻击过程中的镜头设计示意图。
具体实施方式
50.为了使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请作进一步地详细描述,所描述的实施例不应视为对本申请的限制,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
51.在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。
52.在以下的描述中,所涉及的术语“第一\第二\第三”仅仅是是区别类似的对象,不代表针对对象的特定排序,可以理解地,“第一\第二\第三”在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本申请实施例能够以除了在这里图示或描述的以外的顺序实施。
53.除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本申请实施例的目的,不是旨在限制本申请。
54.对本申请实施例进行进一步详细说明之前,对本申请实施例中涉及的名词和术语进行说明,本申请实施例中涉及的名词和术语适用于如下的解释。
55.1)响应于,用于表示所执行的操作所依赖的条件或者状态,当满足所依赖的条件或状态时,所执行的一个或多个操作可以是实时的,也可以具有设定的延迟;在没有特别说明的情况下,所执行的多个操作不存在执行先后顺序的限制。
56.2)客户端,终端设备中运行的用于提供各种服务的应用程序,例如视频播放客户端、游戏客户端等。
57.3)虚拟场景,应用程序在终端设备上运行时显示(或提供)的虚拟场景。该虚拟场景可以是对真实世界的仿真环境,也可以是半仿真半虚构的虚拟环境,还可以是纯虚构的虚拟环境。虚拟场景可以是二维虚拟场景、2.5维虚拟场景或者三维虚拟场景中的任意一种,本申请实施例对虚拟场景的维度不加以限定。例如,虚拟场景可以包括天空、陆地、海洋等,该陆地可以包括沙漠、城市等环境元素,用户可以控制虚拟角色在该虚拟场景中进行移动。
58.4)虚拟角色,虚拟场景中可以进行交互的各种人和物的形象,或在虚拟场景中的可活动对象。该可活动对象可以是虚拟人物、虚拟动物、动漫人物等,比如,在虚拟场景中显示的人物、动物。该虚拟角色可以是该虚拟场景中的一个虚拟的用于代表用户的虚拟形象。虚拟场景中可以包括多个虚拟角色,每个虚拟角色在虚拟场景中具有自身的形状和体积,占据虚拟场景中的一部分空间。
59.例如,该虚拟角色可以是通过客户端上的操作进行控制的用户角色,也可以是通过训练设置在虚拟场景对战中的人工智能(ai,artificial intelligence),还可以是设置在虚拟场景互动中的非用户角色(npc,non

player character)。例如,该虚拟角色可以是在虚拟场景中进行对抗式交互的虚拟人物。例如,该虚拟场景中参与互动的虚拟角色的数量可以是预先设置的,也可以是根据加入互动的客户端的数量动态确定的。
60.5)场景数据,表示虚拟场景中的虚拟角色在交互过程中受所表现的各种特征,例如,可以包括虚拟角色在虚拟场景中的位置。当然,根据虚拟场景的类型可以包括不同类型
的特征;例如,在游戏的虚拟场景中,场景数据可以包括虚拟场景中配置的各种功能时需要等待的时间(取决于在特定时间内能够使用同一功能的次数),还可以表示虚拟角色的各种状态的属性值,例如包括生命值(也称为红量)和魔法值(也称为蓝量)等。
61.6)组合攻击,也称为连携攻击,由至少两个虚拟角色配合进行攻击,每个虚拟角色至少释放一次攻击技能,组合攻击的过程中所释放出的攻击技能统称称为组合攻击技能。
62.在虚拟场景中,用户可以控制处于同一阵营的多个虚拟角色结成攻击阵型,以对处于敌对阵营中的目标虚拟对象进行连携攻击(对应于上述的组合攻击技能)。
63.然而,相关技术中,连携攻击的触发机制比较复杂,不易理解,以游戏为例,连携攻击的触发机制不符合游戏(特别是手游)轻量化设计的需要;并且,在被攻击的虚拟角色进行反击时也可能会再次触发连携攻击,造成了游戏复杂度的进一步提高,从而导致了终端设备在处理场景数据的过程中需要消耗大量的计算资源。
64.针对上述技术问题,本申请实施例提供了一种虚拟角色的控制方法,能够以简单和低资源消耗的方式触发组合攻击技能。为便于更容易理解本申请实施例提供的虚拟角色的控制方法,首先说明本申请实施例提供的虚拟角色的控制方法的示例性实施场景,本申请实施例提供的虚拟角色的控制方法中虚拟场景可以完全基于终端设备输出,或者基于终端设备和服务器协同输出。
65.在一些实施例中,虚拟场景可以是军事演习仿真中所呈现的画面,用户可以在虚拟场景中,通过属于不同团队的虚拟角色来模拟战局、战略或战术,对于军事作战的指挥有着很大的指导作用。
66.在另一些实施例中,虚拟场景可以是供游戏角色交互的环境,例如可以是供游戏角色在虚拟场景中进行对战,通过控制虚拟角色的行动可以在虚拟场景中进行双方互动,从而使用户能够在游戏的过程中舒缓生活压力。
67.在一个实施场景中,参见图1a,图1a是本申请实施例提供的虚拟角色的控制方法的应用模式示意图,适用于一些完全依赖终端设备400的图形处理硬件计算能力即可完成虚拟场景100的相关数据计算的应用模式,例如单机版/离线模式的游戏,通过智能手机、平板电脑和虚拟现实/增强现实设备等终端设备400完成虚拟场景的输出。
68.作为示例,图像处理硬件的类型包括中央处理器(cpu,central processin g unit)和图形处理器(gpu,graphics processing unit)。
69.当形成虚拟场景100的视觉感知时,终端设备400通过图形计算硬件计算显示所需要的数据,并完成显示数据的加载、解析和渲染,在图形输出硬件输出能够对虚拟场景形成视觉感知的视频帧,例如,在智能手机的显示屏幕呈现二维的视频帧,或者,在增强现实/虚拟现实眼镜的镜片上投射实现三维显示效果的视频帧;此外,为了丰富感知效果,终端设备400还可以借助不同的硬件来形成听觉感知、触觉感知、运动感知和味觉感知的一种或多种。
70.作为示例,终端设备400上运行有客户端410(例如单机版的游戏应用),在客户端410的运行过程中输出包括有角色扮演的虚拟场景,虚拟场景是供游戏角色交互的环境,例如可以是用于供游戏角色进行对战的平原、街道、山谷等等;虚拟场景中包括相互对抗的第一阵营和第二阵营,第一阵营中包括第一虚拟角色110和队友角色120,第二阵营中包括第二虚拟角色130。其中,第一虚拟角色110可以是受用户(或称玩家)控制的游戏角色,即第一
虚拟角色110受控于真实用户,将响应于真实用户针对控制器(包括触控屏、声控开关、键盘、鼠标和摇杆等)的操作而在虚拟场景中运动,例如当真实用户向左移动摇杆时,虚拟角色将在虚拟场景中向左部移动,还可以保持原地静止、跳跃以及使用各种功能(如技能和道具)。
71.举例来说,当第一阵营中的第一虚拟角色110与队友角色120在虚拟场景100中所处的位置满足组合攻击技能触发条件(例如当第一虚拟角色110和队友角色120在虚拟场景100中所处的位置符合设定位置关系时,确定满足组合攻击技能触发条件)时,显示向第二阵营中的第二虚拟角色130释放的组合攻击技能,即依次在虚拟场景100中显示第一虚拟角色110针对第二虚拟角色130释放的至少一次攻击技能、以及队友角色120针对第二虚拟角色130释放的至少一次攻击技能;同时,还可以在虚拟场景100中显示第二虚拟角色130响应于组合攻击技能的状态。
72.在另一个实施场景中,参见图1b,图1b是本申请实施例提供的虚拟角色的控制方法的应用模式示意图,应用于终端设备400和服务器200,适用于依赖服务器200的计算能力完成虚拟场景计算、并在终端设备400输出虚拟场景的应用模式。
73.以形成虚拟场景100的视觉感知为例,服务器200进行虚拟场景相关显示数据的计算并通过网络300发送到终端设备400,终端设备400依赖于图形计算硬件完成计算显示数据的加载、解析和渲染,依赖于图形输出硬件输出虚拟场景以形成视觉感知,例如可以在智能手机的显示屏幕呈现二维的视频帧,或者,在增强现实/虚拟现实眼镜的镜片上投射实现三维显示效果的视频帧;对于虚拟场景的形式的感知而言,可以理解,可以借助于终端的相应硬件输出,例如使用麦克风输出形成听觉感知,使用振动器输出形成触觉感知等等。
74.作为示例,终端设备400上运行有客户端410(例如网络版的游戏应用),通过连接游戏服务器(即服务器200)与其他用户进行游戏互动,终端设备400输出客户端410的虚拟场景100,在虚拟场景100中包括相互对抗的第一阵营和第二阵营,在第一阵营中包括第一虚拟角色110和队友角色120,在第二阵营中包括第二虚拟角色130。其中,第一虚拟角色110可以是受用户控制的游戏角色,即第一虚拟角色110受控于真实用户,将响应于真实用户针对控制器(包括触控屏、声控开关、键盘、鼠标和摇杆等)的操作而在虚拟场景中运动,例如当真实用户向左移动摇杆时,虚拟角色将在虚拟场景中向左部移动,还可以保持原地静止、跳跃以及使用各种功能(如技能和道具)。
75.举例来说,当第一阵营中的第一虚拟角色110与队友角色120在虚拟场景100中所处的位置满足组合攻击技能触发条件时,显示向第二阵营中的第二虚拟角色130释放的组合攻击技能,即依次在虚拟场景100中显示第一虚拟角色110针对第二虚拟角色130释放的至少一次攻击技能、以及队友角色120针对第二虚拟角色130释放的至少一次攻击技能;同时,还可以在虚拟场景100中显示第二虚拟角色130响应于组合攻击技能的状态。
76.在另一些实施例中,当第一虚拟角色和至少一个队友角色均具有多个攻击技能时,例如假设第一虚拟角色具有3个攻击技能,分别为攻击技能1、攻击技能2和攻击技能3;队友角色a具有2个攻击技能,分别为攻击技能4和攻击技能5,则上述组合攻击技能的释放顺序可以是每轮每个虚拟角色释放一次,即攻击技能的释放顺序为:第一虚拟角色释放攻击技能1

>队友角色a释放攻击技能4

>第一虚拟角色释放攻击技能2

>队友角色a释放攻击技能5

>第一虚拟角色释放攻击技能3;当然,上述的组合攻击技能的释放顺序也可以是每
轮每个虚拟角色一次性释放完多个攻击技能,随后下一个虚拟角色进行攻击,即攻击技能的释放顺序为:第一虚拟角色释放攻击技能1

>第一虚拟角色释放攻击技能2

>第一虚拟角色释放攻击技能3

>队友角色a释放攻击技能4

>队友角色a释放攻击技能5。
77.在一些实施例中,终端设备400可以通过运行计算机程序来实现本申请实施例提供的虚拟角色的控制方法,例如,计算机程序可以是操作系统中的原生程序或软件模块;可以是本地(native)应用程序(app,application),即需要在操作系统中安装才能运行的程序,例如游戏app(即上述的客户端410);也可以是小程序,即只需要下载到浏览器环境中就可以运行的程序;还可以是能够嵌入至任意app中的游戏小程序。总而言之,上述计算机程序可以是任意形式的应用程序、模块或插件。
78.本申请实施例还可以借助于云技术(cloud technology)实现,云技术是指在广域网或局域网内将硬件、软件、网络等系列资源统一起来,实现数据的计算、储存、处理和共享的一种托管技术。
79.云技术是基于云计算商业模式应用的网络技术、信息技术、整合技术、管理平台技术、以及应用技术等的总称,可以组成资源池,按需所用,灵活便利。云计算技术将变成重要支撑。技术网络系统的后台服务需要大量的计算、存储资源。
80.示例的,图1b中的服务器200可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、cdn、以及大数据和人工智能平台等基础云计算服务的云服务器。终端400可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表等,但并不局限于此。终端设备400以及服务器200可以通过有线或无线通信方式进行直接或间接地连接,本申请实施例中不做限制。
81.下面对本申请实施例提供的电子设备的结构进行说明,电子设备可以是图1a和图1b中示出的终端设备400。参见图2,图2是本申请实施例提供的终端设备400的结构示意图,图2所示的终端设备400包括:至少一个处理器460、存储器450、至少一个网络接口420和用户接口430。终端设备400中的各个组件通过总线系统440耦合在一起。可理解,总线系统440用于实现这些组件之间的连接通信。总线系统440除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图2中将各种总线都标为总线系统440。
82.处理器460可以是一种集成电路芯片,具有信号的处理能力,例如通用处理器、数字信号处理器(dsp,digital signal processor),或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等,其中,通用处理器可以是微处理器或者任何常规的处理器等。
83.用户接口430包括使得能够呈现媒体内容的一个或多个输出装置431,包括一个或多个扬声器和/或一个或多个视觉显示屏。用户接口430还包括一个或多个输入装置432,包括有助于用户输入的用户接口部件,比如键盘、鼠标、麦克风、触屏显示屏、摄像头、其他输入按钮和控件。
84.存储器450可以是可移除的,不可移除的或其组合。示例性的硬件设备包括固态存储器,硬盘驱动器,光盘驱动器等。存储器450可选地包括在物理位置上远离处理器460的一个或多个存储设备。
85.存储器450包括易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。非易失性存储器可以是只读存储器(rom,read only memory),易失性存储器可以是随机存取存储器(ram,random access memory)。本申请实施例描述的存储器450旨在包括任意适合类型的存储器。
86.在一些实施例中,存储器450能够存储数据以支持各种操作,这些数据的示例包括程序、模块和数据结构或者其子集或超集,下面示例性说明。
87.操作系统451,包括用于处理各种基本系统服务和执行硬件相关任务的系统程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务;
88.网络通信模块452,用于经由一个或多个(有线或无线)网络接口420到达其他计算设备,示例性的网络接口420包括:蓝牙、无线相容性认证(wifi)、和通用串行总线(usb,universal serial bus)等;
89.呈现模块453,用于经由一个或多个与用户接口430相关联的输出装置431(例如,显示屏、扬声器等)使得能够呈现信息(例如,用于操作外围设备和显示内容和信息的用户接口);
90.输入处理模块454,用于对一个或多个来自一个或多个输入装置432之一的一个或多个用户输入或互动进行检测以及翻译所检测的输入或互动。
91.在一些实施例中,本申请实施例提供的装置可以采用软件方式实现,图2示出了存储在存储器450中的虚拟角色的控制装置455,其可以是程序和插件等形式的软件,包括以下软件模块:显示模块4551、获取模块4552和调用模块4553,这些模块是逻辑上的,因此根据所实现的功能可以进行任意的组合或进一步拆分。需要指出,在图2中为了方便表达,一次性示出了上述模块,但是不应视为在虚拟角色的控制装置455排除了可以只包括显示模块4551的实施,将在下文中说明各个模块的功能。
92.下面将结合附图对本申请实施例提供的虚拟角色的控制方法进行说明。本申请实施例提供的虚拟角色的控制方法可以由图1a中的终端设备400单独执行,也可以由图1b中的终端设备400和服务器200协同执行。
93.下面,以由图1a中的终端设备400执行本申请实施例提供的虚拟角色的控制方法为例说明。参见图3,图3是本申请实施例提供的虚拟角色的控制方法的流程示意图,将结合图3示出的步骤进行说明。
94.需要说明的是,图3示出的方法可以由终端设备400运行的各种形式计算机程序执行,并不局限于上述的客户端410,例如上文所述的操作系统551、软件模块和脚本,因此客户端不应视为对本申请实施例的限定。
95.在步骤s101中,显示虚拟场景。
96.这里,在终端设备的人机交互界面中显示的虚拟场景中可以包括相互对抗的第一阵营和第二阵营。其中,在第一阵营中包括第一虚拟角色(例如玩家控制的虚拟角色)和至少一个队友角色(可以是其他玩家控制的虚拟角色或者是机器人程序控制的虚拟角色);第二阵营中至少包括一个第二虚拟角色(可以是其他玩家控制的虚拟角色或者是机器人程序控制的虚拟角色)。
97.在一些实施例中,在人机交互界面中可以是以第一人称视角显示虚拟场景(例如以玩家自己的视角来扮演游戏中的第一虚拟角色);也可以是以第三人称视角显示虚拟场
景(例如玩家追着游戏中的第一虚拟角色来进行游戏);还可以是以鸟瞰大视角显示虚拟场景;其中,上述的视角之间可以任意切换。
98.作为示例,第一虚拟角色可以是由游戏或者军事仿真中的用户所控制的对象,当然,虚拟场景中还可以包括其他的虚拟角色,可以由其他用户控制或由机器人程序控制。第一虚拟角色可以被划分到多个团队中的任意一个团队中,团队之间可以是敌对关系或协作关系,虚拟场景中的团队可以包括上述关系的一种或者全部。
99.以第一人称视角显示虚拟场景为例,在人机交互界面中显示的虚拟场景可以包括:根据第一虚拟角色在完整虚拟场景中的观看位置和视场角,确定第一虚拟角色的视场区域,呈现完整虚拟场景中位于视场区域中的部分虚拟场景,即所显示的虚拟场景可以是相对于全景虚拟场景的部分虚拟场景。因为第一人称视角是最能够给用户冲击力的观看视角,如此,能够实现用户在操作过程中身临其境的沉浸式感知。
100.以鸟瞰大视角显示虚拟场景为例,在人机交互界面中显示的虚拟场景可以包括:响应于针对全景虚拟场景的缩放操作,在人机交互界面中呈现对应缩放操作的部分虚拟场景,即所显示的虚拟场景可以是相对于全景虚拟场景的部分虚拟场景。如此,能够提高用户在操作过程中的可操作性,从而能够提高人机交互的效率。
101.在步骤s102中,响应于第一阵营中的第一虚拟角色与至少一个队友角色的位置满足组合攻击技能触发条件,显示向第二阵营中的第二虚拟角色释放的组合攻击技能。
102.在一些实施例中,组合攻击技能触发条件可以包括以下至少之一:第二虚拟角色在虚拟场景中所处的位置处于第一虚拟角色的攻击范围内,且处于至少一个队友角色的攻击范围内;第一虚拟角色相对于至少一个队友角色的方位是设定方位或属于设定方位范围。
103.示例的,以战棋游戏为例,假设第一虚拟角色的攻击范围是以第一虚拟角色所处的位置为圆心,半径为3格(也称地格,即以正方形为单位的逻辑单元格,在战棋游戏中,一定数量的相连地格可以组成关卡地图)的圆形区域,同时,假设第二虚拟角色与第一虚拟角色相隔2格,即第二虚拟角色处于第一虚拟角色的攻击范围内;同时,假设在虚拟场景中还存在一个与第一虚拟角色属于同一阵营的队友角色a,且队友角色a与第二虚拟角色相隔1格,且队友角色a的攻击范围也是半径为3格的圆形区域,即第二虚拟角色同时也处于队友角色a的攻击范围内,则终端设备可以确定第一虚拟角色与队友角色a的位置满足组合攻击技能触发条件。也就是说,当第一虚拟角色与队友角色a的位置符合设定位置关系时,可以结成阵容组合,并向第二虚拟角色释放组合攻击技能。
104.示例的,参见图4a,图4a是本申请实施例提供的虚拟角色的控制方法的应用场景示意图。如图4a所示,第一虚拟角色401的攻击范围为第一圆形区域402,队友角色403的攻击范围为第二圆形区域404,当第二虚拟角色407处于第一圆形区域402和第二圆形区域404的交叉范围406时(此时,第一虚拟角色401和队友角色403均能攻击到第二虚拟角色407),则终端设备确定第一虚拟角色与队友角色的位置满足组合攻击技能触发条件。
105.示例的,当虚拟角色的攻击范围具有方向性(即不同方向的攻击范围不同)时,还需要考虑第一虚拟角色以及至少一个队友角色的方位。例如,当第二虚拟角色在虚拟场景中所处的位置处于第一虚拟角色当前的方位(即第一虚拟角色当前的朝向)对应的攻击范围时,且处于与第一虚拟角色属于同一阵营的队友角色b当前的方位(即队友角色b当前的
朝向)对应的攻击范围内时,终端设备确定第一虚拟角色与队友角色b的位置满足组合攻击技能触发条件。
106.示例的,除了攻击范围外,上述的设定位置关系还可以与虚拟角色的方位有关,例如,当第一虚拟角色和至少一个队友角色同时能攻击到第二虚拟角色,且第一虚拟角色相对于至少一个队友角色的方位是设定方位或属于设定方位范围时,终端设备确定第一虚拟角色与至少一个队友角色的位置满足组合攻击技能触发条件。例如,假设在多个符合攻击范围的队友角色中,只有队友角色c处于第一虚拟角色的视线范围内,则终端设备确定第一虚拟角色和队友角色c的位置满足组合攻击技能触发条件。
107.示例的,参见图4b,图4b是本申请实施例提供的虚拟角色的控制方法的应用场景示意图。如图4b所示,第一虚拟角色408的攻击范围为第一圆形区域409,第一队友角色410的攻击范围为第二圆形区域411,第二队友角色412的攻击范围为第三圆形区域413,且第二虚拟角色414处于第一圆形区域409、第二圆形区域411和第三圆形区域413共同的交叉区域415内,即第一虚拟角色408、第一队友角色410和第二队友角色412均能攻击到第二虚拟角色414,但第一队友角色410的方位相较于第一虚拟角色408不属于设定方位范围,例如当用户以第一人称的模式控制第一虚拟角色408时,第一队友角色410不在第一虚拟角色408的视野范围内,而第二队友角色412在第一虚拟角色408的视野范围内,则终端设备确定第一虚拟角色408与第二队友角色412的位置满足组合攻击技能触发条件,并挑选第二队友角色412参与后续的连携攻击。
108.需要说明的是,本申请实施例中涉及的第二虚拟角色只是一类角色,而并非限定为一个虚拟角色,第二虚拟角色的数量也可以包括多个。例如,当第二阵营中存在多个虚拟角色时,这些虚拟角色均可以作为第二虚拟角色。
109.在一些实施例中,终端设备可以通过以下方式实现上述的响应于第一阵营中的第一虚拟角色与至少一个队友角色的位置满足组合攻击技能触发条件,显示向第二阵营中的第二虚拟角色释放的组合攻击技能:响应于第一阵营中的第一虚拟角色与至少一个队友角色的位置满足组合攻击技能触发条件,且第一虚拟角色与至少一个队友角色的角色类型符合设定阵容组合,显示向第二阵营中的第二虚拟角色释放的组合攻击技能;其中,设定阵容组合包括以下至少之一:第一虚拟角色等级低于或等于至少一个队友角色的等级;第一虚拟角色与至少一个队友角色的属性(属性可以是指虚拟角色所具有的功能,不同属性的虚拟角色具有不同的功能。例如,属性可以包括力量、智力和敏捷,对于属性为力量的虚拟角色来说,其对应的功能可以是负责承受损害;对于属性为智力的虚拟角色来说,其对应的功能可以是负责治疗;而对于属性为敏捷的虚拟角色来说,其对应的功能可以是负责攻击)相同(例如第一虚拟角色和队友角色的属性都是敏捷,均负责攻击)或者相互适配(例如第一虚拟角色的属性为敏捷,队友角色的属性为智力,即一个负责攻击、一个负责治疗);第一虚拟角色与至少一个队友角色的技能相同(例如,均是对第二虚拟角色的血量造成损害)或者相互适配(例如能够对第二虚拟角色造成血量、降低移动速度、增加技能等待时间等不同方面的损害)。
110.示例的,终端设备在从虚拟场景中筛选出满足组合攻击技能触发条件的多个队友角色后,还可以根据设定阵容组合从多个满足组合攻击技能触发条件的队友角色中筛选出符合设定阵容组合的队友角色,以作为最终与第一虚拟角色协同释放组合攻击技能的角
色。例如,假设终端设备从虚拟场景中筛选出的满足组合攻击技能触发条件的队友角色为虚拟角色a、虚拟角色b、虚拟角色c和虚拟角色d,且第一虚拟角色当前的等级为60级,而虚拟角色a的等级为65级、虚拟角色b的等级为70级、虚拟角色c的等级为59级、虚拟角色d的等级为62级,则终端设备将虚拟角色c确定为后续与第一虚拟角色协同释放组合攻击技能的角色。
111.示例的,设定阵容组合还可以与虚拟角色的属性相关,例如当第一虚拟角色的属性为力量(其对应的功能是负责承受损害,具有较强的防御能力)时,可以将属性为敏捷(其对应的功能是负责攻击,具有较强的攻击能力)的角色确定为符合设定阵容组合的角色,如此,通过不同属性之间的搭配,能够提高阵容组合的持续战斗能力,节约了重复发起组合攻击技能的操作和计算资源。
112.示例的,设定阵容组合还可以与虚拟角色的技能相关,例如当第一虚拟角色的攻击类型为物理攻击时,可以将攻击类型为魔法攻击的角色确定为符合设定阵容组合的角色,如此,通过技能搭配,能够对第二虚拟角色造成不同方面的损害,以实现损害的最大化,节约了重复发起组合攻击技能的操作和计算资源。
113.在一些实施例中,终端设备在根据上述符合设定阵容组合的条件筛选队友角色时可以采用一定的先后顺序,例如终端设备首先从多个满足组合攻击技能触发条件的队友角色中筛选等级相同或相近的角色,以与第一虚拟角色结成阵容组合;当不存在时,继续从多个队友角色中筛选属性相同或者相适配的角色;当仍然不存在时,再从多个队友角色中筛选技能相同或相适配的角色。此外,终端设备在筛选时,优先选择等级、属性、技能相同的队友角色,当不存在时,则选择等级更高的或者属性、技能接近的队友角色。
114.在一些实施例中,组合攻击技能还可以与虚拟角色的状态(例如生命值、魔法值等)相关。例如,只有当第一虚拟角色当前的状态值达到状态阈值时(例如魔法值大于魔法阈值,足够第一虚拟角色释放相应的技能),才能与满足组合攻击技能触发条件、或者同时满足组合攻击技能触发条件和设定阵容组合的队友角色结成阵容组合,以释放组合攻击技能。
115.在一些实施例中,终端设备在显示向第二阵营中的第二虚拟角色释放的组合攻击技能之前,还可以执行以下处理:针对虚拟场景中满足组合攻击技能触发条件的至少一个队友角色,显示与至少一个队友角色对应的提示标识;其中,提示标识可以是各种形式,例如文字、特效或二者的组合,用于表征至少一个队友角色能够与第一虚拟角色结成阵容组合;响应于针对至少一个队友角色的选择操作,显示向第二阵营中的第二虚拟角色释放的组合攻击技能;其中,组合攻击技能包括第一虚拟角色释放的至少一次攻击技能、以及被选中的队友角色释放的至少一次攻击技能。
116.示例的,参见图4c,图4c是本申请实施例提供的虚拟角色的控制方法的应用场景示意图。如图4c所示,当用户想控制第一虚拟角色416攻击属于敌对阵营的第二虚拟角色420时,针对虚拟场景400中满足组合攻击技能触发条件的队友角色,终端设备可以显示对应的提示标识。例如,对于满足组合攻击技能触发条件的队友角色418,可以在队友角色418的脚下显示对应的提示标识419,用于提示用户队友角色418是可以与第一虚拟角色416结成阵容组合的虚拟角色。此外,当终端设备接收到用户针对第二虚拟角色触发的攻击指令时,还可以在第一虚拟角色416的脚下显示对应的攻击标识417、以及在第二虚拟角色420的
脚下显示对应的被攻击标识421。
117.需要说明的是,图4c中示出的提示标识的显示方式只是一种可能的示例,在实际应用中,还可以在虚拟角色的头部显示提示标识,或者通过为虚拟角色添加特效的方式来达到对应的提示目的,本申请实施例对此不作限定。
118.在一些实施例中,当第二阵营中的第二虚拟角色具有先攻技能(即第二虚拟角色具有优先释放技能的特权)时,终端设备在显示向第二阵营中的第二虚拟角色释放的组合攻击技能之前,还可以执行以下处理:显示第二虚拟角色向第一虚拟角色释放的至少一次攻击技能,以及显示第一虚拟角色响应于第二虚拟角色释放的至少一次攻击技能的状态。
119.示例的,当第二阵营中的第二虚拟角色(即玩家准备攻击的虚拟角色)具有先攻技能时,则对应的战斗时间轴为:第二虚拟角色对第一虚拟角色进行攻击

>第一虚拟角色对第二虚拟角色进行攻击

>队友角色继续对第二虚拟角色进行攻击。也就是说,终端设备在响应于第一阵容中的第一虚拟角色与至少一个队友角色的位置满足组合攻击技能触发条件时,首先显示第二虚拟角色向第一虚拟角色释放的至少一次攻击技能,以及显示第一虚拟角色响应于第二虚拟角色释放的至少一次攻击技能的状态,例如第二虚拟角色没有打到第一虚拟角色,或者第一虚拟角色在承受第二虚拟角色的攻击后,对应的生命值减低的状态。
120.在一些实施例中,当第二阵营中存在具有护卫技能的第三虚拟角色时,终端设备在显示向第二虚拟角色释放的组合攻击技能之前,还可以执行以下处理:显示向第三虚拟角色释放的组合攻击技能,以及显示第三虚拟角色响应于组合攻击技能的状态。
121.示例的,第二阵营中还可能存在具有护卫技能的第三虚拟角色,用于保护第二虚拟角色,此时,用户想要攻击第二虚拟角色时,首先需要攻击第三虚拟角色,也就是说,终端设备在响应于第一阵营中的第一虚拟角色与至少一个队友角色的位置满足组合攻击技能触发条件时,首先显示向第三虚拟角色释放的组合攻击技能,以及显示第三虚拟角色响应于组合攻击技能的状态,例如由于承受组合攻击技能而处于死亡的状态。
122.需要说明的是,在实际应用中,第三虚拟角色也可能响应于组合攻击技能而处于逃跑状态、丧失护卫能力(例如第三虚拟角色的护盾由于承受组合攻击技能而破裂,从而丧失护卫第二虚拟角色的能力)、或者丧失攻击能力的状态等。
123.在另一些实施例中,承接上文,当第三虚拟角色响应于组合攻击技能包括的第一虚拟角色释放的至少一次攻击技能而处于死亡状态时(或者逃跑、丧失护卫能力等其他无法为第二虚拟角色继续提供护卫时),终端设备还用于执行以下处理:显示至少一个队友角色向第二虚拟角色释放的至少一次攻击技能,以及显示第二虚拟角色响应于至少一个队友角色释放的至少一次攻击技能的状态。
124.示例的,当第三虚拟角色在承受组合攻击技能包括的第一虚拟角色释放的至少一次攻击技能而处于死亡状态时(第三虚拟角色从虚拟场景中消失),此时,与第一虚拟角色结成阵容组合的至少一个队友角色可以继续攻击第二虚拟角色,也就是说,终端设备可以切换至显示至少一个队友角色向第二虚拟角色释放的至少一次攻击技能,以及显示第二虚拟角色响应于至少一个队友角色释放的至少一次攻击技能的状态,例如第二虚拟角色闪避了至少一个队友角色释放的攻击技能,或者第二虚拟角色由于承受至少一个队友角色释放的攻击技能而处于死亡的状态。
125.在一些实施例中,终端设备还可以通过以下方式实现上述的响应于第一阵营中的第一虚拟角色与至少一个队友角色的位置满足组合攻击技能触发条件,显示向第二阵营中的第二虚拟角色释放的组合攻击技能:响应于第一阵营中的第一虚拟角色与多个队友角色的位置满足组合攻击技能触发条件,将多个队友角色中攻击力最高的(或者攻击力降序排序靠前的至少一个)队友角色与第一虚拟角色结成阵容组合,并显示阵容组合向第二虚拟角色释放的组合攻击技能;其中,组合攻击技能包括第一虚拟角色释放的至少一次攻击技能、以及攻击力最高的队友角色释放的至少一次攻击技能。
126.示例的,当虚拟场景中存在多个满足组合攻击技能触发条件的队友角色,且在超过等待时间(例如10秒钟)后也没有接收到用户针对多个队友角色的选择操作时,终端设备可以根据队友角色的攻击力对多个队友角色进行降序排序,并将攻击力最高的一个或者排序靠前的至少一个队友角色与第一虚拟角色结成阵容组合,并根据阵容组合显示向第二虚拟角色释放的组合攻击技能。
127.在一些实施例中,组合攻击技能还可以是通过调用机器学习模型预测得到的。其中,机器学习模型可以是在终端设备本地运行的,例如服务器在训练好机器学习模型后,将训练好的机器学习模型下发给终端设备;机器学习模型也可以是部署在服务器中的,例如,终端设备在采集到第一虚拟角色、至少一个队友角色以及第二虚拟角色的特征数据后,将特征数据上传至服务器,以使服务器基于特征数据调用机器学习模型,以确定出对应的组合攻击技能,并将确定出的组合攻击技能返回给终端设备,如此,通过机器学习模型来精确预测组合技能,避免了攻击技能不必要的重复释放,节约了终端设备的计算资源。
128.示例的,终端设备在响应于第一阵营中的第一虚拟角色与至少一个队友角色的位置满足组合攻击技能触发条件时,还可以执行以下处理:获取第一虚拟角色、至少一个队友角色、以及第二虚拟角色分别对应的特征数据,并调用机器学习模型确定组合攻击技能包括的第一虚拟角色和队友角色分别对应的攻击技能的释放次数、以及每次释放的攻击技能的类型;其中,特征数据包括以下至少之一:状态、技能等待时间(也称为冷却时间,是指连续使用同一技能(或道具)所需等待的时间,简称cd)、技能攻击强度。
129.示例的,以机器学习模型为神经网络模型为例,参见图5,图5是本申请实施例提供的神经网络模型训练和应用的示意图,涉及神经网络模型的训练和应用两个阶段。神经网络模型的具体类型不做限定,例如可以是卷积神经网络模型、深度神经网络等。
130.对于神经网络模型的训练阶段来说,主要涉及以下几个部分:(a)采集训练样本;(b)对训练样本进行预处理;(c)使用预处理后的训练样本对神经网络模型进行训练,下面分别进行说明。
131.(a)采集训练样本,在本申请的一些实施例中,可以由真实玩家控制第一虚拟角色和队友角色结成阵容组合,并对第二虚拟角色释放组合攻击技能,并记录在攻击过程中的游戏基本信息(例如真实玩家控制的阵容组合是否获得胜利、第一虚拟角色各技能的冷却时间、队友角色各技能的冷却时间等)、场景实时信息(例如第一虚拟角色当前的状态(例如生命值和魔法值等)、队友角色当前的状态、以及第二虚拟角色当前的状态(例如第二虚拟角色当前的血量、魔法值、以及各个技能的等待时间)等)、以及真实玩家的操作数据(例如第一虚拟角色每次释放的技能类型、技能释放的次数等)样本等,随后,将所记录的数据组合得到的数据集作为神经网络模型的训练样本。
132.(b)对训练样本进行预处理,包括:对采集的训练样本进行筛选、归一化处理、以及编码处理等操作。
133.示例的,有效数据的筛选包括:从采集的训练样本中选取最终获取的释放的攻击技能的类型、以及对应的释放次数。
134.示例的,场景信息的归一化处理包括:将场景数据归一化到[0,1],例如,对于第一虚拟角色拥有的技能1对应的冷却时间,可以通过以下方式进行归一化处理:
[0135]
归一化后第一虚拟角色技能1cd=第一虚拟角色技能1cd/技能1总cd。
[0136]
其中,技能1总cd是指第一虚拟角色技能1cd和队友角色技能1cd的加和。
[0137]
示例的,可以采用独热(one

hot)编码的方式将操作数据序列化,例如对于操作数据[第一虚拟角色当前的状态值是否大于状态阈值,队友角色当前的状态值是否大于状态阈值,第二虚拟角色当前的状态值是否大于状态阈值,

,第一虚拟角色是否释放技能1,队友角色是否释放技能1],将真实玩家进行的操作所对应的比特位设为1,其他为0。例如,当第二虚拟角色当前的状态值大于状态阈值时,则编码为[0,0,1,

,0,0]。
[0138]
(c)使用预处理后的训练样本对神经网络模型进行训练。
[0139]
示例的,使用预处理后的训练样本对神经网络模型进行训练,例如,可以将第一虚拟角色、队友角色、以及第二虚拟角色的特征数据(包括状态、技能等待时间、技能攻击强度等)作为输入,组合攻击技能中攻击技能的释放次数、以及每次释放的攻击技能的类型作为输出,具体如下:
[0140]
输入:[第一虚拟角色的特征数据,队友角色的特征数据,第二虚拟角色的特征数据];
[0141]
输出:[第一虚拟角色攻击技能的释放次数,第一虚拟角色每次释放的攻击技能的类型,队友角色攻击技能的释放次数,第一虚拟角色每次释放的攻击技能的类型]。
[0142]
示例的,参见图6,图6是本申请实施例提供的神经网络模型的结构示意图,如图6所示,神经网络模型包括输入层、中间层(中间层1和中间层2)和输出层,其中,神经网络模型的训练可以按照逆向传播(bp,back propagation)神经网络算法在终端设备上完成;当然,除了bp神经网络外,还可以采用其他类型的神经网络,例如循环神经网络(rnn,recurrent neural network)。
[0143]
在另一些实施例中,参见图7,图7是本申请实施例提供的神经网络模型根据特征数据确定组合攻击技能的示意图。如图7所示,对于神经网络模型的应用阶段来说,涉及以下几个部分:(a)实时获取攻击过程中的场景数据;(b)对场景数据进行预处理;(c)将预处理后的场景数据输入训练好的神经网络模型中,计算获得模型输出的组合攻击技能;(d)根据模型输出的组合攻击技能调用对应的操作接口,使第一虚拟角色和队友角色释放组合攻击技能;下面分别进行说明。
[0144]
(a)攻击过程中场景数据的实时获取
[0145]
在第一虚拟角色和队友角色结成阵容组合后,游戏程序实时获取攻击过程中的场景数据,例如第一虚拟角色的特征数据、队友角色的特征数据、第二虚拟角色的特征数据等。
[0146]
(b)场景数据的预处理
[0147]
在游戏程序中对场景数据进行预处理,具体方式与训练样本的预处理一致,包括
进行场景数据的归一化处理等。
[0148]
(c)组合攻击技能的获取
[0149]
在游戏程序中,将预处理后的场景数据作为输入,由训练好的神经网络模型进行计算得到输出,即组合攻击技能,包括第一虚拟角色和队友角色分别对应的释放的攻击技能的次数、以及每次释放的攻击技能的类型等。
[0150]
(d)组合攻击技能的执行
[0151]
神经网络模型的输出是一组数字,分别与[第一虚拟角色是否释放技能1,第一虚拟角色是否释放技能2,第一虚拟角色释放技能1的次数是否大于次数阈值,

,队友角色是否释放技能1]相对应,根据输出结果,调用对应的操作接口执行输出中最大值项所对应的游戏操作。
[0152]
在一些实施例中,终端设备可以通过以下方式显示向第二阵营中的第二虚拟角色释放的组合攻击技能:当第一虚拟角色的攻击范围小于范围阈值、且至少一个队友角色的攻击范围大于范围阈值时,在第一虚拟角色释放至少一次攻击技能的过程中,控制至少一个队友角色处于与第一虚拟角色固定的位置;当第一虚拟角色、以及至少一个队友角色的攻击范围均大于范围阈值时,在第一虚拟角色释放至少一次攻击技能的过程中,控制至少一个队友角色处于虚拟场景中的固定位置。
[0153]
示例的,当第一虚拟角色为近战(即第一虚拟角色的攻击范围小于范围阈值,例如第一虚拟角色只能攻击1格以内的其他虚拟角色)、而队友角色b为远程(即队友角色b的攻击范围大于范围阈值,例如队友角色b能够攻击3格以内的其他虚拟角色)时,则终端设备在显示第一虚拟角色释放至少一次攻击技能的过程中,队友角色b始终处于第一虚拟角色的固定位置,例如第一虚拟角色的左前方。
[0154]
示例的,当第一虚拟角色、以及队友角色a均是远程时,则终端设备在显示第一虚拟角色释放至少一次攻击技能的过程中,队友角色b始终处于虚拟场景中的固定位置。例如无论第一虚拟角色是在距离第二虚拟角色3格或者1格的位置进行攻击,队友角色b在虚拟场景中所处的位置不会随之变化。
[0155]
在一些实施例中,在受限状态下是无法触发组合攻击技能的,例如,当终端设备确定第一虚拟角色以及至少一个队友角色中的任一虚拟角色处于异常状态(例如被眩晕、或者处于睡眠、或者状态值小于状态阈值)时,在人机交互界面中显示无法释放组合攻击技能的提示信息。
[0156]
在步骤s103中,显示第二虚拟角色响应于组合攻击技能的状态。
[0157]
在一些实施例中,当第二虚拟角色具有闪避技能时,终端设备显示第二虚拟角色响应于组合攻击技能而未击中(miss)的状态。
[0158]
当一些实施例中,当第二虚拟角色不具有闪避技能时,终端设备显示第二虚拟角色响应于组合攻击技能而死亡(或者生命值降低,但不为0)的状态。
[0159]
在一些实施例中,参见图8,图8是本申请实施例提供的虚拟角色的控制方法的流程示意图。基于图3,当第二虚拟角色响应于组合攻击技能而处于未死亡的状态时,终端设备在执行完步骤s103后,还可以继续执行图8示出的步骤s104和步骤s105,将结合图8示出的步骤进行说明。
[0160]
在步骤s104中,显示第二虚拟角色向第一阵营中的第一虚拟角色释放的至少一次
攻击技能。
[0161]
在一些实施例中,当第二虚拟角色在承受组合攻击技能之后处于未死亡状态时,可以针对第一虚拟角色进行反击,即终端设备在显示完第二虚拟角色响应于组合攻击技能的状态后,可以继续显示第二虚拟角色向第一阵营中的第一虚拟角色释放的至少一次攻击技能。
[0162]
需要说明的是,本申请中第二虚拟角色在进行反击时,仅对第一虚拟角色进行攻击,而不会对队友角色进行攻击,降低了游戏的复杂性,加快了游戏进程。
[0163]
在步骤s105中,显示第一虚拟角色响应于第二虚拟角色释放的至少一次攻击技能的状态。
[0164]
在一些实施例中,当第一虚拟角色具有闪避技能时,终端设备可以显示第一虚拟角色响应于第二虚拟角色释放的至少一次攻击技能而未击中(miss)的状态,即第二虚拟角色没有攻击到第一虚拟角色,第一虚拟角色对应的生命值也不会发生变化。
[0165]
本申请实施例提供的虚拟角色的控制方法,当用户需要控制第一虚拟角色对处于敌对阵营中的第二虚拟角色进行攻击时,终端设备可以通过处于同一阵营中的第一虚拟角色与队友角色在虚拟场景中的位置关系来触发释放组合攻击技能,简化了组合攻击技能的触发机制,进而减少了终端设备计算资源的消耗。
[0166]
下面,以战棋游戏为例,说明本申请实施例在一个实际的应用场景中的示例性应用。
[0167]
战棋游戏是指一类回合制的、角色扮演的、在地图上按格移动虚拟角色进行作战的角色扮演策略游戏。因为这种游戏就像是在下棋一样,故也称为回合制战棋游戏,一般支持电脑端和移动端等多端同步体验。在游戏过程中,用户(或称玩家)可以控制属于同一阵营的两个或多个虚拟角色结成攻击阵型,以对敌对阵营中的目标虚拟角色进行连携攻击。
[0168]
然而,相关技术中,连携攻击(对应于上述的组合攻击技能)的触发机制比较复杂,不易理解,客户端在判定连携攻击触发条件的过程中需要消耗终端设备大量的计算资源,从而导致在呈现连携攻击的画面时容易出现卡顿,影响用户体验;并且,在被攻击方进行反击的过程中也会触发连携攻击,造成游戏的复杂度进一步提高。
[0169]
鉴于此,本申请实施例提供了一种虚拟角色的控制方法,新增通过用户在单局中的阵容组合和攻击站位,来触发多人攻击的连携效果。例如,当主动发起攻击的角色(对应于上述的第一虚拟角色)和连携者(对应于上述的队友角色)处于同一阵营,且两者的站位符合一定的规则时,可以触发连携攻击的效果;同时,当触发连携攻击的过程中,也会有不同的交互提示信息(例如虚拟场景中可参与连携攻击的队友角色的提示信息)、攻击表现和攻击效果。进一步的,在被攻击方(对应于上述的第二虚拟角色)进行反击时不会触发连携攻击,以加快游戏进程。
[0170]
下面对本申请实施例提供的虚拟角色的控制方法进行具体说明。
[0171]
示例的,参见图9,图9是本申请实施例提供的虚拟角色的控制方法的应用场景示意图。如图9所示,当用户想控制图9中示出的第一虚拟角色901攻击属于敌对阵营的第二虚拟角色903时,会在虚拟场景中提示可参与连携攻击的队友角色(例如图9中示出的队友角色902,在队友角色902的脚下呈现有可以参与连携攻击的提示光圈),其中,第一虚拟角色901和队友角色902属于同一个阵营,且第二虚拟角色903同时处于第一虚拟角色901和队友
角色902的攻击范围内,即第一虚拟角色901和队友角色902均能攻击到第二虚拟角色903。同时,还可以在虚拟场景中呈现是否确定进行连携攻击的提示框906,在提示框906中显示有“取消”和“确认”按钮,当客户端接收到用户针对提示框906中显示的“确认”按钮的点击操作时,将第一虚拟角色901和队友角色902结成攻击阵型(或者阵容组合),以在后续的攻击过程中进行连携攻击。
[0172]
此外,如图9所示,还可以在虚拟场景中显示第一虚拟角色901的属性信息904,例如第一虚拟角色901的名称、等级、攻击力、防御力、生命值等信息;以及第二虚拟角色903的属性信息905,例如第二虚拟角色905的等级、名称、攻击力、防御力、以及生命值等信息,如此,通过在虚拟场景中呈现己方角色(即第一虚拟角色901)的属性信息和敌方角色(即第二虚拟角色903)的属性信息,方便用户进行对比以调整后续的作战决策。
[0173]
在一些实施例中,当虚拟场景中存在与第一虚拟角色属于同一阵营的多个队友角色同时满足可参与连携攻击的条件时,客户端可以默认选择攻击力最高(或者防御力最高)的队友角色参与连携攻击,并支持用户手动选择参与连携攻击的队友角色,即客户端可以响应于用户针对多个队友角色的选择操作,将用户所选中的角色确定为后续与第一虚拟角色进行连携攻击的队友角色。
[0174]
在另一些实施例中,当第一虚拟角色或者队友角色中的任一角色处于异常状态时,无法进行连携攻击。例如,当第一虚拟角色当前处于被眩晕、或者被睡眠等异常状态时,无法进行连携攻击,即不会在虚拟场景中显示如图9示出的提示框906。
[0175]
示例的,参见图10,图10是本申请实施例提供的虚拟角色的控制方法的应用场景示意图。如图10所示,当用户在点击图9中示出的提示框906中的“确认”按钮后,客户端进行响应,并跳转至如图10所示的呈现连携攻击的攻击表现的画面。当第一虚拟角色1001对处于敌对阵营的第二虚拟角色1003进行攻击后,队友角色1002进入连携战斗,并对第二虚拟角色1003进行攻击(图10中示出了队友角色1002正在移动至第二虚拟角色1003所处的位置,以进行攻击的画面)。此外,还可以在虚拟场景中显示第一虚拟角色1001的生命值和状态(例如怒气值、魔法值等)1004、以及第二虚拟角色1003的生命值和状态(例如怒气值、魔法值等)1005。
[0176]
在一些实施例中,当敌对阵营中有护卫技能的虚拟角色参与战斗时,则优先攻击具有护卫技能的虚拟角色。例如,当与图10中示出的第二虚拟角色1003属于同一个阵营、且具有护卫技能的第三虚拟角色参与战斗时,则图10中示出的第一虚拟角色1001和队友角色1002首先攻击敌对阵营中具有护卫技能的第三虚拟角色,当第三虚拟角色死亡后,才可以继续攻击第二虚拟角色1003。
[0177]
在另一些实施例中,当第一虚拟角色是个近战(即第一虚拟角色的攻击范围小于范围阈值,例如只能攻击1格范围内的目标),而队友角色是个远程(即队友角色的攻击范围大于范围阈值,例如可以攻击3格范围内的目标)时,客户端在呈现连携攻击的战斗表现时,队友角色处于第一虚拟角色的固定位置(例如队友角色可以在第一虚拟角色的左前方固定位置);而当第一虚拟角色和队友角色都是远程时,客户端在呈现连携攻击的战斗表现时,队友角色的位置是固定的,即队友角色不会随着第一虚拟角色的移动而移动。
[0178]
示例的,参见图11,图11是本申请实施例提供的虚拟角色的控制方法的应用场景示意图。如图11所示,队友角色1102在完成针对第二虚拟角色1103的攻击后,退回到第一虚
拟角色1101的固定位置,例如退回到第一虚拟角色1101的左前方固定位置。同时,在第一虚拟角色1101和队友角色1102均完成针对第二虚拟角色1103的攻击后,呈现第二虚拟角色1103响应于第一虚拟角色1101和队友角色1102的连携攻击后的状态,例如图11中示出的“死亡”状态。也就是说,客户端将第一虚拟角色1101发动的攻击和队友角色1102发动的攻击确定为一次完整的攻击,当第二虚拟角色1103在承受第一虚拟角色1101的攻击而处于“死亡”状态时,客户端仍会继续呈现队友角色1102针对第二虚拟角色1103的攻击画面。也就是说,本申请实施例提供的虚拟角色的控制方法在处理游戏数据时采用了由客户端基于本地逻辑进行判断的实现方式,连携攻击造成的损害以及效果变化会在单局结算后进行统一的异步验证。
[0179]
此外,如图11所示,还可以在虚拟场景中显示第一虚拟角色1101在进行攻击后的生命值和状态(例如怒气值、魔法值等)1105,以及第二虚拟角色1103在承受第一虚拟角色1101和队友角色1102的连携攻击后的剩余的生命值和状态(例如怒气值、魔法值等)1104,例如当第二虚拟角色1103死亡时,其对应的生命值将变为0。
[0180]
下面对触发连携攻击的规则进行说明。
[0181]
示例的,在游戏过程中,当用户想要控制虚拟角色(即上述的第一虚拟角色)针对虚拟场景中的目标角色(即上述的处于敌对阵营的第二虚拟角色)进行攻击时,客户端可以根据用户所控制的虚拟角色的站位以及阵营信息,筛选出虚拟场景中可以参与连携攻击的队友角色。例如,参见图12,图12是本申请实施例提供的触发连携攻击的规则示意图。如图12所示,客户端可以根据用户所控制的虚拟角色的位置(例如图12中示出的“主动进行普攻”1201所在的位置)和被攻击方(对应于上述的第二虚拟角色)所处的位置(例如图12中示出的“目标”1203所在的位置)确定出虚拟场景中可以参与连携攻击的位置(例如图12中示出的“可连携攻击”1203所在的位置),并在处于这些位置(即图12中示出的多个“可连携攻击”1203)上的、且与用户所控制的虚拟角色属于同一阵营的角色的身上呈现提示信息,以提示用户这些角色可以参与连携攻击。
[0182]
下面对不同阵营中的虚拟角色的攻击顺序进行说明。
[0183]
示例的,本申请实施例提供的虚拟角色的控制方法的战斗时间轴可以是:主动方(对应于上述的第一虚拟角色)先攻击,连携者(对应于上述的队友角色)继续攻击,被攻击方(对应于上述的第二虚拟角色)反击。例如,参见图13,图13是本申请实施例提供的攻击顺序设计示意图。如图13所示,客户端在呈现连携攻击的画面时,首先呈现a方(对应于上述的第一虚拟角色)进攻动画,b方(对应于上述的第二虚拟角色)受击动画,a方归为动画,至此a方的攻击完成;接着,客户端呈现c方(对应于上述的队友角色)连携进入动画,c方连携攻击画面,b方受击动画,c方连携离开动画,至此c方的攻击完成;随后,客户端呈现b方反击动画,a方受击动画,b方归为动画,至此b方的反击完成。
[0184]
在另一些实施例中,当被攻击方(对应于上述的第二虚拟角色)具有先攻技能,即优先释放反击技能时,则战斗的时间轴可以调整为:被攻击方反击,主动方(对应于上述的第一虚拟角色)攻击,连携者(对应于上述的队友角色)继续攻击。
[0185]
此外,需要说明的是,主动方的攻击和连携者的攻击算一次完整的攻击表现,即如果在主动方进行攻击后,被攻击方血量已空(即处于死亡状态),客户端会继续呈现连携者针对被攻击方的攻击画面,即在依次呈现完主动方和连携者针对被攻击方的攻击画面后,
再呈现被攻击方的死亡状态。
[0186]
下面对客户端呈现连携攻击的战斗表现中镜头设计的过程进行说明。
[0187]
示例的,参见图14,图14是本申请实施例提供的连携攻击过程中的镜头设计示意图。如图14所示,在连携技能释放时的镜头控制中,由客户端根据当前攻击单元,例如图14中示出的主动攻击者1401(对应于上述的第一虚拟角色)或连携者1402(对应于上述的队友角色)的位置以及动态lookat(lookat是指相机焦点方向,即相机1403看向哪个点)焦点位置进行自动适配和适应。例如,当主动攻击者1401在进行攻击时,相机1403可以看向主动攻击者1401和被攻击者(对应于上述的第二虚拟角色)中间的位置,而当切换至连携者1402进行攻击时,相机1403可以看向连携者1402和被攻击者(图中未示出)中间的位置,并且,当连携者1402在完成攻击后,相机1403可以重新看向主动攻击者1401和被攻击者中间的位置。此外,当主动攻击者1401或者连携者1402移动时,例如主动攻击者1401移动到被攻击者所处的位置进行攻击时,相机1403也可以随之移动,以根据主动攻击者1401的前进和后退,呈现拉远和推进的动态效果。进一步的,相机1403还可以根据主动攻击者1401或者连携者1402的前后、或者左右的移动,呈现振动的效果。
[0188]
下面继续说明本申请实施例提供的虚拟角色的控制装置455实施为软件模块的示例性结构,在一些实施例中,如图2所示,存储在存储器450的虚拟角色的控制装置455中的软件模块可以包括:
[0189]
显示模块4551,用于显示虚拟场景,其中,虚拟场景包括相互对抗的第一阵营和第二阵营;显示模块4551,还用于响应于第一阵营中的第一虚拟角色与至少一个队友角色的位置满足组合攻击技能触发条件,显示向第二阵营中的第二虚拟角色释放的组合攻击技能,以及显示第二虚拟角色响应于组合攻击技能的状态;其中,组合攻击技能包括第一虚拟角色释放的至少一次攻击技能、以及至少一个队友角色释放的至少一次攻击技能。
[0190]
在一些实施例中,组合攻击技能触发条件包括以下至少之一:第二虚拟角色在虚拟场景中所处的位置处于第一虚拟角色的攻击范围内,且处于至少一个队友角色的攻击范围内;第一虚拟角色相对于至少一个队友角色的方位是设定方位或属于设定方位范围。
[0191]
在一些实施例中,显示模块4551,还用于响应于第一阵营中的第一虚拟角色与至少一个队友角色的位置满足组合攻击技能触发条件,且第一虚拟角色与至少一个队友角色的角色类型符合设定阵容组合,显示向第二阵营中的第二虚拟角色释放的组合攻击技能。
[0192]
在一些实施例中,设定阵容组合包括以下至少之一:第一虚拟角色等级低于或等于至少一个队友角色的等级;第一虚拟角色与至少一个队友角色的属性相同或者相互适配;第一虚拟角色与至少一个队友角色的技能相同或相互适配。
[0193]
在一些实施例中,当第二虚拟角色具有先攻技能时,显示模块4551在显示向第二阵营中的第二虚拟角色释放的组合攻击技能之前,还用于显示第二虚拟角色向第一虚拟角色释放的至少一次攻击技能,以及用于显示第一虚拟角色响应于第二虚拟角色释放的至少一次攻击技能的状态。
[0194]
在一些实施例中,当第二阵营中存在具有护卫技能的第三虚拟角色时,显示模块4551在显示向第二虚拟角色释放的组合攻击技能之前,还用于显示向第三虚拟角色释放的组合攻击技能,以及显示第三虚拟角色响应于组合攻击技能的状态。
[0195]
在一些实施例中,当第三虚拟角色响应于组合攻击技能包括的第一虚拟角色释放
的至少一次攻击技能而处于死亡状态时,显示模块4551,还用于显示至少一个队友角色向第二虚拟角色释放的至少一次攻击技能,以及显示第二虚拟角色响应于至少一个队友角色释放的至少一次攻击技能的状态。
[0196]
在一些实施例中,显示模块4551在显示向第二阵营中的第二虚拟角色释放的组合攻击技能之前,还用于针对虚拟场景中满足组合攻击技能触发条件的至少一个队友角色,显示与至少一个队友角色对应的提示标识;其中,提示标识用于表征至少一个队友角色能够与第一虚拟角色结成阵容组合;以及用于响应于针对至少一个队友角色的选择操作,显示向第二阵营中的第二虚拟角色释放的组合攻击技能;其中,组合攻击技能包括第一虚拟角色释放的至少一次攻击技能、以及被选中的队友角色释放的至少一次攻击技能。
[0197]
在一些实施例中,显示模块4551,还用于响应于第一阵营中的第一虚拟角色与多个队友角色的位置满足组合攻击技能触发条件,将多个队友角色中攻击力最高的队友角色与第一虚拟角色结成阵容组合,并显示阵容组合向第二虚拟角色释放的组合攻击技能;其中,组合攻击技能包括第一虚拟角色释放的至少一次攻击技能、以及攻击力最高的队友角色释放的至少一次攻击技能。
[0198]
在一些实施例中,显示模块4551,还用于当第一虚拟角色的攻击范围小于范围阈值、且至少一个队友角色的攻击范围大于范围阈值时,在显示第一虚拟角色释放至少一次攻击技能的过程中,控制至少一个队友角色处于与第一虚拟角色固定的位置;以及用于当第一虚拟角色、以及至少一个队友角色的攻击范围均大于范围阈值时,在显示第一虚拟角色释放至少一次攻击技能的过程中,控制至少一个队友角色处于虚拟场景中的固定位置。
[0199]
在一些实施例中,显示模块4551,还用于当第二虚拟角色响应于组合攻击技能而处于未死亡的状态时,显示第二虚拟角色向第一阵营中的第一虚拟角色释放的至少一次攻击技能,以及显示第一虚拟角色响应于第二虚拟角色释放的至少一次攻击技能的状态;以及用于当第一虚拟角色以及至少一个队友角色中的任一虚拟角色处于异常状态时,显示无法释放组合攻击技能的提示信息。
[0200]
在一些实施例中,组合攻击技能是通过调用机器学习模型预测得到的;虚拟角色的控制装置455还包括获取模块4552,用于获取第一虚拟角色、至少一个队友角色、以及第二虚拟角色的特征数据;虚拟角色的控制装置455还包括调用模块4553,用于基于特征数据调用机器学习模型确定组合攻击技能包括的攻击技能的释放次数、以及每次释放的攻击技能的类型;其中,特征数据包括以下至少之一:状态、技能等待时间、技能攻击强度。
[0201]
需要说明的是,本申请实施例装置的描述,与上述方法实施例的描述是类似的,具有同方法实施例相似的有益效果,因此不做赘述。对于本申请实施例提供的虚拟角色的控制装置中未尽的技术细节,可以根据图3、或图8任一附图的说明而理解。
[0202]
本申请实施例提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行本申请实施例上述的虚拟角色的控制方法。
[0203]
本申请实施例提供一种存储有可执行指令的计算机可读存储介质,其中存储有可执行指令,当可执行指令被处理器执行时,将引起处理器执行本申请实施例提供的方法,例如,如图3、或图8示出的虚拟角色的控制方法。
[0204]
在一些实施例中,计算机可读存储介质可以是fram、rom、prom、eprom、eeprom、闪存、磁表面存储器、光盘、或cd

rom等存储器;也可以是包括上述存储器之一或任意组合的各种设备。
[0205]
在一些实施例中,可执行指令可以采用程序、软件、软件模块、脚本或代码的形式,按任意形式的编程语言(包括编译或解释语言,或者声明性或过程性语言)来编写,并且其可按任意形式部署,包括被部署为独立的程序或者被部署为模块、组件、子例程或者适合在计算环境中使用的其它单元。
[0206]
作为示例,可执行指令可以但不一定对应于文件系统中的文件,可以可被存储在保存其它程序或数据的文件的一部分,例如,存储在超文本标记语言(html,hyper text markup language)文档中的一个或多个脚本中,存储在专用于所讨论的程序的单个文件中,或者,存储在多个协同文件(例如,存储一个或多个模块、子程序或代码部分的文件)中。
[0207]
作为示例,可执行指令可被部署为在一个计算设备上执行,或者在位于一个地点的多个计算设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个计算设备上执行。
[0208]
综上所述,本申请实施例中,当用户需要控制第一虚拟角色对处于敌对阵营中的第二虚拟角色进行攻击时,终端设备可以通过处于同一阵营中的第一虚拟角色与队友角色在虚拟场景中的位置关系来触发释放组合攻击技能,简化了组合攻击技能的触发机制,进而减少了终端设备计算资源的消耗。
[0209]
以上所述,仅为本申请的实施例而已,并非用于限定本申请的保护范围。凡在本申请的精神和范围之内所作的任何修改、等同替换和改进等,均包含在本申请的保护范围之内。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1