CN108159691A - 游戏状态同步方法及系统 - Google Patents

游戏状态同步方法及系统 Download PDF

Info

Publication number
CN108159691A
CN108159691A CN201711277310.8A CN201711277310A CN108159691A CN 108159691 A CN108159691 A CN 108159691A CN 201711277310 A CN201711277310 A CN 201711277310A CN 108159691 A CN108159691 A CN 108159691A
Authority
CN
China
Prior art keywords
game state
information
server
synchronization message
current
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.)
Granted
Application number
CN201711277310.8A
Other languages
English (en)
Other versions
CN108159691B (zh
Inventor
程喆
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Pixel Software Technology Co Ltd
Original Assignee
Beijing Pixel Software Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Pixel Software Technology Co Ltd filed Critical Beijing Pixel Software Technology Co Ltd
Priority to CN201711277310.8A priority Critical patent/CN108159691B/zh
Publication of CN108159691A publication Critical patent/CN108159691A/zh
Application granted granted Critical
Publication of CN108159691B publication Critical patent/CN108159691B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/30Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
    • A63F13/35Details of game servers
    • A63F13/355Performing operations on behalf of clients with restricted processing capabilities, e.g. servers transform changing game scene into an encoded video stream for transmitting to a mobile phone or a thin client
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/50Controlling the output signals based on the game progress
    • A63F13/53Controlling the output signals based on the game progress involving additional visual information provided to the game scene, e.g. by overlay to simulate a head-up display [HUD] or displaying a laser sight in a shooting game
    • A63F13/537Controlling the output signals based on the game progress involving additional visual information provided to the game scene, e.g. by overlay to simulate a head-up display [HUD] or displaying a laser sight in a shooting game using indicators, e.g. showing the condition of a game character on screen
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/70Game security or game management aspects
    • A63F13/79Game security or game management aspects involving player-related data, e.g. identities, accounts, preferences or play histories

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Physics & Mathematics (AREA)
  • Optics & Photonics (AREA)
  • Business, Economics & Management (AREA)
  • Computer Security & Cryptography (AREA)
  • General Business, Economics & Management (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明提供一种游戏状态同步方法及系统。所述方法包括:客户端设备在检测到用户操作时,生成包括当前游戏状态信息的同步消息,并将同步消息发送给服务器。服务器根据同步消息进行误差检测,并得到检测结果。当检测结果为通过时,服务器根据同步消息中的当前游戏状态信息进行游戏状态更新,并将当前游戏状态信息同步发送给其他客户端设备,以实现游戏状态同步。由此,客户端设备只有在检测到用户输入操作时,才会生成同步消息发送给服务器进行处理,客户端设备可分担部分计算操作,服务器无需对每帧操作都进行计算处理,可有效降低服务器的运算负担,提高服务器的运算效率。

Description

游戏状态同步方法及系统
技术领域
本发明涉及信息处理技术领域,具体而言,涉及一种游戏状态同步方法及系统。
背景技术
在网络游戏中,信息的同步处理是非常重要的,其关系到不同客户端设备之间信息表现的统一,目前,游戏状态同步是广泛应用于大型网络游戏的一种信息同步方式。
在现有技术中,通常由客户端将每帧操作上传到服务器,服务器接收每帧操作后进行游戏行为状态计算,并以广播的方式将计算的状态结果下发给游戏中的各个客户端设备,各个客户端设备接收到状态结果后根据状态结果中的信息进行同步显示。
现有技术的缺点在于,由于服务器需要计算客户端设备上传的每帧操作,当需要计算的用户操作比较复杂时,服务器的运算负担会显著增加,服务器的运算效率难以提高,服务器能够承载的客户端设备的上限数量变低,严重影响用户体验。
发明内容
为了克服现有技术中的上述不足,本发明实施例提供一种游戏状态同步方法及系统。
本发明实施例提供一种游戏状态同步方法,所述方法包括:
客户端设备在检测到用户操作时,生成包括当前游戏状态信息的同步消息,并将所述同步消息发送给服务器;
服务器根据所述同步消息进行误差检测,并得到检测结果;
当检测结果为通过时,服务器根据所述同步消息中的当前游戏状态信息进行游戏状态更新,并将所述当前游戏状态信息同步发送给其他客户端设备,以实现游戏状态同步。
本发明实施例还提供一种游戏状态同步系统,所述系统包括相互通信连接的服务器及至少一个客户端设备,所述客户端设备包括信息生成模块,所述服务器包括误差处理模块及同步处理模块;
当客户端设备检测到用户操作时,所述信息生成模块,用于生成包括当前游戏状态信息的同步消息,并将所述同步消息发送给服务器;
所述误差处理模块,用于根据所述同步消息进行误差检测,并得到检测结果;
当检测结果为通过时,所述同步处理模块,用于根据所述同步消息中的当前游戏状态信息进行游戏状态更新,并将所述当前游戏状态信息同步发送给其他客户端设备,以实现游戏状态同步。
相对于现有技术而言,本发明具有以下有益效果:
本发明实施例提供一种游戏状态同步方法及系统。所述方法包括:客户端设备在检测到用户操作时,生成包括当前游戏状态信息的同步消息,并将所述同步消息发送给服务器。服务器根据所述同步消息进行误差检测,并得到检测结果。当检测结果为通过时,服务器根据所述同步消息中的当前游戏状态信息进行游戏状态更新,并将所述当前游戏状态信息同步发送给其他客户端设备,以实现游戏状态同步。由此,客户端设备只有在检测到用户输入操作时,才会生成同步消息发送给服务器进行处理,客户端设备可分担部分计算操作,服务器无需对每帧操作都进行计算处理,可有效降低服务器的运算负担,提高服务器的运算效率。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1是本发明实施例提供的游戏状态同步系统的方框示意图。
图2是本发明实施例提供的图1所示的服务器的方框示意图。
图3是本发明实施例提供的图1所示的客户端设备的方框示意图。
图4是本发明第一实施例提供的游戏状态同步方法的步骤流程图之一。
图5为本发明第一实施例提供的图4中步骤S110的子步骤流程示意图。
图6为本发明第一实施例提供的图4中步骤S120的子步骤的流程示意图。
图7为本发明第一实施例提供的图4中步骤S130的子步骤的流程示意图。
图8是本发明第一实施例提供的游戏状态同步方法的步骤流程图之二。
图9为本发明第二实施例提供的游戏状态同步系统包括的功能模块图。
图标:10-游戏状态同步系统;100-服务器;110-第一存储器;120-第一处理器;130-第一网络模块;200-客户端设备;210-第二存储器;220-第二处理器;230-第二网络模块;240-显示器;310-信息生成模块;320-误差处理模块;330-同步处理模块;340-状态更正模块。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本发明的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
请参照图1,图1是本发明实施例提供的游戏状态同步系统10的方框示意图。所述游戏状态同步系统10包括相互通信连接的服务器100及至少一个客户端设备200。
在本实施例中,所述客户端设备200可以是,但不限于,智能手机、平板电脑、PC、便携式计算机等。
请参照图2,图2是本发明实施例提供的图1所示的服务器100的方框示意图。所述服务器100包括第一存储器110、第一处理器120及第一网络模块130。
所述第一存储器110、第一处理器120及第一网络模块130相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可通过一条或多条通信总线或信号线实现电性连接。第一存储器110中存储有至少一个能以软件或固件(firmware)的形式进行保存的软件功能模块,所述第一处理器120通过运行存储在第一存储器110内的软件程序以及模块,从而执行各种功能应用以及数据处理。
其中,所述第一存储器110可以是,但不限于,随机存取存储器(Random AccessMemory,RAM),只读存储器(Read Only Memory,ROM),可编程只读存储器(ProgrammableRead-Only Memory,PROM),可擦除只读存储器(Erasable Programmable Read-OnlyMemory,EPROM),电可擦除只读存储器(Electric Erasable Programmable Read-OnlyMemory,EEPROM)等。上述第一存储器110内的软件程序以及模块还可包括操作系统,其可包括各种用于管理系统任务(例如内存管理、存储设备控制、电源管理等)的软件组件和/或驱动,并可与各种硬件或软件组件相互通信,从而提供其他软件组件的运行环境。
所述第一处理器120可以是一种集成电路芯片,具有信号的处理能力。上述的第一处理器120可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等。还可以是数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。
第一网络模块130用于通过网络建立服务器100与客户端设备200等其他外部设备之间的通信连接,实现网络信号及数据的收发操作。
可以理解,图2所述的结构仅为示意,服务器100还可包括比图2中所示更多或者更少的组件,或者具有与图2所示不同的配置。图2中所示的各组件可以采用硬件、软件或其组合实现。
请参照图3,图3是本发明实施例提供的图1所示的客户端设备200的方框示意图。所述客户端设备200包括第二存储器210、第二处理器220、第二网络模块230及显示器240。
所述第二存储器210中存储有至少一个能以软件或固件(firmware)的形式进行保存的软件功能模块,所述第二处理器220通过运行存储在第二存储器210内的软件程序以及模块,从而执行各种功能应用以及数据处理。
所述显示器240用于对游戏场景界面、游戏状态信息等内容进行显示。
其中,所述第二存储器210、第二处理器220及第二网络模块230与图2中的第一存储器110、第一处理器120及第一网络模块130的硬件配置相同,在此不再一一介绍。图3所述的结构仅为示意,客户端设备200还可包括比图3所示更多或者更少的组件,或者具有与图3所示不同的配置。图3中所示的各组件可以采用硬件、软件或其组合实现。
第一实施例
请参照图4,图4是本发明第一实施例提供的游戏状态同步方法的步骤流程图之一。所述游戏状态同步方法应用于上述的游戏状态同步系统10,所述游戏状态同步系统10包括相互通信连接的服务器100及至少一个客户端设备200。下面对游戏状态同步方法的步骤流程进行详细阐述。所述方法包括:步骤S110、步骤S120及步骤S130。
步骤S110,客户端设备200在检测到用户操作时,生成包括当前游戏状态信息的同步消息,并将所述同步消息发送给服务器100。
请参照图5,图5为本发明第一实施例提供的图4中步骤S110的子步骤流程示意图。所述步骤S110包括子步骤S111、子步骤S112、子步骤S113、子步骤S114及子步骤S115。
子步骤S111,获取当前用户操作信息。
在本实施例中,当客户端设备200检测到用户输入操作时,所述客户端设备200基于用户当前输入的操作得到当前用户操作信息。
子步骤S112,根据所述当前用户操作信息进行状态演算,得到当前游戏状态信息。
在本实施例中,所述当前游戏状态信息可以包括,但不限于,在游戏场景中,游戏角色位置变化的状态信息、游戏角色移动速度信息、游戏角色移动方向信息等。
子步骤S113,生成包括所述当前用户操作信息及当前游戏状态信息的同步消息。
在本实施例中,所述客户端设备200基于当前用户操作生成一条对应的同步消息,所述同步消息中携带有所述当前用户操作信息及当前游戏状态信息(可记为Sc)。
子步骤S114,根据上次发送同步消息的时间及当前生成所述同步消息的时间计算得到信息传输时间间隔,并将所述信息传输时间间隔携带到所述同步消息中。
在本实施例中,所述客户端设备200根据上次发送同步消息的时间(比如,T0)及当前生成所述同步消息的时间(比如,Tc)计算得到信息传输时间间隔(比如,T)。其中,T=Tc-T0。
在本实施例中,所述客户端设备200可从服务器100获取所述上次发送同步消息的时间,或者,所述客户端设备200可在上次发送同步消息时自行记录时间T0。
子步骤S115,将所述同步消息发送给服务器100。
在本实施例中,所述客户端设备200将携带有所述信息传输时间间隔、当前用户操作信息及当前游戏状态信息的同步消息发送给服务器100。
在本实施例中,所述客户端设备200只有在检测到用户输入新的操作时,才会生成同步消息发送给服务器100。若未检测到用户输入操作或用户输入的操作未发生变化,所述客户端设备200可自行对每帧操作进行计算处理并实时更新游戏状态。
例如,在游戏场景中,游戏角色当前处于前进状态且未发生状态变化,所述客户端设备200可自行对前进的每帧操作进行计算处理,并实时更新状态以显示给用户。当用户输入的操作由前进转换成其他操作(比如,停止、转弯、跳跃等)时,所述客户端设备200检测到用户操作发生变化,可生成对应的同步消息发送给服务器100进行处理。由此,由客户端设备200来分担部分计算操作,服务器100不需要对每帧操作都进行计算处理,可有效降低服务器100的运算负担,提高服务器100的运算效率。
在本实施例中,所述客户端设备200进行同步消息发送处理的C++语句示例如下。
步骤S120,服务器100根据所述同步消息进行误差检测,并得到检测结果。
请参照图6,图6为本发明第一实施例提供的图4中步骤S120的子步骤的流程示意图。所述步骤S120包括子步骤S121、子步骤S122、子步骤S123、子步骤S124、子步骤S125及子步骤S126。
子步骤S121,获取所述服务器100中当前存储的目标游戏状态信息。
在本实施例中,所述服务器100获取所述服务器100中当前存储的目标游戏状态信息(可记为S0)。其中,所述目标游戏状态信息是指根据上一次用户操作演算得到的游戏状态信息,所述目标游戏状态信息可存储于数据库中。
子步骤S122,对所述同步消息进行解析,获取信息传输时间间隔、当前用户操作信息及当前游戏状态信息。
在本实施例中,所述服务器100对所述同步消息进行解析,获取所述同步消息中携带的信息传输时间间隔(T)、当前用户操作信息及当前游戏状态信息(Sc)。
子步骤S123,根据所述目标游戏状态信息、信息传输时间间隔及当前用户操作信息进行状态增量演算,得到演算游戏状态信息。
在本实施例中,所述服务器100根据所述目标游戏状态信息(S0)、信息传输时间间隔(T)及当前用户操作信息进行状态增量演算,得到演算游戏状态信息(可记为Ss)。
子步骤S124,对所述演算游戏状态信息及当前游戏状态信息进行误差计算,并检测计算得到的误差结果是否小于预设误差阈值。
在本实施例中,所述服务器100对经过状态增量演算得到的所述演算游戏状态信息(Ss)及所述同步消息中携带的所述当前游戏状态信息(Sc)进行误差计算,并检测计算得到的误差结果是否小于预设误差阈值。其中,所述预设误差阈值可根据实际需求进行设定。
当小于预设误差阈值时,执行子步骤S125,判定检测结果为通过。
在本实施例中,当小于预设误差阈值时,表明所述客户端设备200计算的当前游戏状态信息(Sc)通过检测,所述服务器100可采用所述当前游戏状态信息(Sc)。
当不小于预设误差阈值时,执行子步骤S126,判定检测结果为未通过。
在本实施例中,当不小于预设误差阈值时,表明误差过大,所述客户端设备200计算的当前游戏状态信息(Sc)未通过检测。
在现有技术中,通常服务器100计算的结果会强制反馈给客户端设备200,客户端设备200需要根据服务器100计算的结果进行相应调整。由于误差是不可避免的,服务器100的计算结果与客户端设备200的计算结果总会存在误差,由此,客户端设备200在进行调整时,可能会出现游戏卡顿的情况,用户体验感不好。
在本实施例中,本方案通过设置误差检测操作,可避免将服务器100的计算结果强制反馈给客户端设备200。当客户端设备200计算的当前游戏状态信息(Sc)处于误差可接受范围内时,服务器100可直接采用客户端设备200的计算结果,客户端设备200无需根据服务器100的计算结果进行频繁调整。由此,可减少游戏卡顿的情况,提升用户体验。
在本实施例中,所述服务器100进行误差检测处理的C++语句示例如下。
步骤S130,当检测结果为通过时,服务器100根据所述同步消息中的当前游戏状态信息进行游戏状态更新,并将所述当前游戏状态信息同步发送给其他客户端设备200,以实现游戏状态同步。
请参照图7,图7为本发明第一实施例提供的图4中步骤S130的子步骤的流程示意图。所述步骤S130包括子步骤S131及子步骤S132。
子步骤S131,将所述服务器100中当前存储的目标游戏状态信息更新为所述当前游戏状态信息。
在本实施例中,当检测结果为通过时,服务器100将所述服务器100中当前存储的目标游戏状态信息(S0)更新为所述当前游戏状态信息(Sc),即,所述服务器100将Sc的值赋给S0。
子步骤S132,将所述当前游戏状态信息同步发送给其他客户端设备200,以使其他客户端设备200进行游戏状态更新,实现游戏状态同步。
在本实施例中,服务器100将所述当前游戏状态信息(Sc)以广播的形式同步发送给其他客户端设备200,所述其他客户端设备200可根据所述当前游戏状态信息(Sc)进行游戏状态更新,实现游戏状态同步。
请参照图8,图8是本发明第一实施例提供的游戏状态同步方法的步骤流程图之二。所述方法还包括:步骤S140、步骤S150及步骤S160。
步骤S140,当检测结果为未通过时,服务器100将当前存储的目标游戏状态信息更新为所述演算游戏状态信息。
在本实施例中,当检测结果为未通过时,所述服务器100将当前存储的目标游戏状态信息(S0)更新为所述演算游戏状态信息(Ss),即,所述服务器100将Ss的值赋给S0。同时,所述服务器100会丢弃客户端设备200计算的当前游戏状态信息(Sc)。
步骤S150,所述服务器100将所述演算游戏状态信息同步发送给所述客户端设备200及其他客户端设备200,以实现游戏状态同步。
在本实施例中,所述服务器100将生成一条携带有所述演算游戏状态信息(Ss)的回复消息,并将所述回复消息发送给所述客户端设备200。同时,所述服务器100将所述演算游戏状态信息(Ss)发送给其他客户端设备200,以使其他客户端设备200可根据所述演算游戏状态信息(Ss)进行游戏状态更新,实现游戏状态同步。
在本实施例中,根据误差检测结果进行对应处理的C++语句示例如下。
步骤S160,所述客户端设备200接收所述演算游戏状态信息,并根据所述演算游戏状态信息进行游戏状态更正处理。
在本实施例中,所述客户端设备200接收所述服务器100发送的回复消息,解析得到所述演算游戏状态信息(Ss),并根据所述演算游戏状态信息(Ss)进行游戏状态更正。
第二实施例
请参照图9,图9为本发明第二实施例提供的游戏状态同步系统10包括的功能模块图。所述系统包括相互通信连接的服务器100及至少一个客户端设备200,其中,所述客户端设备200包括信息生成模块310,所述服务器100包括误差处理模块320及同步处理模块330。
当客户端设备200检测到用户操作时,所述信息生成模块310,用于生成包括当前游戏状态信息的同步消息,并将所述同步消息发送给服务器100。
在本实施例中,所述信息生成模块310设置于客户端设备200中,由所述客户端设备200的第二处理器220执行。所述信息生成模块310用于执行图4中的步骤S110,关于所述信息生成模块310的具体描述可以参照步骤S110的描述。
所述误差处理模块320,用于根据所述同步消息进行误差检测,并得到检测结果。
在本实施例中,所述误差处理模块320设置于服务器100中,由服务器100的第一处理器120执行。所述误差处理模块320用于执行图4中的步骤S120,关于所述误差处理模块320的具体描述可以参照步骤S120的描述。
当检测结果为通过时,所述同步处理模块330,用于根据所述同步消息中的当前游戏状态信息进行游戏状态更新,并将所述当前游戏状态信息同步发送给其他客户端设备200,以实现游戏状态同步。
当检测结果为未通过时,所述同步处理模块330,还用于将所述服务器100中当前存储的目标游戏状态信息更新为所述当前游戏状态信息。
所述同步处理模块330,还用于将所述当前游戏状态信息同步发送给其他客户端设备200,以使其他客户端设备200进行游戏状态更新,实现游戏状态同步。
在本实施例中,所述同步处理模块330设置于服务器100中,由服务器100的第一处理器120执行。所述同步处理模块330用于执行图4中的步骤S130,以及图8中的步骤S140及步骤S150,关于所述同步处理模块330的具体描述可以参照步骤S130-步骤S150的描述。
请再次参照图9,所述客户端设备200还包括状态更正模块340。
所述状态更正模块340,用于接收服务器100发送的所述演算游戏状态信息,并根据所述演算游戏状态信息进行游戏状态更正处理。
在本实施例中,所述状态更正模块340设置于客户端设备200中,由所述客户端设备200的第二处理器220执行。所述状态更正模块340用于执行图8中的步骤S160,关于所述状态更正模块340的具体描述可以参照步骤S160的描述。
综上所述,本发明实施例提供一种游戏状态同步方法及系统。所述方法包括:客户端设备在检测到用户操作时,生成包括当前游戏状态信息的同步消息,并将所述同步消息发送给服务器。服务器根据所述同步消息进行误差检测,并得到检测结果。当检测结果为通过时,服务器根据所述同步消息中的当前游戏状态信息进行游戏状态更新,并将所述当前游戏状态信息同步发送给其他客户端设备,以实现游戏状态同步。
由此,客户端设备只有在检测到用户输入操作时,才会生成同步消息发送给服务器进行处理,客户端设备可分担部分计算操作,服务器无需对每帧操作都进行计算处理,可有效降低服务器的运算负担,提高服务器的运算效率。
并且,通过设置误差检测操作,可避免将服务器的计算结果强制反馈给客户端设备。当客户端设备的计算结果处于误差可接受范围内时,服务器可直接采用客户端设备的计算结果,客户端设备无需进行频繁调整。可有效减少游戏卡顿的情况,提升用户体验。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种游戏状态同步方法,其特征在于,所述方法包括:
客户端设备在检测到用户操作时,生成包括当前游戏状态信息的同步消息,并将所述同步消息发送给服务器;
服务器根据所述同步消息进行误差检测,并得到检测结果;
当检测结果为通过时,服务器根据所述同步消息中的当前游戏状态信息进行游戏状态更新,并将所述当前游戏状态信息同步发送给其他客户端设备,以实现游戏状态同步。
2.根据权利要求1所述的方法,其特征在于,所述客户端设备在检测到用户操作时,生成包括当前游戏状态信息的同步消息,并将所述同步消息发送给服务器,包括:
当检测到用户操作时,获取当前用户操作信息;
根据所述当前用户操作信息进行状态演算,得到当前游戏状态信息;
生成包括所述当前用户操作信息及当前游戏状态信息的同步消息;
根据上次发送同步消息的时间及当前生成所述同步消息的时间计算得到信息传输时间间隔,并将所述信息传输时间间隔携带到所述同步消息中;
将所述同步消息发送给服务器。
3.根据权利要求2所述的方法,其特征在于,所述服务器根据所述同步消息进行误差检测,并得到检测结果,包括:
获取所述服务器中当前存储的目标游戏状态信息;
对所述同步消息进行解析,获取信息传输时间间隔、当前用户操作信息及当前游戏状态信息;
根据所述目标游戏状态信息、信息传输时间间隔及当前用户操作信息进行状态增量演算,得到演算游戏状态信息;
对所述演算游戏状态信息及当前游戏状态信息进行误差计算,并检测计算得到的误差结果是否小于预设误差阈值;
当小于预设误差阈值时,判定检测结果为通过;
当不小于预设误差阈值时,判定检测结果为未通过。
4.根据权利要求3所述的方法,其特征在于,所述服务器根据所述同步消息中的当前游戏状态信息进行游戏状态更新,并将所述当前游戏状态信息同步发送给其他客户端设备,以实现游戏状态同步,包括:
将所述服务器中当前存储的目标游戏状态信息更新为所述当前游戏状态信息;
将所述当前游戏状态信息同步发送给其他客户端设备,以使其他客户端设备进行游戏状态更新,实现游戏状态同步。
5.根据权利要求3-4任意一项所述的方法,其特征在于,所述方法还包括:
当检测结果为未通过时,服务器将当前存储的目标游戏状态信息更新为所述演算游戏状态信息;
所述服务器将所述演算游戏状态信息同步发送给所述客户端设备及其他客户端设备,以实现游戏状态同步。
6.根据权利要求5所述的方法,其特征在于,在所述服务器将所述演算游戏状态信息同步发送给所述客户端设备及其他客户端设备的步骤之后,所述方法还包括:
所述客户端设备接收所述演算游戏状态信息,并根据所述演算游戏状态信息进行游戏状态更正处理。
7.一种游戏状态同步系统,其特征在于,所述系统包括相互通信连接的服务器及至少一个客户端设备,所述客户端设备包括信息生成模块,所述服务器包括误差处理模块及同步处理模块;
当客户端设备检测到用户操作时,所述信息生成模块,用于生成包括当前游戏状态信息的同步消息,并将所述同步消息发送给服务器;
所述误差处理模块,用于根据所述同步消息进行误差检测,并得到检测结果;
当检测结果为通过时,所述同步处理模块,用于根据所述同步消息中的当前游戏状态信息进行游戏状态更新,并将所述当前游戏状态信息同步发送给其他客户端设备,以实现游戏状态同步。
8.根据权利要求7所述的系统,其特征在于,所述信息生成模块生成包括当前游戏状态信息的同步消息,并将所述同步消息发送给服务器的方式包括:
获取当前用户操作信息;
根据所述当前用户操作信息进行状态演算,得到当前游戏状态信息;
生成包括所述当前用户操作信息及当前游戏状态信息的同步消息;
根据上次发送同步消息的时间及当前生成所述同步消息的时间计算得到信息传输时间间隔,并将所述信息传输时间间隔携带到所述同步消息中;
将所述同步消息发送给服务器。
9.根据权利要求8所述的系统,其特征在于,所述误差处理模块根据所述同步消息进行误差检测,并得到检测结果的方式包括:
获取所述服务器中当前存储的目标游戏状态信息;
对所述同步消息进行解析,获取信息传输时间间隔、当前用户操作信息及当前游戏状态信息;
根据所述目标游戏状态信息、信息传输时间间隔及当前用户操作信息进行状态增量演算,得到演算游戏状态信息;
对所述演算游戏状态信息及当前游戏状态信息进行误差计算,并检测计算得到的误差结果是否小于预设误差阈值;
当小于预设误差阈值时,判定检测结果为通过;
当不小于预设误差阈值时,判定检测结果为未通过。
10.根据权利要求9所述的系统,其特征在于,当检测结果为未通过时:
所述同步处理模块,还用于将所述服务器中当前存储的目标游戏状态信息更新为所述当前游戏状态信息;
所述同步处理模块,还用于将所述当前游戏状态信息同步发送给其他客户端设备,以使其他客户端设备进行游戏状态更新,实现游戏状态同步。
CN201711277310.8A 2017-12-06 2017-12-06 游戏状态同步方法及系统 Active CN108159691B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711277310.8A CN108159691B (zh) 2017-12-06 2017-12-06 游戏状态同步方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711277310.8A CN108159691B (zh) 2017-12-06 2017-12-06 游戏状态同步方法及系统

Publications (2)

Publication Number Publication Date
CN108159691A true CN108159691A (zh) 2018-06-15
CN108159691B CN108159691B (zh) 2020-07-14

Family

ID=62525339

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711277310.8A Active CN108159691B (zh) 2017-12-06 2017-12-06 游戏状态同步方法及系统

Country Status (1)

Country Link
CN (1) CN108159691B (zh)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109224441A (zh) * 2018-08-03 2019-01-18 深圳市创梦天地科技有限公司 一种同步虚拟角色的位置的方法及装置
CN109529355A (zh) * 2018-12-24 2019-03-29 网易(杭州)网络有限公司 虚拟现实场景的信息同步方法、装置、处理器及服务器
CN109718540A (zh) * 2018-12-26 2019-05-07 网易(杭州)网络有限公司 游戏中的漂移效果的实现方法、装置、设备及存储介质
CN109814791A (zh) * 2018-12-20 2019-05-28 东软集团股份有限公司 处理流程节点的方法、装置、存储介质及电子设备
CN110166519A (zh) * 2018-11-20 2019-08-23 腾讯数码(天津)有限公司 一种信息同步的方法以及相关装置
CN110812836A (zh) * 2019-10-31 2020-02-21 广州市网星信息技术有限公司 一种游戏的同步方法、装置、计算机设备和存储介质
CN110898425A (zh) * 2019-11-27 2020-03-24 腾讯科技(深圳)有限公司 信息同步方法和装置、存储介质及电子装置
CN111901341A (zh) * 2020-07-28 2020-11-06 北京字节跳动网络技术有限公司 状态同步方法及设备
CN112642143A (zh) * 2020-12-30 2021-04-13 明日世界(上海)网络科技有限公司 一种实现信息同步的方法、装置、存储介质和电子设备
CN112657181A (zh) * 2020-12-21 2021-04-16 北京像素软件科技股份有限公司 状态同步方法和装置
CN113181633A (zh) * 2021-03-26 2021-07-30 百果园技术(新加坡)有限公司 一种游戏数据同步方法、系统及装置
CN116744272A (zh) * 2023-08-07 2023-09-12 北京自在游网络科技有限公司 一种基于蓝牙的手游数据传输系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150032889A1 (en) * 2012-10-02 2015-01-29 Nextbit Systems Inc. Multi-tasker
CN105430337A (zh) * 2015-11-23 2016-03-23 亳州师范高等专科学校 一种远程教学直播系统
CN106712889A (zh) * 2016-12-30 2017-05-24 北京阳光天成信息技术有限公司 一种授时装置、方法及系统
CN107222510A (zh) * 2017-07-21 2017-09-29 腾讯科技(深圳)有限公司 一种游戏同步方法、系统及相关设备
CN107423015A (zh) * 2017-07-24 2017-12-01 腾讯科技(深圳)有限公司 游戏内容的同步显示方法和装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150032889A1 (en) * 2012-10-02 2015-01-29 Nextbit Systems Inc. Multi-tasker
CN105430337A (zh) * 2015-11-23 2016-03-23 亳州师范高等专科学校 一种远程教学直播系统
CN106712889A (zh) * 2016-12-30 2017-05-24 北京阳光天成信息技术有限公司 一种授时装置、方法及系统
CN107222510A (zh) * 2017-07-21 2017-09-29 腾讯科技(深圳)有限公司 一种游戏同步方法、系统及相关设备
CN107423015A (zh) * 2017-07-24 2017-12-01 腾讯科技(深圳)有限公司 游戏内容的同步显示方法和装置

Cited By (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109224441A (zh) * 2018-08-03 2019-01-18 深圳市创梦天地科技有限公司 一种同步虚拟角色的位置的方法及装置
CN109224441B (zh) * 2018-08-03 2022-09-20 深圳市创梦天地科技有限公司 一种同步虚拟角色的位置的方法及装置
CN110166519A (zh) * 2018-11-20 2019-08-23 腾讯数码(天津)有限公司 一种信息同步的方法以及相关装置
CN110166519B (zh) * 2018-11-20 2022-09-23 腾讯数码(天津)有限公司 信息同步的方法、客户端、服务器、终端设备与存储介质
CN109814791A (zh) * 2018-12-20 2019-05-28 东软集团股份有限公司 处理流程节点的方法、装置、存储介质及电子设备
CN109529355A (zh) * 2018-12-24 2019-03-29 网易(杭州)网络有限公司 虚拟现实场景的信息同步方法、装置、处理器及服务器
CN109718540A (zh) * 2018-12-26 2019-05-07 网易(杭州)网络有限公司 游戏中的漂移效果的实现方法、装置、设备及存储介质
CN109718540B (zh) * 2018-12-26 2023-02-28 网易(杭州)网络有限公司 游戏中的漂移效果的实现方法、装置、设备及存储介质
CN110812836A (zh) * 2019-10-31 2020-02-21 广州市网星信息技术有限公司 一种游戏的同步方法、装置、计算机设备和存储介质
CN110898425A (zh) * 2019-11-27 2020-03-24 腾讯科技(深圳)有限公司 信息同步方法和装置、存储介质及电子装置
CN111901341B (zh) * 2020-07-28 2022-05-24 北京字节跳动网络技术有限公司 状态同步方法及设备
CN111901341A (zh) * 2020-07-28 2020-11-06 北京字节跳动网络技术有限公司 状态同步方法及设备
CN112657181A (zh) * 2020-12-21 2021-04-16 北京像素软件科技股份有限公司 状态同步方法和装置
CN112642143A (zh) * 2020-12-30 2021-04-13 明日世界(上海)网络科技有限公司 一种实现信息同步的方法、装置、存储介质和电子设备
CN112642143B (zh) * 2020-12-30 2022-11-15 明日世界(上海)网络科技有限公司 一种实现信息同步的方法、装置、存储介质和电子设备
CN113181633A (zh) * 2021-03-26 2021-07-30 百果园技术(新加坡)有限公司 一种游戏数据同步方法、系统及装置
CN113181633B (zh) * 2021-03-26 2024-02-13 百果园技术(新加坡)有限公司 一种游戏数据同步方法、系统及装置
CN116744272A (zh) * 2023-08-07 2023-09-12 北京自在游网络科技有限公司 一种基于蓝牙的手游数据传输系统

Also Published As

Publication number Publication date
CN108159691B (zh) 2020-07-14

Similar Documents

Publication Publication Date Title
CN108159691A (zh) 游戏状态同步方法及系统
US10341716B2 (en) Live interaction system, information sending method, information receiving method and apparatus
CN110300115A (zh) 一种基于多通道的数据传输方法以及相关装置
US20040116186A1 (en) Distance based distributed online game server system
AU2019292191B2 (en) Low latency datagram-responsive computer network protocol
CN109814933A (zh) 一种业务数据处理方法及装置
CN110430924A (zh) 用于管理多玩家在线游戏中事件数据的系统和方法
CN104796391A (zh) 签到验证方法以及签到验证客户端、服务器、系统和装置
CN112418259B (zh) 一种基于直播过程中用户行为的实时规则的配置方法、计算机设备及可读存储介质
CN110728558B (zh) 虚拟物品包发送方法、装置、设备和存储介质
CN103281346A (zh) 断线重连方法、网络系统和代理服务器
CN112994980A (zh) 时延测试方法、装置、电子设备和存储介质
JP7403715B2 (ja) データ処理方法及び装置、機器、記憶媒体
US6125386A (en) Method for processing messages in multiuser dungeon
CN111135586A (zh) 游戏匹配方法、游戏匹配装置、存储介质与电子设备
CN111182316B (zh) 媒体资源的流切换方法和装置、存储介质及电子装置
CN109718543B (zh) 一种同屏处理方法及装置
CN112711518B (zh) 一种日志上传方法和装置
CN105245558B (zh) 支持虚拟在线的应用程序运行方法、系统、服务器
CN111346381B (zh) 游戏路径控制方法、装置、设备及计算机可读存储介质
US11882015B2 (en) Estimation system, addition apparatus, estimation method, addition method, estimation program and addition program
CN105224573B (zh) 一种规则数据配置方法及装置、系统
CN113468346A (zh) 资源处理方法、装置、电子设备及存储介质
CN110585714B (zh) 基于区块链的ugc元素设置方法、装置及设备
CN110515458A (zh) 一种群组创建方法及装置、电子设备、存储介质

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
GR01 Patent grant
GR01 Patent grant