一种游戏配置表的读取方法、装置、存储介质及电子设备制造方法及图纸

技术编号:28144550 阅读:25 留言:0更新日期:2021-04-21 19:26
本申请提出一种游戏配置表的读取方法、装置、存储介质及电子设备中,依据待读取数据的行标识获取行数据的指针地址;待读取数据为行数据中的一个列数据,待读取数据为游戏属性数据;依据行数据的数据结构,生成匹配的调用接口函数;其中,数据结构包含行数据中存储的每一个列数据各自对应的结构;然后调用接口函数从指针地址对应的存储区域内,读取结构与目标结构相同的待读取数据,其中,目标结构为待读取数据对应的列数据的结构。调用接口函数依据数据的结构类型可以直接读取对应的列数据,从而不需要现有技术中的多次函数调用,减少了服务器的运行负担。务器的运行负担。务器的运行负担。

【技术实现步骤摘要】
一种游戏配置表的读取方法、装置、存储介质及电子设备


[0001]本申请涉及游戏领域,具体而言,涉及一种游戏配置表的读取方法、装置、存储介质及电子设备。

技术介绍

[0002]大型多人在线游戏的几乎所有游戏逻辑的参数都写在excel表中,比如每个技能的各种参数,每个场景的各种配置,每个怪物的各种配置。配置文件通常为具有数十列,几千至几万行的excel表。为了实现游戏逻辑,会频繁地读取excel表中的值。
[0003]常见的excel读表系统一般是提供一些接口读取某行的第几列的某种值,比如某张表的某列的肯定是整数、浮点数、字符串以及一组数值当中的某一种。某行的第几列的某种值可以保存在一个union内存中,每张表的某行就是保存了很多列的union内存的一个动态数组,取某张表某行某列的数据就是找到这张表的这一行,然后从动态数组中找到这一列,然后分别提供接口取整数值、浮点数值、字符串值或一组数值。过程中需要通过几次函数调用才能找到这一列对应的内容。
[0004]现有技术中,通用接口每次的调用,都会涉及到找到这一列数据的几次函数调用,都需要消耗cpu,游戏逻辑中频繁调用excel表中某行某列的值。假设游戏服务器端每个tick运行10万个角色的逻辑,每个角色在一个tick中涉及10次excel表格数据的调用,就是100万次。每秒跑25次tick,即每秒涉及2千5百万次的调用,底层的excel游戏配置表的读取功能的效率对整个游戏服务器的流畅运行就影响很大。在每秒几千万的调用情况下,excel游戏配置表的读取会严重影响服务器的响应速度,就会拖慢服务器的反映,导致玩家的感觉游戏卡顿,造成游戏体验很差,而且这种处理延迟在玩家少时显现不出来,只会在玩家数多时才会出现。

技术实现思路

[0005]本申请的目的在于提供一种游戏配置表的读取方法、装置、存储介质及电子设备,以至少部分改善上述问题。
[0006]为了实现上述目的,本申请实施例采用的技术方案如下:
[0007]第一方面,本申请实施例提供一种游戏配置表的读取方法,所述方法包括:
[0008]依据待读取数据的行标识获取行数据的指针地址,其中,所述待读取数据为所述行数据中的一个列数据,所述待读取数据为游戏属性数据;
[0009]依据所述行数据的数据结构,生成匹配的调用接口函数,其中,所述数据结构包含所述行数据中存储的每一个列数据各自对应的结构;
[0010]所述调用接口函数从所述指针地址对应的存储区域内,读取结构与目标结构相同的所述待读取数据;其中,所述目标结构为所述待读取数据对应的列数据的结构。
[0011]第二方面,本申请实施例提供一种游戏配置表的读取装置,所述装置包括:
[0012]处理单元,用于依据待读取数据的行标识获取行数据的指针地址,其中,所述待读
取数据为所述行数据中的一个列数据,所述待读取数据为游戏属性数据;
[0013]所述处理单元还用于依据所述行数据的数据结构,生成匹配的调用接口函数,其中,所述数据结构包含所述行数据中存储的每一个列数据各自对应的结构;
[0014]读取单元,用于所述调用接口函数从所述指针地址对应的存储区域内,读取结构与目标结构相同的所述待读取数据;其中,所述目标结构为所述待读取数据对应的列数据的结构。
[0015]第三方面,本申请实施例提供一种存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述的方法。
[0016]第四方面,本申请实施例提供一种电子设备,所述电子设备包括:处理器和存储器,所述存储器用于存储一个或多个程序;当所述一个或多个程序被所述处理器执行时,实现上述的方法。
[0017]相对于现有技术,本申请实施例所提供的一种游戏配置表的读取方法、装置、存储介质及电子设备中,依据待读取数据的行标识获取行数据的指针地址;待读取数据为行数据中的一个列数据,待读取数据为游戏属性数据;依据行数据的数据结构,生成匹配的调用接口函数;其中,数据结构包含行数据中存储的每一个列数据各自对应的结构;然后调用接口函数从指针地址对应的存储区域内,读取结构与目标结构相同的待读取数据,其中,目标结构为待读取数据对应的列数据的结构。调用接口函数依据数据的结构类型可以直接读取对应的列数据,从而不需要现有技术中的多次函数调用,减少了服务器的运行负担。
[0018]为使本申请的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
[0019]为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它相关的附图。
[0020]图1为本申请实施例提供的电子设备的结构示意图;
[0021]图2为本申请实施例提供的游戏配置表的读取方法的步骤示意图;
[0022]图3为本申请实施例提供的S103的子步骤示意图;
[0023]图4为本申请实施例提供的游戏配置表的读取方法的步骤示意图之一;
[0024]图5(a)为本申请实施例提供的游戏优化前后的实际运行耗时情况示意图;
[0025]图5(b)为本申请实施例提供的游戏优化前后的实际运行耗时情况示意图之一;
[0026]图5(c)为本申请实施例提供的游戏优化前后的实际运行耗时情况示意图之一;
[0027]图6为本申请实施例提供的游戏配置表的读取装置的单元示意图。
[0028]图中:10

处理器;11

存储器;12

总线;13

通信接口;201

处理单元;202

读取单元。
具体实施方式
[0029]为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例
中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。
[0030]因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
[0031]应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本申请的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
[0032]需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种游戏配置表的读取方法,其特征在于,所述方法包括:依据待读取数据的行标识获取行数据的指针地址,其中,所述待读取数据为所述行数据中的一个列数据,所述待读取数据为游戏属性数据;依据所述行数据的数据结构,生成匹配的调用接口函数,其中,所述数据结构包含所述行数据中存储的每一个列数据各自对应的结构;所述调用接口函数从所述指针地址对应的存储区域内,读取结构与目标结构相同的所述待读取数据;其中,所述目标结构为所述待读取数据对应的列数据的结构。2.如权利要求1所述的游戏配置表的读取方法,其特征在于,所述依据待读取数据的行标识获取行数据的指针地址的步骤,包括:依据所述行标识在映射关系表中获取与对应的指针地址,其中,所述映射关系表包含所述行标识与所述指针地址的映射关系。3.如权利要求2所述的游戏配置表的读取方法,其特征在于,所述行标识为行编号。4.如权利要求2所述的游戏配置表的读取方法,其特征在于,在依据待读取数据的行标识获取行数据的指针地址之前,所述方法还包括:依据所述待读取数据对应的配置表的编号,从预设定数组中获取对应的映射关系表的地址;依据所述映射关系表的地址获取所述映射关系表。5.一种游戏配置表的读取装置,其特征在于,所述装置包括:处理单元,用于依据待读取数据的行标识获取行数据的指针地址,其中,所述待读取数据为所述行数据中的一个列...

【专利技术属性】
技术研发人员:杜江
申请(专利权)人:北京像素软件科技股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1