一种实现游戏变速的方法及装置
技术领域
本发明涉及浏览器技术领域,具体涉及一种实现游戏变速的方法及装置。
背景技术
浏览器是指可以显示网页服务器或者文件系统的HTML文件内容,并让用户与这些文件交互的一种软件。网页浏览器主要通过HTTP协议与网页服务器交互并获取网页,这些网页由URL指定,文件格式通常为HTML,并由MIME(Multipurpose Internet Mail Extensions,多用途互联网邮件扩展)在HTTP协议中指明。一个网页中可以包括多个文档,每个文档都是分别从服务器获取的。大部分的浏览器本身支持除了HTML之外的广泛的格式,例如:JPEG、PNG、GIF等图像格式,并且能够扩展支持众多的插件(plug-ins)比如flash插件。
目前,很多游戏厂商都会开发网页游戏,在一个页面中加载flash插件,然后运行游戏内容,但是对于IE内核的网页中运行的游戏内容,其一,可能存在大量的冗余数据,由于服务器定义的播放速度是固定的,因而冗余数据的对播放时间也很长,对于用户来说则浪费了浏览时间;其二,由于服务器定义了固定的播放速度,可能对某些重要数据的播放速度过快,使用户无法清晰的观看播放内容。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的一种实现游戏变速的方法及装置。
依据本发明的一个方面,提供了一种实现游戏变速的方法,包括:
当IE内核的浏览器触发游戏页面加载事件后,通过浏览器辅助对象加载游戏变速工具条;
根据用户对游戏变速工具条的触发操作,获取游戏变速参数;
拦截当前运行游戏内容的第一进程调用的系统时间获取函数;
根据所述游戏变速参数,将时间获取函数获取的当前时间修改为与所述变速参数相匹配的相对时间;
将所述相对时间返回给第一进程,由所述第一进程根据所述相对时间获取游戏内容进行加载。
优选的,所述当IE内核的浏览器的当前游戏页面触发页面加载事件后,通过浏览器辅助对象加载游戏变速工具条包括:
当IE内核的浏览器的当前页面触发页面加载事件时,生成消息通知;其中,所述消息通知中携带有所述页面加载事件信息;
在预置函数的指示下,将所述消息通知通过所述IE内核的浏览器中的设定接口发送至独立于浏览器的应用程序;
接收所述独立于浏览器的应用程序返回的调用请求;所述调用请求为当所述独立于浏览器的应用程序判断所述页面加载事件为游戏页面加载事件时返回;
响应所述调用请求,调用动态链接库DLL,并通过所述DLL在所述IE内核的浏览器中加载设定的游戏变速工具条;
其中,所述预置函数和所述DLL由所述独立于浏览器的应用程序通过浏览器辅助对象注入所述IE内核的浏览器,以使所述IE内核的浏览器获取并加载所述预置函数和所述DLL。
优选的,所述页面加载事件信息包括:所述当前游戏页面的统一资源定位符URL和标题。
优选的,所述接收所述独立于浏览器的应用程序返回的调用请求,包括:
接收所述独立于浏览器的应用程序在接收到所述消息通知,并确定所述消息通知中的URL和标题与预置标准信息相匹配之后返回的调用请求;其中,所述预置标准信息对应指示的页面是游戏页面。
优选的,在所述生成消息通知的步骤之后,所述方法还包括:
确定所述当前游戏页面的加载状态;其中,所述加载状态包括:加载请求状态、访问完成状态、文档建立状态和页面加载完成状态。
优选的,所述在预置函数的指示下,将所述消息通知通过所述IE内核的浏览器中的设定接口发送至独立于浏览器的应用程序,包括:
当确定所述当前游戏页面的加载状态为访问完成状态时,在预置函数的指示下,将所述消息通知通过所述IE内核的浏览器中的设定接口发送至独立于浏览器的应用程序。
优选的,所述预置函数和所述DLL由所述独立于浏览器的应用程序通过浏览器辅助对象注入所述IE内核的浏览器,包括:
所述预置函数和所述DLL由网盾通过浏览器辅助对象注入所述IE内核的浏览器。
优选的,所述预置函数和所述DLL由所述独立于浏览器的应用程序通过浏览器辅助对象注入所述IE内核的浏览器,包括:
所述预置函数和所述DLL由所述独立于浏览器的应用程序通过浏览器辅助对象注入至所述IE内核的浏览器的主进程中。
优选的,当IE内核的浏览器触发游戏页面加载事件后,还包括:
判断当前游戏页面是否在游戏页面白名单中,如果在,则通过浏览器辅助对象加载游戏变速工具条。
优选的,所述拦截当前运行游戏内容的第一进程调用的系统时间获取函数包括:
判断当前系统的位数,当系统为32位时,拦截系统时间获取函数timegettime;当系统为64位时,拦截系统时间获取函数QueryPerformanceCounter。
优选的,还包括:
将所述游戏变速参数与当前用户标识进行关联存储;当以所述用户标识再次触发游戏页面加载事件后,在通过浏览器辅助对象加载游戏变速工具条时加载所述与用户标识对应的游戏变速参数;
进一步的,所述根据用户对游戏变速工具条的触发操作,获取游戏变速参数包括:
根据用户对游戏变速工具条的触发操作,获取记录的与当前用户标识对应的游戏变速参数。
优选的,还包括:
将所述游戏变速参数与当前游戏页面的对应的游戏服务器标识进行关联存储;当以所述用户标识再次触发游戏页面加载事件后,获取所述游戏页面的服务器标识,在通过浏览器辅助对象加载游戏变速工具条时加载所述与所述服务器标识对应的游戏变速参数;
进一步的,所述根据用户对游戏变速工具条的触发操作,获取游戏变速参数包括:
根据用户对游戏变速工具条的触发操作,获取记录的与所述服务器标识对应的游戏变速参数。
优选的,还包括:
在运行游戏内容的过程中,当切换游戏场景时,将所述游戏变速参数与当前游戏场景标识进行关联存储;当以所述用户标识再次触发游戏页面加载事件后,在通过浏览器辅助对象加载游戏变速工具条时加载所述游戏变速参数与各游戏场景标识的关联关系;
进一步的,所述根据用户对游戏变速工具条的触发操作,获取游戏变速参数包括:
在所述触发操作的时刻,获取当前游戏场景标识,根据游戏场景标识获取对应的游戏变速参数;当游戏运行过程中,如果切换游戏场景,则自动获取切换后的游戏场景标识,根据游戏场景标识获取对应的游戏变速参数。
优选的,所述根据所述游戏变速参数,将时间获取函数获取的当前时间修改为与所述变速参数相匹配的相对时间包括:
当所述游戏变速参数为加快游戏速度时,根据加快的速度的倍数,将所述当前时间修改为在当前时间之前的与所述倍数匹配的第一相对时间;
当所述游戏变速参数为减缓游戏速度时,根据减缓的速度的倍数,将所述当前时间修改为在当前时间之后的与所述倍数匹配的第二相对时间。
依据本发明的另外一个方面,公开了一种实现游戏变速的装置,包括:
工具条加载模块,适于当IE内核的浏览器触发游戏页面加载事件后,通过浏览器辅助对象加载游戏变速工具条;
参数获取模块,适于根据用户对游戏变速工具条的触发操作,获取游戏变速参数;
时间拦截模块,适于拦截当前运行游戏内容的第一进程调用的系统时间获取函数;
时间修改模块,适于根据所述游戏变速参数,将时间获取函数获取的当前时间修改为与所述变速参数相匹配的相对时间;
内容加载模块,适于将所述相对时间返回给第一进程,由所述第一进程根据所述相对时间获取游戏内容进行加载。
优选的,所述工具条加载模块包括:
生成模块,适于当监控到IE内核的浏览器的触发游戏页面加载事件时,生成消息通知;其中,所述消息通知中携带有所述页游戏面加载事件信息;
发送模块,适于在预置函数的指示下,将所述消息通知通过所述IE内核的浏览器中的设定接口发送至独立于浏览器的应用程序;
接收模块,适于接收所述独立于浏览器的应用程序返回的调用请求;
调用加载模块,适于响应所述调用请求,调用动态链接库DLL,并通过所述DLL在所述IE内核的浏览器中加载设定的游戏变速工具条;
其中,所述预置函数和所述DLL由所述独立于浏览器的应用程序通过浏览器辅助对象注入所述IE内核的浏览器,以使所述IE内核的浏览器获取并加载所述预置函数和所述DLL。
优选的,所述页面加载事件信息包括:所述当前游戏页面的统一资源定位符URL和标题。
优选的,所述接收模块包括:
所述接收模块,具体适于接收所述独立于浏览器的应用程序在接收到所述消息通知,并确定所述消息通知中的URL和标题与预置标准信息相匹配之后返回的调用请求;其中,所述预置标准信息对应指示的页面是游戏页面。
优选的,所述装置还包括:
状态确定模块,适于确定所述当前游戏页面的加载状态;其中,所述加载状态包括:加载请求状态、访问完成状态、文档建立状态和页面加载完成状态。
优选的,所述发送模块,具体适于当确定所述当前游戏页面的加载状态为访问完成状态时,在预置函数的指示下,将所述消息通知通过所述IE内核的浏览器中的设定接口发送至独立于浏览器的应用程序。
优选的,所述调用加载模块包括:
第一注入模块,适于所述预置函数和所述DLL由网盾通过浏览器辅助对象注入所述IE内核的浏览器。
优选的,所述预置函数和所述DLL由所述独立于浏览器的应用程序通过浏览器辅助对象注入所述IE内核的浏览器,包括:
第二注入模块,适于所述预置函数和所述DLL由所述独立于浏览器的应用程序通过浏览器辅助对象注入至所述IE内核的浏览器的主进程中。
优选的,还包括:
页面判断模块,适于判断当前游戏页面是否在游戏页面白名单中,如果在,则通过浏览器辅助对象加载游戏变速工具条。
优选的,所述时间拦截模块包括:
拦截判断模块,适于判断当前系统的位数,当系统为32位时,拦截系统时间获取函数timegettime;当系统为64位时,拦截系统时间获取函数QueryPerformanceCounter。
优选的,还包括:
第一关联模块,适于将所述游戏变速参数与当前用户标识进行关联存储;
进一步的,所述工具条加载模块包括:
第一工具条加载模块,适于当以所述用户标识再次触发游戏页面加载事件后,在通过浏览器辅助对象加载游戏变速工具条时加载所述与用户标识对应的游戏变速参数;
进一步的,所述参数获取模块包括:
第一参数获取模块,适于根据用户对游戏变速工具条的触发操作,获取记录的与当前用户标识对应的游戏变速参数。
优选的,还包括:
第二关联模块,适于将所述游戏变速参数与当前游戏页面的对应的游戏服务器标识进行关联存储;
进一步的,所述工具条加载模块包括:
第二工具条加载模块,适于当以所述用户标识再次触发游戏页面加载事件后,获取所述游戏页面的服务器标识,在通过浏览器辅助对象加载游戏变速工具条时加载所述与所述服务器标识对应的游戏变速参数;
进一步的,所述参数获取模块包括:
第二参数获取模块,适于根据用户对游戏变速工具条的触发操作,获取记录的与所述服务器标识对应的游戏变速参数。
优选的,还包括:
第三关联模块,适于在运行游戏内容的过程中,当切换游戏场景时,将所述游戏变速参数与当前游戏场景标识进行关联存储;
进一步的,所述工具条加载模块包括:
第三工具条加载模块,适于当以所述用户标识再次触发游戏页面加载事件后,在通过浏览器辅助对象加载游戏变速工具条时加载所述游戏变速参数与各游戏场景标识的关联关系;
进一步的,所述参数获取模块包括:
第三参数获取模块,适于在所述触发操作的时刻,获取当前游戏场景标识,根据游戏场景标识获取对应的游戏变速参数;当游戏运行过程中,如果切换游戏场景,则自动获取切换后的游戏场景标识,根据游戏场景标识获取对应的游戏变速参数。
优选的,所述时间修改模块包括:
第一修改模块,适于当所述游戏变速参数为加快游戏速度时,根据加快的速度的倍数,将所述当前时间修改为在当前时间之前的与所述倍数匹配的第一相对时间;
第二修改模块,适于当所述游戏变速参数为减缓游戏速度时,根据减缓的速度的倍数,将所述当前时间修改为在当前时间之后的与所述倍数匹配的第二相对时间。
根据本发明的一种游戏变速方法可以根据用户的触发,对IE内核加载的游戏页面中运行的游戏内容进行变速运行,比如加快或者减慢运行,由此解决了其一,可能存在大量的冗余数据,由于服务器定义的播放速度是固定的,因而冗余数据的对播放时间也很长,对于用户来说则浪费了浏览时间的问题;其二,由于服务器定义了固定的播放速度,可能对某些重要数据的播放速度过快,使用户无法清晰的观看播放内容的问题,取得了可根据用户需要自动加快游戏运行速率,以缩短游戏内容播放时间,或者减慢游戏运行速率以达到清晰播放游戏过程的有益效果。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了根据本发明一个实施例一的一种实现游戏变速的方法的流程示意图;
图2示出了根据本发明一个实施例二的一种实现游戏变速的方法的流程示意图;
图3示出了根据本发明一个实施例三的一种实现游戏变速的方法的流程示意图;
图4示出了根据本发明一个实施例四的一种实现游戏变速的方法的流程示意图;
图5示出了根据本发明一个实施例五的一种实现游戏变速的方法的流程示意图;
图6示出了根据本发明一个实施例六的一种实现游戏变速的装置的结构示意图;
图7示出了根据本发明一个实施例七的一种实现游戏变速的装置的结构示意图;
图8示出了根据本发明一个实施例八的一种实现游戏变速的装置的结构示意图;
图9示出了根据本发明一个实施例九的一种实现游戏变速的装置的结构示意图;以及
图10示出了根据本发明一个实施例十的一种实现游戏变速的装置的结构示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
实施例一
参照图1,其示出了本发明实施例一的一种实现游戏变速的方法的流程示意图,具体可以包括:
步骤110,当IE内核的浏览器触发游戏页面加载事件后,通过浏览器辅助对象加载游戏变速工具条;
浏览器最核心的部分是渲染引擎(Rendering Engine),我们一般习惯称之为“浏览器内核”,渲染引擎负责解析网页语法(如,标准通用标记语言的子集HTML、JavaScript)并渲染、展示网页。因此,所谓的浏览器内核通常也就是指浏览器所采用的渲染引擎,渲染引擎决定了浏览器如何显示网页的内容以及页面的格式信息。不同的浏览器内核对网页编写语法的解析也有所不同,因此同一网页在不同的内核浏览器里的渲染、展示效果也可能不同。
在本发明实施例中,针对IE内核浏览器,当监测到IE内核浏览器触发游戏页面加载事件后,通过浏览器辅助对象(BHO)加载游戏变速工具条。该游戏变速工具条为用户提供操作按钮,比如启动/暂停变速按钮,变速倍数选择按钮,用户触发该工具条中的启动按钮后,该工具条对应的后台进程可实现游戏变速功能。
进一步的,当IE内核的浏览器触发游戏页面加载事件后,通过浏览器辅助对象加载游戏变速工具条包括:
步骤S112,查找当前页面中是否有flash窗口,如果有,则通过浏览器辅助对象加载游戏变速工具条。
其判断flash窗口的代码示例如下:
在判断页面中有flash窗口后,即可通过浏览器辅助对象加载游戏变速工具条。
优选的,当IE内核的浏览器触发游戏页面加载事件后,还包括:
步骤S114,判断当前游戏页面是否在游戏页面白名单中,如果在,则通过浏览器辅助对象加载游戏变速工具条。
在本发明实施例中,可维护一个可进行游戏内容运行速率调节的白名单,避免将对用户账户有影响的游戏页面也加载游戏变速工具。
步骤120,根据用户对游戏变速工具条的触发操作,获取游戏变速参数;
用户在游戏变速工具条中选择游戏变速参数,并点击启动变速后,本发明实施例用于控制当前网页变速的BHO进程则可获取该游戏变速参数。比如用户在工具栏中选择3倍速度,则用户点击工具栏中的启动变速按钮后,本步骤则获取游戏变速参数“3倍”。当然也可选择1/3倍等游戏变速参数。
步骤130,拦截当前运行游戏内容的第一进程调用的系统时间获取函数;
在IE内核环境中,网页游戏内容的运行一般是网页调用flash控件运行的,而flash控件运行游戏时,其会定期的调用系统时间获取函数获取系统的当前时间,然后以所述当前时间和前一次的系统时间计算从本地或者服务器获取多少帧数据进行加载和播放,针对同一个flash控件运行的游戏,其单位时间内向本地或者服务器请求加载和播放的帧数是固定的,因而本发明实施例可通过改变系统时间获取函数获取的系统时间,来达到改变flash插件的播放速率的效果。
在本发明实施例中,第一进程可对应前述flash控件进程。
优选的,所述拦截当前运行游戏内容的第一进程调用的系统时间获取函数包括:
步骤S132,判断当前系统的位数,当系统为32位时,拦截系统时间获取函数timegettime;当系统为64位时,拦截系统时间获取函数QueryPerformanceCounter。
当然,本步骤也可预置,即在加载游戏变速工具时即可判断当前计算机系统的位数,当系统为32位时,拦截的系统时间获取函数为timegettime。当系统为64位时,拦截的系统时间获取函数QueryPerformanceCounter。其中,timeGetTime:函数以毫秒计的系统时间。该时间为从系统开启算起所经过的时间;QueryPerformanceCounter来查询定时器的计数值,如果硬件里有定时器,它就会启动这个定时器,并且不断获取定时器的值。
步骤140,根据所述游戏变速参数,将时间获取函数获取的当前时间修改为与所述变速参数相匹配的相对时间;
在本发明实施例中,比如前一次flash插件调用上述函数获取的系统当前时间为t1,前一次获取的系统当前时间为t0,那么正常情况下flash控件两次获取的系统时间直接的间距Δt=t1-t0,然后其根据规定的单位时长计算需要从本地存储中或者从服务器中获取对应帧数的游戏内容进行播放。那么根据游戏变速参数,比如放大2倍,那么可将当前时间修改为t2,使得t2-t0=2Δt,如此当步骤150将修改后的相对时间t2返回给第一进程时,第一进程计算需要获取和在指定时间内播放的视频帧数就为正常情况下的2倍,那么在正常时间段内播放的视频帧数就会比原来多两倍。
在根据所述游戏变速参数,将时间获取函数获取的当前时间修改为与所述变速参数相匹配的相对时间时,包括:
子步骤S142,对于首次拦截系统时间获取函数,将系统时间获取函数获取的当前时间进行记录;
子步骤S144,对于再次拦截的系统时间获取函数,将系统时间获取函数获取的当前时间进行记录;
子步骤S146,根据再次获取的当前时间与前一次记录的当前时间,以及所述游戏变速参数,将再次获取的当前时间修改为与所述变速参数相匹配的相对时间。
比如:第一次拦截系统时间获取函数时,得到的当前时间为t0,将t0进行记录;
第二次拦截系统时间获取函数时,得到的当前时间为t1,将t1记录以备后用,根据Δt0=t1-t0计算Δt,然后根据游戏变速参数计算所述相对时间,比如2倍,那么即根据2*Δt0=t?-t0,计算相对时间t?,比如1/2倍,那么根据1/2*Δt0=t?-t0,计算相对时间t?。
第三次拦截系统时间获取函数时,得到的当前时间为t2,将t2记录以备后用,根据Δt1=t2-t1计算Δt1,然后根据游戏变速参数计算所述相对时间,比如2倍,那么即根据2*Δt0=t?-t1,计算相对时间t?,比如1/2倍,那么根据1/2*Δt0=t?-t1,计算相对时间t?。
其他情况以此类推。在上述过程中,本发明实施例第一次拦截时可不进行变速,而在系统时间为毫秒级的情况下,第一次拦截时不进行变速,其对整个变速过程不影响用户体验。
其中,所述根据所述游戏变速参数,将时间获取函数获取的当前时间修改为与所述变速参数相匹配的相对时间包括:
子步骤S148,当所述游戏变速参数为加快游戏速度时,根据加快的速度的倍数,将所述当前时间修改为在当前时间之前的与所述倍数匹配的第一相对时间;
如前所述,比如游戏参数为2倍速时,当前时间为t1,那么修改后的t2为t1之后的时间,满足t2-t0=2(t1-t0),以达到使flash控件以为时间到达了t2的情况,从而会将应该在未来时间加载数据在当前的实际系统时间就加载了,从而加载了更多的游戏内容帧,那么flash控件在单位时间则播放更多的内容,达到了加速功能。
子步骤S149,当所述游戏变速参数为减缓游戏速度时,根据减缓的速度的倍数,将所述当前时间修改为在当前时间之后的与所述倍数匹配的第二相对时间。
如前所述,比如游戏参数为1/2倍速时,当前时间为t1,那么修改后的t2为t1之后的时间,满足t2-t0=1/2*(t1-t0),以达到使flash控件以为时间到达了t2的情况,从而会将应该在以前的时间加载数据在当前的实际系统时间就加载了,从而加载了更少的游戏内容帧,那么flash控件在单位时间则播放更少的内容,达到了减速功能。
步骤150,将所述相对时间返回给第一进程,由所述第一进程根据所述相对时间获取游戏内容进行加载。
将前述例子中相对时间t?返回给第一进程,第一进程即根据t?与前一次的系统时间计算需要加载的游戏内容的帧数,然后从本地或者服务器请求相应帧数的游戏内容进行加载,然后运行。即可实现游戏变速。
本发明通过浏览器辅助对象对IE内核的浏览器触发的游戏页面,加载游戏变速工具条,然后方便用户在游戏过程开始或者游戏过程中启动游戏变变速功能,即针对运行游戏内容的第一进程,拦截其调用的系统时间获取函数,将系统时间获取函数的实际的当前时间修改为与游戏变速参数相匹配的相对时间,以达到实际中的单位时间播放的帧数变多或者变少的情况,从而实现以快进不需要的游戏内容,或者慢放需要仔细观看的游戏内容的效果。
实施例二
参照图2,其示出了本发明实施例二的一种实现游戏变速的方法的流程示意图,具体可以包括:
步骤210,当IE内核的浏览器的当前页面触发页面加载事件时,生成消息通知;其中,所述消息通知中携带有所述页面加载事件信息;
在本实施例中,所述消息通知中携带有所述页面加载事件信息。例如,当用户使用IE内核的浏览器浏览网页,并请求访问一个页面时,会触发页面加载事件,浏览器生成携带有所述页面加载事件信息的消息通知。
较佳地,所述页面加载事件信息可以包括:所述当前页面的统一资源定位符URL(Uniform Resource Locator)和标题Title。即,所述页面加载事件信息包括用户请求打开的页面的URL和标题Title。如,用户在IE内核的浏览器的地址栏输入www.sina.com.cn,并点击回车请求访问时,浏览器可以生成一个携带URL为www.sina.com.cn、标题为“新浪首页”的消息通知。
这里需要说明的是,所述浏览器具体可以是一种IE内核的浏览器;或者可以是IE浏览器。
优选的,在所述生成消息通知的步骤之后,所述方法还包括:
子步骤S210,确定所述当前游戏页面的加载状态;其中,所述加载状态包括:加载请求状态、访问完成状态、文档建立状态和页面加载完成状态。
浏览器在从接收到页面访问请求到完成页面的加载显示的过程中,至少可以包括四种加载状态:加载请求状态、访问完成状态、文档建立状态和页面加载完成状态。浏览在任意一种状态过程中都可以生成消息通知,但是,在加载请求状态过程中生成的消息通知不能完整包含URL信息和Title信息;在文档建立状态或页面加载完成状态过程中生成的消息通知时效性差,不能在第一时间将消息通知发送出去,影响工具条的加载效率。因此,在本实施例中,较佳地,当浏览器确定所述当前页面的加载状态为访问完成状态时,执行步骤220,该种方式可以保证页面加载完成后再加载工具条,避免影响页面的正常加载。
步骤220,浏览器在预置函数的指示下,将所述消息通知通过所述IE内核的浏览器中的设定接口发送至独立于浏览器的应用程序。
其中,所述预置函数可以用来指示IE内核的浏览器将在当前页面触发页面加载事件时生成的消息通知通过所述设定接口发送至所述独立于浏览器的应用程序。
较佳地,通过所述设定接口可以调用浏览器中的其它接口,进而可以获取浏览器中的各类事件消息。其中,所述设定接口具体可以是IWebBrowser接口。在IE内核的浏览器中,通过所述IWebBrowser接口可以用于调用其它接口,从其它接口获取所述预置函数指示的、需要获取的信息。
WebBrowser是IE内核的浏览器中内置的浏览器控件,通过WebBrowser控件可以向Windows窗体客户端应用程序如浏览器添加基于Web的控件。IWebBrowser接口是WebBrowser控件提供的接口,通过IWebBrowser接口如IWebBrowser2接口,可以获取浏览器的信息、与第三方交互、并实现设定的功能等等。
其中,在通过BHO注入的预置函数中,还可包括下述功能:
子步骤S205判断当前游戏页面是否在游戏页面白名单中,如果在,则通过浏览器辅助对象加载游戏变速工具条。
比如通过页面的URL判断当前的游戏页面是否在白名单中;如果在白名单中,则进入步骤230;如果不在白名单中,则停止后续操作,使页面按IE内核的渲染过程正常加载。
步骤230,接收所述独立于浏览器的应用程序返回的调用请求;所述调用请求为当所述独立于浏览器的应用程序判断所述页面加载事件为游戏页面加载事件时返回;
浏览器接收所述独立于浏览器的应用程序在接收到所述消息通知,并确定所述消息通知中的URL和标题Title与预置标准信息进行匹配之后,判断所述页面加载事件为游戏页面加载事件后返回的调用请求。
在本实施例中,加载的工具条可以是用于对游戏操作的游戏工具条,故,所述预置标准信息对应指示的页面可以是游戏页面。当所述独立于浏览器的应用程序确定所述消息通知中的URL和标题Title与预置标准信息相匹配时,则确定当前页面加载的是游戏页面,符合加载工具条的方法,所述独立于浏览器的应用程序向浏览器侧发送调用请求,请求加载所述游戏工具条。
步骤240,浏览器响应所述调用请求,调用动态链接库DLL,并通过所述DLL在所述IE内核的浏览器中加载设定的工具条。
其中,所述预置函数和所述DLL可以由所述独立于浏览器的应用程序通过BHO注入所述IE内核的浏览器,以使所述IE内核的浏览器获取并加载所述预置函数和所述DLL。
其中,较佳地,所述独立于浏览器的应用程序可以是网盾(如,360网盾),所述预置函数和所述DLL可以由网盾通过BHO注入所述IE内核的浏览器。
另一较佳地,所述预置函数和所述DLL由所述独立于浏览器的应用程序通过BHO注入所述IE内核的浏览器具体是指:所述预置函数和所述DLL由所述独立于浏览器的应用程序通过BHO注入至所述IE内核的浏览器的主进程中。
其中,DLL(Dynamic Link Library,动态链接库)是一个包含可由多个程序同时使用的代码和数据的库。DLL文件是一种不可执行的二进制程序文件,它允许程序共享执行特殊任务所必需的代码和其他资源。BHO(BrowserHelper Object,浏览器辅助对象)是微软推出的作为浏览器对第三方程序员开放交互接口的业界标准。
步骤250,根据用户对游戏变速工具条的触发操作,获取游戏变速参数;
步骤260,拦截当前运行游戏内容的第一进程调用的系统时间获取函数;
步骤270,根据所述游戏变速参数,将时间获取函数获取的当前时间修改为与所述变速参数相匹配的相对时间;
步骤280,将所述相对时间返回给第一进程,由所述第一进程根据所述相对时间获取游戏内容进行加载。
本实施例与实施例一相似的步骤原理类似,在此不再详述。
综上所述,本实施例所述的一种实现游戏变速的方法,当IE内核的浏览器的当前页面触发页面加载事件时,生成消息通知,并将所述消息通知发送至第三方应用;然后响应第三方应用返回的调用请求,调用动态链接库DLL,并通过所述DLL在所述IE内核的浏览器中加载设定的游戏变速工具条,然后通过游戏变速工具条的启动,拦截在当前页面中运行游戏内容的第一进程调用的系统时间获取函数,将系统时间获取函数获取的当前时间修改为与游戏变速参数相匹配的相对时间返回给第一进程,第一进程根据相对时间获取相应帧数的游戏内容进行加载。用户可以通过加载在IE内核的浏览器侧的游戏变速工具条对所述IE内核的浏览器中的当前页面进行快捷操作,可以通过第三方的应用程序去控制IE内核的浏览器对页面的处理,提高IE内核的浏览器对游戏页面的操作适应性,并且可实现以快进不需要的游戏内容,或者慢放需要仔细观看的游戏内容的效果。
实施例三
参照图3,其示出了本发明实施例三的一种实现游戏变速的方法的流程示意图,具体可以包括:
步骤310,当IE内核的浏览器触发游戏页面加载事件后,通过浏览器辅助对象加载游戏变速工具条;其中,当以所述用户标识再次触发游戏页面加载事件后,在通过浏览器辅助对象加载游戏变速工具条时加载所述与用户标识对应的游戏变速参数;
步骤320,根据用户对游戏变速工具条的触发操作,获取记录的与用户标识对应的游戏变速参数;
当接收到用户对游戏变速工具的触发操作后,则可获取与所述服务器标识对应的游戏变速参数。比如,用户以123登录浏览器,然后触发了网页A,那么
步骤330,拦截当前运行游戏内容的第一进程调用的系统时间获取函数;
步骤340,根据所述游戏变速参数,将时间获取函数获取的当前时间修改为与所述变速参数相匹配的相对时间;
步骤350,将所述相对时间返回给第一进程,由所述第一进程根据所述相对时间获取游戏内容进行加载。
步骤360,将所述游戏变速参数与当前用户标识进行关联存储。
在本发明实施例中,在进行游戏变速功能的过程中,可将所述游戏变速参数与当前游戏页面的对应的游戏服务器标识进行关联存储。在本发明服务器中,用户可以通过用户标识进行登录,该用户标识可以是用户在浏览器中的账号,也可以是网页游戏中的用户账号。然后用户在以该用户标识登录,再使用游戏变速工具条的过程中,会记录用户选择的游戏变速参数,然后将所述游戏变速参数与用户标识进行关联存储记录。当然关联记录的游戏变速参数可为某个时刻用户时刻选择的游戏变速参数,优选的可为用户选择的最后一个游戏变速参数。当以所述用户标识再次触发游戏页面加载事件后,在通过浏览器辅助对象加载的游戏变速工具条中记录所述与用户标识对应的游戏变速参数。
比如用户使用用户标识123登录浏览器,在玩网页游戏A时,在玩的过程中选择了游戏变速参数2倍速度,那么即可将2倍速度与123进行关联存储。
本实施例与实施例一、二相似的步骤原理类似,在此不再详述。
本发明实施例可根据用户以某个用户标识玩网页游戏的情况,将其设置的游戏变速参数与该用户标识进行关联存储,那么当该用户以相同用户标识玩各种网页游戏时,则以用户以前选择的游戏变速参数进行变速,避免了用户对游戏变速参数的设置和记忆,减少用户的操作,降低系统资源的占用。
实施例四
参照图4,其示出了本发明实施例四的一种实现游戏变速的方法的流程示意图,具体可以包括:
步骤410,当IE内核的浏览器触发游戏页面加载事件后,通过浏览器辅助对象加载游戏变速工具条;其中,当以所述用户标识再次触发游戏页面加载事件后,获取当前游戏页面的服务器标识,在通过浏览器辅助对象加载游戏变速工具条时加载所述与所述服务器标识对应的游戏变速参数;
步骤420,根据用户对游戏变速工具条的触发操作,获取记录的与所述服务器标识对应的游戏变速参数;
当接收到用户对游戏变速工具的触发操作后,则可获取与所述服务器标识对应的游戏变速参数。比如,用户以123登录浏览器,然后触发了网页A,那么
步骤430,拦截当前运行游戏内容的第一进程调用的系统时间获取函数;
步骤440,根据所述游戏变速参数,将时间获取函数获取的当前时间修改为与所述变速参数相匹配的相对时间;
步骤450,将所述相对时间返回给第一进程,由所述第一进程根据所述相对时间获取游戏内容进行加载。
步骤460,将所述游戏变速参数与当前游戏页面的对应的游戏服务器标识进行关联存储。
在本发明实施例中,在进行游戏变速功能的过程中,可将所述游戏变速参数与当前游戏页面的对应的游戏服务器标识进行关联存储。在本发明服务器中,用户可以通过用户标识进行登录,该用户标识可以是用户在浏览器中的账号,也可以是其他的全局账号。然后用户在以该用户标识登录,再使用游戏变速工具条的过程中,会记录用户选择的游戏变速参数,然后将所述游戏变速参数与当前游戏页面的对应的游戏服务器标识进行关联存储记录。当然关联记录的游戏变速参数可为用户选择的最后一个游戏变速参数。当以所述用户标识再次触发游戏页面加载事件后,获取所述游戏页面的服务器标识,在通过浏览器辅助对象加载游戏变速工具条时加载所述与所述服务器标识对应的游戏变速参数。
比如用户使用用户标识123登录浏览器,在玩网页游戏A时,选择服务器M1进行,在玩的过程中选择了游戏变速参数2倍速度,那么即可将2倍速度与网页A的M1进行关联存储,然后再与123进行关联存储。
本实施例与实施例一、二、三相似的步骤原理类似,在此不再详述。
本发明实施例可根据用户针对的游戏页面的服务器的访问情况,将其设置的游戏变速参数与该游戏页面的服务器标识进行关联存储,那么当该用户以相同用户标识在该游戏页面中选择各种服务器以玩游戏时,则可针对不同的服务器提取不同的游戏变速参数进行变速,避免了用户对不同服务器的变速参数的设置和记忆,减少用户的操作,降低系统资源的占用。
实施例五
参照图5,其示出了本发明实施例五的一种实现游戏变速的方法的流程示意图,具体可以包括:
步骤510,当IE内核的浏览器触发游戏页面加载事件后,通过浏览器辅助对象加载游戏变速工具条;其中,当以所述用户标识再次触发游戏页面加载事件后,在通过浏览器辅助对象加载游戏变速工具条时加载所述游戏变速参数与各游戏场景标识的关联关系。
步骤520,在所述触发操作的时刻,获取当前游戏场景标识,根据游戏场景标识获取对应的游戏变速参数;当游戏运行过程中,如果切换游戏场景,则自动获取切换后的游戏场景标识,根据游戏场景标识获取对应的游戏变速参数。
在本发明实施例中,某些网页游戏不只一个游戏场景,可能有多个游戏场景,比如有多张地图,而用户操控角色从一个地图切入另外一个地图时,可能需要加载另外一张地图的数据,以切换游戏场景。而每个游戏场景其存在游戏场景标识,比如每个地图存在相应的地图名称(该名称即可作为游戏场景标识),那么当用户通过游戏变速工具条启动游戏变速功能时,则获取当前游戏场景的游戏场景标识,然后根据游戏场景标识去获取游戏变速参数,再对当前游戏场景下的游戏内容进行变速。如果在游戏运行过程中,检测到游戏场景变化,比如检测到当前时刻的场景和前一时刻的场景不同,或者检测到在加载某个场景,那么则获取新的或者说切换后的游戏场景的游戏场景标识,然后再通过该游戏场景标识去前述加载的记录中获取对应的游戏变速参数,再进行新场景下的游戏内容变速。
步骤530,拦截当前运行游戏内容的第一进程调用的系统时间获取函数;
步骤540,根据所述游戏变速参数,将时间获取函数获取的当前时间修改为与所述变速参数相匹配的相对时间;
步骤550,将所述相对时间返回给第一进程,由所述第一进程根据所述相对时间获取游戏内容进行加载。
步骤560,在运行游戏内容的过程中,当切换游戏场景时,将所述游戏变速参数与当前游戏场景标识进行关联存储。
如前所述,在本发明实施例中,某些网页游戏不只一个游戏场景,可能有多个游戏场景,比如有多张地图,而用户操控角色从一个地图切入另外一个地图时,可能需要加载另外一张地图的数据,以切换游戏场景。那么本发明可针对每个游戏场景记录用户选择的游戏变速参数,并进行关联存储。
本实施例与实施例一、二、三、四相似的步骤原理类似,在此不再详述。
本发明实施例可根据用户针对的游戏页面的游戏内容中不同场景分别记录其对应的游戏变速参数,然后针对不同游戏场景获取不同的游戏变速参数进行变速,进一步避免了用户对各种游戏变速参数的设置和记忆,减少用户的操作,降低系统资源的占用。
实施例二、三、四还可以任意组合,本发明不对其加以限制,比如三者结合,针对某个用户标识、某个游戏页面的游戏服务器,由该服务器提供的游戏内容中各个游戏场景下的游戏变速参数进行记录,然后进行后续变速过程。
实施例六
参照图6,其示出了本发明实施例六的一种实现游戏变速的方法的流程示意图,具体可以包括:
工具条加载模块610,适于当IE内核的浏览器触发游戏页面加载事件后,通过浏览器辅助对象加载游戏变速工具条;
参数获取模块620,适于根据用户对游戏变速工具条的触发操作,获取游戏变速参数;
时间拦截模块630,适于拦截当前运行游戏内容的第一进程调用的系统时间获取函数;
时间修改模块640,适于根据所述游戏变速参数,将时间获取函数获取的当前时间修改为与所述变速参数相匹配的相对时间;
内容加载模块650,适于将所述相对时间返回给第一进程,由所述第一进程根据所述相对时间获取游戏内容进行加载。
优选的,还包括:
页面判断模块,适于判断当前游戏页面是否在游戏页面白名单中,如果在,则通过浏览器辅助对象加载游戏变速工具条。
优选的,所述时间拦截模块630包括:
拦截判断模块,适于判断当前系统的位数,当系统为32位时,拦截系统时间获取函数timegettime;当系统为64位时,拦截系统时间获取函数QueryPerformanceCounter。
实施例七
参照图7,其示出了本发明实施例七的一种实现游戏变速的方法的流程示意图,具体可以包括:
生成模块710,适于当监控到IE内核的浏览器的触发游戏页面加载事件时,生成消息通知;其中,所述消息通知中携带有所述页游戏面加载事件信息;
发送模块720,适于在预置函数的指示下,将所述消息通知通过所述IE内核的浏览器中的设定接口发送至独立于浏览器的应用程序;
接收模块730,适于接收所述独立于浏览器的应用程序返回的调用请求;
调用加载模块740,适于响应所述调用请求,调用动态链接库DLL,并通过所述DLL在所述IE内核的浏览器中加载设定的游戏变速工具条;
其中,所述预置函数和所述DLL由所述独立于浏览器的应用程序通过浏览器辅助对象注入所述IE内核的浏览器,以使所述IE内核的浏览器获取并加载所述预置函数和所述DLL。
参数获取模块750,适于根据用户对游戏变速工具条的触发操作,获取游戏变速参数;
时间拦截模块760,适于拦截当前运行游戏内容的第一进程调用的系统时间获取函数;
时间修改模块770,适于根据所述游戏变速参数,将时间获取函数获取的当前时间修改为与所述变速参数相匹配的相对时间;
内容加载模块780,适于将所述相对时间返回给第一进程,由所述第一进程根据所述相对时间获取游戏内容进行加载。
实施例八
参照图8,其示出了本发明实施例八的一种实现游戏变速的方法的流程示意图,具体可以包括:
工具条加载模块810,适于当IE内核的浏览器触发游戏页面加载事件后,通过浏览器辅助对象加载游戏变速工具条;
所述工具条加载模块810包括:第一工具条加载模块,适于当以所述用户标识再次触发游戏页面加载事件后,在通过浏览器辅助对象加载游戏变速工具条时加载所述与用户标识对应的游戏变速参数;
参数获取模块820,适于根据用户对游戏变速工具条的触发操作,获取游戏变速参数;所述参数获取模块820,包括:
第一参数获取模块,适于根据用户对游戏变速工具条的触发操作,获取记录的与当前用户标识对应的游戏变速参数。
时间拦截模块830,适于拦截当前运行游戏内容的第一进程调用的系统时间获取函数;
时间修改模块840,适于根据所述游戏变速参数,将时间获取函数获取的当前时间修改为与所述变速参数相匹配的相对时间;
内容加载模块850,适于将所述相对时间返回给第一进程,由所述第一进程根据所述相对时间获取游戏内容进行加载。
第一关联模块860,适于将所述游戏变速参数与当前用户标识进行关联存储。
实施例九
参照图9,其示出了本发明实施例九的一种实现游戏变速的方法的流程示意图,具体可以包括:
工具条加载模块910,适于当IE内核的浏览器触发游戏页面加载事件后,通过浏览器辅助对象加载游戏变速工具条;
所述工具条加载模块910包括:第二工具条加载模块,适于当以所述用户标识再次触发游戏页面加载事件后,获取所述游戏页面的服务器标识,在通过浏览器辅助对象加载游戏变速工具条时加载所述与所述服务器标识对应的游戏变速参数;
参数获取模块920,适于根据用户对游戏变速工具条的触发操作,获取游戏变速参数;所述参数获取模块920,包括:
第二参数获取模块,适于根据用户对游戏变速工具条的触发操作,获取记录的与所述服务器标识对应的游戏变速参数。
时间拦截模块930,适于拦截当前运行游戏内容的第一进程调用的系统时间获取函数;
时间修改模块940,适于根据所述游戏变速参数,将时间获取函数获取的当前时间修改为与所述变速参数相匹配的相对时间;
内容加载模块950,适于将所述相对时间返回给第一进程,由所述第一进程根据所述相对时间获取游戏内容进行加载。
第二关联模块960,适于将所述游戏变速参数与当前游戏页面的对应的游戏服务器标识进行关联存储。
实施例十
参照图10,其示出了本发明实施例十的一种实现游戏变速的方法的流程示意图,具体可以包括:
工具条加载模块1010,适于当IE内核的浏览器触发游戏页面加载事件后,通过浏览器辅助对象加载游戏变速工具条;
所述工具条加载模块1010包括:第三工具条加载模块,适于当以所述用户标识再次触发游戏页面加载事件后,在通过浏览器辅助对象加载游戏变速工具条时加载所述游戏变速参数与各游戏场景标识的关联关系;
参数获取模块1020,适于根据用户对游戏变速工具条的触发操作,获取游戏变速参数;所述参数获取模块1020,包括:
第三参数获取模块,适于在所述触发操作的时刻,获取当前游戏场景标识,根据游戏场景标识获取对应的游戏变速参数;当游戏运行过程中,如果切换游戏场景,则自动获取切换后的游戏场景标识,根据游戏场景标识获取对应的游戏变速参数。
时间拦截模块1030,适于拦截当前运行游戏内容的第一进程调用的系统时间获取函数;
时间修改模块1040,适于根据所述游戏变速参数,将时间获取函数获取的当前时间修改为与所述变速参数相匹配的相对时间;
内容加载模块1050,适于将所述相对时间返回给第一进程,由所述第一进程根据所述相对时间获取游戏内容进行加载。
第三关联模块1060,适于在运行游戏内容的过程中,当切换游戏场景时,将所述游戏变速参数与当前游戏场景标识进行关联存储;。
对于上述装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的实现游戏变速设备中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
本发明公开了A1、一种实现游戏变速的方法,包括:
当IE内核的浏览器触发游戏页面加载事件后,通过浏览器辅助对象加载游戏变速工具条;
根据用户对游戏变速工具条的触发操作,获取游戏变速参数;
拦截当前运行游戏内容的第一进程调用的系统时间获取函数;
根据所述游戏变速参数,将时间获取函数获取的当前时间修改为与所述变速参数相匹配的相对时间;
将所述相对时间返回给第一进程,由所述第一进程根据所述相对时间获取游戏内容进行加载。
A2、如A1所述的方法,其特征在于,所述当IE内核的浏览器的当前游戏页面触发页面加载事件后,通过浏览器辅助对象加载游戏变速工具条包括:
当IE内核的浏览器的当前页面触发页面加载事件时,生成消息通知;其中,所述消息通知中携带有所述页面加载事件信息;
在预置函数的指示下,将所述消息通知通过所述IE内核的浏览器中的设定接口发送至独立于浏览器的应用程序;
接收所述独立于浏览器的应用程序返回的调用请求;所述调用请求为当所述独立于浏览器的应用程序判断所述页面加载事件为游戏页面加载事件时返回;
响应所述调用请求,调用动态链接库DLL,并通过所述DLL在所述IE内核的浏览器中加载设定的游戏变速工具条;
其中,所述预置函数和所述DLL由所述独立于浏览器的应用程序通过浏览器辅助对象注入所述IE内核的浏览器,以使所述IE内核的浏览器获取并加载所述预置函数和所述DLL。
A3、如A2所述的方法,其特征在于,所述页面加载事件信息包括:所述当前游戏页面的统一资源定位符URL和标题。
A4、如A3所述的方法,其特征在于,所述接收所述独立于浏览器的应用程序返回的调用请求,包括:
接收所述独立于浏览器的应用程序在接收到所述消息通知,并确定所述消息通知中的URL和标题与预置标准信息相匹配之后返回的调用请求;其中,所述预置标准信息对应指示的页面是游戏页面。
A5、如A2所述,其特征在于,在所述生成消息通知的步骤之后,所述方法还包括:
确定所述当前游戏页面的加载状态;其中,所述加载状态包括:加载请求状态、访问完成状态、文档建立状态和页面加载完成状态。
A6、如A5所述的方法,其特征在于,所述在预置函数的指示下,将所述消息通知通过所述IE内核的浏览器中的设定接口发送至独立于浏览器的应用程序,包括:
当确定所述当前游戏页面的加载状态为访问完成状态时,在预置函数的指示下,将所述消息通知通过所述IE内核的浏览器中的设定接口发送至独立于浏览器的应用程序。
A7、如A2所述的方法,其特征在于,所述预置函数和所述DLL由所述独立于浏览器的应用程序通过浏览器辅助对象注入所述IE内核的浏览器,包括:
所述预置函数和所述DLL由网盾通过浏览器辅助对象注入所述IE内核的浏览器。
A8、如A2所述的方法,其特征在于,所述预置函数和所述DLL由所述独立于浏览器的应用程序通过浏览器辅助对象注入所述IE内核的浏览器,包括:
所述预置函数和所述DLL由所述独立于浏览器的应用程序通过浏览器辅助对象注入至所述IE内核的浏览器的主进程中。
A9、如A1所述的方法,其特征在于,当IE内核的浏览器触发游戏页面加载事件后,还包括:
判断当前游戏页面是否在游戏页面白名单中,如果在,则通过浏览器辅助对象加载游戏变速工具条。
A10、如A1所述的方法,其特征在于,所述拦截当前运行游戏内容的第一进程调用的系统时间获取函数包括:
判断当前系统的位数,当系统为32位时,拦截系统时间获取函数timegettime;当系统为64位时,拦截系统时间获取函数QueryPerformanceCounter。
A11、如A1所述的方法,其特征在于,还包括:
将所述游戏变速参数与当前用户标识进行关联存储;当以所述用户标识再次触发游戏页面加载事件后,在通过浏览器辅助对象加载游戏变速工具条时加载所述与用户标识对应的游戏变速参数;
进一步的,所述根据用户对游戏变速工具条的触发操作,获取游戏变速参数包括:
根据用户对游戏变速工具条的触发操作,获取记录的与当前用户标识对应的游戏变速参数。
A12、如A1所述的方法,其特征在于,还包括:
将所述游戏变速参数与当前游戏页面的对应的游戏服务器标识进行关联存储;当以所述用户标识再次触发游戏页面加载事件后,获取所述游戏页面的服务器标识,在通过浏览器辅助对象加载游戏变速工具条时加载所述与所述服务器标识对应的游戏变速参数;
进一步的,所述根据用户对游戏变速工具条的触发操作,获取游戏变速参数包括:
根据用户对游戏变速工具条的触发操作,获取记录的与所述服务器标识对应的游戏变速参数。
A13、如A1所述的方法,其特征在于,还包括:
在运行游戏内容的过程中,当切换游戏场景时,将所述游戏变速参数与当前游戏场景标识进行关联存储;当以所述用户标识再次触发游戏页面加载事件后,在通过浏览器辅助对象加载游戏变速工具条时加载所述游戏变速参数与各游戏场景标识的关联关系;
进一步的,所述根据用户对游戏变速工具条的触发操作,获取游戏变速参数包括:
在所述触发操作的时刻,获取当前游戏场景标识,根据游戏场景标识获取对应的游戏变速参数;当游戏运行过程中,如果切换游戏场景,则自动获取切换后的游戏场景标识,根据游戏场景标识获取对应的游戏变速参数。
A14、如A1所述的方法,其特征在于,所述根据所述游戏变速参数,将时间获取函数获取的当前时间修改为与所述变速参数相匹配的相对时间包括:
当所述游戏变速参数为加快游戏速度时,根据加快的速度的倍数,将所述当前时间修改为在当前时间之前的与所述倍数匹配的第一相对时间;
当所述游戏变速参数为减缓游戏速度时,根据减缓的速度的倍数,将所述当前时间修改为在当前时间之后的与所述倍数匹配的第二相对时间。
本发明公开了B15、一种实现游戏变速的装置,包括:
工具条加载模块,适于当IE内核的浏览器触发游戏页面加载事件后,通过浏览器辅助对象加载游戏变速工具条;
参数获取模块,适于根据用户对游戏变速工具条的触发操作,获取游戏变速参数;
时间拦截模块,适于拦截当前运行游戏内容的第一进程调用的系统时间获取函数;
时间修改模块,适于根据所述游戏变速参数,将时间获取函数获取的当前时间修改为与所述变速参数相匹配的相对时间;
内容加载模块,适于将所述相对时间返回给第一进程,由所述第一进程根据所述相对时间获取游戏内容进行加载。
B16、如B15所述的制作,其特征在于,所述工具条加载模块包括:
生成模块,适于当监控到IE内核的浏览器的触发游戏页面加载事件时,生成消息通知;其中,所述消息通知中携带有所述页游戏面加载事件信息;
发送模块,适于在预置函数的指示下,将所述消息通知通过所述IE内核的浏览器中的设定接口发送至独立于浏览器的应用程序;
接收模块,适于接收所述独立于浏览器的应用程序返回的调用请求;
调用加载模块,适于响应所述调用请求,调用动态链接库DLL,并通过所述DLL在所述IE内核的浏览器中加载设定的游戏变速工具条;
其中,所述预置函数和所述DLL由所述独立于浏览器的应用程序通过浏览器辅助对象注入所述IE内核的浏览器,以使所述IE内核的浏览器获取并加载所述预置函数和所述DLL。
B17、如B16所述的装置,其特征在于,所述页面加载事件信息包括:所述当前游戏页面的统一资源定位符URL和标题。
B18、如B17所述的装置,其特征在于,所述接收模块包括:
所述接收模块,具体适于接收所述独立于浏览器的应用程序在接收到所述消息通知,并确定所述消息通知中的URL和标题与预置标准信息相匹配之后返回的调用请求;其中,所述预置标准信息对应指示的页面是游戏页面。
B19、如B16所述装置,其特征在于,所述装置还包括:
状态确定模块,适于确定所述当前游戏页面的加载状态;其中,所述加载状态包括:加载请求状态、访问完成状态、文档建立状态和页面加载完成状态。
B20、如B19所述的方装置,其特征在于,
所述发送模块,具体适于当确定所述当前游戏页面的加载状态为访问完成状态时,在预置函数的指示下,将所述消息通知通过所述IE内核的浏览器中的设定接口发送至独立于浏览器的应用程序。
B21、如B16所述的装置,其特征在于,所述调用加载模块包括:
第一注入模块,适于所述预置函数和所述DLL由网盾通过浏览器辅助对象注入所述IE内核的浏览器。
B22、如B16所述的装置,其特征在于,所述预置函数和所述DLL由所述独立于浏览器的应用程序通过浏览器辅助对象注入所述IE内核的浏览器,包括:
第二注入模块,适于所述预置函数和所述DLL由所述独立于浏览器的应用程序通过浏览器辅助对象注入至所述IE内核的浏览器的主进程中。
B23、如B15所述的装置,其特征在于,还包括:
页面判断模块,适于判断当前游戏页面是否在游戏页面白名单中,如果在,则通过浏览器辅助对象加载游戏变速工具条。
B24、如B15所述的装置,其特征在于,所述时间拦截模块包括:
拦截判断模块,适于判断当前系统的位数,当系统为32位时,拦截系统时间获取函数timegettime;当系统为64位时,拦截系统时间获取函数QueryPerformanceCounter。
B25、如B15所述的装置,其特征在于,还包括:
第一关联模块,适于将所述游戏变速参数与当前用户标识进行关联存储;
进一步的,所述工具条加载模块包括:
第一工具条加载模块,适于当以所述用户标识再次触发游戏页面加载事件后,在通过浏览器辅助对象加载游戏变速工具条时加载所述与用户标识对应的游戏变速参数;
进一步的,所述参数获取模块包括:
第一参数获取模块,适于根据用户对游戏变速工具条的触发操作,获取记录的与当前用户标识对应的游戏变速参数。
B26、如B15所述的装置,其特征在于,还包括:
第二关联模块,适于将所述游戏变速参数与当前游戏页面的对应的游戏服务器标识进行关联存储;
进一步的,所述工具条加载模块包括:
第二工具条加载模块,适于当以所述用户标识再次触发游戏页面加载事件后,获取所述游戏页面的服务器标识,在通过浏览器辅助对象加载游戏变速工具条时加载所述与所述服务器标识对应的游戏变速参数;
进一步的,所述参数获取模块包括:
第二参数获取模块,适于根据用户对游戏变速工具条的触发操作,获取记录的与所述服务器标识对应的游戏变速参数。
B27、如B15所述的装置,其特征在于,还包括:
第三关联模块,适于在运行游戏内容的过程中,当切换游戏场景时,将所述游戏变速参数与当前游戏场景标识进行关联存储;
进一步的,所述工具条加载模块包括:
第三工具条加载模块,适于当以所述用户标识再次触发游戏页面加载事件后,在通过浏览器辅助对象加载游戏变速工具条时加载所述游戏变速参数与各游戏场景标识的关联关系;
进一步的,所述参数获取模块包括:
第三参数获取模块,适于在所述触发操作的时刻,获取当前游戏场景标识,根据游戏场景标识获取对应的游戏变速参数;当游戏运行过程中,如果切换游戏场景,则自动获取切换后的游戏场景标识,根据游戏场景标识获取对应的游戏变速参数。
B28、如B15所述的装置,其特征在于,所述时间修改模块包括:
第一修改模块,适于当所述游戏变速参数为加快游戏速度时,根据加快的速度的倍数,将所述当前时间修改为在当前时间之前的与所述倍数匹配的第一相对时间;
第二修改模块,适于当所述游戏变速参数为减缓游戏速度时,根据减缓的速度的倍数,将所述当前时间修改为在当前时间之后的与所述倍数匹配的第二相对时间。