游戏中玩家组队方法、装置及存储介质

文档序号:1527075 发布日期:2020-02-14 浏览:41次 >En<

阅读说明:本技术 游戏中玩家组队方法、装置及存储介质 (Method and device for grouping players in game and storage medium ) 是由 王曦 于 2019-11-29 设计创作,主要内容包括:本申请提供一种游戏中玩家组队方法、装置及存储介质,涉及游戏技术领域。本申请中,游戏服务器可以根据第一客户端发送的组队请求,向队伍管理服务器获取第一玩家标识对应的目标组队进程的进程信息;然后,向第二玩家标识对应的第二客户端发送该进程信息,从而使第二客户端可以根据该进程信息与队伍管理服务器中的目标组队进程建立连接,实现第一客户端与第二客户端分别对应的玩家之间组队。通过将队伍管理功能从游戏服务器中抽离至队伍管理服务器,降低了游戏服务器的负载,提升了游戏组队效率。当玩家数量过多时,可通过增加队伍管理服务器中的组队进程保证游戏组队功能的正常运行,以更加简单的扩容方式适应游戏中玩家数量变化的复杂情况。(The application provides a method, a device and a storage medium for team formation of players in a game, and relates to the technical field of games. In the application, the game server can acquire process information of a target team formation process corresponding to the first player identifier from the team management server according to a team formation request sent by the first client; and then, the process information is sent to a second client corresponding to the second player identification, so that the second client can establish connection with a target team formation process in the team management server according to the process information, and team formation between players corresponding to the first client and the second client is realized. By taking out the team management function from the game server to the team management server, the load of the game server is reduced, and the efficiency of the game team is improved. When the number of players is excessive, the normal operation of the game team function can be ensured by increasing the team process in the team management server, and the complex situation of the number change of the players in the game can be adapted in a simpler capacity expansion mode.)

游戏中玩家组队方法、装置及存储介质

技术领域

本申请涉及游戏技术领域,具体而言,涉及一种游戏中玩家组队方法、装置及存储介质。

背景技术

网络游戏中,组队是一种非常常见的功能,组队功能可以将不同的玩家编入同一个队伍,同一个队伍中的成员互相可见对方的状态,队伍中的成员可进行各类交互,例如,可以包括:轻度的打字聊天、语音交流、甚至一部分模型动作上的重度交互等。

目前,常见的游戏组队方法为:在服务器中维护一个存根(stub)节点,由stub节点维护队伍状态,队伍中的各玩家所在的客户端可以通过stub节点进行交互,例如,stub节点可以在各玩家所在的客户端之间转发玩家角色的位置、朝向、动作等状态信息。

但是,对一些全球同服类游戏而言,基于上述现有stub节点的方式实现游戏组队时,若玩家人数过多时,需要通过添加stub节点以保证组队功能的正常,而这种添加stub节点的扩容方式难度较高,难以适应玩家突然增多的突变情况。

发明内容

本申请提供一种游戏中玩家组队方法、装置及存储介质,可以在游戏玩家的数量未知的情况下,满足组队需求,能够适应玩家突然增多的突变情况。

第一方面,本申请实施例提供一种游戏中玩家组队方法,所述方法应用于游戏服务器,游戏服务器分别与队伍管理服务器、以及至少两个客户端连接;队伍管理服务器与至少两个客户端连接,且队伍管理服务器维护有至少一个组队进程;所述方法包括:

接收第一客户端发送的组队请求,组队请求包括第一玩家标识;

根据组队请求,向队伍管理服务器获取第一玩家标识对应的目标组队进程的进程信息;

获取与第一玩家标识组队的第二玩家标识,并向第二玩家标识对应的第二客户端发送目标组队进程的进程信息;其中,目标组队进程的进程信息,用于第二客户端根据目标组队进程的进程信息与队伍管理服务器中的目标组队进程建立连接。

可选地,组队请求还包括:第二玩家标识;所述获取与第一玩家标识组队的第二玩家标识,包括:

根据组队请求,获取与第一玩家标识组队的第二玩家标识。

可选地,所述根据组队请求,向队伍管理服务器获取第一玩家标识对应的目标组队进程的进程信息,包括:

根据组队请求,向队伍管理服务器发送查询请求,查询请求用于查询是否存在第一玩家标识对应的目标组队进程;

接收队伍管理服务器发送的查询结果;

若查询结果指示存在第一玩家标识对应的目标组队进程,则获取目标组队进程的进程信息。

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

若查询结果指示不存在第一玩家标识对应的目标组队进程,则根据组队请求,向队伍管理服务器发送队伍创建请求,队伍创建请求用于指示建立第一玩家标识对应的目标组队进程;

获取队伍管理服务器根据队伍创建请求建立的目标组队进程的进程信息。

第二方面,本申请实施例还提供一种游戏中玩家组队方法,所述方法应用于队伍管理服务器,队伍管理服务器分别与游戏服务器、以及至少两个客户端连接,且队伍管理服务器维护有至少一个组队进程;游戏服务器与至少两个客户端连接;所述方法包括:

向游戏服务器发送第一玩家标识对应的目标组队进程的进程信息;

接收第二客户端根据目标组队进程的进程信息发起的连接请求,连接请求包括第二玩家标识;其中,第二客户端通过游戏服务器获取目标组队进程的进程信息;

根据连接请求,通过目标组队进程与第二客户端建立连接。

可选地,所述向游戏服务器发送第一玩家标识对应的目标组队进程的进程信息之前,所述方法还包括:

接收游戏服务器发送的查询请求;

根据查询请求,查询是否存在第一玩家标识对应的目标组队进程,并向游戏服务器发送查询结果;

相应地,所述向游戏服务器发送第一玩家标识对应的目标组队进程的进程信息,包括:

若查询结果指示存在第一玩家标识对应的目标组队进程,则向游戏服务器发送目标组队进程的进程信息。

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

若查询结果指示不存在第一玩家标识对应的目标组队进程,则接收游戏服务器发送的队伍创建请求,并根据队伍创建请求,建立第一玩家标识对应的目标组队进程;

相应地,所述向游戏服务器发送第一玩家标识对应的目标组队进程的进程信息,包括:

向游戏服务器发送根据队伍创建请求建立的目标组队进程的进程信息。

可选地,所述根据队伍创建请求,建立第一玩家标识对应的目标组队进程,包括:

按照预设规则,从至少一个组队进程中确定得到第一玩家标识对应的目标组队进程。

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

接收与目标组队进程连接的任一目标客户端发送的对应的目标游戏角色的状态信息;

通过目标组队进程,将目标游戏角色的状态信息同步至与目标组队进程建立连接的其他所有客户端。

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

接收游戏服务器发送的游戏数据;

通过目标组队进程,将游戏服务器发送的游戏数据同步至与目标组队进程建立连接的所有客户端。

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

接收第二客户端发送的离队请求,离队请求用于指示与第二客户端断开连接;

根据离队请求,断开与第二客户端的连接。

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

向游戏服务器发送第二客户端对应的离队信息。

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

判断与目标组队进程连接的客户端的数量是否等于1;

若与目标组队进程连接的客户端的数量等于1,则将目标组队进程重置为初始状态。

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

若与目标组队进程连接的客户端的数量不等于1,则更新目标组队进程的队伍信息,并将更新后的队伍信息同步至与目标组队进程连接的所有客户端。

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

接收第一客户端发送的解散队伍请求,解散队伍请求用于指示与目标组队进程连接的所有客户端断开连接;

根据解散队伍请求,与目标组队进程连接的所有客户端断开连接,并将目标组队进程重置为初始状态。

第三方面,本申请实施例提供一种游戏中玩家组队装置,所述装置应用于游戏服务器,游戏服务器分别与队伍管理服务器、以及至少两个客户端连接;队伍管理服务器与至少两个客户端连接,且队伍管理服务器维护有至少一个组队进程;所述装置包括:

第一接收模块,用于接收第一客户端发送的组队请求,组队请求包括第一玩家标识;

第一获取模块,用于根据组队请求,向队伍管理服务器获取第一玩家标识对应的目标组队进程的进程信息;

第二获取模块,用于获取与第一玩家标识组队的第二玩家标识;

第一发送模块,用于向第二玩家标识对应的第二客户端发送目标组队进程的进程信息;其中,目标组队进程的进程信息,用于第二客户端根据目标组队进程的进程信息与队伍管理服务器中的目标组队进程建立连接。

可选地,组队请求还包括:第二玩家标识;

第一获取模块,具体用于根据组队请求,获取与第一玩家标识组队的第二玩家标识。

可选地,第一获取模块,包括:

查询子模块,用于根据组队请求,向队伍管理服务器发送查询请求,查询请求用于查询是否存在第一玩家标识对应的目标组队进程;

接收子模块,用于接收队伍管理服务器发送的查询结果;

获取子模块,用于若查询结果指示存在第一玩家标识对应的目标组队进程,则获取目标组队进程的进程信息。

可选地,获取子模块还用于,若查询结果指示不存在第一玩家标识对应的目标组队进程,则根据组队请求,向队伍管理服务器发送队伍创建请求,队伍创建请求用于指示建立第一玩家标识对应的目标组队进程;获取队伍管理服务器根据队伍创建请求建立的目标组队进程的进程信息。

第四方面,本申请实施例还提供一种游戏中玩家组队装置,所述装置应用于队伍管理服务器,队伍管理服务器分别与游戏服务器、以及至少两个客户端连接,且队伍管理服务器维护有至少一个组队进程;游戏服务器与至少两个客户端连接;所述装置包括:

第二发送模块,用于向游戏服务器发送第一玩家标识对应的目标组队进程的进程信息;

第二接收模块,用于接收第二客户端根据所述目标组队进程的进程信息发起的连接请求,所述连接请求包括第二玩家标识;其中,所述第二客户端通过所述游戏服务器获取所述目标组队进程的进程信息;

连接模块,用于根据连接请求,通过目标组队进程与第二客户端建立连接。

可选地,所述装置还包括:查询模块,用于在第二发送模块向游戏服务器发送第一玩家标识对应的目标组队进程的进程信息之前,接收游戏服务器发送的查询请求;根据查询请求,查询是否存在第一玩家标识对应的目标组队进程,并向游戏服务器发送查询结果;

相应地,第二发送模块,具体用于若查询结果指示存在第一玩家标识对应的目标组队进程,则向游戏服务器发送目标组队进程的进程信息。

可选地,所述装置还包括:创建模块,用于若查询结果指示不存在第一玩家标识对应的目标组队进程,则接收游戏服务器发送的队伍创建请求,并根据队伍创建请求,建立第一玩家标识对应的目标组队进程;

相应地,第二发送模块,具体用于向游戏服务器发送根据队伍创建请求建立的目标组队进程的进程信息。

可选地,创建模块,具体用于按照预设规则,从所述至少一个组队进程中确定得到所述第一玩家标识对应的目标组队进程。

可选地,所述装置还包括:第一同步模块,用于接收与目标组队进程连接的任一目标客户端发送的对应的目标游戏角色的状态信息;通过目标组队进程,将目标游戏角色的状态信息同步至与目标组队进程建立连接的其他所有客户端。

可选地,所述装置还包括:第二同步模块,用于接收游戏服务器发送的游戏数据;通过目标组队进程,将游戏服务器发送的游戏数据同步至与目标组队进程建立连接的所有客户端。

可选地,连接模块还用于,接收第二客户端发送的离队请求,离队请求用于指示与第二客户端断开连接;根据离队请求,断开与第二客户端的连接。

可选地,连接模块还用于,向游戏服务器发送第二客户端对应的离队信息。

可选地,连接模块还用于,判断与目标组队进程连接的客户端的数量是否等于1;若与目标组队进程连接的客户端的数量等于1,则将目标组队进程重置为初始状态。

可选地,连接模块还用于,若与目标组队进程连接的客户端的数量不等于1,则更新目标组队进程的队伍信息,并将更新后的队伍信息同步至与目标组队进程连接的所有客户端。

可选地,连接模块还用于,接收第一客户端发送的解散队伍请求,解散队伍请求用于指示与目标组队进程连接的所有客户端断开连接;根据解散队伍请求,与目标组队进程连接的所有客户端断开连接,并将目标组队进程重置为初始状态。

第五方面,本申请实施例提供一种游戏服务器,包括:处理器、存储介质和总线,存储介质存储有处理器可执行的机器可读指令,当终端设备运行时,处理器与存储介质之间通过总线通信,处理器执行机器可读指令,以执行时执行如第一方面所述的方法。

第六方面,本申请实施例提供一种队伍管理服务器,包括:处理器、存储介质和总线,存储介质存储有处理器可执行的机器可读指令,当终端设备运行时,处理器与存储介质之间通过总线通信,处理器执行机器可读指令,以执行时执行如第二方面所述的方法。

第七方面,本申请实施例还提供一种存储介质,存储介质上存储有计算机程序,计算机程序被处理器运行时执行如第一方面或第二方面所述的方法。

本申请实施例中,游戏服务器可以接收第一客户端发送的组队请求,并根据组队请求,向队伍管理服务器获取第一玩家标识对应的目标组队进程的进程信息;然后,游戏服务器可以获取与第一玩家标识组队的第二玩家标识,并向第二玩家标识对应的第二客户端发送目标组队进程的进程信息,从而使得第二客户端可以根据目标组队进程的进程信息与队伍管理服务器中的目标组队进程建立连接。当第二客户端与第一客户端对应的目标组队进程连接时,可以实现第一客户端与第二客户端分别对应的玩家之间组队。通过架设队伍管理服务器,将队伍管理功能从普通的游戏服务器中抽离出来,降低了游戏服务器的负载,提升了游戏组队效率。并且,当玩家数量过多时,可通过增加队伍管理服务器中的组队进程保证游戏组队功能的正常运行,扩容方式更加简单,可以适应不同类型的游戏中玩家数量变化的复杂情况。

附图说明

为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1示出了本申请实施例提供的游戏系统的结构示意图;

图2示出了本申请实施例提供的游戏中玩家组队方法的流程示意图;

图3示出了本申请实施例提供的游戏中玩家组队方法的另一流程示意图;

图4示出了本申请实施例提供的游戏中玩家组队方法的又一流程示意图;

图5示出了本申请实施例提供的游戏中玩家组队方法的又一流程示意图;

图6示出了本申请实施例提供的游戏中玩家组队方法的又一流程示意图;

图7示出了本申请实施例提供的游戏中玩家组队方法的又一流程示意图;

图8示出了本申请实施例提供的游戏中玩家组队方法的又一流程示意图;

图9示出了本申请实施例提供的游戏中玩家组队方法的又一流程示意图;

图10示出了本申请实施例提供的游戏中玩家组队方法的又一流程示意图;

图11示出了本申请实施例提供的游戏中玩家组队方法的又一流程示意图;

图12示出了本申请实施例提供的游戏中玩家组队方法的又一流程示意图;

图13示出了一种实施方式中游戏中玩家组队方法的流程示意图;

图14示出了游戏中玩家离队方法的流程示意图;

图15示出了本申请实施例提供的游戏中组队装置的结构示意图;

图16示出了本申请实施例提供的第一获取模块的结构示意图;

图17示出了本申请实施例提供的游戏中组队装置的另一结构示意图;

图18示出了本申请实施例提供的游戏中组队装置的又一结构示意图;

图19示出了本申请实施例提供的游戏中组队装置的又一结构示意图;

图20示出了本申请实施例提供的游戏中组队装置的又一结构示意图;

图21示出了本申请实施例提供的游戏中组队装置的又一结构示意图;

图22示出了本申请实施例提供的游戏服务器的结构示意图;

图23示出了本申请实施例提供的队伍管理服务器的结构示意图。

具体实施方式

为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。

因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。在本申请的描述中,需要说明的是,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。

本申请实施例提供一种游戏系统,图1示出了本申请实施例提供的游戏系统的结构示意图。

如图1所示,该游戏系统可以包括:游戏服务器100、队伍管理服务器200和至少两个客户端300。其中,游戏服务器100可以分别与队伍管理服务器200、以及至少两个客户端300连接;队伍管理服务器200与至少两个客户端300连接,且队伍管理服务器200维护有至少一个组队进程。

可选地,游戏服务器可以是分服类游戏的后台服务器,也可以是全球同服类游戏的后台服务器。队伍管理服务器可以是单独设置的用于维护组队进程的服务器,也可以用于维护组队进程的是分布式服务器集群。客户端可以集成或安装于手机、平板电脑、台式电脑、游戏机等终端设备,本申请在此不作限制。

基于前述实施例中所述的游戏系统,本申请实施例提供一种游戏中玩家组队方法,可以实现游戏中不同玩家之间的组队功能,该方法可以应用于前述游戏系统中的游戏服务器。

图2示出了本申请实施例提供的游戏中玩家组队方法的流程示意图。

如图2所示,该游戏中玩家组队方法,可以包括:

S201、接收第一客户端发送的组队请求。

其中,组队请求包括第一玩家标识。

可选地,第一玩家标识可以用于表示第一玩家的身份,该第一玩家标识可以是第一玩家的游戏账号、游戏昵称、客户端信息等。

S202、根据组队请求,向队伍管理服务器获取第一玩家标识对应的目标组队进程的进程信息。

可选地,游戏服务器接收到第一客户端发送的组队请求后,可以根据组队请求中包含的第一玩家表示,向队伍管理服务器请求获取第一玩家标识对应的目标组队进程的进程信息。

例如,若队伍管理服务器中维护有组队进程1、组队进程2、组队进程3……组队进程n等多个进程(n为大于1的整数),其中,组队进程m(m大于等于1,且小于等于n)为第一玩家标识对应的目标组队进程,则游戏服务器可以向队伍管理服务器获取组队进程m的进程信息。

可选地,本申请实施例中,组队进程的进程信息可以包括组队进程的地址、编号(如:ID)等。

图3示出了本申请实施例提供的游戏中玩家组队方法的另一流程示意图。

如图3所示,一种实施方式中,上述根据组队请求,向队伍管理服务器获取第一玩家标识对应的目标组队进程的进程信息,可以包括:

S301、根据组队请求,向队伍管理服务器发送查询请求。

其中,查询请求用于查询是否存在第一玩家标识对应的目标组队进程。

S302、接收队伍管理服务器发送的查询结果。

队伍管理服务器可以根据查询请求查询获取查询结果,然后反馈给游戏服务器。

S303、若查询结果指示存在第一玩家标识对应的目标组队进程,则获取目标组队进程的进程信息。

图4示出了本申请实施例提供的游戏中玩家组队方法的又一流程示意图,如图4所示,本实施方式中,该方法还可以包括:

S304、若查询结果指示不存在第一玩家标识对应的目标组队进程,则根据组队请求,向队伍管理服务器发送队伍创建请求。

其中,队伍创建请求用于指示建立第一玩家标识对应的目标组队进程。

队伍管理服务器接收到队伍创建请求后,可以按照预设规则从维护的多个组队进程中选择一个作为第一玩家表示对应的目标组队进程,并将目标组队进程的进程信息发送给游戏服务器。例如,队伍管理服务器可以从多个组队进程中随机选择一个作为目标组队进程。

S305、获取队伍管理服务器根据队伍创建请求建立的目标组队进程的进程信息。

游戏服务器在获取到目标组队进程的进程信息后,可以将目标组队进程的进程信息发送给第一客户端,第一客户端可以根据目标组队进程的进程信息与目标组队进程建立连接。

可选地,另一种实施方式中,当队伍管理服务器中的组队进程中已经存在第一玩家标识对应的目标组队进程时,游戏服务器中也可以同步存储目标组队进程的进程信息,例如,可以是缓存的路由信息,则游戏服务器也可以无需向队伍管理服务器发送查询请求,而是直接获取已存储的目标组队进程的进程信息,本申请对此不作限制。

S203、获取与第一玩家标识组队的第二玩家标识,并向第二玩家标识对应的第二客户端发送目标组队进程的进程信息。

其中,目标组队进程的进程信息,可以用于第二客户端根据目标组队进程的进程信息与队伍管理服务器中的目标组队进程建立连接。

一种实施方式中,游戏服务器可以通过网络匹配的方式获取与第一玩家标识组队的第二玩家标识。

另一种实施方式中,组队请求还可以包括:第二玩家标识;游戏服务器可以根据组队请求,获取与第一玩家标识组队的第二玩家标识,本申请在此亦不作限制。

由上所述,本申请实施例中,游戏服务器可以接收第一客户端发送的组队请求,并根据组队请求,向队伍管理服务器获取第一玩家标识对应的目标组队进程的进程信息;然后,游戏服务器可以获取与第一玩家标识组队的第二玩家标识,并向第二玩家标识对应的第二客户端发送目标组队进程的进程信息,从而使得第二客户端可以根据目标组队进程的进程信息与队伍管理服务器中的目标组队进程建立连接。当第二客户端与第一客户端对应的目标组队进程连接时,可以实现第一客户端与第二客户端分别对应的玩家之间组队。通过架设队伍管理服务器,将队伍管理功能从普通的游戏服务器中抽离出来,降低了游戏服务器的负载,提升了游戏组队效率。并且,当玩家数量过多时,可通过增加队伍管理服务器中的组队进程保证游戏组队功能的正常运行,扩容方式更加简单,可以适应不同类型的游戏中玩家数量变化的复杂情况。

可选地,本申请实施例中,当队伍管理服务中的组队进程的负载不足时,可以通过手动更新的方式在队伍管理服务器中创建新的组队进程,也可以是队伍管理服务器自动创建新的组队进程,本申请在此不作限制。

基于前述实施例中所述的游戏系统,本申请实施例对应还提供一种游戏中玩家组队方法,该方法可以应用于前述游戏系统中的队伍管理服务器。

图5示出了本申请实施例提供的游戏中玩家组队方法的又一流程示意图,如图5所示,该游戏中玩家组队方法,可以包括:

S501、向游戏服务器发送第一玩家标识对应的目标组队进程的进程信息。

S502、接收第二客户端根据目标组队进程的进程信息发起的连接请求,连接请求包括第二玩家标识。

其中,第二客户端通过游戏服务器获取目标组队进程的进程信息;

S503、根据连接请求,通过目标组队进程与第二客户端建立连接。

图6示出了本申请实施例提供的游戏中玩家组队方法的又一流程示意图。

可选地,如图6所示,上述向游戏服务器发送第一玩家标识对应的目标组队进程的进程信息之前,该游戏中玩家组队方法还可以包括:

S601、接收游戏服务器发送的查询请求。

S602、根据查询请求,查询是否存在第一玩家标识对应的目标组队进程,并向游戏服务器发送查询结果。

相应地,上述向游戏服务器发送第一玩家标识对应的目标组队进程的进程信息,可以包括:若查询结果指示存在第一玩家标识对应的目标组队进程,则向游戏服务器发送目标组队进程的进程信息。

可选地,该游戏中玩家组队方法还可以包括:若查询结果指示不存在第一玩家标识对应的目标组队进程,则接收游戏服务器发送的队伍创建请求,并根据队伍创建请求,建立第一玩家标识对应的目标组队进程。

相应地,上述向游戏服务器发送第一玩家标识对应的目标组队进程的进程信息,可以包括:向游戏服务器发送根据队伍创建请求建立的目标组队进程的进程信息。

可选地,上述根据队伍创建请求,建立第一玩家标识对应的目标组队进程,可以包括:按照预设规则,从至少一个组队进程中确定得到第一玩家标识对应的目标组队进程。例如,队伍管理服务器可以从至少一个组队进程中随机确定得到第一玩家标识对应的目标组队进程。

本实施例提供的应用于队伍管理服务器的游戏中玩家组队方法,对应于前述实施例中所述的应用于游戏服务器中的游戏中玩家组队方法,具有前述实施例中所述的全部有益效果,在此不再赘述。

可选地,前述实施例所述的游戏中玩家组队方法中,目标组队进程与第一客户端或第二客户端之间建立连接的方式可以包括:目标组队进程与第一客户端或第二客户端直接建立连接;或者,目标组队进程通过游戏服务器与第一客户端或第二客户端建立连接。

以客户端A和组队进程1为例:

一种实施方式中,客户端A可以与组队进程1直接建立连接。后续游戏过程中,客户端A与组队的其他客户端之间的交互信息均可以通过组队进程1直接进行转发,可以有效降低游戏服务器的负载。

另一种实施方式中,客户端A也可以通过游戏服务器中的gameA与组队进程1建立连接。也即,后续游戏过程中,客户端A需要发送给组队的其他客户端的交互信息,需要先发送给gameA,然后由gameA发送给组队进程1,再由组队进程1进行转发至其他客户端对应的game进程,并由其他客户端对应的game进程分别转发至对应的客户端。

可选地,交互信息可以包括:玩家对应的游戏角色进入某个房间、在场景内移动、以场景组件交互、玩家发送的语音或文字消息等。

图7示出了本申请实施例提供的游戏中玩家组队方法的又一流程示意图。

可选地,如图7所示,该游戏中玩家组队方法还可以包括:

S701、接收与目标组队进程连接的任一目标客户端发送的对应的目标游戏角色的状态信息。

S702、通过目标组队进程,将目标游戏角色的状态信息同步至与目标组队进程建立连接的其他所有客户端。

如上所述,上述客户端与目标组队进程直接建立连接的实施方式中,目标组队进程可以将与之连接的任一目标客户端的目标游戏角色的状态信息,同步至与其他所有客户端、以及游戏服务器中目标客户端对应的目标game进程。

图8示出了本申请实施例提供的游戏中玩家组队方法的又一流程示意图。

可选地,如图8所示,该游戏中玩家组队方法还可以包括:

S801、接收游戏服务器发送的游戏数据。

S802、通过目标组队进程,将游戏服务器发送的游戏数据同步至与目标组队进程建立连接的所有客户端。

如上所述,上述客户端与目标组队进程直接建立连接的实施方式中,目标组队进程还可以将游戏服务器发送的游戏数据,同步至与目标组队进程建立连接的所有客户端。例如,若游戏服务器导致玩家状态变化,如:战斗结算,则游戏服务器可以将游戏数据发送给目标组队进程,由目标组队进程将游戏数据更新到所有玩家处。

图9示出了本申请实施例提供的游戏中玩家组队方法的又一流程示意图。

可选地,如图9所示,该游戏中玩家组队方法还可以包括:

S901、接收第二客户端发送的离队请求,离队请求用于指示与第二客户端断开连接。

S902、根据离队请求,断开与第二客户端的连接。

以客户端B为例,若队伍管理服务器接收到客户端B发送的离队请求,则可以断开B所在的目标组队进程与客户端B之间的连接。断开连接后,B退出该目标组队进程所对应的游戏队伍。队伍管理服务器根据离队请求,断开与第二客户端的连接后,还可以向游戏服务器发送第二客户端对应的离队信息,即,可以向游戏服务器中第二客户端对应的game进程告知第二客户端对应的玩家离开游戏队伍的消息。

图10示出了本申请实施例提供的游戏中玩家组队方法的又一流程示意图。

可选地,如图10所示,该游戏中玩家组队方法还可以包括:

S1001、判断与目标组队进程连接的客户端的数量是否等于1。

S1002、若与目标组队进程连接的客户端的数量等于1,则将目标组队进程重置为初始状态。

其中,初始状态是指,组队进程未与任何客户端建立连接的状态。将目标组队进程重置为初始状态是指,将该目标组队进程对应的队伍销毁,断开与所有客户端的连接。

图11示出了本申请实施例提供的游戏中玩家组队方法的又一流程示意图。

可选地,如图11所示,该游戏中玩家组队方法还可以包括:

S1003、若与目标组队进程连接的客户端的数量不等于1,则更新目标组队进程的队伍信息,并将更新后的队伍信息同步至与目标组队进程连接的所有客户端。

例如,某个目标组队进程对应的队伍中包括玩家A、玩家B和玩家C,假设队伍信息为“成员3人,包括A、B、C”,当玩家B断开与该目标组队进程的连接后,则队伍管理服务器可以将队伍信息更新为“成员2人,包括A、C”。然后,队伍管理服务器可以将更新后的队伍信息同步至客户端A和客户端C。

图12示出了本申请实施例提供的游戏中玩家组队方法的又一流程示意图。

可选地,如图12所示,该游戏中玩家组队方法还可以包括:

S1201、接收第一客户端发送的解散队伍请求。

解散队伍请求用于指示与目标组队进程连接的所有客户端断开连接。

S1202、根据解散队伍请求,与目标组队进程连接的所有客户端断开连接,并将目标组队进程重置为初始状态。

第一客户端为建立队伍时的第一个玩家对应的客户端,第一个玩家为队长。队伍管理服务器接收到第一客户端发送的解散队伍请求,可以认为是队长选择解散队伍,则队伍管理服务器可以断开与目标组队进程与所有客户端的连接,并将目标组队进程重置为前述初始状态。

可选地,一种实施方式中,可以是队伍管理服务器根据解散队伍请求,直接断开目标组队进程与所有客户端的连接。另一种实施方式中,也可以是每个客户端依次执行离队请求,最终实现目标组队进程与所有客户端断开连接,本申请在此不作限制。

为使得本申请前述实施例中所述的游戏中玩家组队方法所记载的技术方案更加清楚,本申请现通过如下一种可选地实施方式作具体说明:

本实施方式提供的游戏中玩家组队方法可以应用于前述游戏系统,游戏系统中,游戏服务器可以维护有多个游戏(game)进程,每个game进程对应不同的玩家客户端。每个玩家登陆后会被分配到其中1个game进程,玩家实体处于game进程上,并与其建立连接。例如,gameA对应客户端A,gameB对应客户端B。队伍管理服务器中可以维护有多个组队(team)进程,每个team进程可以用于提供创建队伍的请求,为多个玩家提供队伍交互功能。队伍管理服务器可以是分布式服务器集群,其中,集群中的每个服务器可以维护有多个team进程,当team进程不足时,可以将一个或多个服务器加入集群分担压力,实现team进程的扩容,以保证游戏组队功能的正常运行。

图13示出了一种实施方式中游戏中玩家组队方法的流程示意图。

可选地,如图13所示,以玩家A向玩家B发起组队请求为例,本实施方式中,游戏中玩家组队方法可以包括:

S1301、游戏服务器接收客户端A发送的组队请求。

当A请求与B组队时,可以通过客户端A向游戏服务器发起组队请求。组队请求会发送至游戏服务器中的gameA。组队请求可以包含玩家A的标识A和玩家B的标识B。

S1302、游戏服务器将组队请求转发至客户端B。

游戏服务器接收到组队请求后,可以通过路由存根(routestub)进程或者数据库(database,db)查找得到gameB的地址,然后将组队请求转发到gameB,由gameB然后下发到玩家B对应的客户端B。

例如,玩家登陆游戏在game进程创建自身实体后,游戏服务器可以将玩家对应的game进程的地址发送到routestub备份,或者写入数据库中自身的某个字段。当需要查找玩家B所在的gameB的地址时,可以去routestub或者db进行查找。以routestub为例,游戏服务器中可以预先创建多个routestub,然后将玩家的游戏ID进行哈希(hash)确定对应的routestub。

客户端B接收到组队请求后,若玩家B同意组队,则可以向游戏服务器返回同意组队请求;若不同意组队,则可以向游戏服务器返回拒绝组队请求,或者不返回任何消息。

S1303、游戏服务器判断是否接收到客户端B返回的同意组队请求。

若是,则执行步骤S1304;若否,则结束,并重置game进程中记录的相关数据。

S1304、游戏服务器查询是否存在A对应的目标team进程。

若是,则直接执行步骤S1305;若否,则先执行步骤S1306、S1307和S1308,再执行步骤S1305。

S1305、游戏服务器获取目标team进程的地址和ID,并发送给客户端B。

S1306、游戏服务器向队伍管理服务器发送队伍创建请求。

S1307、队伍管理服务器随机选择一个team进程作为A对应的目标team进程。

S1308、客户端A与目标team进程建立连接。

S1309、客户端B与目标team进程建立连接。

客户端B与客户端A对应的目标team进程建立连接后,目标team进程可以将客户端A和客户端B分别对应的目标游戏角色的状态信息、游戏服务器发送的游戏数据等,分别同步至对方的客户端,也可以将A或B的语音消息、文字消息等在客户端A和客户端B之间进行转发,从而实现A和B的组队功能。

可选地,基于前述实施例中所述,本申请实施例还提供一种游戏中玩家离队方法,图14示出了游戏中玩家离队方法的流程示意图。

如图14所示,该游戏中玩家离队方法,可以包括:

S1401、队伍管理服务器接收任一目标客户端发送的离队请求。

S1402、队伍管理服务器断开与目标客户端的连接。

S1403、队伍管理服务器向游戏服务器发送目标客户端对应的离队信息。

S1404、队伍管理服务器判断与目标team进程连接的其他客户端的数量是否等于1。

若是,则执行步骤S1405;若否,则执行步骤S1406。

S1405、队伍管理服务器将目标team进程重置为初始状态。

S1406、队伍管理服务器更新目标team进程的队伍信息,并将更新后的队伍信息同步至与目标team进程连接的所有客户端。

基于前述实施例所述的游戏中玩家组队方法,本申请实施例还对应提供一种游戏中玩家组队装置,该装置可以应用于前述游戏系统中的游戏服务器。

图15示出了本申请实施例提供的游戏中组队装置的结构示意图,如图15所示,该游戏中玩家组队装置,可以包括:第一接收模块110、第一获取模块120、第二获取模块130和第一发送模块140。第一接收模块110可以用于接收第一客户端发送的组队请求,组队请求包括第一玩家标识。第一获取模块120可以用于根据组队请求,向队伍管理服务器获取第一玩家标识对应的目标组队进程的进程信息。第二获取模块130可以用于获取与第一玩家标识组队的第二玩家标识。第一发送模块140可以用于向第二玩家标识对应的第二客户端发送目标组队进程的进程信息;其中,目标组队进程的进程信息,用于第二客户端根据目标组队进程的进程信息与队伍管理服务器中的目标组队进程建立连接。

可选地,组队请求还可以包括:第二玩家标识。第一获取模块120具体可以用于根据组队请求,获取与第一玩家标识组队的第二玩家标识。

图16示出了本申请实施例提供的第一获取模块的结构示意图。

可选地,如图16所示,第一获取模块可以包括:查询子模块121、接收子模块122和获取子模块123。查询子模块121可以用于根据组队请求,向队伍管理服务器发送查询请求,查询请求用于查询是否存在第一玩家标识对应的目标组队进程。接收子模块122可以用于接收队伍管理服务器发送的查询结果。获取子模块123可以用于若查询结果指示存在第一玩家标识对应的目标组队进程,则获取目标组队进程的进程信息。

可选地,获取子模块123还可以用于若查询结果指示不存在第一玩家标识对应的目标组队进程,则根据组队请求,向队伍管理服务器发送队伍创建请求,队伍创建请求用于指示建立第一玩家标识对应的目标组队进程;获取队伍管理服务器根据队伍创建请求建立的目标组队进程的进程信息。

基于前述实施例所述的游戏中玩家组队方法,本申请实施例还对应提供一种游戏中玩家组队装置,该装置可以应用于前述游戏系统中的队伍管理服务器。

图17示出了本申请实施例提供的游戏中组队装置的另一结构示意图,如图17所示,该游戏中玩家组队装置,可以包括:第二发送模块210、第二接收模块220和连接模块230。第二发送模块210可以用于向游戏服务器发送第一玩家标识对应的目标组队进程的进程信息。第二接收模块220可以用于接收第二客户端根据所述目标组队进程的进程信息发起的连接请求;连接请求包括第二玩家标识;其中,第二客户端通过游戏服务器获取目标组队进程的进程信息。连接模块230可以用于根据连接请求,通过目标组队进程与第二客户端建立连接。

图18示出了本申请实施例提供的游戏中组队装置的又一结构示意图。

可选地,如图18所示,该游戏中玩家组队装置,还可以包括:查询模块240。查询模块240可以用于在第二发送模块向游戏服务器发送第一玩家标识对应的目标组队进程的进程信息之前,接收游戏服务器发送的查询请求;根据查询请求,查询是否存在第一玩家标识对应的目标组队进程,并向游戏服务器发送查询结果。

相应地,第二发送模块210具体可以用于若查询结果指示存在第一玩家标识对应的目标组队进程,则向游戏服务器发送目标组队进程的进程信息。

图19示出了本申请实施例提供的游戏中组队装置的又一结构示意图。

可选地,如图19所示,该游戏中玩家组队装置,还可以包括:创建模块250。创建模块250可以用于若查询结果指示不存在第一玩家标识对应的目标组队进程,则接收游戏服务器发送的队伍创建请求,并根据队伍创建请求,建立第一玩家标识对应的目标组队进程。

相应地,第二发送模块210具体可以用于向游戏服务器发送根据队伍创建请求建立的目标组队进程的进程信息。

可选地,创建模块250具体可以用于按照预设规则,从至少一个组队进程中确定得到第一玩家标识对应的目标组队进程。

图20示出了本申请实施例提供的游戏中组队装置的又一结构示意图。

可选地,如图20所示,该游戏中玩家组队装置,还可以包括:第一同步模块260,可以用于接收与目标组队进程连接的任一目标客户端发送的对应的目标游戏角色的状态信息;通过目标组队进程,将目标游戏角色的状态信息同步至与目标组队进程建立连接的其他所有客户端。

图21示出了本申请实施例提供的游戏中组队装置的又一结构示意图。

可选地,如图21所示,该游戏中玩家组队装置,还可以包括:第二同步模块270,用于接收游戏服务器发送的游戏数据;通过目标组队进程,将游戏服务器发送的游戏数据同步至与目标组队进程建立连接的所有客户端。

可选地,连接模块230还可以用于,接收第二客户端发送的离队请求,离队请求用于指示与第二客户端断开连接;根据离队请求,断开与第二客户端的连接。

可选地,连接模块230还可以用于,向游戏服务器发送第二客户端对应的离队信息。

可选地,连接模块230还可以用于,判断与目标组队进程连接的客户端的数量是否等于1;若与目标组队进程连接的客户端的数量等于1,则将目标组队进程重置为初始状态。

可选地,连接模块230还可以用于,若与目标组队进程连接的客户端的数量不等于1,则更新目标组队进程的队伍信息,并将更新后的队伍信息同步至与目标组队进程连接的所有客户端。

可选地,连接模块230还可以用于,接收第一客户端发送的解散队伍请求,解散队伍请求用于指示与目标组队进程连接的所有客户端断开连接;根据解散队伍请求,与目标组队进程连接的所有客户端断开连接,并将目标组队进程重置为初始状态。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置的具体工作过程,可以参考前述方法实施例中方法的对应过程,本申请中不再赘述。

在本申请所提供的几个实施例中,应该理解到,所揭露的方法和装置,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本申请各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。

所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得上述监控设备的控制芯片可以执行本申请各个实施例所述方法的全部或部分步骤。

本申请实施例还提供一种游戏服务器,图22示出了本申请实施例提供的游戏服务器的结构示意图。

如图22所示,该游戏服务器可以包括:处理器11、存储介质12和总线(图中未标出),存储介质12存储有处理器11可执行的机器可读指令,当终端设备运行时,处理器11与存储介质12之间通过总线通信,处理器11执行机器可读指令,以执行时执行如前述实施例中所述的应用于游戏服务器的游戏中玩家组队方法。具体实现方式和技术效果类似,在此不再赘述。

本申请实施例还提供一种队伍管理服务器,图23示出了本申请实施例提供的队伍管理服务器的结构示意图。

如图23所示,该队伍管理服务器可以包括:处理器21、存储介质22和总线(图中未标出),存储介质22存储有处理器21可执行的机器可读指令,当终端设备运行时,处理器21与存储介质22之间通过总线通信,处理器21执行机器可读指令,以执行时执行如前述实施例中所述的应用于队伍管理服务器的游戏中玩家组队方法。具体实现方式和技术效果类似,在此同样不再赘述。

其中,存储介质可以包括:U盘、移动硬盘、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。处理器可以包括一个或多个处理核(例如,单核处理器(S)或多核处理器(S))。仅作为举例,处理器可以包括中央处理单元(Central Processing Unit,CPU)、专用集成电路(Application Specific Integrated Circuit,ASIC)、专用指令集处理器(Application Specific Instruction-set Processor,ASIP)、图形处理单元(GraphicsProcessing Unit,GPU)、物理处理单元(Physics Processing Unit,PPU)、数字信号处理器(Digital Signal Processor,DSP)、现场可编程门阵列(Field Programmable GateArray,FPGA)、可编程逻辑器件(Programmable Logic Device,PLD)、控制器、微控制器单元、简化指令集计算机(Reduced Instruction Set Computing,RISC)、或微处理器等,或其任意组合。

本申请实施例还提供一种存储介质,存储介质上存储有计算机程序,计算机程序被处理器运行时执行如前述任一方法实施例中所述的游戏中玩家组队方法。具体实现方式和技术效果类似,在此同样不再赘述。

以上所述仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

32页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:一种兼具摇马与餐椅功能的玩具

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!

技术分类