一种位移技能的处理方法和装置与流程

文档序号:17470914发布日期:2019-04-20 05:48阅读:139来源:国知局
一种位移技能的处理方法和装置与流程

本发明涉及游戏技术领域,特别是涉及一种位移技能的处理方法和装置。



背景技术:

即时对抗类游戏通常指玩家控制单个人物进行对抗的游戏,例如多人在线战术竞技游戏(multiplayeronlinebattlearena,moba)游戏,大型多人在线角色扮演游戏(massivemultiplayeronlinerole-playinggame,mmorpg),格斗游戏等。即时对抗类游戏允许玩家进行单人游玩或与其他玩家一起组队游玩,玩家可以控制单个游戏角色,使用游戏内预设的技能,进行人机对抗(playervsenvironment,pve)或进行玩家之间对抗(playervsplayer,pvp)。

即时对抗类游戏通常需要联网进行游戏,游戏数据的通讯则是在客户端和服务器两部分之间进行,即时对抗类游戏的游戏过程经常涉及到技能释放的过程。对于大部分即时对抗类游戏来说,技能释放必须经过服务器进行验证,这样不仅便于服务器将技能释放数据转发给其他客户端,也便于服务器在出现如玩家延迟过大、时序错乱、玩家作弊等异常情况下进行修正。但是在客户端与服务器之间的连接延迟较大时,从玩家发出技能释放信号,到客户端执行该技能的指令时,所要花费的时间较长。



技术实现要素:

鉴于上述问题,提出了本发明实施例以便提供一种克服上述问题或者至少部分地解决上述问题的位移技能的处理方法和装置。

一种位移技能的处理方法,所述方法应用于第一客户端中,所述方法包括:

在执行针对目标虚拟角色的第一位移技能的指令的过程中,若接收到由服务器发送的针对所述目标虚拟角色的第二位移技能释放信号;

响应所述第二位移技能释放信号,根据所述第二位移技能的类型,继续执行第一位移技能的指令,或者,停止执行所述第一位移技能的指令并执行第二位移技能的指令。

优选地,所述第二位移技能释放信号是在第二客户端上生成并发送至所述服务器。

优选地,在所述在执行针对目标虚拟角色的第一位移技能的指令的过程中,若接收到由服务器发送的针对所述目标虚拟角色的第二位移技能释放信号的步骤之前,还包括:

响应针对所述目标虚拟角色第一位移技能释放信号,执行第一位移技能的指令;

将所述第一位移技能释放信号发送至服务器。

优选地,所述响应所述第二位移技能释放信号,根据所述第二位移技能的类型,继续执行第一位移技能的指令,或者,停止执行所述第一位移技能的指令并执行第二位移技能的指令的步骤包括:

响应所述第二位移技能释放信号,判断所述第二位移技能为第一类型位移技能或者第二类型位移技能;

若所述第二位移技能为第一类型位移技能,则继续执行所述第一位移技能的指令;

若所述第二位移技能为第二类型位移技能,则停止执行所述第一位移技能的指令并执行所述第二位移技能的指令。

优选地,所述方法还包括:

响应第三位移技能释放信号,确定第三位移距离以及第三位移目的坐标;

获取所述目标虚拟角色的当前坐标;

基于所述当前坐标以及所述第三位移目的坐标,确定当前位移距离;

当所述当前位移距离大于预设位移倍率与所述第三位移距离的乘积时,拒绝执行所述第三位移技能的指令。

优选地,所述方法还包括:

响应服务器采用预设间隔时长发送的真实坐标信息,确定所述目标虚拟角色的真实坐标;

获取所述目标虚拟角色的当前坐标;

基于所述目标虚拟角色的真实坐标以及所述目标虚拟角色的当前坐标,确定偏差距离;

当所述偏差距离大于第一预设偏差距离,且响应技能释放信号,执行技能的指令时,或,当所述偏差距离大于第一预设偏差距离,且所述目标虚拟角色的当前坐标发生变化时;

以预设校正速度将所述目标虚拟角色从当前坐标移动至真实坐标。

优选地,所述方法还包括:

当所述偏差距离大于第二预设偏差距离且小于第一预设偏差距离时,在所述目标虚拟角色的当前坐标发生变化时,根据所述偏差距离的方向以及所述目标虚拟角色的移动方向,确定预设移动补偿参数;

基于所述预设移动补偿参数,确定所述目标虚拟角色的当前移动速度。

一种位移技能的处理方法,所述方法应用于服务器中,所述方法包括:

响应第三客户端或第四客户端发送的针对目标虚拟角色的第四位移技能释放信号,执行所述第四位移技能的指令;

在执行针对目标虚拟角色的第四位移技能的指令的过程中,若接收到由第三客户端或第四客户端发送的针对所述目标虚拟角色的第五位移技能释放信号;

响应所述第五位移技能释放信号,根据所述第四位移技能释放信号的发送源,继续执行所述第四位移技能的指令或停止执行所述第四位移技能的指令并执行所述第五位移技能的指令。

优选地,所述响应所述第五位移技能释放信号,根据所述第四位移技能释放信号的发送源,继续执行所述第四位移技能的指令或停止执行所述第四位移技能的指令并执行所述第五位移技能的指令的步骤包括:

响应所述第五位移技能释放信号,确定所述第四位移技能释放信号的发送源;

当所述第四位移技能释放信号的发送源为第四客户端时,继续执行所述第四位移技能的指令;

当所述第四位移技能释放信号的发送源为第三客户端时,根据所述第五位移技能释放信号的发送源,继续执行所述第四位移技能的指令或执行所述第五位移技能的指令。

优选地,所述当所述第四位移技能释放信号的发送源为第三客户端时,根据所述第五位移技能释放信号的发送源,继续执行所述第四位移技能的指令或执行所述第五位移技能的指令的步骤包括:

当所述第四位移技能释放信号的发送源为第三客户端,确定所述第五位移技能的发送源;

当所述第五位移技能释放信号的发送源为第四客户端时,继续执行所述第四位移技能的指令;

当所述第五位移技能释放请请求的发送源为第三客户端时,停止执行所述第四位移技能的指令,执行所述第五位移技能的指令。

优选地,还包括:

采用预设间隔时长,向第三客户端发送所述目标虚拟角色的真实坐标。

一种位移技能的处理装置,通过在终端的处理器上执行软件应用并在所述终端的显示器上渲染得到图形用户界面,所述图形用户界面中包含部分游戏场景、至少部分虚拟角色、至少一虚拟对象、以及至少一技能控件,所述装置应用于终端的第一客户端中,所述装置包括:

第二位移技能释放信号接收模块,用于在执行针对目标虚拟角色的第一位移技能的指令的过程中,若接收到由服务器发送的针对所述目标虚拟角色的第二位移技能释放信号;

第二位移技能释放信号响应模块,用于响应所述第二位移技能释放信号,根据所述第二位移技能的类型,继续执行第一位移技能的指令,或者,停止执行所述第一位移技能的指令并执行第二位移技能的指令。

优选地,所述第二位移技能释放信号是在第二客户端上生成并发送至所述服务器。

优选地,所述装置还包括:

第一位移技能执行模块,用于响应针对所述目标虚拟角色第一位移技能释放信号,执行第一位移技能的指令;

第一位移技能释放信号发送模块,用于将所述第一位移技能释放信号发送至服务器。

优选地,所述第二位移技能释放信号响应模块包括:

第二位移技能判断子模块,用于响应所述第二位移技能释放信号,判断所述第二位移技能为第一类型位移技能或者第二类型位移技能;

第一位移技能执行子模块,用于若所述第二位移技能为第一类型位移技能,则继续执行所述第一位移技能的指令;

第二位移技能执行子模块,用于若所述第二位移技能为第二类型位移技能,则停止执行所述第一位移技能的指令并执行所述第二位移技能的指令。

优选地,所述装置还包括:

第三位移技能释放信号响应模块,用于响应第三位移技能释放信号,确定第三位移距离以及第三位移目的坐标;

第一当前坐标获取模块,用于获取所述目标虚拟角色的当前坐标;

当前位移距离确定模块,用于基于所述当前坐标以及所述第三位移目的坐标,确定当前位移距离;

第三位移技能拒绝模块,用于当所述当前位移距离大于预设位移倍率与所述第三位移距离的乘积时,拒绝执行所述第三位移技能的指令。

优选地,所述装置还包括:

真实坐标确定模块,用于响应服务器采用预设间隔时长发送的真实坐标信息,确定所述目标虚拟角色的真实坐标;

第二当前坐标获取模块,用于获取所述目标虚拟角色的当前坐标;

偏差距离确定模块,用于基于所述目标虚拟角色的真实坐标以及所述目标虚拟角色的当前坐标,确定偏差距离;

偏差距离判断模块,用于当所述偏差距离大于第一预设偏差距离,且响应技能释放信号,执行技能的指令时,或,当所述偏差距离大于第一预设偏差距离,且所述目标虚拟角色的当前坐标发生变化时;

目标虚拟角色移动模块,用于以预设校正速度将所述目标虚拟角色从当前坐标移动至真实坐标。

优选地,所述装置还包括:

预设移动补偿参数确定模块,用于当所述偏差距离大于第二预设偏差距离且小于第一预设偏差距离时,在所述目标虚拟角色的当前坐标发生变化时,根据所述偏差距离的方向以及所述目标虚拟角色的移动方向,确定预设移动补偿参数;

当前移动速度确定模块,用于基于所述预设移动补偿参数,确定所述目标虚拟角色的当前移动速度。

一种位移技能的处理装置,装置应用于服务器中,所述装置包括:

第四位移技能执行模块,用于响应第三客户端或第四客户端发送的针对目标虚拟角色的第四位移技能释放信号,执行所述第四位移技能的指令;

第五位移技能释放信号接收模块,用于在执行针对目标虚拟角色的第四位移技能的指令的过程中,若接收到由第三客户端或第四客户端发送的针对所述目标虚拟角色的第五位移技能释放信号;

第五位移技能释放信号响应模块,用于响应所述第五位移技能释放信号,根据所述第四位移技能释放信号的发送源,继续执行所述第四位移技能的指令或停止执行所述第四位移技能的指令并执行所述第五位移技能的指令。

优选地,所述第五位移技能释放信号响应模块包括:

第四位移技能释放信号发送源确定子模块,用于响应所述第五位移技能释放信号,确定所述第四位移技能释放信号的发送源;

第四位移技能执行子模块,用于当所述第四位移技能释放信号的发送源为第四客户端时,继续执行所述第四位移技能的指令;

第五位移技能释放信号发送源确定子模块,用于当所述第四位移技能释放信号的发送源为第三客户端时,根据所述第五位移技能释放信号的发送源,继续执行所述第四位移技能的指令或执行所述第五位移技能的指令。

优选地,所述第五位移技能释放信号发送源确定子模块包括:

所述第五位移技能发送源确定单元,用于当所述第四位移技能释放信号的发送源为第三客户端,确定所述第五位移技能的发送源;

第四位移技能执行单元,用于当所述第五位移技能释放信号的发送源为第四客户端时,继续执行所述第四位移技能的指令;

第五位移技能执行单元,用于当所述第五位移技能释放请请求的发送源为第三客户端时,停止执行所述第四位移技能的指令,执行所述第五位移技能的指令。

优选地,所述装置还包括:

真实坐标发送模块,用于采用预设间隔时长,向第三客户端发送所述目标虚拟角色的真实坐标。

与现有技术相比,本发明包括以下优点:

通过本发明实施例的位移技能的处理方法,在第一客户端中根据位移技能的类型,判断位移技能的执行方式,实现了在位移技能之间产生冲突时,确保第一客户端、服务器、第二客户端技能释放最终结果保持一致的效果。

通过本发明实施例的位移技能的处理方法,在服务器中根据位移技能的发送源,判断位移技能的执行方式,实现了在位移技能之间产生冲突时,确保第一客户端、服务器、第二客户端技能释放最终结果保持一致的效果。

附图说明

图1是本发明实施例的一种位移技能的处理方法的步骤流程图;

图2是本发明实施例的另一种位移技能的处理方法的步骤流程图;

图3是本发明实施例的另一种位移技能的处理方法的步骤流程图;

图4是本发明实施例的一种位移技能的处理时序示意图;

图5是本发明实施例的另一种位移技能的处理时序示意图;

图6是本发明实施例的另一种位移技能的处理时序示意图;

图7是本发明实施例的另一种位移技能的处理时序示意图;

图8是本发明实施例的另一种位移技能的处理时序示意图;

图9是本发明实施例的另一种位移技能的处理时序示意图;

图10是本发明实施例的一种位移技能的处理装置的结构框图;

图11是本发明实施例的另一种位移技能的处理装置的结构框图;

图12是本发明实施例的另一种位移技能的处理装置的结构框图。

具体实施方式

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

本发明实施例的核心构思之一在于,对于客户端来说,在玩家发出技能释放信号之后,客户端可以采用两种方式执行技能指令。第一种为客户端可以先发送技能释放信号给服务器,待服务器返回确认信息后,客户端再执行技能指令。第二种为客户端可以先执行技能指令,同时将技能释放信号发送给服务器。第一种客户端执行技能指令的方式可以保证所有客户端的一致性,不易出错,但是由于客户端需要等待服务器确认技能指令是否可以执行,导致技能指令执行反馈较慢,迟滞感强。第二种客户端执行技能指令的方式可以保证技能指令执行反馈及时,手感爽快,但是容易导致客户端之间不一致,事后修正困难。

特别是在位移类技能指令的执行过程中,由于玩家的位置会明显变动,周边环境的变化会使玩家的感受更加强烈。同时,多个位移技能同时释放时,更容易发生严重的技能冲突,是否可以正确处理位移技能之间的关系,影响客户端是否可以正确显示玩家的位置,玩家的技能是否可以按照玩家期望的位置释放等问题。

对此,本发明采用玩家对自己操纵的虚拟角色发出技能释放信号时,在不经过服务器确认的情况下,先行执行技能指令,而在玩家对其他玩家操纵的虚拟角色发出技能释放信号时,需要经过服务器确认,再执行技能指令,尽可能确保玩家拥有较好的游戏体验。并在技能指令发生冲突时,确定技能指令的执行方式,使客户端与服务器之间的技能指令执行结果保持一致。

参照图1,示出了本发明一种位移技能的处理方法的步骤流程图,所述方法通过在终端的处理器上执行软件应用并在所述终端的显示器上渲染得到图形用户界面,所述图形用户界面中包含部分游戏场景、以及至少一虚拟角色,所述方法应用于终端的第一客户端中。

在本发明实施例中,所述终端例如可以为电脑、手机、平板电脑、游戏机、pda等各种具备屏幕的电子设备。在所述终端上运行游戏程序,并在终端的显示器上渲染图形用户界面,图形用户界面所显示的内容至少部分地包含一局部或全部的游戏场景,游戏场景的具体形态可以是方形,也可以是其他形状(比如,圆形等)。

具体地,游戏场景中包括至少一虚拟角色,该虚拟角色可以是玩家通过终端进行操控的游戏虚拟角色,可以通过图形用户界面所呈现,所呈现的内容可以包含虚拟角色的全部,也可以是虚拟角色的局部。例如,在第三人称视角游戏中,图形用户界面所呈现的内容可以包含虚拟角色的全部,或者,在第一人称视角游戏中,图形用户界面所呈现的内容可以包含虚拟角色的部分或局部。例如,在moba游戏中,所述虚拟角色可以是以3d形式完整地呈现在所述图形用户界面上;在mmorpg游戏中,所述虚拟角色可以是以3d形式部分或完整地呈现在所述图形用户界面上;在横屏卷轴游戏中,所述虚拟角色可以是以2d形式完整地呈现在所述图形用户界面上。

此外,所述图形用户界面还可以包括至少一技能控件,该技能控件可以位于操作界面的右下角、左下角或者是任意位置,可以包括执行各种功能的控件。所述技能控件可以响应玩家发出的单击、双击、轻按、重按、滑动等操作中的一种或者是多种的组合。

在本发明实施例中,所述目标虚拟角色可以为所述第一客户端中的虚拟角色。

在本发明实施例中,所述第一客户端可以为操控目标虚拟角色的玩家所使用的终端中的客户端,玩家可以通过第一客户端,对所述目标虚拟角色进行操控。

在本发明实施例中,所述第二客户端可以为操控除所述目标虚拟角色之外的其他虚拟角色的玩家使用的终端中的客户端。

所述位移技能的处理方法包括:

步骤101,在执行针对目标虚拟角色的第一位移技能的指令的过程中,若接收到由服务器发送的针对所述目标虚拟角色的第二位移技能释放信号;

在本发明实施例中,所述第一客户端可以接收到针对所述目标虚拟角色的第一位移技能释放信号,所述第一位移技能释放信号可以为玩家通过终端的应用程序接口,采用键盘、鼠标、触摸屏幕、游戏手柄、体感遥控器等方式向第一客户端输入的针对目标虚拟角色的位移技能的释放信号。

在本发明的一种优选实施例中,所述第二位移技能释放信号是在第二客户端上生成并发送至所述服务器。

在本发明实施例中,所述第一客户端可以接收到由服务器发送的针对所述目标虚拟角色的第二位移技能释放信号。所述第二位移技能释放信号可以是在第二客户端上生成并发送至所述服务器之后,所述服务器将所述第二位移技能释放信号发送至所述第一客户端。所述第二位移技能释放信号可以为第二客户端针对所述目标虚拟角色发出的位移技能的释放信号。

在本发明的一种优选实施例中,在所述在执行针对目标虚拟角色的第一位移技能的指令的过程中,若接收到由服务器发送的针对所述目标虚拟角色的第二位移技能释放信号的步骤之前,还包括:

s11,响应针对所述目标虚拟角色第一位移技能释放信号,执行第一位移技能的指令;

s12,将所述第一位移技能释放信号发送至服务器。

在本发明实施例中,所述针对所述目标虚拟角色第一位移技能释放信号可以为操控第一客户端的玩家对自己操控的目标虚拟角色发出的位移技能的释放信号。所述第一客户端可以响应针对所述目标虚拟角色的第一位移技能释放信号,执行第一位移技能的指令,并将所述第一位移技能释放信号发送至服务器。从而实现第一客户端的玩家对自己操控的目标虚拟角色释放位移技能的指令时,可以在不等待服务器发送执行位移技能释放信号的确认信息,即可执行位移技能的指令的效果。

在本发明实施例中,所述服务器在接收到第一位移技能释放信号之后,由于第一客户端已经执行所述第一位移技能的指令,所述服务器可以不再返回第一客户端执行所述第一位移技能释放信号的确认信息,而只将所述第一位移技能释放信号发送给所述第二客户端,请求所述第二客户端执行所述第一位移技能的指令,从而实现技能释放的同步。

步骤102,响应所述第二位移技能释放信号,根据所述第二位移技能的类型,继续执行第一位移技能的指令,或者,停止执行所述第一位移技能的指令并执行第二位移技能的指令。

在本发明实施例中,所述第一位移技能的指令可以为第一客户端响应针对所述目标虚拟角色第一位移技能释放信号执行的位移技能的指令,由于所述第一位移技能在所述针对所述目标虚拟角色第一位移技能释放信号到达服务器之前已经先执行,因此,在执行第一位移技能的指令的过程中,可能接收到服务器发送的所述第二位移技能释放信号,所述第二位移技能释放信号在所述服务器上可能实际上是先于所述第一位移技能释放信号到达的。此时为了使所述第一客户端,所述服务器,以及所述第二客户端中所述目标虚拟角色位置可以尽可能一致,需要根据所述第二位移技能的类型,确定所述第一客户端是否应该执行所述第二位移技能的指令。

在本发明的一种优选实施例中,所述响应所述第二位移技能释放信号,根据所述第二位移技能的类型,继续执行第一位移技能的指令,或者,停止执行所述第一位移技能的指令并响应所述第二位移技能释放信号的步骤包括:

s21,响应所述第二位移技能释放信号,判断所述第二位移技能为第一类型位移技能或者第二类型位移技能;

在本发明实施例中,所述第二位移技能可以为第一类型位移技能或第二类型位移技能,所述第一类型位移技能可以为瞬时位移技能,即在玩家较难感受到的极短的时间内,所述虚拟角色从一个坐标移动到另一坐标,例如0.01s、0.1s、0.5s等,本发明对此不做限制。所述第二类型位移技能可以为长时位移技能,即在玩家容易感受到的一段时间内,将所述虚拟角色从一个坐标逐渐移动到另一个坐标上,例如2s、5s、10s等,本发明对此不做限制。

s22,若所述第二位移技能为第一类型位移技能,则继续执行所述第一位移技能的指令;

在本发明实施例中,所述第一位移技能释放信号或所述第二位移技能释放信号中,可以包括位移目的坐标。

在本发明实施例中,当所述第二位移技能为第一类型技能时,此时所述第一客户端可以不执行所述第二位移技能的指令,而继续执行所述第一位移技能的指令。确保在所述第一客户端、所述服务器、以及所述第二客户端中所述第一客户端操控的所述目标虚拟角色的位置是一致的。

具体而言,如图4所示,所述第二客户端先发送所述第二位移技能释放信号至所述服务器,所述第一客户端执行所述第一位移技能的指令,并发送所述第一位移技能释放信号发送至所述服务器。其后所述第一客户端在执行第一位移技能的指令的过程中,接收到了所述服务器发送的第二位移技能释放信号,所述第一客户端确定所述第二位移技能为瞬时技能后,则不执行所述第二位移技能的指令,而继续执行所述第一位移技能的指令。

对于所述第一客户端来说,所述目标虚拟角色只执行了所述第一位移技能的指令,停留在了执行第一位移技能的指令后的位移目的坐标处。

对于所述服务器来说,所述服务器先接收到了所述第二客户端发送的所述第二位移技能释放信号,所述服务器执行所述第二位移技能的指令,并返回所述第二客户端执行所述第二位移技能释放信号的确认信息,其后所述服务器再接收到了所述第一客户端发送的所述第一位移技能释放信号,并执行了所述第一位移技能的指令,最终在所述服务器中,所述目标虚拟角色停留在了所述第一位移技能的位移目的坐标处。

对于所述第二客户端来说,所述第二客户端先发送了所述第二位移技能释放信号至所述服务器,其后,所述第二客户端接收到所述服务器发送的执行所述第二位移技能释放信号的确认信息,所述第二客户端执行所述第二位移技能的指令,其后所述第二客户端接收到所述服务器发送的第一位移技能释放信号,所述第二客户端执行所述第一位移技能的指令,最终在第二客户端中,所述目标虚拟角色停留在了第一位移技能的位移目的坐标处。

由此实现了所述第一客户端、所述服务器、以及所述第二客户端中所述第一客户端操控的目标虚拟角色的位置一致。

s23,若所述第二位移技能为第二类型位移技能,则停止执行所述第一位移技能的指令并执行所述第二位移技能的指令。

在本发明实施例中,当所述第二位移技能为第二类型位移技能时,所述第一客户端可以停止执行所述第一位移技能的指令并执行所述第二位移技能的指令,确保在所述第一客户端、所述服务器、以及所述第二客户端中所述第一客户端操控的目标虚拟角色的位置是一致的。

具体而言,如图5所示,所述第二客户端先发送针对所述目标虚拟角色的所述第二位移技能释放信号至所述服务器,第一客户端响应第一位移技能释放信号,执行第一位移技能的指令,并发送第一位移技能释放信号发送至所述服务器,其后所述第一客户端接收到了所述服务器发送的所述第二位移技能释放信号,所述第一客户端停止执行所述第一位移技能的指令,并执行所述第二位移技能的指令。

对于所述第一客户端来说,所述目标虚拟角色执行第一位移技能的指令的过程被打断,并开始执行第二位移技能的指令,所述目标虚拟角色的最终位置停留在所述第二位移技能的位移目的坐标处。

对于所述服务器来说,所述服务器先接收到了所述第二客户端发送的所述第二位移技能释放信号,所述服务器执行所述第二位移技能的指令,并返回所述第二客户端执行所述第二位移技能释放信号的确认信息,其后,所述服务器在执行所述第二位移技能的指令的过程中,接收到了所述第一客户端发送的所述第一位移技能释放信号,由于所述服务器还在执行第二位移技能的指令的过程中,所述第一位移技能释放信号被舍弃,所述第一位移技能释放信号也不会发送给所述第二客户端,所述服务器继续执行所述第二位移技能的指令,最终在所述服务器中,所述目标虚拟角色停留在所述第二位移技能的位移目的坐标处。

对于所述第二客户端来说,所述第二客户端先向所述服务器发出了所述第二位移技能释放信号,并接收到所述服务器返回的执行所述第二位移技能释放信号的确认信息,所述第二客户端执行所述第二位移技能的指令,最终在所述第二客户端中,所述目标虚拟角色停留在所述第二位移技能的位移目的坐标处。

由此实现了所述第一客户端、所述服务器、以及所述第二客户端中所述第一客户端操控的目标虚拟角色的位置一致。

通过本发明实施例的位移技能的处理方法,实现了第一客户端对自己操控的目标虚拟角色释放位移技能时,可以不通过服务器确认即释放技能,确保玩家释放技能可以获得及时的反馈,同时在位移技能之间产生冲突时,第一客户端通过确认位移技能的类型,确定在第一客户端中位移技能的执行方式,实现了确保第一客户端、服务器、第二客户端技能释放最终结果保持一致的效果。

在本发明的一种实施例中,所述位移技能的处理方法还包括:

s31,响应第三位移技能释放信号,确定第三位移距离以及第三位移目的坐标;

在本发明实施例中,所述第一客户端在位移技能产生冲突时,可以根据所述第二位移技能的类型,确定位移技能的执行方式,确保第一客户端在技能释放的最终结果和服务器是一致的。但是在一些极端情况下,例如所述第一客户端与所述服务器之间的连接延迟严重的情况下,可能会出现第一客户端中所述目标虚拟角色的位置与所述第二客户端和所述服务器中所述目标虚拟角色的位置不一致。为了避免所述目标虚拟角色的位置不同,导致所述目标虚拟角色的移动异常,并可能进一步导致所述目标虚拟角色的后续行动异常,使所述第一客户端、所述服务器与所述第二客户端中所述目标虚拟角色都产生异常情况的问题,所述第一客户端每次响应位移技能的释放信号时,可以确定位移技能是否可以正常执行。

具体而言,作为所述极端情况的一种示例,假如在所述第一客户端与所述服务器之间的连接延迟严重的情况下,所述第一客户端先行执行的第一位移技能的指令并发送第一位移技能释放信号至所述服务器之后,所述服务器已经先接收到所述第二客户端发送的所述第二技能的释放信号,且将所述第二位移技能释放信号发送至所述第一客户端,并已经执行第二位移技能的指令完毕,此时所述服务器接收到所述第一位移技能释放信号,不会将所述第一位移技能释放信号舍弃,而是执行所述第一位移技能的指令,并将所述第一位移技能释放信号发送至所述第二客户端。而所述第一客户端却由于延迟严重,在先行执行完所述第一位移技能的指令之后,才接收到了所述服务器发送的第二位移技能释放信号,所述第一客户端将会执行第二位移技能的指令。从而导致第一客户端中所述目标虚拟角色停留在所述第二位移技能的位移目的坐标上,而所述服务器和所述第二客户端中所述目标虚拟角色停留在所述第一位移技能的位移目的坐标上,导致第一客户端、服务器、第二客户端三者之间所述目标虚拟角色的位置不一致。此时如果所述服务器向所述第一客户端发送所述第三位移技能释放信号,所述目标虚拟角色实际需要移动的距离可能远远大于服务器认为需要移动的距离,如果此时所述第一客户端执行所述第三位移技能的指令,所述目标虚拟角色可能会出现明显异常的移动,并可能进一步导致所述目标虚拟角色的后续行动异常,使所述第一客户端、所述服务器与所述第二客户端中所述目标虚拟角色都产生异常情况。

在本发明实施例中,所述第三位移技能释放信号可以是由所述第二客户端发出的,针对第一客户端的目标虚拟角色的位移技能的释放信号,所述服务器接收到所述第二客户端发送的第三位移技能释放信号后,执行所述第三位移技能的指令,并将所述第三位移技能释放信号发送给所述第一客户端。

在本发明实施例中,所述第三位移技能释放信号可以包括所述第三位移距离的信息,以及所述第三位移目的坐标的信息;或者,所述第三位移技能释放信号可以包括第三位移起点坐标的信息,以及第三位移目的坐标的信息,此时所述第一客户端可以根据所述第三位移起点坐标以及第三位移目的坐标,确定所述第三位移距离。所述第三位移距离可以是所述第三位移起点坐标与所述位移目的坐标两者之间的直线距离,也可以是所述第三位移起点坐标与所述位移目的坐标两者之间的曲线距离,所述曲线距离可以根据所述第三位移技能的属性,和/或,所述第三位移起点坐标与所述位移目的坐标之间的地形属性确定,本发明对此不做限制。

s32,获取所述目标虚拟角色的当前坐标;

在本发明实施例中,为确定所述目标虚拟角色在所述第一客户端上执行所述第三位移技能的指令需要移动的距离,需要确定所述目标虚拟角色在第一客户端中的当前坐标。

s33,基于所述当前坐标以及所述第三位移目的坐标,确定当前位移距离;

在本发明实施例中,所述第一客户端可以根据所述当前坐标以及所述第三位移目的坐标,确定所述目标虚拟角色在所述第一客户端上执行所述第三位移技能的指令需要移动的距离。

在本发明实施例中,所述当前位移距离可以是所述目标虚拟角色当前坐标与所述位移目的坐标两者之间的直线距离,也可以是所述目标虚拟角色当前坐标与所述位移目的坐标两者之间的曲线距离,所述曲线距离可以根据所述第三位移技能的属性,和/或,所述目标虚拟角色当前坐标与所述位移目的坐标之间的地形属性确定,本发明对此不做限制。

s34,当所述当前位移距离大于预设位移倍率与所述第三位移距离的乘积时,拒绝执行所述第三位移技能的指令。

在本发明实施例中,当所述当前位移距离大于预设位移倍率与所述第三位移距离的乘积时,所述第一客户端如果继续执行所述第三位移技能的指令,所述目标虚拟角色在所述第一客户端中将会有明显异常的移动,并且所述目标虚拟角色的异常移动,并可能会进一步导致所述目标虚拟角色出现其他异常情况。为了避免明显异常的移动发生,所述第一客户端可以拒绝执行所述第三位移技能的指令,并返回取消执行第三位移技能的请求给所述服务器,所述服务器在接收到到所述取消执行第三位移技能的请求后,取消执行所述第三位移技能的指令,同时将所述取消执行第三位移技能的请求发送给所述第二客户端。

在本发明实施例中,所述预设位移倍率根据游戏的实际执行情况,设置为1.5、1.7、2、3、5等,本发明对此不做限制。

通过本发明实施例的位移技能的处理方法,通过设置预设位移倍率,判断所述第一客户端的目标虚拟角色响应所述第三位移技能释放信号需要移动的距离是否大于预设位移倍率与所述第三位移距离的乘积,从而实现避免所述第一客户端中出现明显异常的移动,并可能会进一步导致所述目标虚拟角色出现其他异常情况的问题。

在本发明的一种实施例中,所述位移技能的处理方法还包括:

s41,响应服务器采用预设间隔时长发送的真实坐标信息,确定所述目标虚拟角色的真实坐标;

在本发明实施例中,为了修正所述第一客户端在未经过所述服务器确认即执行所述第一位移技能的指令可能产生的位移偏差,所述服务器可以每间隔预设间隔时长,即向所述第一客户端发送所述目标虚拟角色的真实坐标信息,便于所述第一客户端基于所述真实坐标信息,修正所述目标虚拟角色的位置。

在本发明实施例中,所述预设间隔时长可以为1帧、3帧、0.3s、1s、5s等,本发明对此不做限制。在所述第一客户端与所述服务器之间连接良好的情况下,所述预设间隔时长可以尽可能缩短,以确保所所述第一客户端可以及时修正所述目标虚拟角色的位置。

s42,获取所述目标虚拟角色的当前坐标;

在本发明实施例中,为确定所述目标虚拟角色与所述真实坐标之间的偏差距离,可以先获取所述目标虚拟角色在所述第一客户端中的当前坐标。

s43,基于所述目标虚拟角色的真实坐标以及所述目标虚拟角色的当前坐标,确定偏差距离;

在本发明实施例中,所述偏差距离可以是所述目标虚拟角色的真实坐标以及所述目标虚拟角色的当前坐标之间的直线距离,也可以是根据所述目标虚拟角色的真实坐标以及所述目标虚拟角色的当前坐标之间地形属性确定的曲线距离,本发明对此不做限制。

s44,当所述偏差距离大于第一预设偏差距离,且响应技能释放信号,执行技能的指令时,或,当所述偏差距离大于第一预设偏差距离,且所述目标虚拟角色的当前坐标发生变化时;

在本发明实施例中,当所述偏差距离大于所述第一预设偏差距离时,所述目标虚拟角色的真实坐标与所述目标虚拟角色的当前坐标之间可能存在较大的偏差。为了修正该偏差,且尽可能小地影响玩家感受,并避免所述目标虚拟角色频繁快速移动位置影响玩家正常游戏,可以选择合适的时机,将所述目标虚拟角色移动至真实坐标上。

在本发明实施例中,可以在当所述偏差距离大于第一预设偏差距离,且响应技能释放信号,执行技能的指令时,或,当所述偏差距离大于第一预设偏差距离,且所述目标虚拟角色的当前坐标发生变化时,移动所述目标虚拟角色至真实坐标。

在本发明实施例中,所述响应技能释放信号,执行技能的指令中的所述技能,可以是任一针对所述目标虚拟角色释放的技能。所述技能可以是位移技能、产生一定位移的伤害技能、不产生位移的伤害技能、产生一定位移的辅助技能、不产生位移的辅助技能等,本发明对此不做限制。

在本发明实施例中,所述目标虚拟角色的当前坐标发生变化时,可以是所述目标虚拟角色从静止状态转为移动状态时,也可以是所述目标虚拟角色处于移动状态时,本发明对此不做限制。所述移动状态可以是所述目标虚拟角色执行不使用位移技能的普通移动的状态,或执行位移技能的状态,本发明对此不做限制。

s45,以预设校正速度将所述目标虚拟角色从当前坐标移动至真实坐标。

在本发明实施例中,所述第一客户端可以以预设校正速度将所述目标虚拟角色从当前坐标移动至真实坐标。所述预设校正速度可以是避免玩家感觉所述目标虚拟角色产生了瞬间移动的前提下,尽可能高的速度。实现避免玩家的图形用户界面的内容变化过于剧烈,同时尽快修正偏差距离的效果。

具体而言,所述预设校正速度可以是所述目标虚拟角色不使用位移技能的普通移动速度的3倍,可以实现避免玩家的图形用户界面的内容变化过于剧烈,同时尽快修正偏差距离的效果。

通过本发明实施例中的位移技能的处理方法,通过所述服务器采用预设间隔时长向所述第一客户端发送的所述目标虚拟角色的真实坐标信息,从而使所述第一客户端可以在所述目标虚拟角色的当前坐标与所述真实坐标之间的偏差距离过大时,尽快修正偏差,并避免玩家的图形用户界面的内容变化过于剧烈。

在本发明的一种实施例中,所述位移技能的处理方法还包括:

s51,当所述偏差距离大于第二预设偏差距离且小于第一预设偏差距离时,在所述目标虚拟角色的当前坐标发生变化时,根据所述偏差距离的方向以及所述目标虚拟角色的移动方向,确定预设移动补偿参数;

s52,基于所述预设移动补偿参数,确定所述目标虚拟角色的当前移动速度。

在本发明实施例中,当所述偏差距离大于第二预设偏差距离且小于第一预设偏差距离时,此时所述偏差距离较小,但仍然可能对所述第一客户端能否正常响应技能释放信号以及所述目标虚拟角色的移动等情况产生一定影响。为了避免玩家的图形用户界面的内容变化过于剧烈,可以在所述目标虚拟角色的当前坐标发生变化时,对所述目标虚拟角色的移动速度进行修正,从而使所述目标虚拟角色尽可能逼近所述真实坐标。

在本发明实施例中,所述目标虚拟角色的当前坐标发生变化时,可以是所述目标虚拟角色从静止状态转为移动状态时,也可以是所述目标虚拟角色处于移动状态时,本发明对此不做限制。所述移动状态可以是所述目标虚拟角色执行不使用位移技能的普通移动的状态,或执行位移技能的状态,本发明对此不做限制。

在本发明实施例中,可以将所述偏差距离,分解为垂直于所述移动方向的垂直偏差距离以及平行于所述移动方向的水平偏差距离,并根据所述垂直偏差距离的数值、所述水平偏差距离的数值,以及所述水平偏差距离的方向与所述移动方向是否相同,确定预设移动补偿参数。

在本发明实施例中,所述预设移动补偿参数可以根据游戏实际执行情况,预先设置移动补偿参数索引,根据所述垂直偏差距离的数值、所述水平偏差距离的数值,以及所述水平偏差距离的方向与所述移动方向是否相同,在所述移动补偿参数索引中确定预设移动补偿参数。

作为本发明的一种示例,所述预设移动补偿参数索引可以如下表所示:

表1预设移动补偿参数索引

在表1中,当所述水平偏差距离的方向与所述移动方向相同时,则选择表1中a列的预设移动补偿参数,当所述水平偏差距离的方向与所述移动方向不同时,则选择表1中b列的预设移动补偿参数。例如,当所述水平偏差距离数值为5,所述垂直偏差距离的数值为5,且所述水平偏差距离的方向与所述移动方向不同时,所述预设移动补偿参数为-6。当所述水平偏差距离的数值为10,所述垂直移动偏差距离的数值为5,且所述水平偏差距离的方向与所述移动方向相同时,所述预设移动补偿参数为12。

在本发明实施例中,在确定预设移动补偿参数之后,可以基于所述预设移动补偿参数,确定所述目标虚拟角色的当前移动速度。

在本发明实施例中,所述目标虚拟角色的当前移动速度可以为所述目标虚拟角色的预设移动速度与所述预设移动补偿参数的加和。所述预设移动速度可以为预设的所述目标虚拟角色在不同移动状态下的移动速度。例如,所述目标虚拟角色在不使用技能的普通移动状态下,所述预设移动速度为30距离单位每秒;所述目标虚拟角色在执行冲刺技能的移动状态下,所述预设移动速度为60距离单位每秒;所述目标虚拟角色在执行闪现技能的移动状态下,所述预设移动速度为200距离单位每秒。

作为本发明的一种示例,当所述目标虚拟角色处于不使用位移技能的普通移动状态下时,所述目标虚拟角色在不使用位移技能的普通移动状态下的移动速度为30距离单位每秒,且所述预设移动补偿参数为-6,则所述当前移动速度为30+(-6)=24距离单位每秒。

通过本发明实施例的位移技能的处理方法,当所述偏差距离大于第二预设偏差距离且小于第一预设偏差距离时,通过预设移动补偿参数,确定所述目标虚拟角色的当前移动速度,将所述目标虚拟角色逐渐移动至真实坐标上,从而实现在减少玩家的图形用户界面的内容剧烈变化的情况下,使所述目标虚拟角色在第一客户端、服务端、第二客户端处位置保持一致。

参照图2,示出了本发明一种位移技能的处理方法的步骤流程图,所述方法应用于服务器中。

在本发明实施例中,所述目标虚拟角色可以为所述第三客户端中的虚拟角色。

在本发明实施例中,所述第三客户端可以为操控目标虚拟角色的玩家所使用的终端中的客户端。玩家可以通过第三客户端,对所述目标虚拟角色进行操控。

在本发明实施例中,所述第四客户端可以为操控除所述目标虚拟角色之外的其他虚拟角色的玩家使用的终端中的客户端。

所述方法包括:

步骤201,响应第三客户端或第四客户端发送的针对目标虚拟角色的第四位移技能释放信号,执行所述第四位移技能的指令;

在本发明实施例中,所述服务器可以响应第三客户端或第四客户端发送的针对目标虚拟角色的第四位移技能释放信号,执行所述第四位移技能的指令。

在本发明实施例中,所述第四位移技能可以是瞬时位移技能或长时位移技能。所述瞬时位移技能可以是在玩家较难感受到的极短的时间内,所述虚拟角色从一个坐标移动到另一坐标,例如0.01s、0.1s、0.5s等,本发明对此不做限制。所述长时位移技能可以为长时位移技能,即在玩家容易感受到的一段时间内,将所述虚拟角色从一个坐标逐渐移动到另一个坐标上,例如2s、5s、10s等,本发明对此不做限制。

步骤202,在执行针对目标虚拟角色的第四位移技能的指令的过程中,若接收到由第三客户端或第四客户端发送的针对所述目标虚拟角色的第五位移技能释放信号;

在本发明实施例中,当所述第四位移技能为长时位移技能时,由于此时执行技能的用时较长,更容易出现在执行针对目标虚拟角色的第四位移技能的指令的过程中,所述服务器接收到所述第五位移技能释放信号的情况。当所述第四位移技能为瞬时位移技能时,也可能出现在执行针对目标虚拟角色的第四位移技能的指令的过程中,所述服务器接收到由第三客户端或第四客户端发送的所述第五位移技能释放信号的情况。但由于执行瞬时位移技能的指令的时间较短,所述服务器可以在执行所述第四位移技能的指令完毕后,再响应所述第五位移技能释放信号,则此时相当于在未执行任何针对目标虚拟角色的位移技能的指令的情况下接收到所述第五位移技能释放信号,所述服务器可以直接执行所述第四位移技能的指令。

步骤203,响应所述第五位移技能释放信号,根据所述第四位移技能释放信号的发送源,继续执行所述第四位移技能的指令或停止执行所述第四位移技能的指令并执行所述第五位移技能的指令。

在本发明实施例中,当在执行针对目标虚拟角色的第四位移技能的指令的过程中,接收到所述第五位移技能释放信号时,所述服务器需要根据所述第四位移技能的发送源,确定应如何执行位移技能的指令,以确保所述第三客户端、所述服务器、所述第四客户端中所述目标虚拟角色的位置可以保持一致。

在本发明的一种优选实施例中,所述响应所述第五位移技能释放信号,根据所述第四位移技能释放信号的发送源,继续执行所述第四位移技能的指令或停止执行所述第四位移技能的指令并执行所述第五位移技能的指令的步骤包括:

s61,响应所述第四位移技能释放信号,确定所述第三位移技能释放信号的发送源;

在本发明实施例中,所述第四客户端在发送针对所述目标虚拟角色的位移技能的释放信号时,由于所述目标虚拟角色并非所述第四客户端自己操控的虚拟角色,对他人产生影响的位移技能,在收到服务器返回的执行位移技能释放信号的确认信息前,不可以先行执行针对所述目标虚拟角色的位移技能的指令。也就是说,在所述第四客户端中,针对所述目标虚拟角色的应执行何种位移技能的指令,皆听从所述服务器发送的信息。

在本发明实施例中,所述第三客户端在发送针对所述目标虚拟角色的位移技能的释放信号时,由于所述目标虚拟角色为所述第三客户端自身操控的虚拟角色,对自己产生影响的位移技能,可以在不接收服务器返回的执行位移技能释放信号的确认信息的情况下,直接执行位移技能的指令,并将位移技能的释放信号发送给所述服务器。由于位移技能已经执行,所述服务器可以不返回执行位移技能释放信号的确认信息。

在本发明实施例中,所述服务器接收到所述针对所述虚拟角色的第四位移技能释放信号时,若针对所述虚拟角色的第四位移技能释放信号为所述第三客户端发送的,所述第三客户端已经执行了所述第四位移技能的指令;若针对所述虚拟角色的第四位移技能释放信号为所述第四客户端发送的,所述第四客户端还在等待所述服务器返回确认消息,再执行所述第四位移技能的指令。此时服务器在执行所述第四位移技能的指令的过程中,接收到了所述针对目标虚拟角色的第五位移技能释放信号,由于不同客户端对第四位移技能以及第五位移技能的处理方式不同,所述服务器需要根据所述第三客户端以及所述第四客户端的发送源,确定应如何执行位移技能的指令,以确保所述第三客户端、所述服务器、所述第四客户端中所述目标虚拟角色的位置可以保持一致。

s62,当所述第四位移技能释放信号的发送源为第四客户端时,继续执行所述第四位移技能的指令;

在本发明实施例中,当所述第四位移技能释放信号的发送源为第四客户端时,可以继续执行所述第四位移技能的指令,以确保所述第三客户端、所述服务器、所述第四客户端中所述目标虚拟角色的位置可以保持一致。

具体而言,如图6所示,所述服务器先接收到了所述第四客户端发送的所述第四位移技能释放信号,执行所述第四位移技能的指令,并返回执行所述第四位移释放信号的确认信息。其后所述服务器接收到了所述第三客户端发送的所述第五位移技能释放信号,所述服务器确认所述第四位移技能释放信号的发送源为第四客户端,舍弃所述第五位移技能释放信号,继续执行所述第四位移技能的指令,从而在所述服务器中,所述目标虚拟角色的位置停留在所述第五位移技能的位移目的坐标上。

此时,对于所述第三客户端来说,所述第三客户端在未经过服务器确认的情况下,先执行了类型为长时位移技能的所述第五位移技能,并发送所述第五位移技能释放信号至所述服务器,其后所述第三客户端接收到了所述第四位移技能释放信号,所述第三客户端判断所述第四位移技能为长时位移技能,所述第三客户端停止执行所述第五位移技能的指令,并执行所述第四位移技能的指令,从而在所述第三客户端中,所述目标虚拟角色的位置停留在所述第四位移技能的位移目的坐标上。

此时,对于第四客户端来说,所述第四客户端发送了所述第四位移技能释放信号至所述服务器,并接收到了所述服务器返回的执行所述第四位移释放信号的确认信息。所述第四客户端执行所述第四位移技能的指令,从而在所述第四客户端中,所述目标虚拟角色的位置停留在所述第四位移技能的位移目的坐标上。

由此实现了所述第三客户端、所述服务器、所述第四客户端中所述目标虚拟角色的位置保持一致。

具体而言,如图7所示,所述第五位移技能为瞬时位移技能时,对于所述服务器以及所述第四客户端来说,位移技能的处理过程与图4相似。而对于所述第三客户端来说,所述第三客户端先执行了所述第五位移技能的指令,并将所述第五位移技能释放信号发送给所述服务器,所述目标虚拟角色到达所述第五位移技能的位移目的坐标上,其后所述第三客户端接收到了所述第四位移技能释放信号,所述第三客户端执行所述第四位移技能的指令,从所述第五位移技能的位移目的坐标移动至所述第四位移技能的位移目的坐标上。

由此实现了所述第三客户端、所述服务器、所述第四客户端中所述目标虚拟角色的位置保持一致。

具体而言,如所述第四位移技能释放信号与所述第五位移技能释放信号皆为所述第四客户端发出的,由于所述第四客户端能否执行针对所述目标虚拟角色的位移技能释放信号,皆需要经过所述服务器确认,所述服务器舍弃了在执行所述第四位移技能的指令的过程中接收到的所述第五位移技能释放信号,所述第四客户端不会执行所述第五位移技能的指令,而第三客户端只收到所述第四位移技能释放信号,执行了所述第四位移技能的指令。由此所述第三客户端、所述服务器、所述第四客户端中所述目标虚拟角色的位置同样可以保持一致。

s63,当所述第四位移技能释放信号的发送源为第三客户端时,根据所述第五位移技能释放信号的发送源,继续执行所述第四位移技能的指令或执行所述第五位移技能的指令。

在本发明实施例中,当所述第四位移技能释放信号的发送源为第三客户端时,可以继续根据所述第五位移技能的发送源,确定应继续执行所述第四位移技能的指令还是执行所述第五位移技能的指令,以确保所述第三客户端、所述服务器、所述第四客户端中所述目标虚拟角色的位置可以保持一致。

在本发明的一种优选实施例中,所述当所述第四位移技能释放信号的发送源为第三客户端时,根据所述第五位移技能释放信号的发送源,继续执行所述第四位移技能的指令或执行所述第五位移技能的指令的步骤包括:

s631,当所述第四位移技能释放信号的发送源为第三客户端,确定所述第五位移技能的发送源;

在本发明实施例中,当所述服务器接收到所述第四位移技能技能释放信号的发送源为第三客户端,说明所述第四位移技能技能已经先行在第三客户端中执行,此时如接收到所述第五位移技能释放信号,需要根据所述第五位移技能的发送源,确认所述第五位移技能的指令是否可以执行。

s632,当所述第五位移技能释放信号的发送源为第四客户端时,继续执行所述第四位移技能的指令;

在本发明实施例中,当所述第五位移技能释放信号的发送源为第四客户端时,所述服务器可以舍弃所述第五位移技能释放信号,以确保所述第三客户端、所述服务器、所述第四客户端中所述目标虚拟角色的位置同样可以保持一致。

具体而言,如图8所示,对于服务器来说,所述服务器先收到所述第三客户端发送的第四位移技能释放信号,并执行所述第四位移技能的指令,在执行所述第四位移技能的指令的过程中,所述服务器接收到所述第四客户端发送的所述第五位移技能释放信号,所述服务器在确定所述第四位移技能释放信号的发送源为所述第三客户端,且所述第五位移技能释放信号的发送源为所述第四客户端后,舍弃所述第五位移技能释放信号,从而所述服务器中所述目标虚拟角色停留在所述第四位移技能的位移目的坐标上。

对于所述第三客户端来说,所述第三客户端未经过服务器确认的情况下,先执行了所述第四位移技能的指令,并发送所述第四位移技能释放信号至所述服务器,从而所述第三客户端中所述目标虚拟角色停留在所述第四位移技能的位移目的坐标上。

对于所述第四客户端来说,所述第四客户端发送所述第五位移技能释放信号至所述服务器,未接收到所述服务器返回的执行所述第五位移技能释放信号的确认信息,其后所述第四客户端接收到了所述服务器发送的第四位移技能释放信号,并执行所述第四位移技能的指令,从而所述第四客户端中所述目标虚拟角色停留在所述第四位移技能的位移目的坐标上。

由此实现了所述第三客户端、所述服务器、所述第四客户端中所述目标虚拟角色的位置保持一致。

s633,当所述第五位移技能释放请请求的发送源为第三客户端时,停止执行所述第四位移技能的指令,执行所述第五位移技能的指令。

在本发明实施例中,当所述第四位移技能释放信号和所述第五位移技能释放请请求的发送源皆为所述第三客户端时,由于所述第三客户端可以在未经过服务器确认的情况下执行针对所述目标虚拟角色的位移技能的指令,对于第三客户端来说,执行所述第四位移技能的指令和所述第五位移技能的指令不会存在延迟情况,也就是说在第三客户端上所述第四位移技能和所述第五位移技能是被正确执行的。在这种情况下,所述服务器如果在执行第四位移技能的指令的过程中接收到了所述第五位移技能释放信号,应是所述第三客户端在发送所述第四位移技能释放信号以及所述第五位移技能释放信号的过程中存在延迟的情况。因此,所述服务器不应舍弃所述第五位移技能释放信号,而应停止执行所述第四位移技能的指令,开始执行所述第五位移技能的指令。并且所述第四位移技能释放信号以及所述第五位移技能释放信号皆应发送给所述第四客户端。

具体而言,如图9所示,对于所述上服务器来说,所述服务器先接收到所述第三客户端发送的第四位移技能释放信号,执行所述第四位移技能的指令,并将所述第四位移技能释放信号发送给第四客户端。在执行所述第四位移技能的指令的过程中,所述服务器接收到了所述第三客户端发送的所述第五位移技能释放信号,所述服务器停止执行所述第四位移技能的指令并开始执行所述第五位移技能的指令,最终在所述服务器中,所述目标虚拟角色停留在所述第五位移技能的位移目的坐标上。

对于所述第三客户端来说,所述第三客户端响应所述第四位移技能释放信号,执行所述第四位移技能的指令,并将所述第四位移技能释放信号发送给服务器。其后所述第三客户端响应所述第五位移技能释放信号,执行所述第五位移技能的指令,并将所述第五位移技能释放信号发送给服务器。最终在所述第三客户端中,所述目标虚拟角色停留在所述第五位移技能的位移目的坐标上。

对于所述第四客户端来说,所述第四客户端先接收到所述服务器发送的第四位移技能释放信号,执行所述第四位移技能的指令。其后,所述第四客户端接收到了所述服务器发送的所述第五位移技能释放信号,所述第四客户端停止执行所述第四位移技能的指令并开始执行所述第五位移技能的指令,最终在所述第四客户端中,所述目标虚拟角色停留在所述第五位移技能的位移目的坐标上。

由此实现了所述第三客户端、所述服务器、所述第四客户端中所述目标虚拟角色的位置保持一致。

通过本发明实施例的位移技能的处理方法,在位移技能产生冲突时,所述服务器通过基于所述位移技能释放信号的发送源,确定所述服务器中位移技能的执行方式,实现了确保第一客户端、服务器、第二客户端技能释放最终结果保持一致的效果。

在本发明的一种实施例中,所述方法还包括:

采用预设间隔时长,向第三客户端发送所述目标虚拟角色的真实坐标。

在本发明实施例中,在所述第三客户端以及所述第四客户端中,所述目标虚拟角色的正确位置,都应服从所述服务器上所述目标虚拟角色的位置。然而所述第三客户端在响应针对所述目标虚拟角色的位移技能释放信号时,可以在未经过服务器确认的情况下,先行执行所述位移技能的指令,由此,所述第三客户端上所述目标虚拟角色可能会产生偏差,为了避免所述第三客户端上所述目标虚拟角色与所述服务器上的所述目标虚拟角色位置偏差过大,所述服务器可以采用预设间隔时长,向第三客户端发送所述目标虚拟角色的真实坐标,帮助所述第三客户端修正所述目标虚拟角色的坐标。

参照图3,示出了本发明一种位移技能的处理方法的步骤流程图,所述方法应用于终端的第五客户端中。

在本发明实施例中,所述目标虚拟角色可以为第六客户端中的虚拟角色。

在本发明实施例中,所述第六客户端可以为操控目标虚拟角色的玩家所使用的终端中的客户端,玩家可以通过第六客户端,对所述目标虚拟角色进行操控。

在本发明实施例中,所述第五客户端可以为操控除所述目标虚拟角色之外的其他虚拟角色的玩家使用的终端中的客户端。

所述方法包括:

步骤301,响应针对所述目标虚拟角色的第六位移技能释放信号,将所述第六位移释放信号发送至服务器;

步骤302,接收所述服务器返回的执行所述第六位移技能释放信号的确认信息;

步骤303,执行所述第六位移技能的指令。

在本发明实施例中,所述第五客户端在发送针对所述目标虚拟角色的位移技能的释放信号时,由于所述目标虚拟角色并非所述第五客户端自己操控的虚拟角色,对他人产生影响的位移技能,在收到服务器返回的执行位移技能释放信号的确认信息前,不可以先行执行针对所述目标虚拟角色的位移技能的指令。也就是说,在所述第四客户端中,针对所述目标虚拟角色的应执行何种位移技能的指令,皆听从所述服务器发送的信息。

在本发明实施例中,所述第六客户端在发送针对所述目标虚拟角色的位移技能的释放信号时,由于所述目标虚拟角色为所述第六客户端自身操控的虚拟角色,对自己产生影响的位移技能,可以在不接收服务器返回的执行位移技能的释放信号的确认信息的情况下,直接执行位移技能的指令,并将位移技能的释放信号发送给所述服务器。由于位移技能已经执行,所述服务器可以不返回执行位移技能释放信号的确认信息。

通过本发明实施例中的位移技能的处理方法,通过针对所述目标虚拟角色的第六位移技能释放信号,需要接收所述服务器返回的执行所述第六位移技能释放信号的确认信息,再执行所述第六位移技能的指令,避免了第五客户端中针对所述目标虚拟角色执行的位移技能的指令,可能造成操控所述目标虚拟角色的玩家出现如行动异常等不良体验的问题。

参照图10,示出了本发明一种位移技能的处理装置的结构框图,通过在终端的处理器上执行软件应用并在所述终端的显示器上渲染得到图形用户界面,所述图形用户界面中包含部分游戏场景、至少部分虚拟角色、至少一虚拟对象、以及至少一技能控件,所述装置应用于终端的第一客户端中,所述装置包括:

第二位移技能释放信号接收模块1001,用于在执行针对目标虚拟角色的第一位移技能的指令的过程中,若接收到由服务器发送的针对所述目标虚拟角色的第二位移技能释放信号;

第二位移技能释放信号响应模块1002,用于响应所述第二位移技能释放信号,根据所述第二位移技能的类型,继续执行第一位移技能的指令,或者,停止执行所述第一位移技能的指令并执行第二位移技能的指令。

在本发明的一种实施例中,所述第二位移技能释放信号是在第二客户端上生成并发送至所述服务器。

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

第一位移技能执行模块,用于响应针对所述目标虚拟角色第一位移技能释放信号,执行第一位移技能的指令;

第一位移技能释放信号发送模块,用于将所述第一位移技能释放信号发送至服务器。

在本发明的一种实施例中,所述第二位移技能释放信号响应模块包括:

第二位移技能判断子模块,用于响应所述第二位移技能释放信号,判断所述第二位移技能为第一类型位移技能或者第二类型位移技能;

第一位移技能执行子模块,用于若所述第二位移技能为第一类型位移技能,则继续执行所述第一位移技能的指令;

第二位移技能执行子模块,用于若所述第二位移技能为第二类型位移技能,则停止执行所述第一位移技能的指令并执行所述第二位移技能的指令。

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

第三位移技能释放信号响应模块,用于响应第三位移技能释放信号,确定第三位移距离以及第三位移目的坐标;

第一当前坐标获取模块,用于获取所述目标虚拟角色的当前坐标;

当前位移距离确定模块,用于基于所述当前坐标以及所述第三位移目的坐标,确定当前位移距离;

第三位移技能拒绝模块,用于当所述当前位移距离大于预设位移倍率与所述第三位移距离的乘积时,拒绝执行所述第三位移技能的指令。

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

真实坐标确定模块,用于响应服务器采用预设间隔时长发送的真实坐标信息,确定所述目标虚拟角色的真实坐标;

第二当前坐标获取模块,用于获取所述目标虚拟角色的当前坐标;

偏差距离确定模块,用于基于所述目标虚拟角色的真实坐标以及所述目标虚拟角色的当前坐标,确定偏差距离;

偏差距离判断模块,用于当所述偏差距离大于第一预设偏差距离,且响应技能释放信号,执行技能的指令时,或,当所述偏差距离大于第一预设偏差距离,且所述目标虚拟角色的当前坐标发生变化时;

目标虚拟角色移动模块,用于以预设校正速度将所述目标虚拟角色从当前坐标移动至真实坐标。

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

预设移动补偿参数确定模块,用于当所述偏差距离大于第二预设偏差距离且小于第一预设偏差距离时,在所述目标虚拟角色的当前坐标发生变化时,根据所述偏差距离的方向以及所述目标虚拟角色的移动方向,确定预设移动补偿参数;

当前移动速度确定模块,用于基于所述预设移动补偿参数,确定所述目标虚拟角色的当前移动速度。

参照图11,示出了本发明一种位移技能的处理装置的结构框图,所述装置应用于服务器中,所述装置包括:

第四位移技能执行模块1101,用于响应第三客户端或第四客户端发送的针对目标虚拟角色的第四位移技能释放信号,执行所述第四位移技能的指令;

第五位移技能释放信号接收模块1102,用于在执行针对目标虚拟角色的第四位移技能的指令的过程中,若接收到由第三客户端或第四客户端发送的针对所述目标虚拟角色的第五位移技能释放信号;

第五位移技能释放信号响应模块1103,用于响应所述第五位移技能释放信号,根据所述第四位移技能释放信号的发送源,继续执行所述第四位移技能的指令或停止执行所述第四位移技能的指令并执行所述第五位移技能的指令。

在本发明的一种实施例中,所述第五位移技能释放信号响应模块包括:

第四位移技能释放信号发送源确定子模块,用于响应所述第五位移技能释放信号,确定所述第四位移技能释放信号的发送源;

第四位移技能执行子模块,用于当所述第四位移技能释放信号的发送源为第四客户端时,继续执行所述第四位移技能的指令;

第五位移技能释放信号发送源确定子模块,用于当所述第四位移技能释放信号的发送源为第三客户端时,根据所述第五位移技能释放信号的发送源,继续执行所述第四位移技能的指令或执行所述第五位移技能的指令。

在本发明的一种实施例中,所述第五位移技能释放信号发送源确定子模块包括:

所述第五位移技能发送源确定单元,用于当所述第四位移技能释放信号的发送源为第三客户端,确定所述第五位移技能的发送源;

第四位移技能执行单元,用于当所述第五位移技能释放信号的发送源为第四客户端时,继续执行所述第四位移技能的指令;

第五位移技能执行单元,用于当所述第五位移技能释放请请求的发送源为第三客户端时,停止执行所述第四位移技能的指令,执行所述第五位移技能的指令。

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

真实坐标发送模块,用于采用预设间隔时长,向第三客户端发送所述目标虚拟角色的真实坐标。

参照图12,示出了本发明一种位移技能的处理装置的结构框图,所述装置应用于终端的第五客户端中,所述装置包括:

第六位移技能释放信号响应模块1201,用于响应针对所述目标虚拟角色的第六位移技能释放信号,将所述第六位移释放信号发送至服务器;

确认信息接收模块1202,用于接收所述服务器返回的执行所述第六位移技能释放信号的确认信息;

第六位移技能执行模块1203,用于执行所述第六位移技能的指令。

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

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

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

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