控制虚拟对象释放技能的方法、装置、终端及存储介质与流程

文档序号:22252687发布日期:2020-09-18 13:06阅读:101来源:国知局
控制虚拟对象释放技能的方法、装置、终端及存储介质与流程
本申请实施例涉及计算机
技术领域
,特别涉及一种控制虚拟对象释放技能的方法、装置、终端及存储介质。
背景技术
:在基于二维或三维虚拟环境的应用程序中,比如多人在线战术竞技游戏(multiplayeronlinebattlearena,moba),用户可以通过控制虚拟场景中的虚拟对象,对其他虚拟对象、虚拟建筑等释放技能,以某一种胜利条件作为目标进行竞技。相关技术中,用户可以通过点击技能控件向虚拟对象快速释放技能,该虚拟对象是根据虚拟对象搜索逻辑确定出的默认虚拟对象,或者,用户可以通过拖拽技能控件主动选择虚拟对象并释放技能。在一些可能的实施方式中,该虚拟对象搜索逻辑指示向技能范围内当前绝对生命值最低,或,当前生命值百分比最低的虚拟对象释放技能。由于不同技能对应的技能范围不同,因此当用户在短时间内点击多个技能控件时,可能会出现向不同虚拟对象释放技能的情况,而这种技能释放效果并不符合用户预期(在短时间内向同一虚拟对象释放技能),影响技能快速释放的准确度。技术实现要素:本申请实施例提供了一种控制虚拟对象释放技能的方法、装置、终端及存储介质,可以提高技能连续释放时的释放准确度。所述技术方案如下:一方面,本申请实施例提供了一种控制虚拟对象释放技能的方法,所述方法包括:显示虚拟场景界面,所述虚拟场景界面中包含第一虚拟对象、至少两个第二虚拟对象以及至少两个技能控件,所述第一虚拟对象和所述第二虚拟对象位于虚拟场景中,所述技能控件用于控制所述第一虚拟对象释放技能;响应于对所述技能控件中第一技能控件的第一触发操作,控制所述第一虚拟对象向目标虚拟对象释放第一技能,所述目标虚拟对象根据所述第一触发操作从至少两个所述第二虚拟对象中确定;响应于对第二技能控件的第二触发操作满足技能连续释放条件,将所述目标虚拟对象确定为第二技能对应的技能释放目标,所述第二触发操作在所述第一技能的技能释放过程中触发;控制所述第一虚拟对象向所述目标虚拟对象释放所述第二技能。另一方面,本申请实施例提供了一种控制虚拟对象释放技能的装置,所述装置包括:显示模块,用于显示虚拟场景界面,所述虚拟场景界面中包含第一虚拟对象、至少两个第二虚拟对象以及至少两个技能控件,所述第一虚拟对象和所述第二虚拟对象位于虚拟场景中,所述技能控件用于控制所述第一虚拟对象释放技能;第一控制模块,用于响应于对所述技能控件中第一技能控件的第一触发操作,控制所述第一虚拟对象向目标虚拟对象释放第一技能,所述目标虚拟对象根据所述第一触发操作从至少两个所述第二虚拟对象中确定;第一确定模块,用于响应于对第二技能控件的第二触发操作满足技能连续释放条件,将所述目标虚拟对象确定为第二技能对应的技能释放目标,所述第二触发操作在所述第一技能的技能释放过程中触发;第二控制模块,用于控制所述第一虚拟对象向所述目标虚拟对象释放所述第二技能。另一方面,本申请实施例提供了一种终端,所述终端包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如上述方面所述的控制虚拟对象释放技能的方法。另一方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现如上述方面所述的控制虚拟对象释放技能的方法。另一方面,本申请实施例提供了一种计算机程序产品,所述计算机程序产品被处理器执行时,用于实现上述控制虚拟对象释放技能的方法。本申请实施例提供的技术方案带来的有益效果至少包括:本申请实施例中,当接收到对技能控件的触发操作时,若该触发操作在上一技能的技能释放过程中触发,且该触发操作满足技能连续释放条件,则将上一技能所指示的技能释放目标确定为当前技能所指示的技能释放目标,从而控制虚拟对象向该技能释放目标释放技能;通过上述技能释放目标继承机制,能够避免因不同技能对应不同技能范围,导致连续释放的技能作用于不同对象的问题,在技能连续释放场景下实现对同一对象连续释放技能,提高了技能释放的准确性。附图说明图1是相关技术中技能连续释放过程的实施示意图;图2示出了本申请一个实施例提供的实施环境的示意图;图3示出了本申请一个示例性实施例提供的控制虚拟对象释放技能的方法的流程图;图4是本申请一个示例性实施例提供技能连续释放过程的实施示意图;图5是本申请一个示例性实施例示出的技能控件中控制区域划分方式的示意图;图6示出了本申请另一个示例性实施例提供的控制虚拟对象释放技能的方法的流程图;图7是一个示例性实施例示出的技能释放目标继承机制的原理图;图8是本申请一个示例性实施例提供的控制虚拟对象释放技能过程的界面示意图;图9示出了本申请另一个示例性实施例提供的控制虚拟对象释放技能的方法的流程图;图10是本申请一个示例性实施例提供的控制虚拟对象释放技能的装置的结构框图;图11是根据本申请一示例性实施例提供的终端的结构框图。具体实施方式为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。在本文中提及的“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。首先,对本申请实施例中涉及的名词进行简要介绍:虚拟场景:是应用程序在终端上运行时显示(或提供)的虚拟场景。该虚拟场景可以是对真实世界的仿真世界,也可以是半仿真半虚构的三维世界,还可以是纯虚构的三维世界。虚拟场景可以是二维虚拟场景、2.5维虚拟场景和三维虚拟场景中的任意一种。可选地,该虚拟场景还用于至少两个虚拟对象之间的虚拟场景对战,在该虚拟场景中具有可供至少两个虚拟对象使用的虚拟资源。可选地,该虚拟场景包括对称的左下角区域和右上角区域,属于两个敌对阵营的虚拟对象分别占据其中一个区域,并以摧毁对方区域深处的目标建筑/据点/基地/水晶来作为胜利目标。虚拟对象:是指在虚拟场景中的可活动对象。该可活动对象可以是虚拟人物、虚拟动物、动漫人物中的至少一种。可选地,当虚拟场景为三维虚拟场景时,虚拟对象可以是三维立体模型,每个虚拟对象在三维虚拟场景中具有自身的形状和体积,占据三维虚拟场景中的一部分空间。可选地,虚拟对象是基于三维人体骨骼技术构建的三维角色,该虚拟对象通过穿戴不同的皮肤来实现不同的外在形象。在一些实现方式中,虚拟对象也可以采用2.5维或2维模型来实现,本申请实施例对此不加以限定。技能:本申请实施例中的技能是指由虚拟角色释放,用于修改虚拟对象本身、对其他虚拟对象或同时对虚拟对象本身以及其他虚拟对象的属性值的能力。其中,虚拟对象具有至少一个技能,且不同虚拟对象对应不同技能。其中,虚拟角色的技能可以在等级提升过程中获取或升级,且虚拟对象可以获取其他虚拟对象的技能。可选的,按照技能效果进行划分,技能可以被划分为:伤害型技能(用于降低虚拟对象的生命值)、护盾性技能(用于为虚拟对象增加护盾)、加速型技能(用于增加虚拟对象的移动速度)、减速型技能(用于降低虚拟对象的移动速度)、禁锢型技能(用于在一定时长内限制虚拟对象移动)、强制位移型技能(用于强制虚拟对象发生移动)、沉默型技能(用于在一定时长内显示虚拟对象释放技能)、回复型技能(用于回复虚拟对象的生命值或能量值)、视野型技能(用于获取/屏蔽一定范围或其他虚拟角色的视野)、被动型技能(在进行普通攻击时即可触发的技能)等等,本实施例对此不做限定。可选的,按照技能释放方式进行划分,技能可以被划分为指向型技能和非指向型技能。其中,指向型技能是指定技能接受方的技能,即使用指向型技能指定技能释放目标后,该技能释放目标必然受到该技能的影响;非指向型技能是指向指定方向、范围或区域释放的技能,位于该方向上、范围内或区域内的虚拟对象会收到该技能的影响。多人在线战术竞技游戏:是指在虚拟场景中,分属至少两个敌对阵营的不同虚拟队伍分别占据各自的地图区域,以某一种胜利条件作为目标进行竞技的游戏。该胜利条件包括但不限于:占领据点或摧毁敌对阵营据点、击杀敌对阵营的虚拟对象、在指定场景和时间内保证自身的存活、抢夺到某种资源、在指定时间内比分超过对方中的至少一种。战术竞技可以以局为单位来进行,每局战术竞技的地图可以相同,也可以不同。每个虚拟队伍包括一个或多个虚拟对象,比如1个、2个、3个或5个等。moba游戏:是一种在虚拟场景中提供若干个据点,处于不同阵营的用户控制虚拟角色在虚拟场景中对战,占领据点或摧毁敌对阵营据点的游戏。例如,moba游戏可将用户分成两个敌对阵营,将用户控制的虚拟角色分散在虚拟场景中互相竞争,以摧毁或占领敌方的全部据点作为胜利条件。moba游戏以局为单位,一局moba游戏的持续时间是从游戏开始的时刻至达成胜利条件的时刻。在moba游戏中,用户可以控制虚拟对象在虚拟场景中移动,并能够通过技能控件,触发虚拟对象释放相应的技能。当接收到对技能控件的触发操作时,终端即根据技能对应的技能释放范围,从位于该技能释放范围的虚拟对象中,确定出技能释放目标,从而控制虚拟对象向技能释放目标释放技能。由于不同技能对应的技能释放范围存在差异,因此虚拟对象在同一地点释放不同技能时,不同技能对应的技能释放目标可能不同。示意性的,如图1所示,对于第一虚拟对象101周侧存在第二虚拟对象102和第三虚拟对象103。当接收到对a技能对应技能控件的点击操作时,终端根据a技能的技能释放范围104,将该范围内生命值最低的第二虚拟对象102确定为技能释放目标;当接收到对b技能对应技能控件的点击操作时,终端根据b技能的技能释放范围105,将该范围内生命值最低的第三虚拟对象103确定为技能释放目标。显然,采用上述技能释放目标确定方式,终端每次技能释放都被视作独立流程,相应的,每次技能释放的技能释放目标之间并不存在关联。而在实际应用过程中,用户可能会快速触发不同技能,以此在短时间内对同一虚拟对象造成伤害。若采用上述方式,当不同技能所指示的技能释放目标不同时,会造成不同技能作用于不同对象的问题,影响技能释放的准确性。本申请实施例中,通过引入技能释放目标继承机制,使得连续释放技能时,当前技能能够继承上一技能(处于释放过程中)的技能释放目标,而并非按照传统的搜索规则搜索技能释放目标,使连续释放不同技能能够作用于同一技能释放目标,达到在短时间内对同一虚拟对象造成伤害的效果,以此提高连续技能释放的准确性。请参考图2,其示出了本申请一个实施例提供的实施环境的示意图。该实施环境可以包括:第一终端210、服务器220和第二终端230。第一终端210安装和运行有支持虚拟场景的应用程序211,该应用程序211可以是多人在线对战程序。当第一终端运行应用程序211时,第一终端210的屏幕上显示应用程序211的用户界面。该应用程序211可以是军事仿真程序、moba游戏、大逃杀射击游戏、模拟战略游戏(simulationgame,slg)的任意一种。在本实施例中,以该应用程序211是moba游戏来举例说明。第一终端210是第一用户212使用的终端,第一用户212使用第一终端210控制位于虚拟场景中的第一虚拟对象进行活动,第一虚拟对象可以称为第一用户212的主控虚拟对象。第一虚拟对象的活动包括但不限于:调整身体姿态、爬行、步行、奔跑、骑行、飞行、跳跃、驾驶、拾取、射击、攻击、投掷、释放技能中的至少一种。示意性的,第一虚拟对象是第一虚拟人物,比如仿真人物或动漫人物。第二终端230安装和运行有支持虚拟场景的应用程序231,该应用程序231可以是多人在线对战程序。当第二终端230运行应用程序231时,第二终端230的屏幕上显示应用程序231的用户界面。该客户端可以是军事仿真程序、moba游戏、大逃杀射击游戏、slg游戏中的任意一种,在本实施例中,以该应用程序231是moba游戏来举例说明。第二终端230是第二用户232使用的终端,第二用户232使用第二终端230控制位于虚拟场景中的第二虚拟对象进行活动,第二虚拟对象可以称为第二用户232的主控虚拟角色。示意性的,第二虚拟对象是第二虚拟人物,比如仿真人物或动漫人物。可选地,第一虚拟对象和第二虚拟对象处于同一虚拟场景中。可选地,第一虚拟对象和第二虚拟对象可以属于同一个阵营、同一个队伍、同一个组织、具有好友关系或具有临时性的通讯权限。可选的,第一虚拟对象和第二虚拟对象可以属于不同的阵营、不同的队伍、不同的组织或具有敌对关系。可选地,第一终端210和第二终端230上安装的应用程序是相同的,或两个终端上安装的应用程序是不同操作系统平台(安卓或ios)上的同一类型应用程序。第一终端210可以泛指多个终端中的一个,第二终端230可以泛指多个终端中的另一个,本实施例仅以第一终端210和第二终端230来举例说明。第一终端210和第二终端230的设备类型相同或不同,该设备类型包括:智能手机、平板电脑、电子书阅读器、数码播放器、膝上型便携计算机和台式计算机中的至少一种。图2中仅示出了两个终端,但在不同实施例中存在多个其它终端可以接入服务器220。可选地,还存在一个或多个终端是开发者对应的终端,在该终端上安装有支持虚拟场景的应用程序的开发和编辑平台,开发者可在该终端上对应用程序进行编辑和更新,并将更新后的应用程序安装包通过有线或无线网络传输至服务器220,第一终端210和第二终端230可从服务器220下载应用程序安装包实现对应用程序的更新。第一终端210、第二终端230以及其它终端通过无线网络或有线网络与服务器220相连。服务器220包括一台服务器、多台服务器组成的服务器集群、云计算平台和虚拟化中心中的至少一种。服务器220用于为支持三维虚拟场景的应用程序提供后台服务。可选地,服务器220承担主要计算工作,终端承担次要计算工作;或者,服务器220承担次要计算工作,终端承担主要计算工作;或者,服务器220和终端之间采用分布式计算架构进行协同计算。在一个示意性的例子中,服务器220包括存储器221、处理器222、用户账号数据库223、对战服务模块224、面向用户的输入/输出接口(input/outputinterface,i/o接口)225。其中,处理器222用于加载服务器220中存储的指令,处理用户账号数据库223和对战服务模块224中的数据;用户账号数据库223用于存储第一终端210、第二终端230以及其它终端所使用的用户账号的数据,比如用户账号的头像、用户账号的昵称、用户账号的战斗力指数,用户账号所在的服务区;对战服务模块224用于提供多个对战房间供用户进行对战,比如1v1对战、3v3对战、5v5对战等;面向用户的i/o接口225用于通过无线网络或有线网络和第一终端210和/或第二终端230建立通信交换数据。请参考图3,其示出了本申请一个示例性实施例提供的控制虚拟对象释放技能的方法的流程图。本实施例以该方法用于图2所示实施环境中的第一终端210或第二终端230或该实施环境中的其它终端为例进行说明,该方法包括如下步骤:步骤301,显示虚拟场景界面,虚拟场景界面中包含第一虚拟对象、至少两个第二虚拟对象以及至少两个技能控件,第一虚拟对象和第二虚拟对象位于虚拟场景中,技能控件用于控制第一虚拟对象释放技能。其中,第二虚拟对象中可以包括与第一虚拟对象属于同一阵营的虚拟对象,也可以包括与第一虚拟对象属于不同阵营的虚拟对象。在一些实施例中,第一虚拟对象和第二虚拟对象均是由对局中用户控制的虚拟对象,或者,第一虚拟对象是由对局中用户控制的虚拟对象,而第二虚拟对象是由服务器控制的虚拟对象,即人工智能(artificialintelligence,ai)虚拟对象。在一种可能的实施方式中,虚拟场景界面中包括虚拟场景画面以及位于虚拟场景画面上层的控件层,技能控件即位于该控件层。当然,控件层中除了设置技能控件外,还可以设置数据栏、移动控件、地图控件、普通攻击控件、虚拟道具控件、消息控件、录制控件等其他用户界面(userinterface,ui)控件等等,本实施例对此不做限定。虚拟场景是具有任意边界形状的虚拟场景,第一虚拟对象位于虚拟场景界面的可视范围内。可选的,第一虚拟对象位于虚拟场景画面的视觉中心,即位于采用第三人称视角观察虚拟场景得到的虚拟场景画面的中心。视角是指以虚拟角色的第一人称视角或者第三人称视角在虚拟场景中进行观察时的观察角度。可选地,本申请的实施例中,视角是在虚拟场景中通过摄像机模型对虚拟角色进行观察时的角度。可选地,摄像机模型在虚拟场景中对虚拟对象进行自动跟随,即,当虚拟对象在虚拟场景中的位置发生改变时,摄像机模型跟随虚拟对象在虚拟场景中的位置同时发生改变,且该摄像机模型在虚拟场景中始终处于虚拟对象的预设距离范围内。可选地,在自动跟随过程中,摄像头模型和虚拟对象的相对位置不发生变化。本申请实施例以第三人称视角为例进行说明,可选地,摄像机模型位于虚拟对象(比如虚拟人物的头肩部)的后方。在一些实施例中,技能控件以按键采用,通过触发该按键即可控制第一虚拟对象向其他虚拟对象释放相应的技能。步骤302,响应于对技能控件中第一技能控件的第一触发操作,控制第一虚拟对象向目标虚拟对象释放第一技能,目标虚拟对象根据第一触发操作从至少两个第二虚拟对象中确定。可选的,第一技能控件对应的第一技能是具有主动释放功能的技能,且第一技能的技能释放目标(即受技能影响的虚拟对象)是与第一虚拟对象属于同一阵营的虚拟对象,或者,是与第一虚拟对象属于不同阵营的虚拟对象。本申请实施例中,第一技能的技能释放目标即为第二虚拟对象中的目标虚拟对象。其中,该目标虚拟对象为至少一个虚拟对象。可选的,第一触发操作为单击操作、双击操作、按压操作、拖动操作或长按操作中的至少一种。且第一触发操作的操作类型与第一技能的释放方式相关。比如,当第一技能为指向型技能时,该第一触发操作为单击操作,当第一技能为非指向型技能时,该第一触发操作为拖动操作。在一些实施例中,同一技能控件对应至少两种触发操作。比如,技能控件对应两种触发操作,分别用于触发主动选择技能释放目标(方向或范围)以及自动选择技能释放目标(方向或范围)。可选的,第一触发操作用于触发终端根据目标自动搜索规则,从至少一个第二虚拟对象中确定出目标虚拟对象(自动搜索),或者,第一触发操作用于触发终端将至少一个第二虚拟对象中的指定虚拟对象确定为目标虚拟对象(主动瞄准),其中,该指定虚拟对象即由第一触发操作指示。可选的,第一虚拟对象释放第一技能过程中,第一虚拟对象会展示相应的技能释放动画,或者,终端控制第一虚拟对象执行相应的技能释放动作。示意性的,如图4所示,当接收到对a技能对应技能控件41对应的点击操作时,终端控制第一虚拟对象42向第一技能释放范围43内的法师44(即目标虚拟对象)释放a技能。步骤303,响应于对第二技能控件的第二触发操作满足技能连续释放条件,将目标虚拟对象确定为第二技能对应的技能释放目标,第二触发操作在第一技能的技能释放过程中触发。在第一技能释放过程中,若接收对第二技能控件的第二触发操作,不同于相关技术中,终端根据第二触发操作、第二技能对应的技能释放规则、技能释放范围以及各个第二虚拟对象与第一虚拟对象之间的相对方位,确定出第二技能的技能释放目标(方向或范围),本申请实施例中,终端检测第二触发操作是否满足技能连续释放条件,若满足技能连续释放条件,终端将第二技能对应的技能释放目标确定为目标虚拟对象;若不满足技能连续释放条件,终端即按照相关技术中提供的方式确定第二技能的技能释放目标。在一些实施例中,技能连续释放条件包括技能触发操作条件和技能释放时刻条件,相应的,当第二触发操作满足技能触发操作条件,且第二操作触发操作对应的触发时刻满足技能释放时刻条件时,确定第二触发操作满足技能连续释放条件。需要说明的是,与第一技能类似的,第二技能同样是具有主动释放功能的技能。示意性的,如图4所示,当在释放a技能的过程中接收到对b技能对应技能控件45的点击操作时,由于满足连续技能释放条件,因此终端将法师44确定为b技能的技能释放目标。步骤304,控制第一虚拟对象向目标虚拟对象释放第二技能。进一步的,终端控制第一虚拟对象向目标虚拟对象释放第二技能,使得技能连续释放情况下,即便连续释放的技能对应不同的技能释放范围,也能够作用于同一虚拟对象。示意性的,如图4所示,终端控制第一虚拟对象42向法师44释放a技能和b技能(a技能先于b技能释放)。若采用相关技术中的方式,由于b技能的第二技能释放范围46大于第一技能释放范围43,而第二技能释放范围46内战士47的生命值低于法师44,因此确定出b技能的技能释放目标为战士47,而非法师44。在一些实施例中,若在第二技能的释放过程中接收到对第三技能控件(可能不同于第一技能控件和第二技能控件,或者为第一技能控件(第一技能已释放完毕,且处于可释放状态))的第三触发操作,且第三触发操作满足技能连续释放条件,终端进一步将目标虚拟对象确定为第三技能对应的技能释放目标,并控制第一虚拟对象释放第三技能,本实施例在此不再赘述。综上所述,本申请实施例中,当接收到对技能控件的触发操作时,若该触发操作在上一技能的技能释放过程中触发,且该触发操作满足技能连续释放条件,则将上一技能所指示的技能释放目标确定为当前技能所指示的技能释放目标,从而控制虚拟对象向该技能释放目标释放技能;通过上述技能释放目标继承机制,能够避免因不同技能对应不同技能范围,导致连续释放的技能作用于不同对象的问题,在技能连续释放场景下实现对同一对象连续释放技能,提高了技能释放的准确性。在一种可能的实施方式中,为了使技能释放即能够满足用户的快速释放需求,又能够满足主动瞄准需求,技能控件的控件区域被划分为两部分,分别为自动控制区域和主动控制区域。其中,自动控制区域用于触发终端自动确定技能释放目标、方向或范围,而主动控制区域则用于触发用户主动选择技能释放目标、方向或范围。相应的,用户通过对技能控件的自动控制区域进行触控操作,即可触发技能快速释放,通过对技能控件的主动控制区域进行触控操作,即可进行技能释放目标的主动选择,实现主动瞄准。示意性的,如图5所示,技能控件50中包括自动控制区域51以及主动控制区域52,其中,自动控制区域51是以技能控件50中心为圆心的圆形区域,而主动控制区域52是技能控件50中,位于自动控制区域51外的圆环区域。当接收到对自动控制区域51的点击操作时(触控后迅速抬起),终端即根据技能释放范围以及其他虚拟对象与当前控制虚拟对象之间的相对位置,自动确定出技能释放目标,并向该技能释放目标释放技能;当接收到对主动控制区域52的拖动操作(保持触控并进行拖动),终端即根据主动控制区域52内触控位置与虚拟场景中虚拟对象之间的映射关系,确定出技能释放目标(可以通过高亮等特殊方式对用户主动选择的目标进行标记),并在拖动操作结束时,控制虚拟对象向技能释放目标释放技能。需要说明的是,上述实施例仅用于示意性说明技能控件中自动控制区域与主动控制区域的划分方式,技能控件还可以采用其他可能的控制区域划分方式,本实施例对此并不构成限定。若第二技能控件采用上述控制区域划分方式,为了避免将用户通过第二技能控件进行主动选择的技能释放对象误替换为第一技能的技能释放对象,终端需要基于触控操作所位于的控制区域,确定是否进行技能释放目标继承。下面采用示意性的实施例进行说明。请参考图6,其示出了本申请另一个示例性实施例提供的控制虚拟对象释放技能的方法的流程图。本实施例以该方法用于图2所示实施环境中的第一终端210或第二终端230或该实施环境中的其它终端为例进行说明,该方法包括如下步骤:步骤601,显示虚拟场景界面,虚拟场景界面中包含第一虚拟对象、至少两个第二虚拟对象以及至少两个技能控件,第一虚拟对象和第二虚拟对象位于虚拟场景中,技能控件用于控制第一虚拟对象释放技能。本步骤的实施方式可以参考上述步骤301,本实施例在此不再赘述。步骤602,响应于对技能控件中第一技能控件的第一触发操作,控制第一虚拟对象向目标虚拟对象释放第一技能,目标虚拟对象根据第一触发操作从至少两个第二虚拟对象中确定。为了实现后续技能释放目标的继承,在控制第一虚拟对象释放第一技能时,需要存在明确的目标虚拟对象(即明确的技能释放目标)。在一种可能的实施方式中,第一技能控件同样包括自动控制区域和主动控制区域。其中,该目标虚拟对象可以由位于主动控制区域的第一触发操作指定,或者,由终端接收到位于自动控制区域的第一触发操作后,根据第一技能的目标自动搜索规则确定。可选的,当第一技能为指向型技能或非指向型技能,且第一触发操作的触控结束位置位于自动控制区域,终端根据第一技能对应的目标自动搜索规则,确定目标虚拟对象,并释放第一技能。当第一技能为指向型技能,且第一触发操作的触控结束位置位于主动控制区域,将触控结束位置对应的第二虚拟对象确定为目标虚拟对象,并释放第一技能。在一些实施例中,目标自动搜索规则包括如下至少一种:将技能释放范围内生命值(绝对生命值或生命值占比)最低的友方虚拟对象确定为技能释放目标(当技能用于向敌方释放),将技能释放范围内生命值最低的友方虚拟对象确定为技能释放目标(当技能用于向友方释放),将技能释放范围内距离当前虚拟对象的敌方虚拟对象确定为技能释放对象。可选的,当第一技能为指向型技能,且第一触发操作的触控结束位置位于自动控制区域时,终端控制第一虚拟对象向目标虚拟对象定向释放第一技能,不受目标虚拟对象与第一虚拟对象之间其他对象的遮挡或影响。当第一技能为非指向型技能,且第一触发操作的触控结束位置位于自动控制区域时,终端根据目标虚拟对象与第一虚拟对象之间的相对方向,控制第一虚拟对象根据该相对方向释放第一技能。比如,以相对方向为技能释放中心,向第一技能的技能释放范围释放第一技能(范围型技能),或者,按照相对方位释放第一技能(弹道型技能)。需要说明的是,当目标虚拟对象在技能释放过程中发生移动,或者目标虚拟对象与第一虚拟对象之间存在其他对象时,第一技能的释放效果会受到影响,甚至无法命中目标虚拟对象。可选的,当第一技能为指向型技能,且第一触发操作的触控结束位置位于主动控制区域时,表明用户需要进行主动瞄准,因此终端将触控结束位置对应的第二虚拟对象确定为目标虚拟对象,并向目标虚拟对象定向释放第一技能。在其他可能的实施方式中,若第一技能为非指向型技能,且第一触发操作的触控结束位置位于主动控制区域时,由于触控结束位置所指示的技能释放方向可能存在多个虚拟对象,因此终端无法明确确定技能释放目标,即终端无法确定第一技能对应的目标虚拟对象,相应的,即便后续接收到满足连续技能释放条件的第二触发操作,也无法启用技能释放目标继承机制。步骤603,响应于对技能控件中第一技能控件的第一触发操作,根据第一技能对应的技能流,确定目标虚拟对象对应的目标继承时段,技能流用于控制第一技能的释放流程,目标继承时段为第二技能继承目标虚拟对象的有效时段。技能释放并非瞬间完成,而是需要经过一系列技能流程,即从技能开始释放到技能结束释放需要花费一定时间。技能流即逻辑层用于控制技能释放流程的控制逻辑。其中,不同技能对应不同技能流。在一种可能的实施方式中,目标虚拟对象的继承具有有效时段,即并非在第一技能释放过程中任一时刻接收到对第二技能控件的第二触控操作均满足连续技能释放条件,只有在第一技能释放过程中,且在有效继承时段内接收到的第二触控操作(即对第二触控操作的触控时刻存在要求)才能满足连续技能释放条件。可选的,由于该有效时段由第一技能的释放流程相关,因此终端接收到对第一技能控件的第一触发操作后,从逻辑层获取第一技能对应的技能流,进而根据该技能流所指示的第一技能释放流程,确定出目标虚拟对应的目标继承时段。其中,该目标继承时段为与第一技能释放流程中前段。在一些实施例中,技能流控制的释放流程包含技能释放准备阶段、技能释放阶段和技能释放收尾阶段。其中,技能释放准备阶段又被称为技能前摇阶段,该阶段内,虚拟对象将展示技能释放准备动作;技能释放收尾阶段又被称为技能后摇阶段,该阶段内,虚拟对象将展示技能释放结束动作。在一种可能的实施方式中,若在上一技能的技能释放准备阶段或在技能释放阶段接收到对当前技能的触发操作,表明存在技能连续释放需求,从而确定满足技能连续释放条件;若在上一技能的技能释放收尾阶段接收到对当前技能的触发操作,由于上一技能已释放完成(技能释放收尾并不会对技能释放目标造成额外影响),因此并不存在技能连续释放需求,从而确定不满足技能连续释放条件。可选的,根据技能流确定目标虚拟对象对应目标继承时段的过程可以包括如下步骤。一、根据技能释放准备阶段的第一时长以及技能释放阶段的第二时长,确定目标继承时段的持续时长。在一种可能的实施方式中,终端将触发时刻位于上一技能对应技能释放准备阶段或技能释放阶段的触发操作,确定为满足技能连续释放条件的触发操作,相应的,获取第一技能的技能流后,终端获取技能释放准备阶段的第一时长以及技能释放阶段的第二时长,进而将第一时长与第二时长之和确定为目标继承时段的持续时长。在一个示例性的例子中,第一技能对应技能流中,技能释放准备阶段的第一时长为100ms,而技能释放阶段的第二时长为125ms,终端即确定目标继承时段的持续释放为225ms。在其他可能的实施方式中,终端还可以将小于第一时长和第二时长之和的时长确定为目标继承时段的持续时长,本实施例对此不作限定。需要说明的是,由于不同技能对应技能释放准备阶段和技能释放阶段的时长不同,因此不同技能对应的目标继承时段的持续时长不同。二、根据技能流的起始执行时刻和持续时长,确定目标继承时段。进一步的,终端根据技能流的起始执行时刻以及目标继承时段的持续时长,确目标继承时段的起始时刻为结束时刻,其中,该起始时刻即为技能流的起始执行时刻,结束时刻则根据持续时长和起始时刻确定。在一种可能的实施方式中,如图7所示,当接收到对第一技能控件的触发操作后,终端执行第一技能对应的技能流,并在技能流开始与结束这一过程中设置目标继承节点,位于技能流开始可以与目标继承节点之间的时段即为目标继承时段。需要说明的是,上述步骤602和603之间并不存在严格的先后顺序,即终端可以在接收到第一触控操作后,同步执行步骤602和603,本实施例对此不作限定。步骤604,接收对第二技能控件的触发操作。第一技能释放过程中,终端接收对第二技能控件的触发操作。步骤605,响应于对第二技能控件的触发操作对应的触控结束位置位于自动控制区域,确定对第二技能控件的触发操作属于第二触发操作。为了避免在用户通过第二技能控件提供的主动瞄准功能选取技能释放目标时,因启用技能释放目标继承机制,导致主动瞄准失败的问题,本实施例中,终端获取触发操作对应的触控结束位置,并在触控结束位置位于自动控制区域(表明用户未进行主动瞄准,即用户未指定技能释放目标)时,确定该触发操作属于第二触发操作,即触发操作满足技能连续释放条件中的触发操作条件。示意性的,如图5所示,当触控结束位置位于自动控制区域51时,终端确定对技能控件50满足技能连续释放条件中的触发操作条件。步骤606,响应于对第二技能控件的触发操作属于第二触发操作,且第二触发操作的触发时刻位于目标继承时段,确定第二触发操作满足技能连续释放条件,并获取第二技能的技能释放范围和技能释放规则。进一步的,当满足触发操作条件时,终端进一步检测第二触发操作的触发时刻是否位于目标继承时段,若位于,则确定第二触发操作满足触发时刻条件,进而确定第二触发操作满足技能连续释放条件。示意性的,如图8所示,用户首先点击第一技能控件41,控制第一虚拟对象42向法师44释放a技能,在a技能处于冷却状态时,用户快速点击第二技能控件45的自动控制区域451。由于点击第二技能控件45的时刻属于目标继承时段,因此终端将法师44确定为b技能的技能释放目标。可选的,响应于对第二技能控件的触发操作不属于第二触发操作,或,第二触发操作的触发时刻位于目标继承时段之外,终端根据第二触发操作以及第二技能的技能释放规则和技能释放范围,从至少两个虚拟对象中确定第二技能的技能释放目标(可能与目标虚拟对象相同,也可能不同)。由于不同技能具有不同的技能释放范围以及技能释放规则,若继承的目标虚拟对象并不符合第二技能的技能释放范围或技能释放规则,将会造成无效技能释放。因此,在一些实施例中,当第二触发操作满足技能连续释放条件时,终端进一步获取第二技能的技能释放范围和技能释放规则,并检测目标虚拟对象是否符合技能释放范围和技能释放规则。可选的,该技能释放规则包括释放目标规则。释放目标规则指示仅能向友方释放、仅能向敌方释放、仅能向敌方英雄释放、仅能在预定时长内向敌方释放一次。在一种可能的实施方式中,终端获取目标虚拟对象在虚拟场景中的位置信息,以及目标虚拟对象的属性信息,从而根据位置信息检测目标虚拟对象是否位于第二技能的技能释放范围内,并根据属性信息检测目标虚拟对象是否符合技能释放规则。其中,该属性信息可以包括如下至少一种:所属阵营、生命值、能量值、预定时长内接受到的技能。步骤607,响应于目标虚拟对象位于技能释放范围内,且目标虚拟对象满足技能释放规则,将目标虚拟对象确定为第二技能对应的技能释放目标。当目标虚拟对象位于技能释放范围内,且目标虚拟对象满足技能释放规则时,终端确定第二技能能够向目标虚拟对象释放,从而确定第二技能对应的技能释放目标为目标虚拟对象。示意性的,如图7所示,当在目标继承时段内接收到对第二技能控件的触发操作,第二技能即继承第一技能的技能释放目标;若在目标继承时段之外接收到对第二技能控件的触发操作,终端则根据第二技能的技能释放范围和技能释放规则,动态确定第二技能的技能释放目标。在其他可能的实施方式中,若目标虚拟对象位于技能释放范围之外,和/或,目标虚拟对象不满足技能释放规则,终端确定第二虚拟对象属于根据第二技能的技能释放范围和技能释放规则,确定第二技能的技能释放目标。在一些实施例中,由于连续释放的技能通常为组合技能,因此为了进一步提高技能释放的准确性,当第一技能和第二技能构成的技能释放组合属于第一虚拟对象的技能组合列表时,终端将目标虚拟对象确定为第二技能对应的技能释放目标,其中,技能组合列表中包含第一虚拟对象对应的至少一种技能释放组合,技能释放组合中包括至少两个技能以及技能之间的释放顺序。在一种可能的实施方式中,终端存储有不同虚拟对应的技能组合列表,技能组合列表中的每一种技能组合即由至少两个技能构成,且存在指定的技能释放顺序。示意性的,技能组合列表可以图表一所示。表一技能组合第1技能第2技能1a技能b技能2b技能c技能其中,技能组合1中,包含a技能和b技能,且a技能在b技能之前释放;技能组合2中,包含b技能和c技能,且b技能在c技能之前释放。当第一技能和第二技能属于技能组合列表中的技能组合,且技能顺序符合技能组合中技能的释放顺序,确定第一技能和第二技能构成的技能释放组合属于技能组合列表。比如,当先后连续接收到a技能和b技能的触发操作时,由于a技能和b技能属于技能组合1,且接收到触发操作的顺序符合技能组合的技能释放顺序,因此终端将a技能的技能释放目标确定为b技能的技能释放目标。若先后连续接收到a技能和c技能的触发操作,由于a技能和c技能构成的技能释放组合不属于技能组合列表,因此c技能无法直接继承a技能的技能释放目标。步骤608,响应于第二技能为指向型技能,控制第一虚拟对象向目标虚拟对象定向释放第二技能。针对不同类型的第二技能,继承技能释放目标后控制第一虚拟对象释放第二技能的方式也不同。可选的,当第二技能为指向型技能(指向型技能为指定技能释放目标的技能)时,终端控制第一虚拟对象向目标虚拟对象定向释放第二技能。不论目标虚拟对象是否发生移动,或目标虚拟对象与第一虚拟对象之间是否存在其他对象,第二技能均能够直接影响目标虚拟对象。比如第二技能是定点伤害型技能,该第二技能即定点改变目标虚拟对象的生命值。步骤609,响应于第二技能为非指向型技能,确定目标虚拟对象相对于第一虚拟对象的相对方向;控制第一虚拟对象按照相对方向释放第二技能。可选的,当第二技能为非指向型技能时,终端根据目标虚拟对象当前所处位置与第一虚拟对象的相对方向,控制第一虚拟对象按照相对方向释放第二技能。当目标虚拟对象在第二技能释放过程中发生位移,或者目标虚拟对象与第一虚拟对象之间存在其他虚拟对象时,该第二技能可能无法命中目标虚拟对象,或者,第二技能的技能效果可能受到影响。在一个示例性的例子中,如图9所示,当接收到对技能控件的触发操作时,将经过如下步骤确定技能释放目标。步骤901,接收技能释放操作。步骤902,检测是否能存在正在释放技能。若存在,执行步骤903,若不存在,执行步骤907。步骤903,检测正在释放技能是否存在技能释放目标。若存在,执行步骤904,若不存在,执行步骤907。步骤904,检测是否满足技能连续释放条件。若满足,执行步骤905,若不满足,执行步骤907。步骤905,检测正在释放技能的技能释放目标是否符合当前技能的技能释放条件。若符合,执行步骤906,若不符合,执行步骤907。步骤906,继承正在释放技能的技能释放目标。步骤907,执行默认技能释放目标确定流程。综上所述,本实施例中,对于具有自动控制区域和主动控制区域的第二技能控件,当对第二技能控件的触发操作位于自动控制区域时,终端才会启用技能释放对象继承机制,避免对用户主动瞄准操作造成影响,进一步提高了连续技能释放的准确性。此外,本实施例中,终端根据技能流中技能释放准备阶段和技能释放阶段的时长,确定出技能释放目标的有效继承时段,并在对第二技能控件的触发操作的触发时刻位于有效技能时段时,启用技能释放对象继承机制,避免出现当前技能的技能释放目标仍旧技能上一已释放技能的技能释放目标的问题,提高了连续技能释放的准确性。同时,本实施例中,终端通过检测连续释放技能是否属于技能组合,确定是否进行技能释放目标继承,有助于提高技能组合释放的准确性。图10是本申请一个示例性实施例提供的控制虚拟对象释放技能的装置的结构框图,该装置包括:显示模块1001,用于显示虚拟场景界面,所述虚拟场景界面中包含第一虚拟对象、至少两个第二虚拟对象以及至少两个技能控件,所述第一虚拟对象和所述第二虚拟对象位于虚拟场景中,所述技能控件用于控制所述第一虚拟对象释放技能;第一控制模块1002,用于响应于对所述技能控件中第一技能控件的第一触发操作,控制所述第一虚拟对象向目标虚拟对象释放第一技能,所述目标虚拟对象根据所述第一触发操作从至少两个所述第二虚拟对象中确定;第一确定模块1003,用于响应于对第二技能控件的第二触发操作满足技能连续释放条件,将所述目标虚拟对象确定为第二技能对应的技能释放目标,所述第二触发操作在所述第一技能的技能释放过程中触发;第二控制模块1004,用于控制所述第一虚拟对象向所述目标虚拟对象释放所述第二技能。可选的,所述装置还包括:继承时段确定模块,用于响应于对所述第一技能控件的所述第一触发操作,根据所述第一技能对应的技能流,确定所述目标虚拟对象对应的目标继承时段,所述技能流用于控制所述第一技能的释放流程,所述目标继承时段为所述第二技能继承所述目标虚拟对象的有效时段;所述第一确定模块1003,包括:操作接收单元,用于接收对所述第二技能控件的触发操作;确定单元,用于响应于对所述第二技能控件的触发操作属于所述第二触发操作,且所述第二触发操作的触发时刻位于所述目标继承时段,确定所述第二触发操作满足所述技能连续释放条件,并将所述目标虚拟对象确定为所述第二技能对应的技能释放目标。可选的,所述技能流控制的释放流程包含技能释放准备阶段、技能释放阶段和技能释放收尾阶段;所述继承时段确定模块,用于:根据所述技能释放准备阶段的第一时长以及所述技能释放阶段的第二时长,确定所述目标继承时段的持续时长;根据所述技能流的起始执行时刻和所述持续时长,确定所述目标继承时段。可选的,所述第二技能控件包括自动控制区域和主动控制区域,所述自动控制区域用于触发自动确定技能释放目标、方向或范围,所述主动控制区域用于触发主动选择技能释放目标、方向或范围;所述装置包括:操作确定模块,用于响应于对所述第二技能控件的触发操作对应的触控结束位置位于所述自动控制区域,确定对所述第二技能控件的触发操作属于所述第二触发操作。可选的,所述第一确定模块1003,还包括:规则获取单元,用于获取所述第二技能的技能释放范围和技能释放规则;确定单元,还用于响应于所述目标虚拟对象位于所述技能释放范围内,且所述目标虚拟对象满足所述技能释放规则,将所述目标虚拟对象确定为所述第二技能对应的技能释放目标。可选的,所述第一确定模块1003,还用于:响应于所述第一技能和所述第二技能构成的技能释放组合属于所述第一虚拟对象的技能组合列表,将所述目标虚拟对象确定为所述第二技能对应的技能释放目标,所述技能组合列表中包含所述第一虚拟对象对应的至少一种技能释放组合,所述技能释放组合中包括至少两个技能以及技能之间的释放顺序。可选的,所述装置还包括:第二确定模块,用于响应于对所述第二技能控件的触发操作不属于所述第二触发操作,或,所述第二触发操作的触发时刻位于所述目标继承时段之外,根据所述第二触发操作以及所述第二技能的技能释放规则和技能释放范围,从至少两个所述虚拟对象中确定所述第二技能的技能释放目标。可选的,所述第二控制模块1004,用于:响应于所述第二技能为指向型技能,控制所述第一虚拟对象向所述目标虚拟对象定向释放所述第二技能,所述指向型技能为指定技能释放目标的技能;响应于所述第二技能为非指向型技能,确定所述目标虚拟对象相对于所述第一虚拟对象的相对方向;控制所述第一虚拟对象按照所述相对方向释放所述第二技能。可选的,所述第一技能控件包括自动控制区域和主动控制区域,所述自动控制区域用于触发自动确定技能释放目标、方向或范围,所述主动控制区域用于触发主动选择技能释放目标、方向或范围;所述第一控制模块1002,用于:响应于所述第一技能为指向型技能或非指向型技能,且所述第一触发操作的触控结束位置位于所述自动控制区域,根据所述第一技能对应的目标自动搜索规则,确定所述目标虚拟对象,并释放所述第一技能;响应于所述第一技能为指向型技能,且所述第一触发操作的触控结束位置位于所述主动控制区域,将所述触控结束位置对应的所述第二虚拟对象确定为所述目标虚拟对象,并释放所述第一技能。综上所述,本申请实施例中,当接收到对技能控件的触发操作时,若该触发操作在上一技能的技能释放过程中触发,且该触发操作满足技能连续释放条件,则将上一技能所指示的技能释放目标确定为当前技能所指示的技能释放目标,从而控制虚拟对象向该技能释放目标释放技能;通过上述技能释放目标继承机制,能够避免因不同技能对应不同技能范围,导致连续释放的技能作用于不同对象的问题,在技能连续释放场景下实现对同一对象连续释放技能,提高了技能释放的准确性。请参考图11,其示出了本申请一个实施例提供的终端的结构框图。通常,终端1100包括有:处理器1101和存储器1102。处理器1101可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器1101可以采用数字信号处理(digitalsignalprocessing,dsp)、现场可编程门阵列(fieldprogrammablegatearray,fpga)、可编程逻辑阵列(programmablelogicarray,pla)中的至少一种硬件形式来实现。处理器1101也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称中央处理器(centralprocessingunit,cpu);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器1101可以在集成有图像处理器(graphicsprocessingunit,gpu),gpu用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器1101还可以包括人工智能(artificialintelligence,ai)处理器,该ai处理器用于处理有关机器学习的计算操作。存储器1102可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器1102还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器1102中的非暂态的计算机可读存储介质用于存储至少一条指令、至少一段程序、代码集或指令集,该至少一条指令、至少一段程序、代码集或指令集用于被处理器1101所执行以实现本申请中方法实施例提供的方法。在一些实施例中,终端1100还可选包括有:外围设备接口1103和至少一个外围设备。处理器1101、存储器1102和外围设备接口1103之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口1103相连。具体地,外围设备可以包括:通信接口1104、显示屏1105、音频电路1106、摄像头组件1107、定位组件1108和电源1109中的至少一种。本领域技术人员可以理解,图11中示出的结构并不构成对终端1100的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质存储有至少一条指令,所述至少一条指令由所述处理器加载并执行以实现如上各个实施例所述的控制虚拟对象释放技能的方法。本申请实施例还提供了一种计算机程序产品,该计算机程序产品存储有至少一条指令,所述至少一条指令由所述处理器加载并执行以实现如上各个实施例所述的控制虚拟对象释放技能的方法。本领域技术人员应该可以意识到,在上述一个或多个示例中,本申请实施例所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读存储介质中或者作为计算机可读存储介质上的一个或多个指令或代码进行传输。计算机可读存储介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是通用或专用计算机能够存取的任何可用介质。以上所述仅为本申请的可选实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1