一种动态调整游戏下载方法及系统与流程

文档序号:20039408发布日期:2020-02-28 11:43阅读:115来源:国知局
一种动态调整游戏下载方法及系统与流程

本发明涉及一种动态调整游戏下载方法及系统,属于计算机技术领域。



背景技术:

目前市场上一般手游为了减小安装包的大小,而采取了边玩边下的措施,即玩家下载的安装包内只包含部分游戏内存,大部分游戏内容需要二次下载才可以体验。二次下载一种是边玩边下载,即在体验新手历程等前面内容时,已经开始在后台慢慢下载。二是等待某部分游戏内容全部下载完毕,再进行游戏。现在边玩边下载已经成为网络游戏的主流方式,但是后台下载速度过大,会造成带宽被占满,导致玩家网络延迟过高或者直接卡死,非常影响游戏体验,但是后台下载速度过慢,又会导致玩家体验完前面的历程后,所需二次下载的内容,并未下载完,导致卡历程,影响游戏体验,本文提出了一种智能的动态调整游戏内网络下载速度的反馈装置,完美的解决该问题。



技术实现要素:

为解决上述问题,本发明的目的在于提供一种动态调整游戏下载方法及系统,包括:下载最小游戏文件,并运行游戏,其中所述最小游戏文件为运行游戏所需的最少必要文件;校验本地游戏文件,连接服务器下载剩余的游戏文件;获取游戏运行时的网络延迟值,当网络延迟值低于最低阈值时,提高一定数值的下载速度,当网络延迟值低于高于阈值时,降低一定数值的下载速度,其中阈值和一定数值的下载速度可自定义;在预设周期内返回执行步骤上一步骤,直到完整游戏文件下载完成。

本发明解决其问题所采用的技术方案一方面是:一种动态调整游戏下载方法,其特征在于,包括以下步骤:s100、下载最小游戏文件,并运行游戏,其中所述最小游戏文件为运行游戏所需的最少必要文件;s200、校验本地游戏文件,连接服务器下载剩余的游戏文件;s300、获取游戏运行时的网络延迟值,当网络延迟值低于最低阈值时,提高一定数值的下载速度,当网络延迟值低于高于阈值时,降低一定数值的下载速度,其中阈值和一定数值的下载速度可自定义;s400、在预设周期内返回执行步骤s300,直到完整游戏文件下载完成。

进一步的,所述s300还包括:s301、获取游戏运行时的网络延迟值,并判断是否低于最低阈值,若是则进入步骤s302否则进入步骤s303;s302、判断当前下载速度调整时间间隔是否大于预设调整时间间隔,若是则提高一定数值的下载速度,否则不执行操作;s303、获取游戏运行时的网络延迟值,并判断是否高于最高阈值,若是则进入步骤s304,否则不执行操作;s304、判断当前下载速度调整时间间隔是否大于预设调整时间间隔,若是则降低一定数值的下载速度,否则不执行操作。

进一步的,所述当前下载速度调整时间间隔的获取方法为用当前时间减去上次调整下载速度时间。

进一步的,所述提高一定数值的下载速度中的一定数值为10kb/s。

进一步的,所述降低一定数值的下载速度中的一定数值为原下载速度的一半。

进一步的,所述预设周期为10秒。

进一步的,所述获取游戏运行时的网络延迟值还包括获取游戏运行时每帧的网络延迟值。

本发明解决其问题所采用的技术方案另一方面是:一种动态调整游戏下载系统,其特征在于,包括:下载及运行模块,用于连接服务器下载游戏文件以及下载速度调整控制,并运行游戏;校验模块,用于校验本地游戏文件的完整性;网络检测模块,用于获取游戏运行时的网络延迟值,并于预设阈值进行对比,根据对比结果调用下载及运行模块进行下载速度调整;时钟模块,用于设置调整下载速度的周期。

进一步的,所述下载及运行模块还包括:进程启动单元,用于调用游戏运行文件开启游戏进程以运行游戏;通信单元,用于通过互联网连接服务器;下载控制单元,用于根据网络检测模块发回的结果调整下载速度。

进一步的,所述网络检测模块还包括:阈值设置单元,用于设置网络延迟值的最高阈值和最低阈值;计算单元,用于根据当前时间减去上次调整下载速度时间获取当前下载速度调整时间间隔;帧检测单元,用于获取游戏运行时每帧的网络延迟值;对比及调用单元,用于根据检测到的网络延迟值于预设阈值进行对比,根据对比结果调用下载及运行模块进行下载速度调整。

本发明的有益效果是:动态调整当前的下载速度,最大限度的利用当前的网络性能,网络状况好就提升速度下载更多的资源,网络状况差就降低速度,优先保证玩家玩游戏时,不会出现卡顿和延迟过高,提高用户使用体验。

附图说明

图1是根据本发明优选实施例的方法流程示意图;

图2是根据本发明优选实施例的系统结构示意图;

图3是根据本发明优选实施例的工作流程示意图。

具体实施方式

以下将结合实施例和附图对本发明的构思、具体结构及产生的技术效果进行清楚、完整的描述,以充分地理解本发明的目的、方案和效果。

需要说明的是,如无特殊说明,当某一特征被称为“固定”、“连接”在另一个特征,它可以直接固定、连接在另一个特征上,也可以间接地固定、连接在另一个特征上。此外,本公开中所使用的上、下、左、右等描述仅仅是相对于附图中本公开各组成部分的相互位置关系来说的。在本公开中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。此外,除非另有定义,本文所使用的所有的技术和科学术语与本技术领域的技术人员通常理解的含义相同。本文说明书中所使用的术语只是为了描述具体的实施例,而不是为了限制本发明。本文所使用的术语“和/或”包括一个或多个相关的所列项目的任意的组合。

应当理解,尽管在本公开可能采用术语第一、第二、第三等来描述各种元件,但这些元件不应限于这些术语。这些术语仅用来将同一类型的元件彼此区分开。例如,在不脱离本公开范围的情况下,第一元件也可以被称为第二元件,类似地,第二元件也可以被称为第一元件。本文所提供的任何以及所有实例或示例性语言(“例如”、“如”等)的使用仅意图更好地说明本发明的实施例,并且除非另外要求,否则不会对本发明的范围施加限制。

参照图1,根据本发明优选实施例的方法流程示意图,

包括以下步骤:

s100、下载最小游戏文件,并运行游戏,其中所述最小游戏文件为运行游戏所需的最少必要文件;

s200、校验本地游戏文件,连接服务器下载剩余的游戏文件;

s300、获取游戏运行时的网络延迟值,当网络延迟值低于最低阈值时,提高一定数值的下载速度,当网络延迟值低于高于阈值时,降低一定数值的下载速度,其中阈值和一定数值的下载速度可自定义;

s400、在预设周期内返回执行步骤s300,直到完整游戏文件下载完成。

进一步的,所述s300还包括:s301、获取游戏运行时的网络延迟值,并判断是否低于最低阈值,若是则进入步骤s302否则进入步骤s303;s302、判断当前下载速度调整时间间隔是否大于预设调整时间间隔,若是则提高一定数值的下载速度,否则不执行操作;s303、获取游戏运行时的网络延迟值,并判断是否高于最高阈值,若是则进入步骤s304,否则不执行操作;s304、判断当前下载速度调整时间间隔是否大于预设调整时间间隔,若是则降低一定数值的下载速度,否则不执行操作。

进一步的,所述当前下载速度调整时间间隔的获取方法为用当前时间减去上次调整下载速度时间。

进一步的,所述提高一定数值的下载速度中的一定数值为10kb/s。

进一步的,所述降低一定数值的下载速度中的一定数值为原下载速度的一半。

进一步的,所述预设周期为10秒。

进一步的,所述获取游戏运行时的网络延迟值还包括获取游戏运行时每帧的网络延迟值。

参照图2,根据本发明优选实施例的系统结构示意图,

包括:下载及运行模块,用于连接服务器下载游戏文件以及下载速度调整控制,并运行游戏;校验模块,用于校验本地游戏文件的完整性;网络检测模块,用于获取游戏运行时的网络延迟值,并于预设阈值进行对比,根据对比结果调用下载及运行模块进行下载速度调整;时钟模块,用于设置调整下载速度的周期。

进一步的,所述下载及运行模块还包括:进程启动单元,用于调用游戏运行文件开启游戏进程以运行游戏;通信单元,用于通过互联网连接服务器;下载控制单元,用于根据网络检测模块发回的结果调整下载速度。

进一步的,所述网络检测模块还包括:阈值设置单元,用于设置网络延迟值的最高阈值和最低阈值;计算单元,用于根据当前时间减去上次调整下载速度时间获取当前下载速度调整时间间隔;帧检测单元,用于获取游戏运行时每帧的网络延迟值;对比及调用单元,用于根据检测到的网络延迟值于预设阈值进行对比,根据对比结果调用下载及运行模块进行下载速度调整。

参照图3为本发明的一具体实施例的工作流程示意图,

第一步获取当前的客户端的ping值(即网络延迟值),如果ping值超过我们设置最大延迟值high,说明网速状况比较糟糕,且当前时间减去上次修改时间的时间间隔大于t0(调整网速间隔可设置为10s)就将当前下载速度降为原来的二分之一,否则什么都不做

第二步获取当前的客户端的ping值(即网络延迟值),如果ping值小于我们设置最小延迟值low,说明网速状况非常好,且当前时间减去上次修改时间的时间间隔大于t0(调整网速间隔可设置为10s)就将当前下载速度增加10kb/s,否则什么都不做

第三步每帧都会获取当前的客户端的ping值,根据ping值去更改当前的下载速度,动态调整当前的下载速度,最大限度的利用当前的网络性能,网络状况好就提升速度下载更多的资源,网络状况差就降低速度,优先保证玩家玩游戏时,不会出现卡顿和延迟过高;

例如手游《xx》中应用。

启动游戏后,设置最大网络延迟值nethigh设置最小网络延迟值netlow,设置调整网速间隔值t0设置当前的下载速度变量为v,且设置v的值为vlow设置上次更改速度的时间变量为lastchangetime并赋值为0

第一步获取当前的客户端的ping值(即网络延迟值)

第二步如果ping值超过我们设置最大延迟值high,说明网速状况比较糟糕,且当前时间减去上次修改时间的时间间隔大于t0(调整网速间隔可设置为10s)就将当前下载速度降为原来的二分之一,且将lastchangetime设置为当前时间,否则跳回第一步

第三步获取当前的客户端的ping值(即网络延迟值),如果ping值小于我们设置最小延迟值low,说明网速状况非常好,且当前时间减去上次修改时间的时间间隔大于t0(调整网速间隔可设置为10s)就将当前下载速度增加10kb/s,且将lastchangetime设置为当前时间,否则跳回第一步。

应当认识到,本发明的实施例可以由计算机硬件、硬件和软件的组合、或者通过存储在非暂时性计算机可读存储器中的计算机指令来实现或实施。所述方法可以使用标准编程技术-包括配置有计算机程序的非暂时性计算机可读存储介质在计算机程序中实现,其中如此配置的存储介质使得计算机以特定和预定义的方式操作——根据在具体实施例中描述的方法和附图。每个程序可以以高级过程或面向对象的编程语言来实现以与计算机系统通信。然而,若需要,该程序可以以汇编或机器语言实现。在任何情况下,该语言可以是编译或解释的语言。此外,为此目的该程序能够在编程的专用集成电路上运行。

此外,可按任何合适的顺序来执行本文描述的过程的操作,除非本文另外指示或以其他方式明显地与上下文矛盾。本文描述的过程(或变型和/或其组合)可在配置有可执行指令的一个或多个计算机系统的控制下执行,并且可作为共同地在一个或多个处理器上执行的代码(例如,可执行指令、一个或多个计算机程序或一个或多个应用)、由硬件或其组合来实现。所述计算机程序包括可由一个或多个处理器执行的多个指令。

进一步,所述方法可以在可操作地连接至合适的任何类型的计算平台中实现,包括但不限于个人电脑、迷你计算机、主框架、工作站、网络或分布式计算环境、单独的或集成的计算机平台、或者与带电粒子工具或其它成像装置通信等等。本发明的各方面可以以存储在非暂时性存储介质或设备上的机器可读代码来实现,无论是可移动的还是集成至计算平台,如硬盘、光学读取和/或写入存储介质、ram、rom等,使得其可由可编程计算机读取,当存储介质或设备由计算机读取时可用于配置和操作计算机以执行在此所描述的过程。此外,机器可读代码,或其部分可以通过有线或无线网络传输。当此类媒体包括结合微处理器或其他数据处理器实现上文所述步骤的指令或程序时,本文所述的发明包括这些和其他不同类型的非暂时性计算机可读存储介质。当根据本发明所述的方法和技术编程时,本发明还包括计算机本身。

计算机程序能够应用于输入数据以执行本文所述的功能,从而转换输入数据以生成存储至非易失性存储器的输出数据。输出信息还可以应用于一个或多个输出设备如显示器。在本发明优选的实施例中,转换的数据表示物理和有形的对象,包括显示器上产生的物理和有形对象的特定视觉描绘。

以上所述,只是本发明的较佳实施例而已,本发明并不局限于上述实施方式,只要其以相同的手段达到本发明的技术效果,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。在本发明的保护范围内其技术方案和/或实施方式可以有各种不同的修改和变化。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1