CN112717406A - 一种多人手游断线的角色处理方法和系统 - Google Patents
一种多人手游断线的角色处理方法和系统 Download PDFInfo
- Publication number
- CN112717406A CN112717406A CN202110004134.0A CN202110004134A CN112717406A CN 112717406 A CN112717406 A CN 112717406A CN 202110004134 A CN202110004134 A CN 202110004134A CN 112717406 A CN112717406 A CN 112717406A
- Authority
- CN
- China
- Prior art keywords
- role
- offline
- followed
- character
- map
- 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.)
- Pending
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 12
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 21
- 238000009499 grossing Methods 0.000 claims abstract description 9
- 238000000605 extraction Methods 0.000 claims abstract description 8
- 238000000034 method Methods 0.000 claims description 35
- 238000010586 diagram Methods 0.000 claims description 15
- 238000004364 calculation method Methods 0.000 claims description 8
- 230000004044 response Effects 0.000 claims description 6
- 238000004590 computer program Methods 0.000 claims description 5
- 238000001514 detection method Methods 0.000 claims description 3
- 238000011156 evaluation Methods 0.000 claims description 2
- 230000000694 effects Effects 0.000 abstract description 4
- 230000008569 process Effects 0.000 description 15
- 230000006870 function Effects 0.000 description 7
- 230000033001 locomotion Effects 0.000 description 4
- 230000009471 action Effects 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 230000036961 partial effect Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 1
- 230000002860 competitive effect Effects 0.000 description 1
- 238000004883 computer application Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
Images
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
- A63F13/56—Computing the motion of game characters with respect to other game characters, game objects or elements of the game scene, e.g. for simulating the behaviour of a group of virtual soldiers or for path finding
-
- 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
- A63F2300/00—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
- A63F2300/60—Methods for processing data by generating or executing the game program
- A63F2300/64—Methods for processing data by generating or executing the game program for computing dynamical parameters of game objects, e.g. motion determination or computation of frictional forces for a virtual car
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Processing Or Creating Images (AREA)
Abstract
本申请公开一种多人手游断线的角色处理方法和系统。包括以最后在线位置为中心,进行游戏地图的区域网格划分和关键点标注,利用A*算法计算每个区域网格中关键点的最短距离,获得游戏地图的抽象图;通过计算最后在线位置与离线角色同组的队友角色位置,获得与最后在线位置直线距离最近的队友角色位置,并将队友角色位置对应的游戏角色设定为待跟随角色对象;将离线角色与待跟随角色插入抽象图,进行路径提取和平滑处理后,获得离线角色与待跟随角色的最优路径。解决网络中断时,游戏中的角色则无法进行正常的活动,导致游戏无法顺利进行无法实现跟随队友行动的操作,影响了团队之间的配合等技术问题。
Description
技术领域
本申请实施例涉及计算机应用技术领域,具体涉及一种多人手游断线的角色处理方法和系统。
背景技术
在现在网络游戏中,特别是手游中,由于信号接收问题,而出现网络中断的情况。当出现网络中断时,游戏中的角色则无法进行正常的活动,导致游戏无法顺利进行。此时,需要用户重新进行游戏的登录。而用户重新连接上网络,需要进行账号和密码的登录,才能恢复到原有的游戏场景。而在登录时间内,由于用户无法直接操作游戏的角色,有可能会造成游戏中的损失,进而影响用户的体验。
此外,在一些竞技类游戏中,为了提高团队之间配合的密切度,用户有时候需要时刻跟随队友行动,与队友保持在一定范围内,并防止跟随过程中被队友落单。而在断线或断网情况下,由于用户无法直接操作游戏的角色,也无法实现跟随队友行动的操作,影响了团队之间的配合,进而影响了用户的游戏体验。
发明内容
本申请实施例的目的在于提出了一种多人手游断线的角色处理方法和系统,解决当出现网络中断时,游戏中的角色则无法进行正常的活动,导致游戏无法顺利进行,以及在断线或断网情况下,由于用户无法直接操作游戏的角色,无法实现跟随队友行动的操作,影响了团队之间的配合等技术问题。
第一方面,本申请实施例提供了一种多人手游断线的角色处理方法,该方法包括:
S1:响应于检测到客户端处于登出状态,服务器获取客户端离线角色的最后在线位置;
S2:以最后在线位置为中心,进行游戏地图的区域网格划分和关键点标注,并利用A*算法计算每个区域网格中关键点的最短距离,获得游戏地图的抽象图;
S3:通过计算最后在线位置与离线角色同组的队友角色位置,获得与最后在线位置直线距离最近的待跟随队友角色位置,并将待跟随队友角色位置对应的游戏角色设定为待跟随角色对象;以及
S4:将最后在线位置与待跟随队友角色位置插入抽象图,进行路径提取和平滑处理后,获得离线角色与待跟随角色之间的最优路径。
在该方法中,以最后在线位置为中心,进行游戏地图的区域网格划分,获得关键点的最短距离,并利用与最后在线位置的最短直线距离获得待跟随角色对象位置,利用抽象图获得在线位置和待跟随对象位置之间的最优路径,并通过最优路径快速实现离线角色与待跟随角色的自动关联处理。
在一些实施例中,方法S4步骤后还包括服务器根据最优路径移动离线角色至待跟随角色的关联区域范围,进行关联处理,以使得离线角色在游戏场景中跟随待跟随角色移动。
在一些实施例中,S2步骤的抽象图通过以下子步骤获得:
S21:根据游戏地图的大小对游戏地图进行区域网格的划分;
S22:在每个相邻的区域网格的边界之间设置关键点,关键点为非障碍物网格;
S23:利用A*算法计算每个关键点之间的最短距离,并通过连接最短距离中所有关键点的内边和外边,获得游戏地图的抽象图。
在该方法中,利用抽象图获得离线角色与待跟随对象的最优路径,实现快速进行跟随移动。
在一些实施例中,最后在线位置与队友角色位置的直线距离distance(p1,pm),通过欧几里得距离计算获得,其具体的计算公式如下:
其中,p1表示离线角色,(x1-y1)表示离线位置,pm表示同组的队友角色,(xm-ym)表示队友角色位置,distance(p1,pm)表示离线角色的离线位置与队友角色位置之间的直线距离,当distance(p1,pm)之间的直线距离最小时,所对应的队友pm设置为待跟随角色,m≥2的自然数。
在一些实施例中,A*算法的计算公式如下:
f(n)=g(n)+h(n)
其中,f(n)表示当前节点n从初始点到目标点的估价函数,g(n)表示在状态空间中从初始节点到当前节点n的实际代价,h(n)表示从当前节点n到目标节点最佳路径的估计代价,h(n)是一种估算的数值,不表示实际的距离可通过曼哈顿距离获得。
第二方面,本申请实施例提供了一种多人手游断线的角色处理系统,该系统包括:
最后在线位置模块,配置用于响应于检测到客户端处于登出状态,服务器获取客户端离线角色的最后在线位置;
抽象图模块,配置用于以最后在线位置为中心,进行游戏地图的区域网格划分和关键点标注,并利用A*算法计算每个区域网格中关键点的最短距离,获得游戏地图的抽象图;
待跟随对象模块,配置用于通过计算最后在线位置与离线角色同组的队友角色位置,获得与最后在线位置直线距离最近的待跟随队友角色位置,并将待跟随队友角色位置对应的游戏角色设定为待跟随角色对象;以及
最优路径模块,配置用于将最后在线位置与待跟随队友角色位置插入抽象图,进行路径提取和平滑处理后,获得离线角色与待跟随角色之间的最优路径。
在一些实施例中,抽象图模块具体包括:
根据游戏地图的大小对游戏地图进行区域网格的划分;
在每个相邻的区域网格的边界之间设置关键点,关键点为非障碍物网格;
利用A*算法计算每个关键点之间的最短距离,并通过连接最短距离中所有关键点的内边和外边,构成游戏地图的抽象图。
在一些实施例中,系统还包括关联处理模块,关联处理模块配置服务器根据最优路径移动离线角色至待跟随角色的关联区域范围,进行关联处理,以使得离线角色在游戏场景中跟随待跟随角色移动。
第三方面,本申请实施例提供了一种电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现如第一方面中任一实现方式描述的方法。
第四方面,本申请实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如第一方面中任一实现方式描述的方法。
本申请实施例提供的一种多人手游断线的角色处理方法和系统,以最后在线位置为中心,进行游戏地图的区域网格划分,获得关键点的最短距离,并利用与最后在线位置的最短直线距离获得待跟随角色对象,通过抽象图获得在线位置和待跟随对象位置之间的最优路径,并利用最优路径实现离线角色与待跟随角色的实现快速自动关联处理,利用关键点信息和A*算法的结合,有效地提高服务器运行时间,并节省服务器的运行空间,解决当出现网络中断时,游戏中的角色则无法进行正常的活动,导致游戏无法顺利进行和在断线或断网情况下,由于用户无法直接操作游戏的角色,无法实现跟随队友行动的操作,影响了团队之间的配合等技术问题。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:
图1是根据本申请的一种多人手游断线的角色处理方法的一个实施例的流程图;
图2是根据本申请的一种多人手游断线的角色处理方法的抽象图处理步骤的一个实施例的流程图;
图3是根据本申请的一种多人手游断线的角色处理系统的一个实施例的结构示意图;
图4是适于用来实现本申请实施例的电子设备的计算机系统的结构示意图。
具体实施方式
下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关发明相关的部分。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
继续参考图1,其示出了根据本申请的一种多人手游断线的角色处理方法的一个实施例的流程图100。该方法包括以下步骤:
步骤101,响应于检测到客户端处于登出状态,服务器获取客户端离线角色的最后在线位置。
在本实施例中,登出分为主动登出和被踢出服务器,被动登出是指客户端在一段时间内没有任何消息发送给服务器则会被服务器认为是掉线状态。若该时间过长,超过了系统预先配置的阀值时间则会被服务器直接踢出,该阀值时间又被称之为心跳周期。断线重连是指该玩家处于离线状态但又尚未被服务器踢出,此时若重新接到客户端发来的信息则可被认为完成断线重联操作。在游戏过程中,客户端和服务器之间会定时通过TCP发送特殊数据包用来监听对方是否还在线,这种过程便被称之为玩家心跳检查。如果服务器在玩家心跳周期内既没有接收到离开服务器的消息也没有收到任何客户端信息时,失去了客户端的连接便可认定该玩家已经掉线,游戏服务器会将该角色踢出游戏。若在心跳周期内重新获得玩家登录消息,便可执行断线重联功能。服务器在检测到玩家的登出信息后,获取客户端离线角色的最后在线位置。
步骤102,以最后在线位置为中心,进行游戏地图的区域网格划分和关键点标注,并利用A*算法计算每个区域网格中关键点的最短距离,获得游戏地图的抽象图。
在一些具体的实施例中,游戏地图的区域网格划分是通过这样几步完成的:
(1)根据地图的大小设置每个方向上所需要的网格化的数目,每个方向上选取的是50个方格。
(2)在地图中进行方格类型(障碍和非障碍)的截取,截取的过程遵循,若方格中的障碍物的比例大于0.5,则抽象为障碍方格,用黑色表示;否则抽象为非障碍方格。
(3)定义8种运动方向:上、下、左、右、左上、右上、左下、右下。
(4)定义运动步长:在上、下、左、右四个方向上每运动一次的距离可以计为1,左上、右上、左下、右下对角方向也可以单独计为1.414。
在一些具体的实施例中,参考图2,其示出了根据本申请的一种多人手游断线的角色处理方法的抽象图处理步骤的一个实施例的流程图200。
S201:根据游戏地图的大小对游戏地图进行区域网格的划分;
S202:在每个相邻的区域的边界之间设置关键点,关键点为非障碍物网格;
S203:利用A*算法计算每个关键点之间的最短距离,并通过连接最短距离中所有关键点的内边和外边,获得游戏地图的抽象图。
在一些优选的具体的实施例中,在关键点标注之前,需要对障碍物进行处理,首先,检测游戏地图中的障碍物,并确定所有障碍物的位置,用最小矩形将每个障碍物包围,然后再经过一系列的处理形成对地图的分割,最后,设置关键点,形成上层的抽象图,具体包括以下步骤:
S2021:先对游戏地图进行扫描,找到第一个生长核心k1,扫描的过程为,对矩阵从第一个元素开始检查,找到第一个值为1的元素,其中,每幅游戏地图都是以0-1矩阵的形式存储,游戏网格地图中的点只有两种类别,障碍物点和非障碍物点,用D表示点的取值,D=1表示障碍物点,D=0表示为非障碍物点,生长核心k表示每个障碍区第一个被扫描的点,矩形用R表示。
S2022:以k1为核心,检查该核心的每个四临域点的D值,如果D=1,则标记为障碍点,存储相应的坐标,否则,丢弃。
S2023:继续对新标记的点检查四临域点的D值,如此循环检测,直至没有检查到被标记为障碍物,利用存储的坐标中找到横坐标与纵坐标,最大横坐标与纵坐标确定一个矩形R1的四个顶点。
S2024:重复执行步骤S221-步骤S223,找到新的生长核心k2,k3,…,从而确定矩形R2,R3,…,直至整个游戏地图没有新的生长核心,结束扫描。
步骤103,通过计算最后在线位置与离线角色同组的队友角色位置,获得与最后在线位置直线距离最近的队友角色位置,并将队友角色位置对应的游戏角色设定为待跟随角色对象。
在本实施例中,最后在线位置与队友角色位置的直线距离distance(p1,pm),通过欧几里得距离计算获得,其具体的计算公式如下:
其中,p1表示离线角色,(x1-y1)表示离线位置,pm表示同组的队友角色,(xm-ym)表示队友角色位置,distance(p1,pm)表示离线角色的离线位置与队友角色位置之间的直线距离,当distance(p1,pm)之间的直线距离最小时,所对应的队友pm为待跟随角色,m≥2的自然数。
步骤104,将离线角色与待跟随角色插入抽象图,进行路径提取和平滑处理后,获得离线角色与待跟随角色的最优路径。
在本实施例中,将离线角色的在线位置插入到抽象图所在的分块区域内,并与此区域内的关键点连接起来形成新的边,连接起来的过程依然是使用A*算法进行搜索,找出离线位置与它所在区域内的关键点之间的最短路径,并记录这些路径的长度;待跟随角色位置的插入的过程和离线角色的在线位置过程相同,寻找与所在区域内关键点之间的最短路径。我们这样做的目的就是将离线角色的在线位置和待跟随角色位置同上一部分形成的抽象图组合起来,搜索出来的路径是一个抽象的路径,将抽象路径进行平滑处理,获得离线角色与待跟随角色的最优路径。
在一些具体的实施例中,步骤104后还包括服务器根据最优路径移动离线角色至待跟随角色的关联区域范围,进行关联处理,以使得离线角色在游戏场景中跟随待跟随角色移动。离线角色在游戏场景中跟随同组对象角色移动,包括离线角色与同组对象角色之间的距离不变,和/或离线角色与同组对象角色的朝向相同。响应于检测到客户端处理登入状态,服务器获取客户端离线角色的最后离线位置,发送至客户端,并解除离线角色与待跟随角色的关联关系。
在一些具体的实施例中,根据本申请的一种多人手游断线的角色处理方法的另一个实施例的流程图。该方法包括以下步骤:
a)根据地图的大小对地图进行区域的划分。
进行区域划分的关键是区域大小的确定,以网格世界可以划分出整数个方形区域为准,所划分的区域数量不要太大也不要太小,以十几个至几十个为最好,将网格世界分成了大小全部为10乘10的方形区域,图中粗的黑线表示的是各个区域的边界。
b)在每个相邻的区域的边界上定义边界之间的关键点。
每两个区域的边界定义一系列的关键点来连接各个区域。对于任意两个相邻的区域C1和C2的公共边界,在边界上的最长的非障碍物区是这两个区域的出入口。令L1和L2分别表示C1和C2区域边界上的节点的集合。对于边界上的节点t∈L1∪L2,定义symm(t)表示和t节点相邻但和t节点不在同一块区域内的点,实际上symm(t)是t节点关于边界线的对称点。
出入口用e表示,e是满足以下条件的节点的集合:
非障碍点条件:出入口集合当中不包含障碍点。
最大值条件:出入口是满足以上条件的点向沿边界方向扩张的最大区域。
在确定了每条边界上的出入口后,对于长度小于某一数值w的出入口,可以选取这个出入口中间位置的边界上的一对点作为关键点,若长度大于等于w,则可以选取两端位置处的两对点作为关键点,其中w的数值可根据地图的情况自行确定。
c)利用A*算法计算每个区域内关键点之间的最短路径,并连接每个区域内的这些关键点,将区域内关键点之间的连接叫做内边,内边的长度就是用A*算法搜索出来的关键点之间路径的长度,把相邻区域上的每一对关键点连接起来,将这种连接叫做外边,地图上所有的内边和外边都被确定且被标示出来后,则形成了对于原地图抽象的新地图,我们称为抽象图。
d)将离线位置插入到它所在的分块区域内,并与此区域内的关键点连接起来形成新的边,连接起来的过程依然是使用A*算法进行搜索,找出离线位置与它所在区域内的关键点之间的最短路径,并记录这些路径的长度;待跟随角色位置的插入的过程和起点过程相同,寻找与所在区域内关键点之间的最短路径。我们这样做的目的就是将离线位置和待跟随角色位置同上一部分形成的抽象图组合起来。
f)前面搜索出来的路径是一个抽象的路径,只是表示了路径上经过的点和边,没有表示出来这些点之间的边是由地图中的哪些点组成的。路径提取的方法就是将这些点之间的具体路径也就是内边搜索出来,若在登出处理阶段已将内边经过的地图上的点记录下来的话,这步要做的只是将这些点在查出来而已
e)路径平滑处理能够提高路径的最优程度,从而提高路径的质量。由于抽象图的拓扑结构定义了边界上的每个出口只有一个点能够经过而到达相邻的区域,虽然这是有效的,但是放弃了路径的最佳性,搜索出来的路径在抽象图上是最佳的,但是在底层的网格世界中却不是最短的。为了提高路径的质量,需要进行路径的平滑处理,主要方法是用部分直线路径代替原来的部分路径。具体做法是从路径的最后的一个点开始检查到前边的点是否存在直线的路径,这样可以最大程度的优化路径。
继续参考图3,其示出了根据本申请的一种多人手游断线的角色处理系统的一个实施例的结构示意图,如图3所示,多人手游断线的角色处理系统300包括以下单元。
最后在线位置模块301,配置用于响应于检测到客户端处于登出状态,服务器获取客户端离线角色的最后在线位置;
抽象图模块302,配置用于以最后在线位置为中心,进行游戏地图的区域网格划分和关键点标注,并利用A*算法计算每个区域网格中关键点的最短距离,获得游戏地图的抽象图;
待跟随对象模块303,配置用于通过计算最后在线位置与离线角色同组的队友角色位置,获得与最后在线位置直线距离最近的待跟随队友角色位置,并将待跟随队友角色位置对应的游戏角色设定为待跟随角色对象;以及
最优路径模块304,配置用于将最后在线位置与待跟随队友角色位置插入抽象图,进行路径提取和平滑处理后,获得离线角色与待跟随角色之间的最优路径。
在一些具体的实施例中,多人手游断线的角色处理系统300还包括关联处理模块305,关联处理模块305配置服务器根据最优路径移动离线角色至待跟随角色的关联区域范围,进行关联处理,以使得离线角色在游戏场景中跟随待跟随角色移动。
在一些具体的实施例中,抽象图模块302还包括:
根据游戏地图的大小对游戏地图进行区域网格的划分;
在每个相邻的区域网格的边界之间设置关键点,关键点为非障碍物网格;
利用A*算法计算每个关键点之间的最短距离,并通过连接最短距离中所有关键点的内边和外边,获得游戏地图的抽象图。
下面参考图4,其示出了适于用来实现本申请实施例的电子设备的计算机系统400的结构示意图。图4示出的电子设备仅仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
如图4所示,计算机系统400包括中央处理单元(CPU)401,其可根据存储在只读存储器(ROM)401中的程序或者从存储部分408加载到随机访问存储器(RAM)403中的程序而执行各种适当的动作和处理。在RAM 403中存储系统400操作所需的各种程序和数据。CPU401、ROM 401以及RAM 403通过总线404彼此相连。输入/输出(I/O)接口405也连接至总线404。
以下部件连接至I/O接口405:包括输入部分406、输出部分407、存储部分408、通信部分409、驱动器410、可拆卸介质411。驱动器410可根据需要连接至I/O接口405,可拆卸介质411根据需要安装在驱动器410上,以便于从其上读出的计算机程序根据需要被安装入存储部分408。
特别地,根据本公开的实施例,上文参考流程图描述的过程可被实现为计算机软件程序。可以一种或多种程序设计语言或其组合来编写用于执行本申请的操作的计算机程序代码。程序代码可完全地在训练者计算机上执行、部分地在训练者计算机上执行、作为一个独立的软件包执行、部分在训练者计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到训练者计算机,或者可连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本申请实施例中所涉及到的模块可通过软件的方式实现,也可通过硬件的方式来实现。所描述的模块也可设置在处理器中,例如,可描述为:一种处理器包括最后在线位置模块、抽象图模块、待跟随对象模块和最优路径模块。其中,这些模块的名称在某种情况下并不构成对该单元本身的限定,例如,最后在线位置模块还可被描述为“响应于检测到客户端处于登出状态,服务器获取客户端离线角色的最后在线位置”。
作为另一方面,本申请还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例中描述的电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。上述计算机可读存储介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备:响应于检测到客户端处于登出状态,服务器获取客户端离线角色的最后在线位置;以最后在线位置为中心,进行游戏地图的区域网格划分和关键点标注,并利用A*算法计算每个区域网格中关键点的最短距离,获得游戏地图的抽象图;通过计算最后在线位置与离线角色同组的队友角色位置,获得与最后在线位置直线距离最近的待跟随队友角色位置,并将待跟随队友角色位置对应的游戏角色设定为待跟随角色对象;以及将最后在线位置与待跟随队友角色位置插入抽象图,进行路径提取和平滑处理后,获得离线角色与待跟随角色之间的最优路径。
以上描述仅为本申请的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本申请中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
Claims (10)
1.一种多人手游断线的角色处理方法,其特征在于,所述方法包括:
S1:响应于检测到客户端处于登出状态,服务器获取所述客户端离线角色的最后在线位置;
S2:以所述最后在线位置为中心,进行游戏地图的区域网格划分和关键点标注,并利用A*算法计算每个区域网格中所述关键点的最短距离,获得所述游戏地图的抽象图;
S3:通过计算所述最后在线位置与所述离线角色同组的队友角色位置,获得与所述最后在线位置直线距离最近的队友角色位置,并将所述队友角色位置对应的游戏角色设定为待跟随角色对象;以及
S4:将所述离线角色与所述待跟随角色插入所述抽象图,进行路径提取和平滑处理后,获得所述离线角色与所述待跟随角色的最优路径。
2.根据权利要求1所述的方法,其特征在于,所述方法S4步骤后还包括所述服务器根据所述最优路径移动所述离线角色至所述待跟随角色的关联区域范围,进行关联处理,以使得所述离线角色在游戏场景中跟随所述待跟随角色移动。
3.根据权利要求1所述的方法,其特征在于,所述S2步骤的所述抽象图通过以下子步骤获得:
S21:根据所述游戏地图的大小对所述游戏地图进行区域的划分;
S22:在每个相邻的所述区域的边界之间设置所述关键点,所述关键点为非障碍物网格;
S23:利用所述A*算法计算每个所述关键点之间的所述最短距离,并通过所述最短距离连接所述关键点的内边和外边,构成所述游戏地图的所述抽象图。
5.根据权利要求1所述的方法,其特征在于,所述A*算法的计算公式如下:
f(n)=g(n)+h(n)
其中,f(n)表示当前节点n从初始点到目标点的估价函数,g(n)表示在状态空间中从初始节点到当前节点n的实际代价,h(n)表示从当前节点n到目标节点最佳路径的估计代价,h(n)是一种估算的数值,不表示实际的距离可通过曼哈顿距离获得。
6.一种多人手游断线的角色处理系统,其特征在于,所述系统包括:
最后在线位置模块,配置用于响应于检测到客户端处于登出状态,服务器获取所述客户端离线角色的最后在线位置;
抽象图模块,配置用于以所述最后在线位置为中心,进行游戏地图的区域网格划分和关键点标注,并利用A*算法计算每个区域网格中所述关键点的最短距离,获得所述游戏地图的抽象图;
待跟随对象模块,配置用于通过计算所述最后在线位置与所述离线角色同组的队友角色位置,获得与所述最后在线位置直线距离最近的待跟随队友角色位置,并将所述待跟随队友角色位置对应的游戏角色设定为待跟随角色对象;以及
最优路径模块,配置用于将所述最后在线位置与所述待跟随队友角色位置插入所述抽象图,进行路径提取和平滑处理后,获得所述离线角色与所述待跟随角色之间的最优路径。
7.根据权利要求6所述的系统,其特征在于,所述抽象图模块具体包括:
根据所述游戏地图的大小对所述游戏地图进行区域网格的划分;
在每个相邻的所述区域网格的边界之间设置所述关键点,所述关键点为非障碍物网格;
利用所述A*算法计算每个所述关键点之间的所述最短距离,并通过连接所述最短距离中所有关键点的内边和外边,获得所述游戏地图的所述抽象图。
8.根据权利要求6所述的系统,其特征在于,所述系统还包括关联处理模块,所述关联处理模块配置所述服务器根据所述最优路径移动所述离线角色至所述待跟随角色的关联区域范围,进行关联处理,以使得所述离线角色在游戏场景中跟随所述待跟随角色移动。
9.一种电子设备,包括:
一个或多个处理器;
存储系统,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-5中任一所述的方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-5中任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110004134.0A CN112717406A (zh) | 2021-01-04 | 2021-01-04 | 一种多人手游断线的角色处理方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110004134.0A CN112717406A (zh) | 2021-01-04 | 2021-01-04 | 一种多人手游断线的角色处理方法和系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112717406A true CN112717406A (zh) | 2021-04-30 |
Family
ID=75590756
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110004134.0A Pending CN112717406A (zh) | 2021-01-04 | 2021-01-04 | 一种多人手游断线的角色处理方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112717406A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113413601A (zh) * | 2021-07-16 | 2021-09-21 | 上海幻电信息科技有限公司 | 寻路方法及装置 |
CN113694512A (zh) * | 2021-08-11 | 2021-11-26 | 网易(杭州)网络有限公司 | 虚拟角色的控制方法、装置及电子设备 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009261921A (ja) * | 2008-03-31 | 2009-11-12 | Copcom Co Ltd | ゲームプログラム、記憶媒体およびコンピュータ装置 |
CN104759097A (zh) * | 2015-04-13 | 2015-07-08 | 四川天上友嘉网络科技有限公司 | 游戏中的自动寻路方法 |
CN106964156A (zh) * | 2017-03-24 | 2017-07-21 | 腾讯科技(深圳)有限公司 | 一种寻路方法以及装置 |
CN107687859A (zh) * | 2017-09-06 | 2018-02-13 | 电子科技大学 | 基于a星算法的最短寻路方法 |
CN110334173A (zh) * | 2019-07-11 | 2019-10-15 | 腾讯科技(深圳)有限公司 | 对象创建方法、装置及计算机设备 |
CN110602027A (zh) * | 2018-06-12 | 2019-12-20 | 网易(杭州)网络有限公司 | 游戏的自动控制方法和装置 |
CN111228811A (zh) * | 2020-02-13 | 2020-06-05 | 腾讯科技(深圳)有限公司 | 虚拟对象的控制方法、装置、设备及介质 |
CN111760289A (zh) * | 2020-07-06 | 2020-10-13 | 网易(杭州)网络有限公司 | 游戏中虚拟角色的控制方法、装置及设备 |
-
2021
- 2021-01-04 CN CN202110004134.0A patent/CN112717406A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009261921A (ja) * | 2008-03-31 | 2009-11-12 | Copcom Co Ltd | ゲームプログラム、記憶媒体およびコンピュータ装置 |
CN104759097A (zh) * | 2015-04-13 | 2015-07-08 | 四川天上友嘉网络科技有限公司 | 游戏中的自动寻路方法 |
CN106964156A (zh) * | 2017-03-24 | 2017-07-21 | 腾讯科技(深圳)有限公司 | 一种寻路方法以及装置 |
CN107687859A (zh) * | 2017-09-06 | 2018-02-13 | 电子科技大学 | 基于a星算法的最短寻路方法 |
CN110602027A (zh) * | 2018-06-12 | 2019-12-20 | 网易(杭州)网络有限公司 | 游戏的自动控制方法和装置 |
CN110334173A (zh) * | 2019-07-11 | 2019-10-15 | 腾讯科技(深圳)有限公司 | 对象创建方法、装置及计算机设备 |
CN111228811A (zh) * | 2020-02-13 | 2020-06-05 | 腾讯科技(深圳)有限公司 | 虚拟对象的控制方法、装置、设备及介质 |
CN111760289A (zh) * | 2020-07-06 | 2020-10-13 | 网易(杭州)网络有限公司 | 游戏中虚拟角色的控制方法、装置及设备 |
Non-Patent Citations (1)
Title |
---|
惊梦电子宅: "王者荣耀有人挂机怎么让他跟着我走?", 《HTTPS://ZHIDAO.BAIDU.COM/QUESTION/1436293347495188459.HTML》 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113413601A (zh) * | 2021-07-16 | 2021-09-21 | 上海幻电信息科技有限公司 | 寻路方法及装置 |
CN113413601B (zh) * | 2021-07-16 | 2024-01-02 | 上海幻电信息科技有限公司 | 寻路方法及装置 |
CN113694512A (zh) * | 2021-08-11 | 2021-11-26 | 网易(杭州)网络有限公司 | 虚拟角色的控制方法、装置及电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110882542B (zh) | 游戏智能体的训练方法、装置、设备及存储介质 | |
CN112717406A (zh) | 一种多人手游断线的角色处理方法和系统 | |
CN109999496B (zh) | 虚拟对象的控制方法、装置和电子装置 | |
US8562441B1 (en) | Secure, parallel, and independent script execution | |
US20140325070A1 (en) | Usage consumption for an invitee of a cloud system | |
Toromanoff et al. | Is deep reinforcement learning really superhuman on atari? leveling the playing field | |
CN111744187B (zh) | 一种游戏数据处理方法、装置、计算机及可读存储介质 | |
CN103838982A (zh) | 一种虚拟游戏对象生成方法及装置 | |
CN111450531B (zh) | 虚拟角色控制方法、装置、电子设备以及存储介质 | |
EP3575958B1 (en) | Object moving method and device, storage medium, and electronic device | |
CN113018866A (zh) | 地图资源的加载方法和装置、存储介质、电子装置 | |
Moradi et al. | Automatic skill acquisition in reinforcement learning using graph centrality measures | |
CN103632606A (zh) | 信息处理方法和装置 | |
US20140194207A1 (en) | Game system providing custom game stories | |
Wirth et al. | An influence map model for playing Ms. Pac-Man | |
CN111821693A (zh) | 游戏的透视外挂检测方法、装置、设备及存储介质 | |
Qin et al. | Mp5: A multi-modal open-ended embodied system in minecraft via active perception | |
Chen et al. | An adaptive deep rl method for non-stationary environments with piecewise stable context | |
CN110102047B (zh) | 游戏操作处理方法和装置、游戏效果展示方法和装置 | |
US20230206636A1 (en) | Video processing device, video processing method, and recording medium | |
CN103631261A (zh) | 信息处理方法和装置 | |
US20040024721A1 (en) | Adaptive decision engine | |
US10482100B1 (en) | Method to detect and score users who are likely to make payments in online social games | |
CN112131426A (zh) | 游戏教学视频推荐方法、装置、电子设备和存储介质 | |
KR101190497B1 (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20210430 |
|
RJ01 | Rejection of invention patent application after publication |