[发明专利]一种基于时间戳的客户端与服务器端场景同步方法有效
申请号: | 201910053497.6 | 申请日: | 2019-01-21 |
公开(公告)号: | CN109660559B | 公开(公告)日: | 2021-05-04 |
发明(设计)人: | 陶志为 | 申请(专利权)人: | 竞技世界(北京)网络技术有限公司 |
主分类号: | H04L29/06 | 分类号: | H04L29/06;H04L29/08 |
代理公司: | 北京冠和权律师事务所 11399 | 代理人: | 朱健;张国香 |
地址: | 100085 北京市怀*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 时间 客户端 服务器端 场景 同步 方法 | ||
本发明公开了一种基于时间戳的客户端与服务器端场景同步的方法,其特征在于包括以下步骤:玩家登陆客户端,与服务器建立网络连接;客户端通过选择进入游戏场景,向服务器端发送消息告知服务器端,客户端有新玩家进入游戏场景;服务器端接收到客户端进入场景的通知后,给客户端一个应答消息,所述应答消息中包含当前服务器场景的时间戳;客户端即以这个时间戳作为与服务器同步的一个时间;服务器端按照预定时间间隔,通过配置或算法得出场景中元素新的状态;客户端按照和服务器端相同的时间间隔通过相同的配置或算法得到场景中元素新的状态。
技术领域
本发明属于网络游戏技术领域,具体涉及一种基于时间戳的客户端与服务器端场景同步方法。
背景技术
多人联网游戏(如捕鱼游戏)等需要多个玩家在同一个场景中游戏互动,因此需要多个客户端与服务器同步游戏场景,即多个玩家需要在自己的客户端设备上看到相同的游戏场景。
由服务器端推送数据用于更新渲染场景内元素从而更新渲染的方式要求较高的通讯可靠性和高度的一致性。
现有技术中,游戏客户端每获取一个游戏操作指令,将所述游戏操作指令加入上传队列中;每隔第一预定时间将所述上传队列中的游戏操作指令加入上传数据包中,并向游戏服务器发送所述上传数据包;接收所述游戏服务器每隔第二预定时间发送的下发数据包;根据所述下发数据包,从所述上传队列中删除所述游戏服务器已接收的游戏操作指令;并根据所述下发数据包,控制游戏表现。
现有技术的缺点在于,由于客户端需要等待服务器下发的帧数据块,因此会有频繁的网络交互和数据通信才能流畅的更新客户端的场景效果。如果网络延迟较大,可能导致界面的卡顿甚至卡死。
发明内容
为克服上述现有技术的不足,本发明提供了一种基于时间戳的客户端与服务器端场景同步方法。本发明则提供了一种较少网络数据交互下的客户端和服务器场景同步方法,从而保证了游戏的流畅性。
本发明提供的基于时间戳的客户端与服务器端场景同步方法,包括以下步骤:
玩家登陆客户端,与服务器建立网络连接;
客户端通过选择进入游戏场景,向服务器端发送消息告知服务器端,客户端有新玩家进入游戏场景;
服务器端接收到客户端进入场景的通知后,给客户端一个应答消息,所述应答消息中包含当前服务器场景的时间戳;
客户端即以这个时间戳作为与服务器同步的一个时间;
服务器端按照预定时间间隔,通过配置或算法得出场景中元素新的状态;
客户端按照和服务器端相同的时间间隔t通过相同的配置或算法得到场景中元素新的状态。
优选地,客户端和服务器端采用同一配置文件用于表示游戏场景中某一元素路径的动态变化。
优选地,客户端和服务器端采用的配置文件中包括但不限于以下数据:
序号,用于按照预定时间间隔逐条记录数据;
角度偏移度数及方向,正数为顺时针,负值逆时针;
速度的倍率,在基础速度下的倍率系数;
预定时间内,每帧角度变化值;
预定时间内,每帧速度变化值。
优选地,每个序号之间的时间间隔可根据需要进行设定。
优选地,所述玩家登陆客户端,与服务器建立网络连接;
客户端通过选择进入游戏场景,向服务器端发送消息告知服务器端,客户端有新玩家进入游戏场景;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于竞技世界(北京)网络技术有限公司,未经竞技世界(北京)网络技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910053497.6/2.html,转载请声明来源钻瓜专利网。