CN109364480A - 一种信息同步方法和装置 - Google Patents
一种信息同步方法和装置 Download PDFInfo
- Publication number
- CN109364480A CN109364480A CN201811259748.8A CN201811259748A CN109364480A CN 109364480 A CN109364480 A CN 109364480A CN 201811259748 A CN201811259748 A CN 201811259748A CN 109364480 A CN109364480 A CN 109364480A
- Authority
- CN
- China
- Prior art keywords
- game
- game area
- information
- player
- position information
- 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
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/50—Controlling the output signals based on the game progress
- A63F13/52—Controlling the output signals based on the game progress involving aspects of the displayed game scene
-
- 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/30—Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
- A63F13/35—Details of game servers
-
- 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/50—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 characterized by details of game servers
- A63F2300/53—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 characterized by details of game servers details of basic data processing
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明实施例提供一种信息同步方法和装置,其中,该信息同步方法包括接收第一游戏终端发送的玩家位于游戏场景中的游戏信息,该游戏信息包括游戏状态信息和玩家位置信息;根据玩家位置信息从多个游戏区域中选取玩家当前所位于的游戏区域,作为第一游戏区域;根据各游戏区域之间的邻接关系确定与第一游戏区域相邻的多个第二游戏区域;获取位于第一游戏区域和第二游戏区域中的玩家信息,作为目标玩家,从多个第二游戏终端中选取与目标玩家对应的游戏终端,作为目标游戏终端;将游戏信息广播给目标游戏终端以对该目标游戏终端中显示的当前游戏信息进行更新。本发明能够有效降低大量玩家状态变化时进行消息同步所带来的带宽消耗和性能开销。
Description
技术领域
本发明涉及游戏开发技术处理领域,具体而言,涉及一种信息同步方法和装置。
背景技术
网络游戏又称“在线游戏”,简称“网游”。指以互联网为传输媒介,以游戏运营商服务器和用户计算机为处理终端,以游戏客户端软件为信息交互窗口的旨在实现娱乐、休闲、交流和取得虚拟成就的具有可持续性的个体性多人在线游戏。其中,网络游戏区别于单机游戏最大的一点就是玩家间存在信息交互(通信),如A玩家的状态改变(比如位置、着装、外貌等等),在B玩家看来能够(实时)同步。那么对于一个大量玩家处于同一个大世界的网络游戏来说,某一个玩家的状态改变,需要广播给所有的其他玩家,而每个玩家的位置都是实时变化的,换言之,现有的游戏过程中由于消息同步所带来的带宽消耗和性能开销极大,使得游戏终端、游戏服务器以及带宽等都均面临极大挑战。
发明内容
有鉴于此,本发明实施例的目的在于提供一种信息同步方法和装置,以改善上述问题。
一方面,本发明较佳实施例提供了一种信息同步方法,应用于游戏服务器,该游戏服务器能够与第一游戏终端以及多个第二游戏终端通信,所述游戏服务器中预存有多个游戏区域以及各游戏区域之间的邻接关系,所述方法包括:
接收所述第一游戏终端发送的玩家位于游戏场景中的游戏信息,该游戏信息包括游戏状态信息和玩家位置信息;
根据所述玩家位置信息从所述多个游戏区域中选取玩家当前所位于的游戏区域,作为第一游戏区域;
根据所述各游戏区域之间的邻接关系确定与所述第一游戏区域相邻的多个第二游戏区域;
获取位于所述第一游戏区域和所述第二游戏区域中的玩家信息,作为目标玩家,从所述多个第二游戏终端中选取与所述目标玩家对应的游戏终端,作为目标游戏终端;
将所述游戏信息广播给所述目标游戏终端以对该目标游戏终端中显示的当前游戏信息进行更新。
在本发明较佳实施例的选择中,所所述玩家位置信息包括历史位置信息和当前位置信息,所述根据所述玩家位置信息从所述多个游戏区域中选取玩家当前所位于的游戏区域,作为第一游戏区域的步骤包括:
判断所述历史位置信息和当前位置信息是否位于同一游戏区域;
当所述当前位置信息和所述历史位置信息位于同一游戏区域时,根据所述当前位置信息或者所述历史位置信息从所述多个游戏区域中选取玩家当前所位于的游戏区域,作为第一游戏区域。
在本发明较佳实施例的选择中,所述根据所述玩家位置信息从所述多个游戏区域中选取玩家当前所位于的游戏区域,作为第一游戏区域的步骤还包括:
当所述当前位置信息和所述历史位置信息不在同一游戏区域时,根据所述当前位置信息从所述多个游戏区域中选取玩家所位于的当前游戏区域;以及根据所述历史位置信息从所述多个游戏区域中选取玩家所位于的历史游戏区域;
将所述当前游戏区域和所述历史游戏区域共同作为第一游戏区域。
在本发明较佳实施例的选择中,所当所述游戏状态信息为玩家上线信息时,所述方法还包括:
将所述第一游戏区域和所述第二游戏区域中的玩家信息发送给所述第一游戏终端进行显示。
另一方面,本发明较佳实施例还提供一种信息同步方法,应用于能够与游戏服务器通信的第一游戏终端,该游戏服务器还能够与多个第二游戏终端通信,所述第一游戏终端中预存有多个游戏区域以及各游戏区域之间的邻接关系,所述方法包括:
获取玩家位于游戏场景中的游戏信息,该游戏信息包括游戏状态信息和玩家位置信息;
根据所述玩家位置信息从所述多个游戏区域中选取玩家当前所位于的游戏区域,作为第一游戏区域;
根据所述各游戏区域之间的邻接关系确定与所述第一游戏区域相邻的多个第二游戏区域;
将所述游戏信息、与所述第一游戏区域和所述第二游戏区域对应的第一游戏区域信息和第二游戏区域信息发送给游戏服务器,以使得所述游戏服务器根据所述第一游戏区域信息和第二游戏区域信息确定目标玩家以及与该目标玩家对应的目标游戏终端,并将所述游戏信息广播给所述目标游戏终端以实现信息更新。
在本发明较佳实施例的选择中,所述玩家位置信息包括历史位置信息和当前位置信息,所述根据所述玩家位置信息从所述多个游戏区域中选取玩家当前所位于的游戏区域,作为第一游戏区域的步骤包括:
判断所述历史位置信息和当前位置信息是否位于同一游戏区域;
当所述当前位置信息和所述历史位置信息位于同一游戏区域时,根据所述当前位置信息或者所述历史位置信息从所述多个游戏区域中选取玩家当前所位于的游戏区域,作为第一游戏区域;
当所述当前位置信息和所述历史位置信息不在同一游戏区域时,根据所述当前位置信息从所述多个游戏区域中选取玩家所位于的当前游戏区域;以及根据所述历史位置信息从所述多个游戏区域中选取玩家所位于的历史游戏区域,并将所述当前游戏区域和所述历史游戏区域共同作为第一游戏区域。
在本发明较佳实施例的选择中,所述多个游戏区域包括边缘游戏区域和位于边缘游戏区域之间的中间游戏区域,所述方法还包括:
当所述玩家位置信息落入所述中间游戏区域时,以所述玩家位置信息作为屏幕显示区域的中心进行游戏显示;
当所述玩家位置信息落入所述边缘游戏区域时,将所述边缘游戏区域全屏显示于所述屏幕显示区域。
又一方面,本发明较佳实施例还提供一种信息同步装置,应用于游戏服务器,该游戏服务器能够与第一游戏终端以及多个第二游戏终端通信,所述游戏服务器中预存有多个游戏区域以及各游戏区域之间的邻接关系,所述装置包括:
信息接收模块,用于接收所述第一游戏终端发送的玩家位于游戏场景中的游戏信息,该游戏信息包括游戏状态信息和玩家位置信息;
第一选取模块,用于根据所述玩家位置信息从所述多个游戏区域中选取玩家当前所位于的游戏区域,作为第一游戏区域;
第二选取模块,用于根据所述各游戏区域之间的邻接关系确定与所述第一游戏区域相邻的多个第二游戏区域;
目标终端确定模块,用于获取位于所述第一游戏区域和所述第二游戏区域中的玩家信息,作为目标玩家,从所述多个第二游戏终端中选取与所述目标玩家对应的游戏终端,作为目标游戏终端;
信息同步模块,用于将所述游戏信息广播给所述目标游戏终端以对该目标游戏终端中显示的当前游戏信息进行更新。
在本发明较佳实施例的选择中,所述玩家位置信息包括历史位置信息和当前位置信息,所述第一选取模块包括:
位置判断单元,用于判断所述历史位置信息和当前位置信息是否位于同一游戏区域;
第一区域选取单元,用于在所述当前位置信息和所述历史位置信息位于同一游戏区域时,根据所述当前位置信息或者所述历史位置信息从所述多个游戏区域中选取玩家当前所位于的游戏区域,作为第一游戏区域。
在本发明较佳实施例的选择中,所述第一选取模块还包括:
第二区域选取单元,用于在所述当前位置信息和所述历史位置信息不在同一游戏区域时,根据所述当前位置信息从所述多个游戏区域中选取玩家所位于的当前游戏区域;以及根据所述历史位置信息从所述多个游戏区域中选取玩家所位于的历史游戏区域;以及
将所述当前游戏区域和所述历史游戏区域共同作为第一游戏区域。
与现有技术相比,本发明实施例提供一种信息同步方法和装置,其中,该方法是基于预先划分后的多个游戏区域实现游戏信息的广播、同步,如在需要进行玩家信息同步时,仅需将信息同步给同一游戏区域中的其他玩家以及相邻游戏区域中的玩家,无需实现整个游戏场景中的信息同步,从而大幅降低了游戏服务器在进行信息同步时的数据交互量,同效降低了带宽,提高了CPU的利用率。
为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本发明实施例提供的游戏系统的结构示意图。
图2为图1中所示的游戏服务器的方框结构示意图。
图3为本发明实施例提供的应用于游戏服务器的信息同步方法的流程示意图。
图4为本发明实施例提供的游戏区域划分结果示意图。
图5为图3中所示的步骤S12的子流程示意图。
图6为本发明实施例提供的应用于第一游戏终端的信息同步方法的流程示意图。
图7为本发明实施例提供的信息同步装置的方框结构示意图。
图8为图7在所示的第一选取模块的单元结构示意图。
图标:10-游戏系统;20-游戏服务器;200-信息同步装置;210-信息接收模块;220-第一选取模块;2200-位置判断单元;2201-第一区域选取单元;2202-第二区域选取单元;230-第二选取模块;240-目标终端确定模块;250-信息同步模块;300-存储器;400-存储控制器;500-处理器;30-第一游戏终端;40-第二游戏终端。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。
因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
如图1所示,为本发明实施例提供的游戏系统10的结构示意图,该游戏系统10包括游戏服务器20、第一游戏终端30和多个第二游戏终端40,所述第一游戏终端30和多个所述第二游戏终端40分别与所述游戏服务器20通信连接,该游戏服务器20用于对所有玩家进行管理,如对各玩家的游戏状态信息(比如位置、着装、外貌等等)进行监控、同步等,使得其他玩家能够实时知道彼此的游戏状态信息。
可选地,图2为图1中所示的游戏服务器20的方框结构示意图,该游戏服务器20包括信息同步装置200、存储器300、存储控制器400以及处理器500。其中,所述存储器300、存储控制器400、处理器500各元件相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件之间通过一条或多条通讯总线或信号线实现电性连接。所述信息同步装置200包括至少一个可以软件或固件的形式存储于所述存储器300中或固化在所述游戏服务器20中的操作系统中的软件功能模块。所述处理器500在所述存储控制器400的控制下访问所述存储器300,以用于执行所述存储器300中存储的可执行模块,例如所述信息同步装置200所包括的软件功能模块及计算机程序等。
可以理解,图2所示的结构仅为示意,所述游戏服务器20还可包括比图2中所示更多或者更少的组件,或者具有与图2所示不同的配置。另外,所述游戏服务器20可以是但不限于智能手机、个人电脑(personal computer,PC)、平板电脑、个人数字助理(personaldigital assistant,PDA)、移动上网设备(mobile Internet device,MID)、云服务器、小型机等。
另外需要说明的是,所述第一游戏终端30和所述第二游戏终端40的描述仅是为了更加清楚的对本发明给出的信息同步方法进行说明,在实际实施时,各游戏终端之间不分主次。实际实施时,所述第一游戏终端30和所述第二游戏终端40可以是但不限于智能手机、个人电脑、平板电脑、个人数字助理、移动上网设备、云服务器、小型机等。
进一步地,如图3所示,为本发明实施例提供的信息同步方法的流程示意图,该信息同步方法应用于上述的游戏服务器20,下面将结合图3对所述信息同步方法的具体步骤和流程进行详细阐述。应理解的是,本实施例中给出的信息同步方法不以下面所述的步骤和流程的顺序为限制。
步骤S11,接收所述第一游戏终端30发送的玩家位于游戏场景中的游戏信息,该游戏信息包括游戏状态信息和玩家位置信息;
步骤S12,根据所述玩家位置信息从所述多个游戏区域中选取玩家当前所位于的游戏区域,作为第一游戏区域;
步骤S13,根据所述各游戏区域之间的邻接关系确定与所述第一游戏区域相邻的多个第二游戏区域;
步骤S14,获取位于所述第一游戏区域和所述第二游戏区域中的玩家信息,作为目标玩家,从所述多个第二游戏终端40中选取与所述目标玩家对应的游戏终端,作为目标游戏终端;
步骤S15,将所述游戏信息广播给所述目标游戏终端以对该目标游戏终端中显示的当前游戏信息进行更新。
上述步骤S11-步骤S15中给出的信息同步方法是基于预先划分的游戏区域,仅将玩家的游戏信息广播给第一游戏区域和第二游戏区域中的其他玩家,而无需广播给游戏场景中的全部玩家,从而既能保证各玩家的游戏体验,又能够解决现有技术中由于大量玩家状态变化进行信息同步时,需要消耗大量的带宽损耗和性能开销的问题,同时,本发明给出的信息同步方法还可以做到时间复杂度O(Cn),其中n为玩家数量,C为常量。
详细地,在执行步骤S11之前,如图4所示,首先需要针对一个游戏的游戏场景进行游戏区域划分,并对划分后的游戏区域以及各游戏区域之间的邻接关系进行保存,如与A游戏区域相邻的游戏区域包括位于A游戏区域左边的游戏区域B、左边的游戏区域C等。在此要注意的是,关于所述游戏区域的划分规则可根据实际需求进行选取,例如,可结合游戏系统10的系统性能、玩家体验、场景分辨度等从多个维度进行划分。实际实施时,当玩家每次进入游戏场景时,会被随机分配到某个游戏区域(area),由于每个游戏区域在第一游戏终端30或第二游戏终端40上的表现正好为一屏,因此,玩家若不在边缘的游戏区域,则永远处于第一游戏终端30或第二游戏终端40的屏幕中心。可以理解的是,本实施例中给出的游戏区域的实际形状不限于图4中所示,如还可以是圆形、六边形等。
进一步地,在步骤S11中记载的游戏状态信息可以是玩家的着装信息、外貌变化信息、装备变化信息、游戏状态信息(如上线、下线等)等,而玩家在游戏场景中的位置变化可以是进入场景、离开场景、从一个游戏区域跨越至另一个游戏区域、仅在一个游戏区域中移动等。可以理解的是,本实施例中的一个游戏终端可对应一个玩家,即所述第一游戏终端30发送的玩家位置信息可用于判断当前玩家在游戏场景的位置信息。
进一步地,步骤S12和步骤S13中,在根据玩家位置信息进行第一游戏区域和第二游戏区域选取时,可将所述位置信息中包含的坐标值(如X值、Y值、Z值等)与已保存的各游戏区域的坐标进行对比得到。
根据实际需求,由于玩家在游戏场景中可能出现游戏区域的跨越,因此,所述第一游戏区域可以包括玩家当前所位于的游戏区域以及历史游戏区域,本实施例中,为了更加精确的判断玩家的游戏信息,确保游戏场景中的各个玩家的游戏体验,如图5所示,当所述玩家位置信息包括当前位置信息、历史位置信息时,步骤S12中所述的根据所述玩家位置信息从所述多个游戏区域中选取玩家当前所位于的游戏区域,作为第一游戏区域的步骤可通过下述步骤S120-步骤S122实现。
步骤S120,判断所述历史位置信息和当前位置信息是否位于同一游戏区域;
步骤S121,当所述当前位置信息和所述历史位置信息位于同一游戏区域时,根据所述当前位置信息或者所述历史位置信息从所述多个游戏区域中选取玩家当前所位于的游戏区域,作为第一游戏区域。
步骤S122,当所述当前位置信息和所述历史位置信息不在同一游戏区域时,根据所述当前位置信息从所述多个游戏区域中选取玩家所位于的当前游戏区域;以及根据所述历史位置信息从所述多个游戏区域中选取玩家所位于的历史游戏区域;将所述当前游戏区域和所述历史游戏区域共同作为第一游戏区域。
本实施例给出的上述步骤S120-步骤S122中,当当前位置信息和历史位置信息位于同一游戏区域时,即可判定玩家未出现游戏区域跨越,则只需将该玩家的游戏信息同时广播给当前游戏区域中的其他玩家以及该当前游戏区域的邻接区域内的游戏玩家;而当当前位置信息和历史位置信息未位于同一游戏区域时,则判定玩家出现游戏区域跨越,则需将该玩家的游戏信息同时广播给该玩家所位于的历史游戏区域内的各玩家、历史游戏区域的邻接区域内的游戏玩家、当前游戏区域中的各玩家以及当前游戏区域中的邻接区域内的各玩家。
步骤S14中,在所述游戏服务器20将游戏信息广播给位于第一游戏区域和第二游戏区域中的各玩家后,各玩家对应的第二游戏终端40根据接收到的游戏信息对当前终端显示的游戏信息进行同步更新,以使各玩家实时了解各其他玩家的游戏状态。
进一步地,根据实际需求,当所述游戏状态信息为玩家上线信息时,所述方法还可包括将所述第一游戏区域和所述第二游戏区域中的玩家信息发送给所述第一游戏终端30进行显示。例如,假设第一游戏终端30发送玩家上线信息给所述游戏服务器20时,该游戏服务器20可基于接收到的玩家上线信息将位于第一游戏区域和第二游戏区域中的玩家信息发送给第一游戏终端30,且该第一游戏终端30在接收到玩家信息可以以列表等形进行显示,从而了解游戏场景中的玩家在线游戏情况。
可以理解的是,由于游戏服务器20仅需将该玩家所位于的游戏区域中的玩家信息以及相邻游戏区域中的玩家信息发送给第一游戏终端30进行显示,因此能够大幅减小游戏过程中的数据交互量和带宽消耗。
此外,所述第一游戏终端30还可直接判断玩家的当前位置是位于显示屏的哪个区域,从而直接向游戏服务器20请求对应区域的游戏玩家信息,例如,当玩家位于左半屏,则向游戏服务器20请求自身所位于的当前游戏区域的玩家列表以及位于当前游戏区域的左边的游戏区域中的玩家列表;反之,向游戏服务器20请求当前游戏区域的玩家列表以及位于当前游戏区域的右边的游戏区域中的玩家列表,即游戏服务器20不需要下发所有游戏区域中的玩家信息给客户端(如第一游戏终端30或第二游戏终端40)。
进一步地,基于对上述应用于游戏服务器20的信息同步方法的描述,如图6所示,本实施例还给出一种应用于第一游戏终端30的信息同步方法,下面将结合图6对所述信息同步方法的具体步骤和流程进行详细阐述。
步骤S21,获取玩家位于游戏场景中的游戏信息,该游戏信息包括游戏状态信息和玩家位置信息;
步骤S22,根据所述玩家位置信息从所述多个游戏区域中选取玩家当前所位于的游戏区域,作为第一游戏区域;
步骤S23,根据所述各游戏区域之间的邻接关系确定与所述第一游戏区域相邻的多个第二游戏区域;
步骤S24,将所述游戏信息、与所述第一游戏区域和所述第二游戏区域对应的第一游戏区域信息和第二游戏区域信息发送给游戏服务器20,以使得所述游戏服务器20根据所述第一游戏区域信息和第二游戏区域信息确定目标玩家以及与该目标玩家对应的目标游戏终端,并将所述游戏信息广播给所述目标游戏终端以实现信息更新。
步骤S220,判断所述历史位置信息和当前位置信息是否位于同一游戏区域;
步骤S221,当所述当前位置信息和所述历史位置信息位于同一游戏区域时,根据所述当前位置信息或者所述历史位置信息从所述多个游戏区域中选取玩家当前所位于的游戏区域,作为第一游戏区域;
步骤S222,当所述当前位置信息和所述历史位置信息不在同一游戏区域时,根据所述当前位置信息从所述多个游戏区域中选取玩家所位于的当前游戏区域;以及根据所述历史位置信息从所述多个游戏区域中选取玩家所位于的历史游戏区域,并将所述当前游戏区域和所述历史游戏区域共同作为第一游戏区域。
根据实际需求,由于多个游戏区域边缘区域(如图4中“O”区域)和中间区域(如图4中位于“O”区域中间的中间区域),因此,在上述步骤S21-步骤S24以及步骤S220-步骤S222的执行过程,当所述玩家位置信息落入所述中间游戏区域时,游戏终端(如第一游戏终端或第二游戏终端)可以以所述玩家位置信息作为屏幕显示区域的中心进行游戏显示;当所述玩家位置信息落入所述边缘游戏区域时,游戏终端(如第一游戏终端或第二游戏终端)则将所述边缘游戏区域全屏显示于所述屏幕显示区域。
此外可以理解的是,由于上述步骤S21-步骤S24具有与上述步骤S11-步骤S15相同的技术特征,因此,关于所述步骤S21-步骤S24的详细描述可参照前述步骤S11-步骤S15的描述,本实施例在此不再赘述。
进一步地,如图7所示,为本发明实施例提供的信息同步装置200的方框结构示意图,所述信息同步装置200应用于所述游戏服务器20,且该信息同步装置200包括信息接收模块210、第一选取模块220、第二选取模块230、目标终端确定模块240和信息同步模块250。
所述信息接收模块210,用于接收所述第一游戏终端30发送的玩家位于游戏场景中的游戏信息,该游戏信息包括游戏状态信息和玩家位置信息;本实施例中,关于所述信息接收模块210的描述具体可参考上述步骤S11的详细描述,也即,所述步骤S11可以由信息接收模块210执行,因而在此不作更多说明。
所述第一选取模块220,用于根据所述玩家位置信息从所述多个游戏区域中选取玩家当前所位于的游戏区域,作为第一游戏区域;本实施例中,关于所述第一选取模块220的描述具体可参考上述步骤S12的详细描述,也即,所述步骤S12可以由第一选取模块220执行,因而在此不作更多说明。可选地,如图8所示,所述第一选取模块220包括位置判断单元2200、第一区域选取单元2201和第二区域选取单元2202。
所述位置判断单元2200,用于判断所述历史位置信息和当前位置信息是否位于同一游戏区域;本实施例中,关于所述位置判断单元2200的描述具体可参考上述步骤S120的详细描述,也即,所述步骤S120可以由位置判断单元2200执行,因而在此不作更多说明。
所述第一区域选取单元2201,用于在所述当前位置信息和所述历史位置信息位于同一游戏区域时,根据所述当前位置信息或者所述历史位置信息从所述多个游戏区域中选取玩家当前所位于的游戏区域,作为第一游戏区域。本实施例中,关于所述第一区域选取单元2201的描述具体可参考上述步骤S121的详细描述,也即,所述步骤S121可以由第一区域选取单元2201执行,因而在此不作更多说明。
所述第二区域选取单元2202,用于在所述当前位置信息和所述历史位置信息不在同一游戏区域时,根据所述当前位置信息从所述多个游戏区域中选取玩家所位于的当前游戏区域;以及根据所述历史位置信息从所述多个游戏区域中选取玩家所位于的历史游戏区域;以及将所述当前游戏区域和所述历史游戏区域共同作为第一游戏区域。本实施例中,关于所述第二区域选取单元2202的描述具体可参考上述步骤S122的详细描述,也即,所述步骤S122可以由第二区域选取单元2202执行,因而在此不作更多说明。
所述第二选取模块230,用于根据所述各游戏区域之间的邻接关系确定与所述第一游戏区域相邻的多个第二游戏区域;本实施例中,关于所述第二选取模块230的描述具体可参考上述步骤S13的详细描述,也即,所述步骤S13可以由第二选取模块230执行,因而在此不作更多说明。
所述目标终端确定模块240,用于获取位于所述第一游戏区域和所述第二游戏区域中的玩家信息,作为目标玩家,从所述多个第二游戏终端40中选取与所述目标玩家对应的游戏终端,作为目标游戏终端;本实施例中,关于所述目标终端确定模块240的描述具体可参考上述步骤S14的详细描述,也即,所述步骤S14可以由目标终端确定模块240执行,因而在此不作更多说明。
所述信息同步模块250,用于将所述游戏信息广播给所述目标游戏终端以对该目标游戏终端中显示的当前游戏信息进行更新。本实施例中,关于所述信息同步模块250的描述具体可参考上述步骤S15的详细描述,也即,所述步骤S15可以由信息同步模块250执行,因而在此不作更多说明。
综上所述,本发明实施例提供一种信息同步方法和装置,其中,该方法是基于预先划分后的多个游戏区域进行实现广播、同步,如在需要进行玩家信息同步时,仅需将信息同步至同一游戏区域邻中的其他玩家以及相邻游戏区域中的玩家,无需实现整个游戏场景中的信息同步,从而大幅降低了游戏服务器20在进行消息同步时的数据处理量,同时有效降低了带宽,提高了CPU的利用率。
在本发明实施例所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置和方法实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本发明的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本发明各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,电子设备,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅为本发明的可选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种信息同步方法,其特征在于,应用于游戏服务器,该游戏服务器能够与第一游戏终端以及多个第二游戏终端通信,所述游戏服务器中预存有多个游戏区域以及各游戏区域之间的邻接关系,所述方法包括:
接收所述第一游戏终端发送的玩家位于游戏场景中的游戏信息,该游戏信息包括游戏状态信息和玩家位置信息;
根据所述玩家位置信息从所述多个游戏区域中选取玩家当前所位于的游戏区域,作为第一游戏区域;
根据所述各游戏区域之间的邻接关系确定与所述第一游戏区域相邻的多个第二游戏区域;
获取位于所述第一游戏区域和所述第二游戏区域中的玩家信息,作为目标玩家,从所述多个第二游戏终端中选取与所述目标玩家对应的游戏终端,作为目标游戏终端;
将所述游戏信息广播给所述目标游戏终端以对该目标游戏终端中显示的当前游戏信息进行更新。
2.根据权利要求1所述的信息同步方法,其特征在于,所述玩家位置信息包括历史位置信息和当前位置信息,所述根据所述玩家位置信息从所述多个游戏区域中选取玩家当前所位于的游戏区域,作为第一游戏区域的步骤包括:
判断所述历史位置信息和当前位置信息是否位于同一游戏区域;
当所述当前位置信息和所述历史位置信息位于同一游戏区域时,根据所述当前位置信息或者所述历史位置信息从所述多个游戏区域中选取玩家当前所位于的游戏区域,作为第一游戏区域。
3.根据权利要求2所述的信息同步方法,其特征在于,所述根据所述玩家位置信息从所述多个游戏区域中选取玩家当前所位于的游戏区域,作为第一游戏区域的步骤还包括:
当所述当前位置信息和所述历史位置信息不在同一游戏区域时,根据所述当前位置信息从所述多个游戏区域中选取玩家所位于的当前游戏区域;以及根据所述历史位置信息从所述多个游戏区域中选取玩家所位于的历史游戏区域;
将所述当前游戏区域和所述历史游戏区域共同作为第一游戏区域。
4.根据权利要求1所述的信息同步方法,其特征在于,当所述游戏状态信息为玩家上线信息时,所述方法还包括:
将所述第一游戏区域和所述第二游戏区域中的玩家信息发送给所述第一游戏终端进行显示。
5.一种信息同步方法,其特征在于,应用于能够与游戏服务器通信的第一游戏终端,该游戏服务器还能够与多个第二游戏终端通信,所述第一游戏终端中预存有多个游戏区域以及各游戏区域之间的邻接关系,所述方法包括:
获取玩家位于游戏场景中的游戏信息,该游戏信息包括游戏状态信息和玩家位置信息;
根据所述玩家位置信息从所述多个游戏区域中选取玩家当前所位于的游戏区域,作为第一游戏区域;
根据所述各游戏区域之间的邻接关系确定与所述第一游戏区域相邻的多个第二游戏区域;
将所述游戏信息、与所述第一游戏区域和所述第二游戏区域对应的第一游戏区域信息和第二游戏区域信息发送给游戏服务器,以使得所述游戏服务器根据所述第一游戏区域信息和第二游戏区域信息确定目标玩家以及与该目标玩家对应的目标游戏终端,并将所述游戏信息广播给所述目标游戏终端以实现信息更新。
6.根据权利要求5所述的信息同步方法,其特征在于,所述玩家位置信息包括历史位置信息和当前位置信息,所述根据所述玩家位置信息从所述多个游戏区域中选取玩家当前所位于的游戏区域,作为第一游戏区域的步骤包括:
判断所述历史位置信息和当前位置信息是否位于同一游戏区域;
当所述当前位置信息和所述历史位置信息位于同一游戏区域时,根据所述当前位置信息或者所述历史位置信息从所述多个游戏区域中选取玩家当前所位于的游戏区域,作为第一游戏区域;
当所述当前位置信息和所述历史位置信息不在同一游戏区域时,根据所述当前位置信息从所述多个游戏区域中选取玩家所位于的当前游戏区域;以及根据所述历史位置信息从所述多个游戏区域中选取玩家所位于的历史游戏区域,并将所述当前游戏区域和所述历史游戏区域共同作为第一游戏区域。
7.根据权利要求5所述的信息同步方法,其特征在于,所述多个游戏区域包括边缘游戏区域和位于边缘游戏区域之间的中间游戏区域,所述方法还包括:
当所述玩家位置信息落入所述中间游戏区域时,以所述玩家位置信息作为屏幕显示区域的中心进行游戏显示;
当所述玩家位置信息落入所述边缘游戏区域时,将所述边缘游戏区域全屏显示于所述屏幕显示区域。
8.一种信息同步装置,其特征在于,应用于游戏服务器,该游戏服务器能够与第一游戏终端以及多个第二游戏终端通信,所述游戏服务器中预存有多个游戏区域以及各游戏区域之间的邻接关系,所述装置包括:
信息接收模块,用于接收所述第一游戏终端发送的玩家位于游戏场景中的游戏信息,该游戏信息包括游戏状态信息和玩家位置信息;
第一选取模块,用于根据所述玩家位置信息从所述多个游戏区域中选取玩家当前所位于的游戏区域,作为第一游戏区域;
第二选取模块,用于根据所述各游戏区域之间的邻接关系确定与所述第一游戏区域相邻的多个第二游戏区域;
目标终端确定模块,用于获取位于所述第一游戏区域和所述第二游戏区域中的玩家信息,作为目标玩家,从所述多个第二游戏终端中选取与所述目标玩家对应的游戏终端,作为目标游戏终端;
信息同步模块,用于将所述游戏信息广播给所述目标游戏终端以对该目标游戏终端中显示的当前游戏信息进行更新。
9.根据权利要求8所述的信息同步装置,其特征在于,所述玩家位置信息包括历史位置信息和当前位置信息,所述第一选取模块包括:
位置判断单元,用于判断所述历史位置信息和当前位置信息是否位于同一游戏区域;
第一区域选取单元,用于在所述当前位置信息和所述历史位置信息位于同一游戏区域时,根据所述当前位置信息或者所述历史位置信息从所述多个游戏区域中选取玩家当前所位于的游戏区域,作为第一游戏区域。
10.根据权利要求9所述的信息同步装置,其特征在于,所述第一选取模块还包括:
第二区域选取单元,用于在所述当前位置信息和所述历史位置信息不在同一游戏区域时,根据所述当前位置信息从所述多个游戏区域中选取玩家所位于的当前游戏区域;以及根据所述历史位置信息从所述多个游戏区域中选取玩家所位于的历史游戏区域;以及
将所述当前游戏区域和所述历史游戏区域共同作为第一游戏区域。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811259748.8A CN109364480A (zh) | 2018-10-26 | 2018-10-26 | 一种信息同步方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811259748.8A CN109364480A (zh) | 2018-10-26 | 2018-10-26 | 一种信息同步方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109364480A true CN109364480A (zh) | 2019-02-22 |
Family
ID=65389741
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811259748.8A Pending CN109364480A (zh) | 2018-10-26 | 2018-10-26 | 一种信息同步方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109364480A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110898425A (zh) * | 2019-11-27 | 2020-03-24 | 腾讯科技(深圳)有限公司 | 信息同步方法和装置、存储介质及电子装置 |
CN110935169A (zh) * | 2019-11-22 | 2020-03-31 | 腾讯科技(深圳)有限公司 | 虚拟对象的控制方法、信息显示方法、装置、设备及介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080175486A1 (en) * | 2007-01-18 | 2008-07-24 | Kabushiki Kaisha Toshiba | Video-attribute-information output apparatus, video digest forming apparatus, computer program product, and video-attribute-information output method |
CN103297249A (zh) * | 2012-03-05 | 2013-09-11 | 盛趣信息技术(上海)有限公司 | 游戏广播通知方法及系统 |
CN108434739A (zh) * | 2018-01-30 | 2018-08-24 | 网易(杭州)网络有限公司 | 游戏场景中虚拟资源的处理方法及装置 |
-
2018
- 2018-10-26 CN CN201811259748.8A patent/CN109364480A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080175486A1 (en) * | 2007-01-18 | 2008-07-24 | Kabushiki Kaisha Toshiba | Video-attribute-information output apparatus, video digest forming apparatus, computer program product, and video-attribute-information output method |
CN103297249A (zh) * | 2012-03-05 | 2013-09-11 | 盛趣信息技术(上海)有限公司 | 游戏广播通知方法及系统 |
CN108434739A (zh) * | 2018-01-30 | 2018-08-24 | 网易(杭州)网络有限公司 | 游戏场景中虚拟资源的处理方法及装置 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110935169A (zh) * | 2019-11-22 | 2020-03-31 | 腾讯科技(深圳)有限公司 | 虚拟对象的控制方法、信息显示方法、装置、设备及介质 |
CN110935169B (zh) * | 2019-11-22 | 2021-09-14 | 腾讯科技(深圳)有限公司 | 虚拟对象的控制方法、信息显示方法、装置、设备及介质 |
CN110898425A (zh) * | 2019-11-27 | 2020-03-24 | 腾讯科技(深圳)有限公司 | 信息同步方法和装置、存储介质及电子装置 |
CN110898425B (zh) * | 2019-11-27 | 2021-05-11 | 腾讯科技(深圳)有限公司 | 信息同步方法和装置、存储介质及电子装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7296978B2 (ja) | 対戦ゲームプレイに参加させるためのプレーヤへのインセンティブ授与 | |
US20180250600A1 (en) | User-driven spectator channel for live game play in multi-player games | |
JP5822774B2 (ja) | ビデオゲーム制御サーバ、ビデオゲーム制御装置、及びビデオゲーム制御プログラム | |
CN104379224A (zh) | 服务器系统 | |
US9560131B2 (en) | Efficient synchronization of behavior trees using network significant nodes | |
CN110152308A (zh) | 一种游戏虚拟形象多人物合照方法 | |
CN106170094A (zh) | 全景视频的直播方法及装置 | |
CN109286824A (zh) | 一种直播用户侧控制的方法、装置、设备及介质 | |
CN109364480A (zh) | 一种信息同步方法和装置 | |
CN105579106A (zh) | 计算机的控制方法、控制程序以及计算机 | |
CN113244609A (zh) | 多画面的显示方法和装置、存储介质及电子设备 | |
JP2010213806A (ja) | ネットワークゲームシステム | |
CN111714899A (zh) | 一种实时游戏对战系统及方法 | |
CN109718543A (zh) | 一种同屏处理方法及装置 | |
CN102779021B (zh) | 一种进行数据显示的方法及装置 | |
JP5270509B2 (ja) | ビデオゲーム制御サーバ、ビデオゲーム制御方法、およびビデオゲーム制御プログラム | |
CN114470746A (zh) | 服务器系统、数据传输方法、装置、设备及存储介质 | |
JP6704017B2 (ja) | ビデオゲーム処理プログラム、及びビデオゲーム処理システム | |
US10943319B2 (en) | Information processing system, information processing apparatus, server, storage medium having stored therein information processing program, and information processing method | |
JP6570727B1 (ja) | プログラム、方法及びゲーム装置 | |
JP7164646B2 (ja) | プログラム、方法及びゲーム装置 | |
CN111346381A (zh) | 游戏路径控制方法、装置、设备及计算机可读存储介质 | |
CN103336888A (zh) | 一种集换式卡牌逻辑引擎 | |
JP6849756B2 (ja) | プログラム、方法及びゲーム装置 | |
JP7256848B2 (ja) | プログラム、制御方法、及びコンピュータ |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190222 |