单机存档游戏系统的制作方法

文档序号:6346807阅读:313来源:国知局
专利名称:单机存档游戏系统的制作方法
技术领域
本实用新型涉及单机存档游戏技术领域,尤其是一种单机存档游戏系统。
背景技术
所述的单机存档游戏,是指可以在一台计算机或者某种游戏平台上独立运行、具 有运行进度的游戏。目前还存在一种与其相对的游戏,即网络游戏。网络游戏,又叫在线游 戏,或线上游戏(On-Line Game,简称0LG),一般指多名玩家通过计算机网络互动娱乐的游 戏,有战略游戏、动作游戏、体育游戏、格斗游戏、音乐游戏、竞速游戏、网页游戏和角色扮演 游戏等多种类型,当然也有少数在线单人游戏。如要运行网络游戏,各玩家必须接入互联 网,游戏的运行需要通过专门的服务器和网络来支撑。因而,单机游戏与网络游戏的一个主 要区别在于,单机游戏不需要接入互联网即可正常运行游戏,单机游戏在运行时不需要专 门的服务器支撑,单机游戏模式多为人机对战,单机游戏进度通过存档的方式保存在计算 机本地硬盘,每次运行时通过读取上一次运行后保存的存档,便可以接着上一次运行的进 度继续运行。由于目前的单机存档游戏的存档均保存在本地,这种存档方式存在一个很重要的 缺陷游戏的存档不能同步,即,在一台计算机上运行该单机存档游戏并存档后,当用户在 另一台计算机上运行同一种单机存档游戏时,不能读取前一台计算机上游戏的存档,从而 不能接续在前一台计算机上运行该单机存档游戏的进度,只能重新开始运行或接续该台计 算机上从前的进度。因而,目前这种单机存档游戏的互动性和灵活性较差。

实用新型内容本实用新型所要解决的技术问题在于,针对现有技术的不足提供一种单机存档游 戏系统,实现存档的同步,以使用户在不同的游戏平台运行同一单机存档游戏时,能从上一 次运行的进度开始。为了解决的上述的技术问题,本实用新型提供了一种单机存档游戏系统,包括客 户端和服务器端,所述客户端用于独立运行所述单机存档游戏,所述服务器端包括管理服 务器和游戏进度存储服务器,所述管理服务器与所述客户端交互,接受所述客户端对所述 单机存档游戏的游戏进度存档的上传或下载的请求,将上传的游戏进度存档存储到游戏进 度存储服务器中,或将游戏进度存储服务器中对应于下载请求的游戏进度存档发送给所述 客户端。通过本实用新型提供的上述系统,首先,用户可以在不同的计算机上使用同一种 单机存档游戏的游戏进度运行单机存档游戏,实现了存档的同步,从而提高了单机存档游 戏的互动性和灵活性;其次,由于本实用新型提供的单机存档游戏系统采用了文件数据压 缩、解压、tcp私有协议以及特殊的文档存储方法,因此减小了服务器的负载量,提高了服务 器的容灾能力,可保证游戏运行的安全与稳定。
以下结合附图和具体实施例对本实用新型的技术方案进行详细地说明。
图1为本实用新型单机存档游戏系统的结构框架图;图2为本实用新型单机存档游戏系统的使用流程图。
具体实施方式
图1为本实用新型单机存档游戏系统结构框架图,如图1所示,本实用新型单机存 档游戏系统包括客户端1和服务器端2。所述客户端1可以安装在任何游戏平台上,如计 算机、移动通讯装置、个人数字助理等,为单机存档游戏的运行提供运行环境。所述客户端 1由用户交互单元11、存储单元12、压缩单元13、计算单元14、管理单元15和解压缩单元 16组成;所述用户交互单元11在实际应用时可将其设计成系统的主界面,用户可通过该主 界面输入各种信息、请求,并可以在此主界面运行单机存档游戏。例如,用户可通过该主界 面进行注册或登录,在运行某一游戏时发出对该游戏的某个进度存档的下载请求,或在运 行完某一游戏时发出游戏进度存档的上传请求等。所述管理单元15—方面与所述用户交 互单元11相连接,接收并处理通过所述用户交互单元11输入的信息或请求,如果用户输入 的是注册信息,则将接收到的用户注册信息,如用户ID、密码、邮箱等信息发送给所述服务 器端2,如果所述管理单元15接收的是用户对某一游戏的某一游戏进度存档的下载请求, 则将该请求发送给所述服务器端2,如果所述管理单元15接收的是用户对某一游戏的某一 游戏进度存档的上传请求时,所述管理单元15对该游戏进度存档进行处理,得到该游戏进 度存档的识别信息,而后将该游戏进度存档及其识别信息发送到服务器端2。另一方面,所 述管理单元15与服务器端2进行交互,接收来自于服务器端2的消息及下载的游戏进度存 档。另外,所述管理单元15将正在运行的单机存档游戏的游戏进度存档实时存储在 所述存储单元12中,其中,所述存储单元12可以具体实施为一本地硬盘。当用户通过所述用户交互单元11输入对某一游戏的某一游戏进度存档的上传请 求时,所述管理单元15对该游戏进度存档进行处理,进行处理的一个具体实施方式
是先 将该游戏进度存档发送到压缩单元13进行压缩,而后再由计算单元14对该压缩后的游戏 进度存档进行计算,得到用于识别该游戏进度存档的识别信息,例如,计算单元14进行哈 希计算,得到的识别信息为哈希值。然后,再将该压缩后的游戏进度存档和识别信息(如哈 希值)通过管理单元15发送到服务器端2。当管理单元15收到服务器端2发送来的游戏 进度存档的压缩文件后,由解压缩单元16对该压缩文件进行解压缩。所述服务器端2包括管理服务器21、用户信息数据库22、节点服务器集群23、索引 服务器M和安装包服务器25,其中,所述客户端1与管理服务器21连接,包括有线连接和 无线连接;所述管理服务器21分别与用户信息数据库22、节点服务器集群23、索引服务器 24和安装包服务器25连接。所述管理服务器21与管理单元15进行交互,接受管理单元15发来的各种信息及 上传或下载请求,并做出相应的处理;所述用户信息数据库22中存储有注册用户的详细资 料和上传到节点服务器集群23中的各个游戏存档所对应的识别信息(如哈希值)以及存 档描述、存档时间和下载地址等信息,其中,下载地址中包含有哈希值或由哈希值转化的信息,因此,通过该下载地址可以确定地得到该进度存档;所述节点服务器集群23由多个节 点服务器231组成,每个节点服务器231中存储有利用云存储技术将游戏存档分成一定大 小的(如641Λ)数据块;所述索引服务器M用来存储每个游戏进度存档的存储索引信息, 所述每个游戏进度存档的存储索引信息包括该游戏进度存档的哈希值、该游戏进度存档各 个分块的编号及每一个分块的具体存储地址(例如节点服务器的编号);所述安装包服务 器25中存有各种可以在客户端1所提供的环境中运行的单机存档游戏安装包。用户可以到提供单机存档游戏进度存档服务的网站或者各类下载网站下载游戏 客户端的安装包,并安装在电脑、移动通讯装置(如手机)等终端上,以其作为游戏运行的
D ο图2为本实用新型单机存档游戏系统的使用流程图,以下结合图2和图1,对本实 用新型所述的系统进行详细说明。步骤SlOl 启动客户端1,进入该客户端的主界面(即用户交互单元11)。需要 说明的是,当用户第一次登录主界面时,需要通过主界面注册用户ID,并填写相应的注册信 息,如密码、邮箱等。注册用户的ID以及其他相关资料由客户端1的管理单元15发送给管 理服务器21,通过管理服务器21将这些信息保存在用户信息数据库22中。如果用户第一次运行某单机存档游戏时,客户端1通过管理服务器21从游戏安装 包服务器25中下载所需的单机存档游戏。步骤S102 用户在主界面选择并运行具有存档功能的单机存档游戏。其中,当用 户在主界面点击启动某一个单机存档游戏后,客户端1的管理单元15接收到用户启动该单 机存档游戏的请求后,将该用户的用户信息(如用户ID)、游戏ID (—个游戏对应一个ID) 和一代表游戏开始的请求信息合并为一个信息(以下称为游戏开始请求)发送给管理服务 器21。步骤S103 管理服务器21收到所述管理单元15发送来的游戏开始请求后,根据 请求中包含的用户信息对该用户的身份进行认证,如果该用户不是注册用户,则向所述管 理单元15发送一回应信息,以告知该用户的身份,在这种情况下,不对该用户运行游戏的 存档进行上传存储或下载以往的存档给用户,然后执行步骤S113 ;在步骤S113中,读取本 地游戏进度存档,以本地存档的进度开始运行游戏,如果本地没有该游戏的进度存档,则从 该游戏的初始进度开始运行,即进入步骤S114 ;如果该用户是注册用户,执行步骤S104。 步骤S104 所述管理服务器21根据该请求中的游戏ID ( 一个ID对应一个游戏), 在用户信息数据库22中查询该用户是否上传过与该游戏ID对应的单机存档游戏的进度存 档,如果上传过,则进入步骤S105,如果没有,执行步骤Sl 13 ;在步骤Sl 13中,管理单元15 读取本地游戏进度存档,以本地存档的进度开始运行游戏,如果本地没有该游戏的进度存 档,则从该游戏的初始进度开始运行,即进入步骤S114。步骤S105 管理服务器21将用户信息数据库22中存储的、该单机存档游戏的所 有或部分(例如最新的3个)历史存档的存档标识(如存档描述、上传时间、下载地址等) 以列表的形式发送给客户端1,通过主界面显示给用户,以供选择。步骤S106 用户通过客户端1是否选择了一个游戏进度存档?如果用户选择了 其中的一个,则进入步骤S107 ;如果用户没有选择,则进入步骤S113,读取本地游戏进度存 档,以本地存档的进度运行游戏。
5[0024]步骤S107 所述管理服务器21根据客户端1发来的存档标识中的下载地址,从节 点服务器集群23中获取该游戏进度存档并发送给客户端1。此步骤中所述的处理过程实际 为存档的下载过程,该下载过程的流程在下文有详细说明,在此不再赘述。步骤S108 对所述管理服务器21发送来游戏进度存档进行解压缩,而后该单机存 档游戏以该进度运行。另外,在游戏运行的过程中,所述客户端1可对正在运行的游戏进度进行即时存 档,用户也可主动进行存档,存档的文件都保存到本地的存储单元12中。步骤S109 在进行游戏时,用户可随时选择退出游戏,如果选择退出游戏则进入 步骤Sl 10,如果不选择退出则返回步骤S108或Sl 14、Sl 13继续游戏。步骤SllO 退出正在运行的单机存档游戏并返回主界面。步骤Slll 在主界面上用户选择是否上传游戏进度存档,如果选择上传游戏进 度,则进入步骤S112,如果不选择上传游戏进度存档则返回步骤S110,停留在主界面上。步骤S112 当用户选择上传游戏进度存档时,客户端1的管理单元15向管理服务 器21发送上传请求,所述管理服务器21运用云存储技术将本次游戏结束时形成的游戏进 度存档存储在节点服务器集群23中。此步骤的上传流程在下文有详细说明,在此不再赘 述。其中,上述步骤S112具体包括以下步骤步骤S201 当用户通过主界面选择了对当前游戏的进度存档进行上传时,由管理 单元15向管理服务器21发送上传请求,在该上传请求中包括用户信息、游戏ID及该进度 存档的存档描述、存档时间等信息。步骤S202 所述管理服务器21通过用户信息数据库22中的信息对该用户进行身 份验证,并将允许或不允许上传的消息发送给所述的管理单元15。只有验证为合法用户,即 注册用户后才能上传,并将该游戏进度存档的存档描述、存档时间等信息存到用户信息数 据库中;如果不是注册用户,则不能进行上传,此时终止上传过程。步骤S203 当发出上传请求的客户端为合法用户后,所述的管理单元15将存储单 元12中的需要上传的游戏进度存档发送给压缩单元13进行压缩,并由所述计算单元14根 据压缩后的存档的内容计算出一个对应该游戏进度存档的哈希值,所述管理单元15将压 缩后的游戏进度存档、根据该压缩后的游戏进度存档计算的哈希值发送给所述的管理服务 器21。由于所述哈希值是根据游戏进度存档内容算出来的值,因此可以用来作为该游戏进 度存档的唯一标识。步骤S204 管理服务器21接收管理单元15发送的该游戏进度存档的压缩包数据 以及该游戏进度存档所对应的哈希值。步骤S205:管理服务器21将接收到的哈希值存储到用户信息数据库22,并将所述 压缩包以一定大小(如641Λ)为单位进行分块,将各个分块分别存储到不同的节点服务器 231 中。其中,在步骤S204中,所述管理服务器21接收完压缩包数据后,根据该接收到的 压缩包数据计算出一个哈希值,并与用户信息数据库22中存储的与该压缩包数据一起上 传的哈希值进行比较。如果两个哈希值相同,则说明上传成功,如果两个哈希值不相同,说 明在上传过程中出现网络连接失败或客户端1被强行关闭等情况出现致使接收到的存档不是客户端要上传的存档,则所述管理服务器21将接收完毕的压缩包及其相关的数据,如 存到用户信息数据库中的哈希值和存档描述删除,不进行存储动作。步骤S206 所述管理服务器21将对应该存档的哈希值、分块信息存储到索引服务 器对中,所述分块信息包括分块编号、和对应各个分块的存储地址,如节点服务器231的编号。其中,所述管理服务器21在用户信息数据库中存储有针对每一个上传存档的存 档下载地址,以供该存档下载时使用。其中,该存档下载地址包括哈希值以及其他的一些附 属信息,用于使客户端可以唯一地得到要下载的存档。前述步骤S107中所述的下载过程如下步骤S301 客户端1的管理单元15向管理服务器21发送下载请求,所述下载请 求包括用户信息和游戏本身信息,管理服务器21接收到该下载请求时,对其进行解析,获 得该用户的ID和所要求下载的游戏ID。步骤S302 所述管理服务器21通过用户信息数据库22的信息对该用户进行身份 验证,如果身份合法,则进行下一步骤S303 ;如果身份不合法,终止所述的单机存档游戏的 游戏进度存档获取。步骤S303 所述管理服务器21将针对该用户的、该游戏最新的3个游戏进度存档 的存档标识(包括存档描述、存档时间以及存档下载地址)以列表的形式发送给所述客户 端1。步骤S304 当用户在所述列表中选择了其中的一个存档标识后(即选择了一个存 档的下载地址),客户端中的管理单元15将选中的存档标识中的信息,至少是下载地址,及 关于下载的请求发送给服务器端中的管理服务器21。步骤S305 所述管理服务器21根据该下载地址中的哈希值在索引服务器M中获 取该游戏进度存档的各个分块的存储信息。步骤S306 所述管理服务器21根据该存储信息中的分块编号和对应的节点服务 器编号,从各个节点服务器231中分别获取各个分块数据后,进行合并后发送给客户端1的 管理单元15,管理单元15成功地接收到该存档后,由于该存档为一压缩文件,因而将该压 缩文件解压存到本地该游戏的存档位置。在本实用新型单机存档游戏系统上传和下载游戏进度存档的过程中,在上传游戏 进度存档时,管理服务器21可以全部接收完再分块,也可以边接收所述压缩包数据,边将 压缩包数据以641Λ大小为单位进行分块,再将各个分块数据存储到节点服务器集群23中。综上所述,本实用新型提供单机存档游戏系统与现有技术中的单机存档游戏相 比,本实用新型的单机存档游戏系统采用了两种游戏进度存档方式第一种在本地保存,第 二种在服务器保存,在服务器保存的方式采用了文件数据压缩、解压、tcp私有协议以及“云 存储”的存储方式,其优点在于,首先用户可以在不同的计算机上使用同一种单机存档游戏 的游戏进度运行该游戏;其次,由于采用将准备存储的文件进行分块,并且将每个分块至少 存储到3个服务器中,因此可以节省服务器的负载量并且这种在服务器中管理存档文件的 方式具有强大的容灾能力,可保证自身的安全与稳定。
权利要求1.一种单机存档游戏系统,其特征在于,包括客户端和服务器端,所述客户端用于独立 运行所述单机存档游戏,所述服务器端包括管理服务器和游戏进度存储服务器,所述管理 服务器与所述客户端交互,接受所述客户端对所述单机存档游戏的游戏进度存档的上传或 下载的请求,将上传的游戏进度存档存储到游戏进度存储服务器中,或将游戏进度存储服 务器中对应于下载请求的游戏进度存档发送给所述客户端。
2.如权利要求1所述的一种单机存档游戏系统,其特征在于,所述游戏进度存储服务 器包括节点服务器集群和索引服务器,所述节点服务器集群和索引服务器分别与所述管理 服务器连接,所述节点服务器集群存储所述游戏进度存档的分块,所述索引服务器存储所 述各个游戏进度存档分块在所述节点服务器集群中的存储信息。
3.如权利要求2所述的一种单机存档游戏系统,其特征在于,所述节点服务器集群由 多个节点服务器组成。
4.如权利要求1所述的一种单机存档游戏系统,其特征在于,所述服务器端还包括安 装包服务器,用于存储单机存档游戏安装包。
5.如权利要求1所述的一种单机存档游戏系统,其特征在于,所述客户端包括用户交 互单元和管理单元,所述用户交互单元至少用于向所述管理单元提供用户信息和请求,所 述管理单元分别与所述用户交互单元和所述管理服务器进行信息的交互和处理。
6.如权利要求5所述的一种单机存档游戏系统,其特征在于,所述客户端还包括计算 单元,所述计算单元用于对要上传的游戏进度存档进行计算,以求出该游戏进度存档的识 别信息。
7.如权利要求5所述的一种单机存档游戏系统,其特征在于,所述客户端还包括压缩 单元和解压缩单元,用于对要上传的游戏进度存档进行压缩,所述计算单元对经过压缩的 游戏进度存档进行计算,以求出该游戏进度存档的识别信息;所述解压缩单元用于对接收 到的游戏进度存档压缩文件进行解压缩。
专利摘要本实用新型公开了一种单机存档游戏系统,包括客户端和服务器端,服务器端中的管理服务器接受所述客户端对游戏进度存档的上传或下载的请求,将上传的游戏进度存档存储到游戏进度存储服务器中,或将游戏进度存储服务器中对应于下载请求的游戏进度存档发送给所述客户端。用户可以在不同的计算机上使用同一种单机存档游戏的游戏进度进行单机存档游戏,由于采用的云存储技术,因此节省服务器的负载量并且这种在服务器中管理存档文件的方式具有强大的容灾能力,可保证自身的安全与稳定。
文档编号G06F19/00GK201917908SQ20102062670
公开日2011年8月3日 申请日期2010年11月24日 优先权日2010年11月24日
发明者王欣, 钟智将 申请人:深圳市快播科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1