CN111001162A - 游戏的换肤方法及装置、存储介质、处理器 - Google Patents
游戏的换肤方法及装置、存储介质、处理器 Download PDFInfo
- Publication number
- CN111001162A CN111001162A CN201911253118.4A CN201911253118A CN111001162A CN 111001162 A CN111001162 A CN 111001162A CN 201911253118 A CN201911253118 A CN 201911253118A CN 111001162 A CN111001162 A CN 111001162A
- Authority
- CN
- China
- Prior art keywords
- skin
- resource
- game
- skin resource
- package
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Images
Classifications
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/70—Game security or game management aspects
- A63F13/77—Game security or game management aspects involving data related to game devices or game servers, e.g. configuration data, software version or amount of memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Business, Economics & Management (AREA)
- Computer Security & Cryptography (AREA)
- General Business, Economics & Management (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了一种游戏的换肤方法及装置、存储介质、处理器。其中,该方法包括:响应用户输入的游戏请求,并发送游戏请求至游戏服务器;接收游戏服务器发送的与游戏请求对应的目标游戏的皮肤资源包特征信息;根据皮肤资源包特征信息向资源服务器请求对应的皮肤资源包;接收并加载资源服务器发送的皮肤资源包。本发明解决了相关技术中游戏设备随着小游戏玩法的增多,游戏服务器中内置大量的资源,导致严重影响游戏设备的使用的技术问题。
Description
技术领域
本发明涉及计算机网络技术领域,具体而言,涉及一种游戏的换肤方法及装置、存储介质、处理器。
背景技术
为了增进互联网直播类型APP中主播和用户的互动性,一般会在“直播间”内引入了“小游戏”这一功能模块。图1是根据现有技术的小游戏的界面的示意图,如图1所示“小游戏”模块可以包括:队伍席、连麦视频区、胜负结果展示区、游戏操作区域(实际是一个浏览器,游戏内容由网页提供)等几个部分的UI显示。其中,队伍席、连麦视频区、胜负结果展示区等由移动端原生组件开发。而游戏操作区域,移动端只负责提供一个浏览器区域,具体的玩法由页面负责展示,具体的玩法页面由服务端灵活指定。
对于很多小游戏,随着玩家的需求以及科技的进步,会不断地升级,针对一个小游戏,会存在多个版本,而对于小游戏的初始版本,即,第一版,一般不够成熟,玩法比较少;并且,基于高效开发以及实现方便的考虑,会将小游戏所有UI控件资源全部内置与APP中。虽然,小游戏各个模块的各个UI控件资源数量较多,大于会有20多张,甚至更多的切图,然而却只有一套资源切图,APP包体增大不是很多,包体大小处于可以接收的范围之内;但是,随着小游戏版本的不断升级迭代中,要求支持多种玩法,不仅局限于一种玩法,例如,会在原有基础上扩充其他玩法。此时,若仍然对新扩充的玩法采用内置资源于APP内的做法便不合时宜了,因为每增加一个玩法,APP包体就需要增大一套资源图的大小,若玩法类型扩充过多,APP包体大小便无法控制了,这就非常影响用户下载安装APP的体验。而且,如果扩充玩法时使用APP内置资源的方式,只有更新了最新的客户端版本才能看到最新的玩法皮肤,对于未更新至最新版本客户端的用户则无法获取新增玩法的皮肤资源显示,这对于旧版本客户端用户体验也是非常差的。
针对上述相关技术中游戏设备随着小游戏玩法的增多,游戏服务器中内置大量的资源,导致严重影响游戏设备的使用的问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种游戏的换肤方法及装置、存储介质、处理器,以至少解决相关技术中游戏设备随着小游戏玩法的增多,游戏服务器中内置大量的资源,导致严重影响游戏设备的使用的技术问题。
根据本发明实施例的一个方面,提供了一种游戏的换肤方法,包括:响应用户输入的游戏请求,并发送所述游戏请求至游戏服务器;接收所述游戏服务器发送的与所述游戏请求对应的目标游戏的皮肤资源包特征信息;根据所述皮肤资源包特征信息向资源服务器请求对应的皮肤资源包;接收并加载所述资源服务器发送的皮肤资源包。
可选地,所述皮肤资源包特征信息包括:所述皮肤资源包的标识,所述皮肤资源包的版本号,所述皮肤资源包的存储路径。
可选地,在根据所述皮肤资源包特征信息向资源服务器请求对应的皮肤资源包之前,该游戏的换肤方法还包括:检测预定资源文件目录中是否存在与所述皮肤资源包特征信息对应的所述皮肤资源包;若是,根据所述皮肤资源包特征信息从所述预定资源文件目录中获取所述皮肤资源包。
可选地,所述预定资源文件目录的目录结构包括以下至少之一:皮肤资源包的标识,皮肤资源包的版本号。
可选地,根据所述皮肤资源包特征信息向资源服务器请求对应的皮肤资源包包括:根据所述皮肤资源包特征信息确定所述皮肤资源包的存储路径;根据所述皮肤资源包的存储路径向所述资源服务器请求所述皮肤资源包。
可选地,接收并加载所述资源服务器发送的皮肤资源包包括:将所述资源服务器发送的所述皮肤资源包存储至预定资源文件目录中;对存储至所述预定资源文件目录中对所述皮肤资源包进行解压,得到解压后的所述皮肤资源包;加载解压后的所述皮肤资源包。
可选地,对存储至所述预定资源文件目录中对所述皮肤资源包进行解压包括:根据解压结果判断是否对所述皮肤资源进行成功解压,得到判断结果;在所述判断结果表示对所述皮肤资源进行成功解压的情况下,对解压后的所述皮肤资源包进行校验;在所述判断结果表示对所述皮肤资源进行不成功解压的情况下,再次根据所述皮肤资源包的存储路径向所述资源服务器请求所述皮肤资源包,并对再次请求的所述皮肤资源包在所述预定资源文件目录进行解压。
可选地,对解压后的所述皮肤资源包进行校验包括:确定所述游戏请求对应的预定游戏的用户界面中的所有控件;检测解压后的所述皮肤资源包中是否存在针对所述所有控件中的每个控件的皮肤资源,得到检测结果;在所述检测结果表示解析后的所述皮肤资源包中存在针对所述所有控件中的每个控件的皮肤资源,则校验成功;在所述检测结果表示解析后的所述皮肤资源包中不存在针对所述所有控件中的每个控件的皮肤资源,则校验失败,重新从所述资源服务器下载所述皮肤资源包。
可选地,加载所述资源服务器发送的皮肤资源包包括:利用所述皮肤资源包中的皮肤切图替换初始皮肤资源的皮肤切图;利用所述皮肤资源包中的字体颜色以及背景颜色替换所述初始皮肤资源中的字体颜色以及背景颜色。
根据本发明实施例的另外一个方面,还提供了一种游戏的换肤装置,包括:响应单元,用于响应用户输入的游戏请求,并发送所述游戏请求至游戏服务器;接收单元,用于接收所述游戏服务器发送的与所述游戏请求对应的目标游戏的皮肤资源包特征信息;请求单元,用于根据所述皮肤资源包特征信息向资源服务器请求对应的皮肤资源包;处理单元,用于接收并加载所述资源服务器发送的皮肤资源包。
可选地,所述皮肤资源包特征信息包括:所述皮肤资源包的标识,所述皮肤资源包的版本号,所述皮肤资源包的存储路径。
可选地,该游戏的换肤装置还包括:检测单元,用于在根据所述皮肤资源包特征信息向资源服务器请求对应的皮肤资源包之前,检测预定资源文件目录中是否存在与所述皮肤资源包特征信息对应的所述皮肤资源包;获取单元,用于检测预定资源文件目录中存在与所述皮肤资源包特征信息对应的所述皮肤资源包时,根据所述皮肤资源包特征信息从所述预定资源文件目录中获取所述皮肤资源包。
可选地,所述预定资源文件目录的目录结构包括以下至少之一:皮肤资源包的标识,皮肤资源包的版本号。
可选地,所述请求单元包括:确定模块,用于根据所述皮肤资源包特征信息确定所述皮肤资源包的存储路径;请求模块,用于根据所述皮肤资源包的存储路径向所述资源服务器请求所述皮肤资源包。
可选地,所述处理单元包括:存储模块,用于将所述资源服务器发送的所述皮肤资源包存储至预定资源文件目录中;解压模块,用于对存储至所述预定资源文件目录中对所述皮肤资源包进行解压,得到解压后的所述皮肤资源包;加载模块,用于加载解压后的所述皮肤资源包。
可选地,所述解压模块包括:判断子模块,用于根据解压结果判断是否对所述皮肤资源进行成功解压,得到判断结果;校验子模块,用于在所述判断结果表示对所述皮肤资源进行成功解压的情况下,对解压后的所述皮肤资源包进行校验;解压子模块,用于在所述判断结果表示对所述皮肤资源进行不成功解压的情况下,再次根据所述皮肤资源包的存储路径向所述资源服务器请求所述皮肤资源包,并对再次请求的所述皮肤资源包在所述预定资源文件目录进行解压。
可选地,所述校验子模块包括:第一确定子模块,用于确定所述游戏请求对应的预定游戏的用户界面中的所有控件;获取子模块,用于检测解压后的所述皮肤资源包中是否存在针对所述所有控件中的每个控件的皮肤资源,得到检测结果;第二确定子模块,用于在所述检测结果表示解析后的所述皮肤资源包中存在针对所述所有控件中的每个控件的皮肤资源,则校验成功;下载子模块,用于在所述检测结果表示解析后的所述皮肤资源包中不存在针对所述所有控件中的每个控件的皮肤资源,则校验失败,重新从所述资源服务器下载所述皮肤资源包。
可选地,所述处理单元包括:第一替换模块,用于利用所述皮肤资源包中的皮肤切图替换初始皮肤资源的皮肤切图;第二替换模块,用于利用所述皮肤资源包中的字体颜色以及背景颜色替换所述初始皮肤资源中的字体颜色以及背景颜色。
根据本发明实施例的另外一个方面,还提供了一种存储介质,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行上述中任意一项所述的游戏的换肤方法。
根据本发明实施例的另外一个方面,还提供了一种处理器,所述处理器用于运行程序,其中,所述程序运行时执行上述中任意一项所述的游戏的换肤方法。
在本发明实施例中,采用响应用户输入的游戏请求,并发送游戏请求至游戏服务器;接收游戏服务器发送的与游戏请求对应的目标游戏的皮肤资源包特征信息;根据皮肤资源包特征信息向资源服务器请求对应的皮肤资源包;接收并加载资源服务器发送的皮肤资源包的方式进行游戏皮肤资源的替换,通过本发明实施例提供的游戏的换肤方法可以实现客户端主动获取预定游戏的替换皮肤资源,并利用替换皮肤资源替换预定游戏的初始皮肤资源的目的,从而提升了游戏玩家的体验的技术效果,进而解决了相关技术中游戏设备随着小游戏玩法的增多,游戏服务器中内置大量的资源,导致严重影响游戏设备的使用的技术问题。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据现有技术的小游戏的界面的示意图;
图2是根据本发明实施例的游戏的换肤方法的流程图;
图3是根据本发明实施例的游戏的换肤方法的框架图;
图4是根据本发明实施例的可选的游戏的换肤方法的流程图;
图5是根据本发明实施例的游戏的换肤装置的示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
实施例1
根据本发明实施例,提供了一种游戏的换肤方法的方法实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
图2是根据本发明实施例的游戏的换肤方法的流程图,如图2所示,该游戏的换肤方法包括如下步骤:
步骤S202,响应用户输入的游戏请求,并发送游戏请求至游戏服务器。其中,游戏请求是在预定游戏处于启动状态时从客户端获取的消息,游戏请求中携带有预定游戏的皮肤资源包特征信息。
可选的,根据本发明上述实施例,上述游戏请求可以为:游戏客户端获取的新一轮游戏开始的消息。
可选的,在上述实施例中,游戏请求,可以通过以下任意一种方式来获取:游戏玩家通过主动查询方式发起的请求,游戏玩家通过被动广播的方式获取的游戏请求。
具体地,游戏玩家在直播间中可以通过主动查找或者被动广播的方式从游戏服务器获取新一轮消息开始的消息。
具体的,上述游戏请求中携带有目标游戏(例如,打地鼠、头脑吃鸡等)玩法的皮肤资源包特征信息。这里的玩法是指目标游戏的当前玩法。
可选的,上述皮肤资源包为包含目标游戏的当前玩法的皮肤资源切图、关于原生字体或背景颜色的plist列表文件。其中,一个玩法一般仅对应一套皮肤资源包,每个皮肤资源包中包含了该玩法对应的一套皮肤切图,这里可以包括:玩家头像显示框的形状、颜色等,游戏结果展示区域的形状、颜色、字体及展示方式,视频区域边框色系、不同功能的按键的颜色、形状及样式等。
即,在本发明实施例中,皮肤并不是指游戏内的元素(例如,游戏角色),而是指诸如玩家头像显示框、结果展示区域等的皮肤。需要注意的是,该皮肤与游戏内容的风格是匹配的。因此,皮肤资源包主要包括:头像框、结果展示区、队伍席、评论区域等通用用户界面;并不涉及游戏内容本身。
步骤S204,接收游戏服务器发送的与游戏请求对应的目标游戏的皮肤资源包特征信息。
在一种可选的实施例中,皮肤资源包特征信息可以包括:皮肤资源包的标识,皮肤资源包的版本号,皮肤资源包的存储路径。
可选的,皮肤资源包的标识可以是以下一种或几种的组合:数字、字母、文字;皮肤资源包的版本号用于表示目标游戏的当前玩法的皮肤资源包版本标识;皮肤资源包的存储路径用于表示上述目标游戏的皮肤资源包的资源位置,在预定资源目录文件中不存在以皮肤资源包的标识或版本号为目录结构的皮肤资源包的请,可以通过该存储路径在资源服务器中查找到该皮肤资源包。
可选的,上述预定资源文件目录是目标游戏的皮肤资源包在游戏客户端的存储位置,即,皮肤资源包被下载到游戏客户端后,会被解压至预定资源文件目中。
步骤S206,根据皮肤资源包特征信息向资源服务器请求对应的皮肤资源包。
由于上述游戏请求中携带有目标游戏的皮肤资源包的特征信息,并且该皮肤资源包特征信息中包括以下信息:皮肤资源包的标识,皮肤资源包的版本号,皮肤资源包的存储路径。那么可以基于上述皮肤资源包特征信息从资源服务器中获取皮肤资源包。
步骤S208,接收并加载资源服务器发送的皮肤资源包。
可选的,在游戏设备的游戏服务器中目标游戏在启动过程中默认加载的一套内置通用皮肤,即,初始皮肤资源,该初始皮肤资源是存储在客户端本地的,通用的皮肤,可以在远程皮肤加载失败时,仍有一套可使用的皮肤资源展示。
可选的,当目标游戏的用户界面UI需要展示时,会先用游戏设备上的通用皮肤(即,初始皮肤资源)进行展示,由于初始皮肤资源是内置在游戏设备本地的,在目标游戏启动时可以立即展示,之后可以再根据当前游戏的皮肤资源包表示执行下载、解压、校验以及换肤操作。
在一种应用场景中,当前的游戏是打地鼠游戏,需要根据皮肤资源包特征信息向资源服务器请求对应的皮肤资源包,当接收到资源服务器反馈的皮肤资源包后,会利用皮肤资源包中的一套地鼠主体的用户界面提出打地鼠游戏在启动过程中使用的初始皮肤资源或者是当前的皮肤资源,例如,头像框、结果展示区、队伍席、评论区等;当当前的游戏是雷霆飞机游戏,则可以在接收到资源服务器反馈的皮肤资源包后,利用一套飞机主体的用户界面UI替换当前的飞机主体的用户界面UI。
由上述可知,在本发明上述实施例1中记载的方案中,可以响应用户输入的游戏请求,并发送游戏请求至游戏服务器;接收游戏服务器发送的与游戏请求对应的目标游戏的皮肤资源包特征信息;再根据皮肤资源包特征信息向资源服务器请求对应的皮肤资源包;以及接收并加载资源服务器发送的皮肤资源包,实现在游戏客户端主动获取目标游戏的替换皮肤资源,并利用替换皮肤资源替换目标游戏的初始皮肤资源的目的。
容易注意到,游戏客户端可以响应游戏者可以通过主动查询或是被动广播的方式发起的游戏请求,并且该游戏请求中携带有目标游戏的皮肤资源包特征信息,例如,皮肤资源包的标识,皮肤资源包的版本号,皮肤资源包的存储路径,可以基于该皮肤资源包特征信息从资源服务器获取皮肤资源包,并利用皮肤资源包替换初始皮肤资源。因此,通过本发明实施例1所提供的方案,可以实现实时对客户端的预定游戏进行皮肤资源的更新,以保证目标游戏的皮肤资源是最新的目的,有效提升了用户的游戏体验。
由此,本发明实施例1提供的上述方案解决了相关技术中游戏设备随着小游戏玩法的增多,游戏服务器中内置大量的资源,导致严重影响游戏设备的使用的技术问题。
此处需要说明的是,为了实现上述方案,针对目标游戏的多个玩法,需要预先提供好多个玩法皮肤资源包上传至资源服务器,每个皮肤资源包中均包含一套该玩法的皮肤资源切图以及一个关于原生字体或背景颜色的plist列表文件,切图文件名皆对应于游戏模块中对应的UI控件,plist列表文件中的key也对应于游戏模块中对应的特定标签颜色或背景颜色。
其中,针对每个玩法皮肤资源包中包含了该玩法对应的一套皮肤切图。例如,有3个小游戏:打地鼠、头脑吃鸡、连连看。从横向来看,需要提供3个皮肤资源包:dishu.zip、chiji.zip、lianlian.zip;每个皮肤资源包中都包含同名的3个切图:left_video_border.jpg、right_video_border.jpg、time_label_bg_jpg。从纵向来看,对于每一个玩法来说,以打地鼠为例,其皮肤资源包又是分版本的,比如,version1版本的dishu.zip、version2版本的dishu.zip、version3版本的dishu.zip。为了应对皮肤资源包资源配错或者资源包失效等情况,因此对皮肤资源包增加了皮肤版本设置,若针对指定“玩法”出现人为资源包配置出错的情况该系统也提供了补救措施,即新增新的皮肤包并提供一个高的版本号,来让游戏端执行丢弃该玩法旧皮肤包而下载更换新的皮肤包的逻辑。
需要说明的是,在根据皮肤资源包特征信息向资源服务器请求对应的皮肤资源包之前,需检测游戏客户端本地的预定资源文件目录中是否存在与皮肤资源包特征信息,若是,则根据对应的皮肤资源包特征信息从预定资源文件目录中获取皮肤资源包,即,游戏客户端首先判断本地是否有以游戏请求的皮肤资源包特征信息的皮肤资源包的标识和皮肤资源包的版本号为目录结构的预定资源文件目录;在判断结果为是的情况下,从预定资源文件目录中获取皮肤资源包;若否,则根据皮肤资源包特征信息从资源服务器中下载与皮肤资源包特征信息对应的皮肤资源包。下面进行详细说明。
根据本发明上述实施例,一个方面,检测游戏客户端本地的预定资源文件目录中存在与皮肤资源包特征信息时,在根据皮肤资源包特征信息向资源服务器请求对应的皮肤资源包之前,该游戏的换肤方法还可以包括:检测预定资源文件目录中是否存在与皮肤资源包特征信息对应的皮肤资源包;若是,根据皮肤资源包特征信息从预定资源文件目录中获取皮肤资源包。
其中,预定资源文件目录的目录结构可以包括以下至少之一:皮肤资源包的标识,皮肤资源包的版本号。
在一种可选的实施例中,根据皮肤资源包特征信息向资源服务器请求对应的皮肤资源包可以包括:根据皮肤资源包特征信息确定皮肤资源包的存储路径;根据皮肤资源包的存储路径向资源服务器请求皮肤资源包。
在一种可选的方案中,在确定游戏端本地不存在以目标游戏的皮肤资源包的标识和版本号为目标结构的预定资源文件目录的场景中,可以基于皮肤资源包的存储路径从资源服务器中下载皮肤资源包,并将皮肤资源包存储至资源文件目录中,从而将皮肤资源包存储至游戏客户端本地,以便游戏客户端进行皮肤资源的更新。
具体的,在将皮肤资源包存储至预定资源文件目录中之前,该游戏的换肤方法还可以包括:在游戏客户端本地创建预定资源文件目录。由于皮肤资源包在被下载到本地后,需要存储文件。因此,在将皮肤资源包存储至资源文件目录中之前,需要在游戏客户端本地创建预定资源文件目录,以存储皮肤资源包以及对皮肤资源包解压后的皮肤资源。
即,当执行资源下载逻辑的时,当资源(即,皮肤资源包)下载完毕后,便会建立一个以皮肤资源包的标识和版本号为目录结构的预定资源文件目录,并将下载完成的资源包解压至该预定资源文件目录中。
根据本发明上述实施例,在步骤S208中,接收并加载资源服务器发送的皮肤资源包可以包括:将资源服务器发送的皮肤资源包存储至预定资源文件目录中;对存储至预定资源文件目录中对皮肤资源包进行解压,得到解压后的皮肤资源包;加载解压后的皮肤资源包。
在一种可选的实施例中,对存储至预定资源文件目录中对皮肤资源包进行解压可以包括:根据解压结果判断是否对皮肤资源进行成功解压,得到判断结果;在判断结果表示对皮肤资源进行成功解压的情况下,对解压后的皮肤资源包进行校验;在判断结果表示对皮肤资源进行不成功解压的情况下,再次根据皮肤资源包的存储路径向资源服务器请求皮肤资源包,并对再次请求的皮肤资源包在预定资源文件目录进行解压。
即,将皮肤资源包的皮肤资源存储至预定资源文件目录中包括以下之一:如果从皮肤资源包中成功解压出皮肤资源,则将皮肤资源存储至预定资源文件目录中;如果未从皮肤资源包中成功解压出皮肤资源,则重新从资源服务器中下载皮肤资源包,并对皮肤资源包再次执行解压操作,直到得到皮肤资源。在该实施例中,可以保证得到能够成功解压出皮肤资源的皮肤资源包,进而可以保证能够有皮肤资源对初始皮肤资源进行替换。
在一种可选的实施例中,根据上述实施例,对解压后的皮肤资源包进行校验可以包括:确定游戏请求对应的预定游戏的用户界面中的所有控件;检测解压后的皮肤资源包中是否存在针对所有控件中的每个控件的皮肤资源,得到检测结果;在检测结果表示解析后的皮肤资源包中存在针对所有控件中的每个控件的皮肤资源,则校验成功;在检测结果表示解析后的皮肤资源包中不存在针对所有控件中的每个控件的皮肤资源,则校验失败,重新从资源服务器下载皮肤资源包。
具体的,校验逻辑包括以下两部分:对plist中配置文件中的每一项的进行校验,对资源文件目录中整套资源切图进行校验。
此处需要说明的是,校验原则是确保当前预定有效所有UI控件针对当前这一玩法均有可更换的皮肤资源。若皮肤资源包中缺少某个资源时,将会导致无法通过校验逻辑。
另外,若已经通过校验逻辑,便可以将资源加载进内存执行换肤逻辑,包括资源切图的替换以及文字颜色或背景色更新为plist中的指定设置。这样,整个预定游戏动态皮肤更换流程便得以完成。
根据本发明上述实施例中,在步骤S208中,加载资源服务器发送的皮肤资源包可以包括:利用皮肤资源包中的皮肤切图替换初始皮肤资源的皮肤切图;利用皮肤资源包中的字体颜色以及背景颜色替换初始皮肤资源中的字体颜色以及背景颜色。
即,为了保证皮肤资源包中的资源可以对应于用户界面中的所有控件,即,所有控件均存在更新资源的情况下,表明该皮肤资源包是一套完整的资源,可以用于对目标游戏的初始皮肤资源进行替换,即,加载皮肤资源包。
下面结合附图对本发明上述实施例进行说明。
图3是根据本发明实施例的游戏的换肤方法的框架图,下面以图3所述的场景为例,对本发明上述实施例进行详细说明。在该场景中,游戏服务器为第一服务器,游戏客户端为终端本地,资源服务器为第二服务器。如图3所示,游戏客户端从游戏服务器端获取游戏开始消息,其中,游戏开始消息中携带有目标游戏的皮肤资源包特征信息:皮肤资源包的标识,皮肤资源包的版本号,皮肤资源包的存储路径;游戏客户端向资源服务器发送请求资源地址,然后,资源服务器将皮肤资源包发送至游戏客户端,即,游戏客户端从资源服务器下载皮肤资源包。图3中示出了游戏服务器端、资源服务器端以及客户端三端之间消息交互的路径,以客户端为中心,利用从游戏服务器获取的皮肤资源包特征信息从资源服务器获取皮肤资源包,以对目标游戏在启动过程中加载的初始皮肤资源进行替换。
图4是根据本发明实施例的可选的游戏的换肤方法的流程图,下面以图4所述的场景为例对本发明实施例提供的游戏的换肤方法进行详细说明。如图4所示,当游戏客户端收到游戏服务器玩法开启消息(即,游戏开始消息),判断本地(即,游戏客户端)是否已经有以该玩法资源名/该玩法资源版本命名的文件目录(即,预定资源文件目录),在判断结果为是的情况下,校验预定资源文件目录中切图资源名称以及plist文件中的配置项是否齐全,在判断结果为否的情况下,判断是否超过重试次数阈值,若是,则更根据该玩法资源地址下载皮肤资源包至本地,若否结束流程;在将玩法资源地址下载皮肤资源包至本地下载成功的情况下,将玩法资源解压至本地以该玩法资源名/该玩法资源版本命名的文件目录,若否则从资源服务器重新下载皮肤资源包,并将重试次数加1;接下来,判断是否解压成功,若是,则校验预定资源文件目录中切图资源名称以及plist文件中的配置项是否齐全,若否则从资源服务器重新下载资源包,并将重试次数加1;在上述校验结果表示校验成功的情况下,执行小游戏皮肤UI空间换肤逻辑;在上述校验结果表示校验失败的情况下,则从资源服务器重新下载皮肤资源包,并将重试次数加1。
通过本申请提供的游戏的换肤方法,一方面,在APP中只是内置一套默认皮肤资源而已,可以很好地控制住包体的大小。另一方面,由于采用了“远程懒加载”,减少了用户不必要的网络流量传输。再者,也可以突破“更新版本才能用”的APP升级限制,对于新旧版本客户端都具有良好的适用性。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例1的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本申请各个实施例所述的方法。
实施例2
根据本发明实施例的另外一个方面,还提供了一种用于执行本发明实施例1的游戏的换肤方法的装置实施例,图5是根据本发明实施例的游戏的换肤装置的示意图,如图5所示,该游戏的换肤装置包括:响应单元51,接收单元53,请求单元55以及处理单元57。下面对该游戏的换肤装置进行详细说明。
其中,响应单元51,用于响应用户输入的游戏请求,并发送游戏请求至游戏服务器。
接收单元53,用于接收游戏服务器发送的与游戏请求对应的目标游戏的皮肤资源包特征信息。
请求单元55,用于根据皮肤资源包特征信息向资源服务器请求对应的皮肤资源包。
处理单元57,用于接收并加载资源服务器发送的皮肤资源包。
此处需要说明的是,上述响应单元51,接收单元53,请求单元55以及处理单元57对应于实施例1中的步骤S202至步骤S208,四个单元与对应的步骤所实现的实例和应用场景相同,但不限于上述实施例一所公开的内容。需要说明的是,上述模块作为装置的一部分可以在诸如一组计算机可执行指令的计算机系统中执行。
由上述可知,在本发明实施例2中记载的方案中,可以利用响应单元响应用户输入的游戏请求,并发送游戏请求至游戏服务器;然后利用接收单元接收游戏服务器发送的与游戏请求对应的目标游戏的皮肤资源包特征信息;并利用请求单元根据皮肤资源包特征信息向资源服务器请求对应的皮肤资源包;以及利用处理单元接收并加载资源服务器发送的皮肤资源包,进而解决了相关技术中游戏设备随着小游戏玩法的增多,游戏服务器中内置大量的资源,导致严重影响游戏设备的使用的技术问题。
在一种可选的实施例中,皮肤资源包特征信息包括:皮肤资源包的标识,皮肤资源包的版本号,皮肤资源包的存储路径。
在一种可选的实施例中,该游戏的换肤装置还包括:检测单元,用于在根据皮肤资源包特征信息向资源服务器请求对应的皮肤资源包之前,检测预定资源文件目录中是否存在与皮肤资源包特征信息对应的皮肤资源包;获取单元,用于检测预定资源文件目录中存在与皮肤资源包特征信息对应的皮肤资源包时,根据皮肤资源包特征信息从预定资源文件目录中获取皮肤资源包。
在一种可选的实施例中,预定资源文件目录的目录结构包括以下至少之一:皮肤资源包的标识,皮肤资源包的版本号。
在一种可选的实施例中,请求单元包括:确定模块,用于根据皮肤资源包特征信息确定皮肤资源包的存储路径;请求模块,用于根据皮肤资源包的存储路径向资源服务器请求皮肤资源包。
在一种可选的实施例中,处理单元包括:存储模块,用于将资源服务器发送的皮肤资源包存储至预定资源文件目录中;解压模块,用于对存储至预定资源文件目录中对皮肤资源包进行解压,得到解压后的皮肤资源包;加载模块,用于加载解压后的皮肤资源包。
在一种可选的实施例中,解压模块包括:判断子模块,用于根据解压结果判断是否对皮肤资源进行成功解压,得到判断结果;校验子模块,用于在判断结果表示对皮肤资源进行成功解压的情况下,对解压后的皮肤资源包进行校验;解压子模块,用于在判断结果表示对皮肤资源进行不成功解压的情况下,再次根据皮肤资源包的存储路径向资源服务器请求皮肤资源包,并对再次请求的皮肤资源包在预定资源文件目录进行解压。
在一种可选的实施例中,校验子模块包括:第一确定子模块,用于确定游戏请求对应的预定游戏的用户界面中的所有控件;获取子模块,用于检测解压后的皮肤资源包中是否存在针对所有控件中的每个控件的皮肤资源,得到检测结果;第二确定子模块,用于在检测结果表示解析后的皮肤资源包中存在针对所有控件中的每个控件的皮肤资源,则校验成功;下载子模块,用于在检测结果表示解析后的皮肤资源包中不存在针对所有控件中的每个控件的皮肤资源,则校验失败,重新从资源服务器下载皮肤资源包。
在一种可选的实施例中,处理单元包括:第一替换模块,用于利用皮肤资源包中的皮肤切图替换初始皮肤资源的皮肤切图;第二替换模块,用于利用皮肤资源包中的字体颜色以及背景颜色替换初始皮肤资源中的字体颜色以及背景颜色。
实施例3
根据本发明实施例的另外一个方面,还提供了一种存储介质,存储介质包括存储的程序,其中,在程序运行时控制存储介质所在设备执行上述中任意一项的游戏的换肤方法。
实施例4
根据本发明实施例的另外一个方面,还提供了一种处理器,处理器用于运行程序,其中,程序运行时执行上述中任意一项的游戏的换肤方法。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (12)
1.一种游戏的换肤方法,其特征在于,包括:
响应用户输入的游戏请求,并发送所述游戏请求至游戏服务器;
接收所述游戏服务器发送的与所述游戏请求对应的目标游戏的皮肤资源包特征信息;
根据所述皮肤资源包特征信息向资源服务器请求对应的皮肤资源包;
接收并加载所述资源服务器发送的皮肤资源包。
2.根据权利要求1所述的方法,其特征在于,所述皮肤资源包特征信息包括:所述皮肤资源包的标识,所述皮肤资源包的版本号,所述皮肤资源包的存储路径。
3.根据权利要求1所述的方法,其特征在于,在根据所述皮肤资源包特征信息向资源服务器请求对应的皮肤资源包之前,还包括:
检测预定资源文件目录中是否存在与所述皮肤资源包特征信息对应的所述皮肤资源包;
若是,根据所述皮肤资源包特征信息从所述预定资源文件目录中获取所述皮肤资源包。
4.根据权利要求3所述的方法,其特征在于,所述预定资源文件目录的目录结构包括以下至少之一:皮肤资源包的标识,皮肤资源包的版本号。
5.根据权利要求3所述的方法,其特征在于,根据所述皮肤资源包特征信息向资源服务器请求对应的皮肤资源包,包括:
根据所述皮肤资源包特征信息确定所述皮肤资源包的存储路径;
根据所述皮肤资源包的存储路径向所述资源服务器请求所述皮肤资源包。
6.根据权利要求1所述的方法,其特征在于,接收并加载所述资源服务器发送的皮肤资源包包括:
将所述资源服务器发送的所述皮肤资源包存储至预定资源文件目录中;
对存储至所述预定资源文件目录中对所述皮肤资源包进行解压,得到解压后的所述皮肤资源包;
加载解压后的所述皮肤资源包。
7.根据权利要求5所述的方法,其特征在于,对存储至所述预定资源文件目录中对所述皮肤资源包进行解压包括:
根据解压结果判断是否对所述皮肤资源进行成功解压,得到判断结果;
在所述判断结果表示对所述皮肤资源进行成功解压的情况下,对解压后的所述皮肤资源包进行校验;
在所述判断结果表示对所述皮肤资源进行不成功解压的情况下,再次根据所述皮肤资源包的存储路径向所述资源服务器请求所述皮肤资源包,并对再次请求的所述皮肤资源包在所述预定资源文件目录进行解压。
8.根据权利要求7所述的方法,其特征在于,对解压后的所述皮肤资源包进行校验包括:
确定所述游戏请求对应的预定游戏的用户界面中的所有控件;
检测解压后的所述皮肤资源包中是否存在针对所述所有控件中的每个控件的皮肤资源,得到检测结果;
在所述检测结果表示解析后的所述皮肤资源包中存在针对所述所有控件中的每个控件的皮肤资源,则校验成功;
在所述检测结果表示解析后的所述皮肤资源包中不存在针对所述所有控件中的每个控件的皮肤资源,则校验失败,重新从所述资源服务器下载所述皮肤资源包。
9.根据权利要求1至8中任一项所述的方法,其特征在于,加载所述资源服务器发送的皮肤资源包包括:
利用所述皮肤资源包中的皮肤切图替换初始皮肤资源的皮肤切图;
利用所述皮肤资源包中的字体颜色以及背景颜色替换所述初始皮肤资源中的字体颜色以及背景颜色。
10.一种游戏的换肤装置,其特征在于,包括:
响应单元,用于响应用户输入的游戏请求,并发送所述游戏请求至游戏服务器;
接收单元,用于接收所述游戏服务器发送的与所述游戏请求对应的目标游戏的皮肤资源包特征信息;
请求单元,用于根据所述皮肤资源包特征信息向资源服务器请求对应的皮肤资源包;
处理单元,用于接收并加载所述资源服务器发送的皮肤资源包。
11.一种存储介质,其特征在于,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行权利要求1至9中任意一项所述的游戏的换肤方法。
12.一种处理器,其特征在于,所述处理器用于运行程序,其中,所述程序运行时执行权利要求1至9中任意一项所述的游戏的换肤方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911253118.4A CN111001162A (zh) | 2019-12-09 | 2019-12-09 | 游戏的换肤方法及装置、存储介质、处理器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911253118.4A CN111001162A (zh) | 2019-12-09 | 2019-12-09 | 游戏的换肤方法及装置、存储介质、处理器 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111001162A true CN111001162A (zh) | 2020-04-14 |
Family
ID=70114249
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911253118.4A Withdrawn CN111001162A (zh) | 2019-12-09 | 2019-12-09 | 游戏的换肤方法及装置、存储介质、处理器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111001162A (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111672112A (zh) * | 2020-06-05 | 2020-09-18 | 腾讯科技(深圳)有限公司 | 虚拟环境的显示方法、装置、设备及存储介质 |
CN112044053A (zh) * | 2020-09-03 | 2020-12-08 | 腾讯科技(深圳)有限公司 | 虚拟场景中的信息处理方法、装置、设备及存储介质 |
CN112328292A (zh) * | 2020-10-21 | 2021-02-05 | 腾讯科技(深圳)有限公司 | 虚拟资源的处理方法、装置、存储介质及电子设备 |
CN112685613A (zh) * | 2021-01-06 | 2021-04-20 | 青岛海尔科技有限公司 | 一种资源包查询的方法、装置及信息处理系统 |
CN113448670A (zh) * | 2021-06-28 | 2021-09-28 | 吉林亿联银行股份有限公司 | 一种app客户端换肤方法及装置 |
CN114296822A (zh) * | 2021-12-27 | 2022-04-08 | 京东方科技集团股份有限公司 | 应用程序的换肤处理方法、装置、设备及介质 |
US20220245208A1 (en) * | 2021-04-27 | 2022-08-04 | Apollo Intelligent Connectivity (Beijing) Technology Co., Ltd. | Method for switching skin of mini-program page, and electronic device |
WO2023165191A1 (zh) * | 2022-03-01 | 2023-09-07 | 腾讯科技(深圳)有限公司 | 基于虚拟环境的交互方法、装置、设备、介质及程序产品 |
-
2019
- 2019-12-09 CN CN201911253118.4A patent/CN111001162A/zh not_active Withdrawn
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111672112A (zh) * | 2020-06-05 | 2020-09-18 | 腾讯科技(深圳)有限公司 | 虚拟环境的显示方法、装置、设备及存储介质 |
CN112044053A (zh) * | 2020-09-03 | 2020-12-08 | 腾讯科技(深圳)有限公司 | 虚拟场景中的信息处理方法、装置、设备及存储介质 |
CN112328292A (zh) * | 2020-10-21 | 2021-02-05 | 腾讯科技(深圳)有限公司 | 虚拟资源的处理方法、装置、存储介质及电子设备 |
CN112328292B (zh) * | 2020-10-21 | 2021-10-15 | 腾讯科技(深圳)有限公司 | 虚拟资源的处理方法、装置、存储介质及电子设备 |
CN112685613A (zh) * | 2021-01-06 | 2021-04-20 | 青岛海尔科技有限公司 | 一种资源包查询的方法、装置及信息处理系统 |
CN112685613B (zh) * | 2021-01-06 | 2022-10-25 | 青岛海尔科技有限公司 | 一种资源包查询的方法、装置及信息处理系统 |
US20220245208A1 (en) * | 2021-04-27 | 2022-08-04 | Apollo Intelligent Connectivity (Beijing) Technology Co., Ltd. | Method for switching skin of mini-program page, and electronic device |
CN115344315A (zh) * | 2021-04-27 | 2022-11-15 | 阿波罗智联(北京)科技有限公司 | 小程序页面的皮肤切换方法、装置和电子设备 |
CN115344315B (zh) * | 2021-04-27 | 2024-02-02 | 阿波罗智联(北京)科技有限公司 | 小程序页面的皮肤切换方法、装置和电子设备 |
CN113448670A (zh) * | 2021-06-28 | 2021-09-28 | 吉林亿联银行股份有限公司 | 一种app客户端换肤方法及装置 |
CN114296822A (zh) * | 2021-12-27 | 2022-04-08 | 京东方科技集团股份有限公司 | 应用程序的换肤处理方法、装置、设备及介质 |
WO2023165191A1 (zh) * | 2022-03-01 | 2023-09-07 | 腾讯科技(深圳)有限公司 | 基于虚拟环境的交互方法、装置、设备、介质及程序产品 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111001162A (zh) | 游戏的换肤方法及装置、存储介质、处理器 | |
US10212563B2 (en) | Updating web resources | |
AU2016359508B2 (en) | Page jumping method and apparatus | |
CN106528224B (zh) | 一种Docker容器的内容更新方法、服务器及系统 | |
CN107608701A (zh) | 一种升级固件的方法和装置 | |
CN107305553B (zh) | 一种基于Hybrid App中动态跳转Hybrid页面的方法及系统 | |
CN106874366B (zh) | 软件信息的处理方法及装置 | |
CN111158738B (zh) | 耳机固件的升级方法、装置及可读存储介质 | |
CN111314437B (zh) | 资源包的下载方法和装置、存储介质及电子装置 | |
CN110339568B (zh) | 虚拟控件的显示方法、装置、存储介质和电子装置 | |
CN109635199A (zh) | 基于用户行为的应用列表动态推荐方法及系统 | |
CN103313229A (zh) | 一种空中下载技术升级的方法及设备 | |
CN106708539B (zh) | 一种客户端更新方法及装置 | |
CN106227541A (zh) | 一种程序更新下载处理方法及移动终端 | |
CN105119944B (zh) | 一种应用的启动方法和相关装置 | |
US11400380B2 (en) | Information processing apparatus and download processing method | |
CN112449057B (zh) | 消息的提示方法和装置、存储介质及电子装置 | |
CN111107165B (zh) | 断线重连方法、装置及计算机可读存储介质 | |
CN115437660A (zh) | 一种固件更新方法、装置、电子设备和存储介质 | |
CN105245558B (zh) | 支持虚拟在线的应用程序运行方法、系统、服务器 | |
CN112861045A (zh) | 文案的显示方法和装置、存储介质、电子装置 | |
CN108920658B (zh) | 一种移动设备桌面搬家方法、装置及电子设备 | |
CN105282204A (zh) | Tr069协议方法处理方法、装置及网关设备 | |
CN117743715A (zh) | 页面展示方法、装置、电子设备和存储介质 | |
CN108926842B (zh) | 虚拟应用的网络速度显示方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20200414 |
|
WW01 | Invention patent application withdrawn after publication |