一种基于数据同步的网游录像与回放的方法

文档序号:9200556阅读:512来源:国知局
一种基于数据同步的网游录像与回放的方法
【技术领域】
[0001]本发明涉及一种录像与回放的方法,尤其涉及一种基于数据同步的网游录像与回放的方法,属于计算机游戏领域。
【背景技术】
[0002]网络游戏录像,即是把玩家在场景中交互的过程和效果保存到持久化存储(比如磁盘)上。网络游戏的回放,即是把录像数据重新加载,重现玩家的交互过程和效果。
[0003]注意,这里提到的术语“场景”是指一张地图的一个运行实例。一个典型的场景包含了地理环境、场景对象、场景对象之间或场景对象与环境之间的交互。
[0004]网络游戏的录像和回放是玩家复盘和相互交流的重要手段。对于策略类游戏来说,回放游戏过程,反思游戏决策,是提升玩家游戏水平的重要方式。游戏开发者也希望玩家能通过回放游戏过程互相交流,激发他们对该游戏的兴趣和关注度。
[0005]网游录像与回放最直接的做法是用录屏软件录制游戏过程,并用视频播放软件回放。这种做法的最大缺点是占用的存储空间巨大。而对存储空间的优化通常是以牺牲图像质量为代价。虽然回放的速度可以控制,但是回放的内容在视频录制的时候就已经决定了,无法改变。

【发明内容】

[0006]为克服以上所述的缺陷,本发明提出一种基于数据同步的网游录像与回放的方法,截取并复制网游同步数据包,并用网游客户端软件读取录像数据,回放游戏过程与效果O
[0007]本发明的游戏录像与回放的方法适用于网络游戏和单机游戏,尤其适用于多人联网游戏。在一种典型的联网游戏中,玩家的操作在服务端执行产生的效果,会同步给场景中的其他玩家。其他玩家才能在场景中看到该玩家的存在,并与之交互。如果把这些同步数据存储下来,并重新在客户端模拟,就可以重现玩家的交互行为与效果。
[0008]本发明采用的技术方案提供一种基于数据同步的网游录像与回放的方法,所述方法包括如下步骤:
A、在网游服务端的游戏程序的运行过程中获取包含游戏同步的状态信息、事件信息和时间信息的同步数据包;
B、根据用户选择的游戏的目标对象,从同步数据包中将与所选的目标对象对应的状态信息、事件信息和时间信息的数据储存为录像数据文件;
C、通过游戏客户端程序读取录像数据文件,并且依照时间信息处理相应的状态信息和事件信息,生成游戏场景的状态和事件,从而能够有选择地回放游戏过程和游戏场景效果。
[0009]优选地,其中,同步数据包的同步方式包括:同步场景对象的所有状态信息的状态同步;在处理场景对象的事件所对应的状态信息保持一致的情况下对该事件信息进行的事件同步。
[0010]进一步,其中所述步骤A还包括:在数据包中记录游戏的全局状态信息,以便在游戏回放时能够从时间信息数据中定位任意时间点所对应的状态信息。
[0011]进一步,其中所述步骤B还包括:存储同步数据包的额外属性信息,其中,所述额外属性信息包括数据包发送时间戳和数据包同步目标属性,所述的数据包发送时间戳是指数据包发送时刻相对于预定的开始时刻的相对时间,所述的数据包同步目标属性是指满足预设的游戏属性约束的目标对象。优选地,所述的数据包发送时间戳采用游戏场景时间。
[0012]进一步,其中所述步骤B还包括:在生成数据文件时,添加状态信息和事件信息的分类信息。
[0013]进一步,其中所述步骤C还包括:在游戏场景回放时,动态伸缩由所述时间信息组成的时间轴,从而当状态和/或事件消息的执行速度快于所述时间轴的处理速度时实现回放快进,当状态和/或事件消息的执行速度慢于所述时间轴的处理速度时实现回放慢进。
[0014]进一步,其中所述步骤C还包括:在回放游戏时,当游戏角色离开预定的场景时,使角色恢复到在该场景中的初始状态。
[0015]进一步,其中所述步骤C还包括:回放结束后,删除回放场景和所有场景对象。
[0016]进一步,所述的基于数据同步的网游录像与回放的方法,还包括:将包含处理游戏同步的状态信息和事件信息等数据的逻辑独立封装为离线的库文件,以便在不启动客户端程序或不联机时播放录像文件。
[0017]本发明的有益效果为:录像数据占用的存储空间极小,客户端回放时模拟的图像质量没有损失;在生成的数据文件上添加分类信息还可以有选择地筛选内容供游戏客户端重放;录像数据可定制,且通过编辑录像数据,玩家可以修改回放的内容,操作非常灵活;回放速度可动态改变,用户可随意定位到感兴趣的位置,用户体验好。
【附图说明】
[0018]图1所示为根据本发明基于数据同步的网游录像与回放的方法的步骤。
【具体实施方式】
[0019]本发明的游戏录像与回放的方法适用于网络游戏和单机游戏。具体地,在一个典型的第一人称射击结构(CS结构)的多人联网游戏中,玩家的操作在服务端执行产生的效果,会同步给场景中的其他玩家。其他玩家才能在场景中看到该玩家的存在,并与之交互。如果把这些同步数据存储下来,并重新在客户端模拟,就可以重现玩家的交互行为与效果。
[0020]参照图1,根据本发明的一种基于数据同步的网游录像与回放的方法,包括如下步骤:A、在网游服务端的游戏程序的运行过程中获取包含游戏同步的状态信息、事件信息和时间信息的同步数据包;B、根据用户选择的游戏的目标对象,从同步数据包中将与所选的目标对象对应的状态信息、事件信息和时间信息的数据储存为录像数据文件;C、通过游戏客户端程序读取录像数据文件,并且依照时间信息处理相应的状态信息和事件信息,生成游戏场景的状态和事件,从而能够有选择地回放游戏过程和游戏场景效果。
[0021]在本实施例中,数据包内分为状态同步和事件同步两种同步方式。状态同步是指同步场景对象的所有状态信息。事件会引发状态的改变。如果状态一致,响应事件的机制一致,那么响应事件后的状态也一致。这是事件同步成立的基础。同步事件的好处是可以节省网络流量,但必须保证处理事件前所处状态的一致性。
[0022]在数据包中可以记录全局状态信息,以便在回放时快速定位到时间轴上的任意一点。实现定位有两种方式。一种是定期存储全局状态信息,在定位时往前找到最近的全局状态,然后往后执行到定位点。还有一种是从头开始,一直执行事件消息,直到执行到定位点为止。当然,如果定位点位于当前播放位置的未来时刻,可以直接从当前位置快进到定位点。
[0023]在本实施例的方法中,还可以存储同步数据包的额外属性。这些额外属性包括数据包发送时间戳和数据包同步目标属性。数据包发送时间戳是数据包发送时刻相对于游戏关卡开始时刻的相对时间。利用同步数据包进行回放时,根据回放开始的时间和该时间戳就可以确定数据包的处理时刻。同步数据包的目标属性,是指数据包仅同步给满足预设的游戏队伍/势力关系、可见性等属性约束的目标对象。游戏回放时,用户可以根据这些属性做出选择,或回放整个场景,或仅回放场景的一部分。比如,用户可以选择不看聊天信息,或选择仅观看多人游戏中某队
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1