本文作者:kaifamei

游戏中的信息处理方法、装置、电子设备及存储介质与流程

更新时间:2025-12-21 07:11:29 0条评论

游戏中的信息处理方法、装置、电子设备及存储介质与流程



1.本技术涉及游戏技术领域,尤其涉及一种游戏中的信息处理方法、装置、电子设备及存储介质。


背景技术:

2.在游戏中会经常涉及到针对大量虚拟对象的属性值计算,一个好的属性值计算公式往往是一款游戏的基础,而一个好的属性值计算公式往往需要经过多次的修改、迭代来获得。
3.目前,在游戏中加载属性值计算公式时,通常是针对每个虚拟对象分别创建一属性计算数据,使得属性计算数据被重复多份,导致了内存的浪费。


技术实现要素:

4.有鉴于此,本技术实施例至少提供一种游戏中的信息处理方法、装置、电子设备及存储介质,通过创建一全局公式结构,来将公式数据与公式结构进行分离,从而有效减少了内存的消耗。
5.第一方面,本技术示例性实施例提供一种游戏中的信息处理方法,包括:读取配置文件,所述配置文件记载了针对目标属性的属性计算公式中的各参数节点及各参数节点之间的拓扑关系;根据所述各参数节点之间的拓扑关系,生成针对所述属性计算公式在游戏中的全局公式结构;针对所述游戏中所创建的至少一个虚拟对象,分别生成与各虚拟对象所具备所述目标属性对应的角公式数据,所述角公式数据包含每个所述参数节点对应的节点属性值;响应针对所述至少一个虚拟对象中的目标虚拟对象的触发事件,基于所述全局公式结构和所述目标虚拟对象对应的角公式数据,在所述游戏中更新所述目标虚拟对象在所述触发事件下的目标属性。
6.在一可能实施方式中,所述全局公式结构包括属性计算公式中的每个参数节点、各参数节点对应的祖先节点、各参数节点与所对应的祖先节点之间的计算关系,所述祖先节点指属性计算公式中能够被对应的参数节点影响节点属性值变化的节点。
7.在一可能实施方式中,通过以下方式更新目标虚拟对象在所述触发事件下的目标属性:从针对目标属性的属性计算公式中确定受所述触发事件影响导致节点属性值被更新的更新节点;基于所述全局公式结构,确定与所述更新节点存在计算关系的至少一个祖先节点、所述更新节点与每个祖先节点之间的计算关系;针对所确定的每个祖先节点,根据更新节点在受所述触发事件影响之后的节点更新数值,来按照该祖先节点与更新节点之间的计算关系,确定该祖先节点的节点更新数值;根据更新节点的节点更新数值以及各祖先节点的节点更新数值,更新目标虚拟对象在所述触发事件下的目标属性。
8.在一可能实施方式中,通过以下方式生成与每个虚拟对象所具备的目标属性对应的角公式数据:根据所述全局公式结构,确定目标属性的属性计算公式中的每个参数节点;针对每个虚拟对象,从所述游戏中读取该虚拟对象与各参数节点对应的节点属性值,以
形成该虚拟对象对应的角公式数据。
9.在一可能实施方式中,所述触发事件包括以下项中的任一项:在命令窗口中输入的模拟控制指令,所述模拟控制指令为作用于目标虚拟对象上、且用以影响目标属性变化的模拟指令,所述命令窗口为针对目标属性创建的、用于监测目标属性的属性值变化的程序窗口;在游戏的游戏场景中产生的触发事件,所述触发事件为作用于目标虚拟对象上、且用以影响目标属性变化的触发动作。
10.在一可能实施方式中,还包括:展示目标虚拟对象在所述触发事件下的目标属性,其中,通过以下方式展示目标虚拟对象在所述触发事件下的目标属性:在所述命令窗口中呈现目标祖先节点的节点更新数值和/或所述目标属性的属性值,所述目标祖先节点为与更新节点存在计算关系的每个祖先节点,所述更新节点为属性计算公式中受所述模拟控制指令影响导致节点属性值被更新的节点;在所述游戏的游戏场景中展示目标虚拟对象在所述触发事件下的目标属性。
11.在一可能实施方式中,通过以下方式更新目标虚拟对象在所述触发事件下的目标属性:根据更新节点的节点更新数值以及更新节点所对应的祖先节点的节点更新数值,对所述目标虚拟对象对应的角公式数据进行更新,所述更新节点为属性计算公式中受所述触发事件影响导致节点属性值被更新的节点;基于更新后的角公式数据,确定所述目标虚拟对象所具备的目标属性的属性值;在所述游戏中更新目标虚拟对象处于所确定的属性值下的目标属性。
12.在一可能实施方式中,还包括:从所述游戏的预设代码库中查与目标属性相匹配的目标代码;利用查到的目标代码,将针对目标属性的属性计算公式加载到所述游戏中,以在所述游戏的游戏场景中展示目标虚拟对象在所述触发事件下的目标属性。
13.在一可能实施方式中,所述预设代码库中存储有针对不同属性的属性计算公式、各属性计算公式的公式结构以及各属性计算公式对应的代码,其中,从所述游戏的预设代码库中查与目标属性相匹配的目标代码的步骤包括:从所述游戏的预设代码库中搜索是否存在目标属性对应的属性计算公式;若存在,确定目标属性的属性计算公式的公式结构与搜索到的属性计算公式的公式结构是否一致;若一致,将所述预设代码库中与搜索到的属性计算公式对应的代码,确定为目标代码。
14.在一可能实施方式中,各参数节点之间的拓扑关系包括与该参数节点存在计算关系的祖先节点以及该参数节点与每个祖先节点之间的计算关系,其中,根据所述各参数节点之间的拓扑关系,生成针对所述属性计算公式在游戏中的全局公式结构的步骤包括:针对属性计算公式中的每个参数节点,创建一个结构条目,每个结构条目包括与该参数节点存在计算关系的祖先节点以及该参数节点与每个祖先节点之间的计算关系;由所有参数节点对应的结构条目形成所述全局公式结构。
15.在一可能实施方式中,通过以下方式生成所述配置文件:确定针对目标属性的属性计算公式中的每个参数节点的入度;构建属性计算公式的有向拓扑图,其中,所述有向拓扑图包括拓扑节点和有向边,每个拓扑节点分别对应属性计算公式中的一个参数节点,属性计算公式中入度为零的参数节点被确定为有向拓扑图的叶子节点,通过有向边将存在计算关系的两个拓扑节点进行连接,每个有向边的边属性用于记载所连接的两个拓扑节点之间的计算关系;根据所构建的有向拓扑图,确定每个参数节点对应的祖先节点以及各参数
节点与对应的祖先节点之间的计算关系,以形成所述配置文件。
16.第二方面,本技术示例性实施例提供一种游戏中的信息处理装置,包括:文件读取模块,读取配置文件,所述配置文件记载了针对目标属性的属性计算公式中的各参数节点及各参数节点之间的拓扑关系;结构生成模块,根据所述各参数节点之间的拓扑关系,生成针对所述属性计算公式在游戏中的全局公式结构;数据创建模块,针对所述游戏中所创建的至少一个虚拟对象,分别生成与各虚拟对象所具备的所述目标属性对应的角公式数据,所述角公式数据包含每个所述参数节点对应的节点属性值;属性更新模块,响应针对所述至少一个虚拟对象中的目标虚拟对象的触发事件,基于所述全局公式结构和所述目标虚拟对象对应的角公式数据,在所述游戏中更新所述目标虚拟对象在所述触发事件下的目标属性。
17.第三方面,本技术实施例还提供一种电子设备,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储器之间通过所述总线进行通信,所述机器可读指令被所述处理器运行时执行上述第一方面或第一方面中任一种可能的实施方式中的游戏中的信息处理方法的步骤。
18.第四方面,本技术实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行上述第一方面或第一方面中任一种可能的实施方式中的游戏中的信息处理方法的步骤。
19.本技术实施例提供的游戏中的信息处理方法、装置、电子设备及存储介质,通过创建全局公式结构,并将公式数据与公式结构进行分离,有效减少了内存的消耗。
20.为使本技术的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
21.为了更清楚地说明本技术实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本技术的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
22.图1示出本技术示例性实施例提供的游戏中的信息处理方法的流程图;
23.图2示出本技术示例性实施例提供的生成配置文件的步骤的流程图;
24.图3示出本技术示例性实施例提供的属性计算公式的有向拓扑图;
25.图4示出本技术示例性实施例提供的确定目标虚拟对象在触发事件下的目标属性的步骤的流程图;
26.图5示出本技术示例性实施例提供的确定目标属性的示意图;
27.图6示出本技术示例性实施例提供在游戏场景中展示目标属性的步骤的流程图;
28.图7示出本技术示例性实施例提供的在游戏中加载属性计算公式的步骤的流程图;
29.图8示出本技术示例性实施例提供的确定属性计算公式的目标代码的步骤的流程图;
30.图9示出本技术示例性实施例提供的游戏中的信息处理装置的结构示意图;
31.图10示出本技术示例性实施例提供的电子设备的结构示意图。
具体实施方式
32.为使本技术实施例的目的、技术方案和优点更加清楚,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,应当理解,本技术中的附图仅起到说明和描述的目的,并不用于限定本技术的保护范围。另外,应当理解,示意性的附图并未按实物比例绘制。本技术中使用的流程图示出了根据本技术的一些实施例实现的操作。应当理解,流程图的操作可以不按顺序实现,没有逻辑的上下文关系的步骤可以反转顺序或者同时实施。此外,本领域技术人员在本技术内容的指引下,可以向流程图添加一个或多个其他操作,也可以从流程图中移除一个或多个操作。
33.本说明书中使用用语“一个”、“一”、“该”和“所述”用以表示存在一个或多个要素/组成部分/等;用语“包括”和“具有”用以表示开放式的包括在内的意思并且是指除了列出的要素/组成部分/等之外还可存在另外的要素/组成部分/等;用语“第一”和“第二”等仅作为标记使用,不是对其对象的数量限制。
34.应当理解,在本技术实施例中,“至少一个”是指一个或者多个,“多个”是指两个或者两个以上。“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。“包含a、b和/或c”是指包含a、b、c三者中任1个或任2个或3个。
35.应当理解,在本技术实施例中,“与a对应的b”、“与a相对应的b”、“a与b相对应”或者“b与a相对应”,表示b与a相关联,根据a可以确定b。根据a确定b并不意味着仅仅根据a确定b,还可以根据a和/或其他信息确定b。
36.另外,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本技术实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本技术的实施例的详细描述并非旨在限制要求保护的本技术的范围,而是仅仅表示本技术的选定实施例。基于本技术的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的全部其他实施例,都属于本技术保护的范围。
37.在游戏中会经常涉及到针对大量虚拟对象的属性值计算,一个好的属性值计算公式往往是一款游戏的基础,而一个好的属性值计算公式往往需要经过多次的修改、迭代来获得。
38.目前,针对属性值计算公式的研发过程为:游戏设计者设计出属性值计算公式之后,通知对应的开发人员,由开发人员开发出与属性值计算公式对应的代码并上传,再通知游戏设计者,游戏设计者更新开发人员的代码之后,再到游戏中查看所设计的属性值计算公式的具体体现。
39.在上述方案中,从游戏设计者到游戏开发者最后再回到游戏设计者是一个非常长的开发链路,游戏设计者无法快速观察到所设计的公式在游戏中的表现。并且,如果需要频繁迭代公式,则需要不断重复上述研发过程,导致整个研发流程十分繁琐。
40.此外,在游戏中加载属性值计算公式时,通常是针对每个虚拟对象分别创建一属性计算数据,每个属性计算数据包括公式结构和公式数据,这使得属性计算数据中的公式
结构被重复多份,导致了内存的浪费。
41.对此,本技术实施例提出一种游戏中的信息处理方法、装置、电子设备及存储介质,以克服上述至少一方面的问题:简化对公式修改迭代的研发流程、在能够便捷地修改公式的同时又能够直观的观察到公式修改后的结果、减少对内存的消耗。
42.为便于对本技术进行理解,下面对本技术实施例提供的游戏中的信息处理方法、装置、电子设备及存储介质进行详细介绍。
43.请参阅图1,为本技术示例性实施例提供的游戏中的信息处理方法的流程图,具体包括:
44.步骤s101,读取配置文件。这里,配置文件记载了针对目标属性的属性计算公式中的各参数节点及各参数节点之间的拓扑关系。
45.在本技术实施例中,可以针对游戏中的一种属性对应一个配置文件。示例性的,上述属性可指虚拟对象在游戏中的状态属性。
46.例如,在游戏中,由参与游戏的多个玩家共同加入同一个虚拟对局,在进入虚拟对局之后,为不同玩家控制的虚拟对象分配不同的身份,通过分配不同的身份以确定不同阵营,使得玩家在虚拟对局的不同对局阶段通过执行游戏分配的任务,以赢得游戏比赛。
47.作为示例,虚拟对象可指在虚拟环境中的受控虚拟对象以及不受控虚拟对象,该受控虚拟对象可以是由玩家操控的虚拟角,包括但不限于虚拟人物、虚拟动物、动漫人物中的至少一种,该不受控虚拟对象可以是非玩家操控的虚拟角(npc),还可以是虚拟物体,指虚拟场景中的静态对象,例如,虚拟场景中的地形、房屋、桥梁、植被等。静态对象往往不受玩家直接控制,但可以响应场景中虚拟对象的交互行为(如,攻击、拆除等),而作出相应的表现,例如:虚拟对象可以对建筑物进行拆除、拾取、拖拽、建造等。可选地,虚拟物体也可以无法响应虚拟对象的交互行为,例如,虚拟物体同样可以为虚拟场景中的建筑物、门、窗、植等,但是虚拟对象并不能与其进行交互,比如,虚拟对象不能对窗进行破坏或是拆除等。可选地,当虚拟环境为三维虚拟环境时,虚拟对象可以是三维虚拟模型,每个虚拟对象在三维虚拟环境中具有自身的形状和体积,占据三维虚拟环境中的一部分空间。可选地,虚拟对象是基于三维人体骨骼技术构建的三维角,该虚拟对象通过穿戴不同的皮肤来实现不同的外在形象。在一些实现方式中,虚拟对象也可以采用2.5维或2维模型来实现,本技术实施例对此不加以限定。
48.在一虚拟对局中,存在战局状态数据和虚拟对象的状态属性。示例性的,战局状态数据可指用于描述虚拟对局的战斗场景的参数,即,可包括能够影响到战斗的一切战斗场景因素和/或战斗环境因素,示例性的,战局状态数据可包括以下项中的至少一项:地图属性、缩毒时间、缩毒范围。战局状态数据不随着虚拟对象在虚拟对局中的交互行为而进行改变。
49.在本技术实施例中,虚拟对象的状态属性可指用于表征虚拟对象在游戏中的虚拟能力的参数,该虚拟能力反映了虚拟对象在虚拟对局中的战斗能力,也就是说,可以利用虚拟能力来表征虚拟对象在游戏中的互动能力。
50.示例性的,虚拟对象的状态属性可包括但不限于以下项中的至少一项:虚拟生命值、攻击属性、防御属性、外观属性。该攻击属性用于表示虚拟对象在向目标虚拟对象释放攻击时所造成的伤害程度,该防御属性用于表示虚拟对象在遭受到攻击时的防御强度。
51.针对虚拟对象的不同状态属性,通常是设计对应的一个属性计算公式,来确定虚拟对象在游戏中所具备的状态属性,该属性计算公式包括能够影响该状态属性变化的各项因素。
52.在一个示例性场景中,上述攻击属性可以包括物理攻击强度、物理攻击加成系数、法术攻击强度、法术攻击加成系数等,其中,物理攻击加成系数或者该法术攻击加成系数均基于虚拟对象的角特性、虚拟对象当前所穿的装备、虚拟对象当前所佩戴的铭文、虚拟对象当前所使用的皮肤而综合确定。上述防御属性可以包括物理防御强度、法术防御强度等。
53.示例性的,公式通常以等号(=)开始,在一属性计算公式中的全部或者部分元素可以包括以下项:变量、常量、运算符。作为示例,变量可指随着虚拟对象在游戏中的交互行为而发生变化的量,常量可指无需通过计算得出的值,运算符可指算术运算符,例如,算术运算符可包括用于表征四则运算(即,加法、减法、乘法、除法)的运算符,应理解,在属性计算公式中也可以包括其他运算形式。
54.下面参照图2来介绍生成配置文件的过程。
55.图2示出本技术示例性实施例提供的生成配置文件的步骤的流程图。
56.参照图2,在步骤s201中,确定针对目标属性的属性计算公式中的每个参数节点的入度。
57.这里,参数节点的入度可指一个参数节点的数值受其他参数节点影响的数量,也可以指以该参数节点为终点的有向边的数量,后续基于计算得到的入度来确定有向拓扑图的叶子节点。应理解本技术不限于此,还可以通过其他方式来确定叶子节点。
58.在步骤s202中,构建属性计算公式的有向拓扑图。
59.这里,有向拓扑图包括拓扑节点和有向边,每个拓扑节点分别对应属性计算公式中的一个参数节点,属性计算公式中入度为零的参数节点作为有向拓扑图的叶子节点,通过有向边将存在计算关系的两个拓扑节点进行连接,每个有向边的边属性用于记载所连接的两个拓扑节点之间的计算关系。
60.在步骤s203中,根据所构建的有向拓扑图,确定每个参数节点对应的祖先节点以及各参数节点与对应的祖先节点之间的计算关系,以形成配置文件。
61.这里,每个参数节点对应的祖先节点包括从该参数节点到根节点的路径上包括的各节点,不包含该参数节点本身。
62.下面参照图3所示的示例,来介绍基于游戏设计者所设计的属性计算公式,采用拓扑排序解析公式生成配置文件的过程。
63.图3示出本技术示例性实施例提供的属性计算公式的有向拓扑图。
64.在本示例中,以目标属性为虚拟对象在游戏中的虚拟生命值为例,可以通过如下公式来计算虚拟生命值hp:
65.hp=base_hp+var_hp
66.base_hp=10
×
con
67.con=base_con+var_con
68.在上述公式中,hp表示虚拟对象的虚拟生命值(如血量),base_hp表示虚拟对象的固定属性带来的虚拟生命值部分,var_hp表示游戏中的buff带来的增益虚拟生命值部分。示例性的,固定属性可包括但不限于以下项中的至少一项:虚拟对象的角特性、职业特
性、角等级、所穿的装备,buff可包括通过向虚拟对象施加魔法或者药物来改变虚拟对象的虚拟生命值。
69.con表示虚拟对象的属性“体”,虚拟对象的base血量是10倍的体力值,base_con表示虚拟对象的固定属性带来的体力值部分,var_con表示游戏中的buff带来的增益体力值部分。
70.上述虚拟生命值的属性计算公式可以抽象成一个有向无环图,即,图3所示的有向拓扑图。在本示例中,一个参数节点的数值受其他参数节点影响的数量为该参数节点的入度,将入度为0的参数节点确定为叶子节点,针对上述计算虚拟生命值的属性计算公式,base_con、var_con、var_hp、10都是叶子节点。
71.在构建了上述有向拓扑图之后,可以利用拓扑排序,对上述属性计算公式中的各参数节点进行排序,并给排序后的每个参数节点设置一个编号,并确定该参数节点的数值的修改会影响到的祖先节点,以形成下面表1所示的属性计算公式中的各参数节点的节点参数表。
72.表1
73.节点名称参数节点的编号祖先节点的编号base_con15、6、7var_con25、6、71036、7var_hp47con56、7base_hp67hp7 74.在本技术实施例中,参照表1,各参数节点之间的拓扑关系包括与该参数节点存在计算关系的祖先节点以及该参数节点与每个祖先节点之间的计算关系。
75.在本技术一实施例中,可以以离线形式来生成针对目标属性的属性计算公式的配置文件,以供后续的游戏加载。应理解,本技术不限于此,还可以以在线形式或者其他形式来生成配置文件,以实时查看属性计算公式的设计效果。
76.返回图1,步骤s102,根据各参数节点之间的拓扑关系,生成针对属性计算公式在游戏中的全局公式结构。
77.在本技术实施例中,游戏中的一个目标属性仅对应一个全局公式结构,即,在该游戏中所有涉及目标属性的计算,均依赖于一个全局公式结构,避免了对公式结构的重复建立,能够有效减少内存消耗。
78.这里,全局公式结构用于表征属性计算公式中各参数节点之间的布局结构以及各参数节点之间的依赖关系。示例性的,全局公式结构可以包括属性计算公式中的每个参数节点、各参数节点对应的祖先节点、各参数节点与所对应的祖先节点之间的计算关系。作为示例,祖先节点指属性计算公式中能够被对应的参数节点影响节点属性值变化的节点,参数节点对应的祖先节点可以为空,也可以为一个或者多个。
79.例如,可以通过以下方式来生成属性计算公式在游戏中的全局公式结构:针对属性计算公式中的每个参数节点,创建一个结构条目,每个结构条目包括与该参数节点存在
计算关系的祖先节点以及该参数节点与每个祖先节点之间的计算关系,由所有参数节点对应的结构条目形成所述全局公式结构(参照图5所示)。
80.步骤s103,针对游戏中所创建的至少一个虚拟对象,分别生成与各虚拟对象所具备的目标属性对应的角公式数据。
81.在本技术实施例中,在读取上述步骤生成的配置文件之后,在生成全局公式结构时,还会针对游戏中的不同虚拟对象生成一份独占的角公式数据。这样的设计分离可以大大降低游戏运行时的内存,避免了公式结构重复多份所带来的内存浪费。
82.示例性的,每个虚拟对象对应的角公式数据包括针对目标属性的属性计算公式中的每个参数节点以及每个参数节点对应的节点属性值。
83.在一优选实施例中,可以通过以下方式生成与每个虚拟对象所具备的目标属性对应的角公式数据:根据全局公式结构,确定目标属性的属性计算公式中的每个参数节点;针对每个虚拟对象,从游戏中读取该虚拟对象与各参数节点对应的节点属性值,以形成该虚拟对象对应的角公式数据。
84.通过上述方式,可以基于配置文件来形成全局公式结构,再从游戏中读取各虚拟对象的与各参数节点对应的节点属性值来形成角公式数据,基于不同的数据获取途径来构建公式结构和公式数据。
85.步骤s104,响应针对至少一个虚拟对象中的目标虚拟对象的触发事件,基于全局公式结构和目标虚拟对象对应的角公式数据,在游戏中更新目标虚拟对象在触发事件下的目标属性。
86.在本技术一优选实施例中,触发事件可指作用于目标虚拟对象上、且用以影响目标属性变化的触发动作或者控制指令。
87.下面参照图4和图5来介绍更新目标虚拟对象在触发事件下的目标属性的过程。
88.图4示出本技术示例性实施例提供的更新目标虚拟对象在触发事件下的目标属性的步骤的流程图。
89.参照图4,在步骤s501中,从针对目标属性的属性计算公式中确定受触发事件影响导致节点属性值被更新的更新节点。
90.这里,每个触发事件可以影响目标属性的属性计算公式中的一参数节点的节点属性值发生改变,在检测到触发事件之后,可以从属性计算公式中确定受触发事件直接影响的更新节点。
91.在步骤s502中,基于全局公式结构,确定与更新节点存在计算关系的至少一个祖先节点、更新节点与每个祖先节点之间的计算关系。
92.例如,以图5所示的全局公式结构包括多个结构条目为例,可以从全局公式结构中确定与更新节点对应的目标结构条目,再从目标结构条目中提取与更新节点对应的祖先节点以及更新节点与各祖先节点之间的计算关系(计算关系在图5中未示出)。
93.在步骤s503中,针对所确定的每个祖先节点,根据更新节点在受触发事件影响之后的节点更新数值,来按照该祖先节点与更新节点之间的计算关系,确定该祖先节点的节点更新数值。
94.在步骤s504中,根据更新节点的节点更新数值以及各祖先节点的节点更新数值,更新目标虚拟对象在触发事件下的目标属性。
95.也就是说,当目标虚拟对象受触发事件影响导致角公式数据中的更新节点的节点属性值被更新时,读取全局公式结构中,与更新节点对应的祖先节点的编号,再依据相应的计算关系同步去更新祖先节点的节点属性值,以实现对目标属性的更新。
96.在本技术实施例中,上述信息处理方法可还包括:展示目标虚拟对象在所述触发事件下的目标属性。示例性的,可以通过以下方式来展现属性计算公式在游戏中的表现。
97.一种情况,基于命令窗口来展现属性计算公式在游戏中的表现。
98.在此情况下,触发事件可指在命令窗口中输入的模拟控制指令。
99.这里,该模拟控制指令是用于模拟游戏中作用在虚拟对象上的一触发操作的指令,例如,触发操作可指模拟虚拟对象穿上某种装备、或者向虚拟对象施加了某种魔法等。示例性的,模拟控制指令为作用于目标虚拟对象上、且用以影响目标属性变化的模拟指令。
100.上述命令窗口可为针对目标属性创建的、用于监测目标属性的属性值变化的程序窗口,例如,游戏设计者可以在命令窗口中创建目标属性的属性计算公式,当接收到在命令窗口中输入的模拟控制指令时,参照上述节点数值更新方式,来基于全局公式结构和目标虚拟对象的角公式数据来对各祖先节点的节点属性值进行更新,并可以在命令窗口中以命令行的形式展现更新节点的节点更新数值、各祖先节点的节点更新数值以及更新前/后的目标属性的属性值,以供游戏设计者观察属性计算公式的表现。
101.也就是说,可以通过以下方式展示目标虚拟角在触发事件下的目标属性:在命令窗口中呈现目标祖先节点的节点更新数值和/或目标属性的属性值。这里,目标祖先节点为与更新节点存在计算关系的每个祖先节点,更新节点为属性计算公式中受模拟控制指令影响导致节点属性值被更新的节点。
102.通过上述属性值呈现方式,可以克服游戏设计者与游戏开发者之间开发链路长的问题,使得游戏设计者可以快速、直接地查看到属性计算公式在游戏中的表现。
103.另一种情况,在游戏场景中展现属性计算公式在游戏中的表现。
104.在此情况下,触发事件可指在游戏的游戏场景中产生的触发事件,该触发事件可指作用于目标虚拟对象上、且用以影响目标属性变化的触发动作,基于该触发事件在游戏的游戏场景中展示目标虚拟对象处于所确定的属性值下的目标属性。
105.此时,需要先将目标属性的属性计算公式加载到游戏中,再从游戏场景中观察到属性计算公式在游戏中的表现。
106.下面参照图6来介绍在游戏中更新目标虚拟对象的目标属性的过程。
107.图6示出本技术示例性实施例提供在游戏中更新目标属性的步骤的流程图。
108.参照图6,在步骤s701中,根据更新节点的节点更新数值以及更新节点所对应的祖先节点的节点更新数值,对目标虚拟对象对应的角公式数据进行更新。
109.这里,更新节点为属性计算公式中受触发事件影响导致节点属性值被更新的节点。在本技术实施例中,一个虚拟对象对应一角公式数据,在检测到触发事件之后,根据触发事件所涉及到的更新节点和祖先节点,对角公式数据中各参数节点的节点属性值进行更新,以获得更新后的角公式数据。
110.在步骤s702中,基于更新后的角公式数据,确定目标虚拟对象所具备的目标属性的属性值。
111.基于上述更新后的角公式数据中的目标属性的最终值(如图5中所示的虚拟生
命值hp),来在游戏中更新目标虚拟对象所具备的目标属性。示例性的,可以在游戏的游戏场景中呈现目标虚拟对象,此时,所呈现的目标虚拟对象所具备的目标属性即为在触发事件影响下的属性值。
112.在步骤s703中,在游戏中更新目标虚拟对象处于所确定的属性值下的目标属性。
113.这里,目标虚拟对象所具备的目标属性随触发事件的作用而变化,并且目标属性的变化受属性计算公式中各参数节点之间的计算关系影响。通过上述在游戏场景中展示目标虚拟对象的目标属性的方式,可以直观反映出属性计算公式对目标属性的约束效果。
114.下面参照图7来介绍将目标属性的属性计算公式加载到游戏中的过程。
115.图7示出本技术示例性实施例提供的在游戏中加载属性计算公式的步骤的流程图。
116.参照图7,在步骤s801中,从游戏的预设代码库中查与目标属性相匹配的目标代码。
117.这里,为获得期望的属性值计算公式,往往需要经过多次的修改、迭代才能够得到,本技术中为简化对公式修改迭代的研发流程,可以预先针对各属性的属性计算公式编写出对应的代码,并存入与预设代码库中,所编写的代码为用于将对应的属性计算公式加载到游戏中的代码。
118.示例性的,预设代码库中存储有属性标识,各属性标识用于指示虚拟对象所具备的不同属性,还存储有各属性计算公式对应的代码,即,与各属性标识所指示的属性的属性计算公式对应的代码。
119.此时,在读取到配置文件之后,基于配置文件所指示的目标属性,从预设代码库中查与目标属性匹配的属性标识,并将查到的属性标识对应的代码确定为与目标属性相匹配的目标代码。
120.在一优选实施例中,预设代码库中可还存储有与各属性标识所对应的属性计算公式的公式结构,后续基于属性标识、公式结构来从预设代码库中搜索目标代码。
121.图8示出本技术示例性实施例提供的确定属性计算公式的目标代码的步骤的流程图。
122.参照图8,在步骤s901中,从游戏的预设代码库中搜索是否存在目标属性对应的属性计算公式。
123.例如,在读取到配置文件之后,基于配置文件所指示的目标属性,从预设代码库中查与目标属性匹配的属性标识,并确定与查到的属性标识对应的属性计算公式。
124.若不存在,则返回执行步骤s901,以继续搜索是否存在目标属性对应的属性计算公式,或者跳转为结束。
125.若存在,则执行步骤s902:确定目标属性的属性计算公式的公式结构与搜索到的属性计算公式的公式结构是否一致。
126.示例性的,可以基于属性计算公式中的参数节点数量、或者基于参数节点数量和各参数节点之间存在的计算关系来判断公式结构是否一致。
127.针对基于参数节点数量确定一致性的情况,若两个公式的参数节点数量一致,则确定目标属性的属性计算公式的公式结构与搜索到的属性计算公式的公式结构一致,若两个公式的参数节点数量不一致,则确定目标属性的属性计算公式的公式结构与搜索到的属
性计算公式的公式结构不一致。此时由于在目标属性的属性计算公式中增加或删减了参数节点,需要游戏开发者重新针对属性计算公式编写代码,无法直接调用预设代码库中存储的代码。
128.针对基于参数节点数量和计算关系确定一致性的情况,若两个公式的参数节点数量一致、且各参数节点之间存在的计算关系也一致,则确定目标属性的属性计算公式的公式结构与搜索到的属性计算公式的公式结构一致,若两个公式的参数节点数量和各参数节点之间存在的计算关系中的至少一个不一致,则确定目标属性的属性计算公式的公式结构与搜索到的属性计算公式的公式结构不一致。此时由于在目标属性的属性计算公式中增加或删减了参数节点,或者修改了计算关系,也需要游戏开发者重新针对属性计算公式编写代码,无法直接调用预设代码库中存储的代码。
129.若不一致,则返回执行步骤s902,或者跳转为结束。
130.若一致,则执行步骤s903:将预设代码库中与搜索到的属性计算公式对应的代码,确定为目标代码。
131.针对基于参数节点数量确定一致性的情况,在搜索到属性计算公式对应的代码之后,还需比对目标属性的属性计算公式中各参数节点之间存在的计算关系与搜索到的属性计算公式中各参数节点之间存在的计算关系是否一致,若一致,则直接将搜索到的代码确定为目标代码,若不一致,则确定存在差别的目标计算关系,并基于目标计算关系对搜索到的代码中的目标程序段进行修改,该目标程序段为在搜索到的代码中用于表征该目标计算关系的程序段,将修改后的代码确定为目标代码。
132.针对基于参数节点数量和计算关系确定一致性的情况,可以直接将搜索到的代码确定为目标代码。
133.除此之外,在游戏设计者对属性计算公式进行修改、迭达的过程中,可能对属性计算公式中的参数节点的赋值进行修改,以图3所示的示例为例,可以将其中一参数节点的赋值从10修改为20(修改公式中的常量),此时属性计算公式的公式结构(参数节点数量和计算关系)未发生改变,可以在所生成的配置文件中携带参数节点标识,该参数节点标识用于指示属性计算公式中的参数节点,用于指示针对所标记的参数节点的赋值进行了修改,在确定目标代码时,利用参数节点标识所指示的参数节点在目标属性的属性计算公式中的赋值,替换搜索到的代码中参数节点标识所指示的参数节点的赋值,并将替换后的代码确定为目标代码。
134.返回图7,在步骤s802中,利用查到的目标代码,将针对目标属性的属性计算公式加载到游戏中,以在游戏的游戏场景中展示目标虚拟对象在触发事件下的目标属性。
135.通过上述方式能够便捷的修改公式,同时又能很直观的看到公式修改后的结果。也就是说,使得游戏设计者可以在设计完成公式之后,在游戏中快速看到公式的效果,而不需要游戏开发者的二次开发。
136.此外,还可以通过采用python+cpp的开发模式,在快捷开发的同时,降低cpu消耗。
137.根据本技术实施例的游戏中的信息处理方法,采用了公式数据与公式结构分离的设计方法,有效减少了内存的消耗,在便捷开发的同时,也给游戏带来了更高的运行稳定性。此外,还可以将游戏设计者编写的属性计算公式快速解析加载到游戏服务器中,使得游戏设计者可以快速查看新设计的属性计算公式所带来的战斗、数值表现。
138.基于同一申请构思,本技术实施例中还提供了与上述实施例提供的方法对应的游戏中的信息处理装置,由于本技术实施例中的装置解决问题的原理与本技术上述实施例的游戏中的信息处理方法相似,因此装置的实施可以参见方法的实施,重复之处不再赘述。
139.图9为本技术示例性实施例提供的游戏中的信息处理装置的结构示意图。如图9所示,该游戏中的信息处理装置100包括:
140.文件读取模块110,读取配置文件,所述配置文件记载了针对目标属性的属性计算公式中的各参数节点及各参数节点之间的拓扑关系。
141.结构生成模块120,根据各参数节点之间的拓扑关系,生成针对所述属性计算公式在游戏中的全局公式结构。
142.数据创建模块130,针对所述游戏中所创建的至少一个虚拟对象,分别生成与各虚拟对象所具备的目标属性对应的角公式数据,角公式数据包含每个参数节点对应的节点属性值。
143.属性更新模块140,响应针对至少一个虚拟对象中的目标虚拟对象的触发事件,基于全局公式结构和目标虚拟对象对应的角公式数据,在游戏中更新目标虚拟对象在所述触发事件下的目标属性。
144.在本技术的一种可能实施方式中,所述全局公式结构包括属性计算公式中的每个参数节点、各参数节点对应的祖先节点、各参数节点与所对应的祖先节点之间的计算关系,所述祖先节点指属性计算公式中能够被对应的参数节点影响节点属性值变化的节点。
145.在本技术的一种可能实施方式中,属性更新模块140可以通过以下方式更新目标虚拟对象在所述触发事件下的目标属性:从针对目标属性的属性计算公式中确定受所述触发事件影响导致节点属性值被更新的更新节点;基于所述全局公式结构,确定与所述更新节点存在计算关系的至少一个祖先节点、所述更新节点与每个祖先节点之间的计算关系;针对所确定的每个祖先节点,根据更新节点在受所述触发事件影响之后的节点更新数值,来按照该祖先节点与更新节点之间的计算关系,确定该祖先节点的节点更新数值;根据更新节点的节点更新数值以及各祖先节点的节点更新数值,更新目标虚拟对象在所述触发事件下的目标属性。
146.在本技术的一种可能实施方式中,数据创建模块130通过以下方式生成与每个虚拟对象所具备的目标属性对应的角公式数据:根据所述全局公式结构,确定目标属性的属性计算公式中的每个参数节点;针对每个虚拟对象,从所述游戏中读取该虚拟对象与各参数节点对应的节点属性值,以形成该虚拟对象对应的角公式数据。
147.在本技术的一种可能实施方式中,所述触发事件包括以下项中的任一项:在命令窗口中输入的模拟控制指令,所述模拟控制指令为作用于目标虚拟对象上、且用以影响目标属性变化的模拟指令,所述命令窗口为针对目标属性创建的、用于监测目标属性的属性值变化的程序窗口;在游戏的游戏场景中产生的触发事件,所述触发事件为作用于目标虚拟对象上、且用以影响目标属性变化的触发动作。
148.在本技术的一种可能实施方式中,属性更新模块140还展示目标虚拟对象在所述触发事件下的目标属性,其中,属性更新模块140通过以下方式展示目标虚拟对象在所述触发事件下的目标属性:在所述命令窗口中呈现目标祖先节点的节点更新数值和/或所述目标属性的属性值,所述目标祖先节点为与更新节点存在计算关系的每个祖先节点,所述更
新节点为属性计算公式中受所述模拟控制指令影响导致节点属性值被更新的节点;在所述游戏的游戏场景中展示目标虚拟对象在所述触发事件下的目标属性。
149.在本技术的一种可能实施方式中,属性更新模块140通过以下方式更新目标虚拟对象在所述触发事件下的目标属性:根据更新节点的节点更新数值以及更新节点所对应的祖先节点的节点更新数值,对所述目标虚拟对象对应的角公式数据进行更新,所述更新节点为属性计算公式中受所述触发事件影响导致节点属性值被更新的节点;基于更新后的角公式数据,确定所述目标虚拟对象所具备的目标属性的属性值;在所述游戏中更新目标虚拟对象处于所确定的属性值下的目标属性。
150.在本技术的一种可能实施方式中,属性更新模块140从所述游戏的预设代码库中查与目标属性相匹配的目标代码;利用查到的目标代码,将针对目标属性的属性计算公式加载到所述游戏中,以在所述游戏的游戏场景中展示目标虚拟对象在所述触发事件下的目标属性。
151.在本技术的一种可能实施方式中,所述预设代码库中存储有针对不同属性的属性计算公式、各属性计算公式的公式结构以及各属性计算公式对应的代码,其中,属性更新模块140从所述游戏的预设代码库中搜索是否存在目标属性对应的属性计算公式;若存在,确定目标属性的属性计算公式的公式结构与搜索到的属性计算公式的公式结构是否一致;若一致,将所述预设代码库中与搜索到的属性计算公式对应的代码,确定为目标代码。
152.在本技术的一种可能实施方式中,各参数节点之间的拓扑关系包括与该参数节点存在计算关系的祖先节点以及该参数节点与每个祖先节点之间的计算关系,其中,结构生成模块120针对属性计算公式中的每个参数节点,创建一个结构条目,每个结构条目包括与该参数节点存在计算关系的祖先节点以及该参数节点与每个祖先节点之间的计算关系;由所有参数节点对应的结构条目形成所述全局公式结构。
153.在本技术的一种可能实施方式中,上述游戏中的信息处理装置可还包括文件生成模块,通过以下方式生成所述配置文件:确定针对目标属性的属性计算公式中的每个参数节点的入度;构建属性计算公式的有向拓扑图,其中,所述有向拓扑图包括拓扑节点和有向边,每个拓扑节点分别对应属性计算公式中的一个参数节点,属性计算公式中入度为零的参数节点被确定为有向拓扑图的叶子节点,通过有向边将存在计算关系的两个拓扑节点进行连接,每个有向边的边属性用于记载所连接的两个拓扑节点之间的计算关系;根据所构建的有向拓扑图,确定每个参数节点对应的祖先节点以及各参数节点与对应的祖先节点之间的计算关系,以形成所述配置文件。
154.根据本技术实施例的游戏中的信息处理装置,采用了公式数据与公式结构分离的设计方法,有效减少了内存的消耗,在便捷开发的同时,也给游戏带来了更高的运行稳定性。此外,还可以将游戏设计者编写的属性计算公式快速解析加载到游戏服务器中,使得游戏设计者可以快速查看新设计的属性计算公式所带来的战斗、数值表现。
155.请参阅图10,图10为本技术示例性实施例提供的电子设备的结构示意图。如图10所示,该电子设备200包括处理器210、存储器220和总线230。
156.所述存储器220存储有所述处理器210可执行的机器可读指令,当电子设备200运行时,所述处理器210与所述存储器220之间通过总线230通信,所述机器可读指令被所述处理器210执行时,可以执行如上述任一实施例中游戏中的信息处理方法的步骤,具体如下:
157.读取配置文件,所述配置文件记载了针对目标属性的属性计算公式中的各参数节点及各参数节点之间的拓扑关系;根据所述各参数节点之间的拓扑关系,生成针对所述属性计算公式在游戏中的全局公式结构;针对所述游戏中所创建的至少一个虚拟对象,分别生成与各虚拟对象所具备所述目标属性对应的角公式数据,所述角公式数据包含每个所述参数节点对应的节点属性值;响应针对所述至少一个虚拟对象中的目标虚拟对象的触发事件,基于所述全局公式结构和所述目标虚拟对象对应的角公式数据,在所述游戏中更新所述目标虚拟对象在所述触发事件下的目标属性。
158.在本技术的一种可能实施方式中,所述全局公式结构包括属性计算公式中的每个参数节点、各参数节点对应的祖先节点、各参数节点与所对应的祖先节点之间的计算关系,所述祖先节点指属性计算公式中能够被对应的参数节点影响节点属性值变化的节点。
159.在本技术的一种可能实施方式中,处理器210可以执行如下处理,以通过以下方式更新目标虚拟对象在所述触发事件下的目标属性:从针对目标属性的属性计算公式中确定受所述触发事件影响导致节点属性值被更新的更新节点;基于所述全局公式结构,确定与所述更新节点存在计算关系的至少一个祖先节点、所述更新节点与每个祖先节点之间的计算关系;针对所确定的每个祖先节点,根据更新节点在受所述触发事件影响之后的节点更新数值,来按照该祖先节点与更新节点之间的计算关系,确定该祖先节点的节点更新数值;根据更新节点的节点更新数值以及各祖先节点的节点更新数值,更新目标虚拟对象在所述触发事件下的目标属性。
160.在本技术的一种可能实施方式中,处理器210可以执行如下处理,以通过以下方式生成与每个虚拟对象所具备的目标属性对应的角公式数据:根据所述全局公式结构,确定目标属性的属性计算公式中的每个参数节点;针对每个虚拟对象,从所述游戏中读取该虚拟对象与各参数节点对应的节点属性值,以形成该虚拟对象对应的角公式数据。
161.在本技术的一种可能实施方式中,所述触发事件包括以下项中的任一项:在命令窗口中输入的模拟控制指令,所述模拟控制指令为作用于目标虚拟对象上、且用以影响目标属性变化的模拟指令,所述命令窗口为针对目标属性创建的、用于监测目标属性的属性值变化的程序窗口;在游戏的游戏场景中产生的触发事件,所述触发事件为作用于目标虚拟对象上、且用以影响目标属性变化的触发动作。
162.在本技术的一种可能实施方式中,处理器210可以执行如下处理,以通过以下方式展示目标虚拟对象在所述触发事件下的目标属性:在所述命令窗口中呈现目标祖先节点的节点更新数值和/或所述目标属性的属性值,所述目标祖先节点为与更新节点存在计算关系的每个祖先节点,所述更新节点为属性计算公式中受所述模拟控制指令影响导致节点属性值被更新的节点;在所述游戏的游戏场景中展示目标虚拟对象在所述触发事件下的目标属性。
163.在本技术的一种可能实施方式中,处理器210可以执行如下处理,以通过以下方式更新目标虚拟对象在所述触发事件下的目标属性:根据更新节点的节点更新数值以及更新节点所对应的祖先节点的节点更新数值,对所述目标虚拟对象对应的角公式数据进行更新,所述更新节点为属性计算公式中受所述触发事件影响导致节点属性值被更新的节点;基于更新后的角公式数据,确定所述目标虚拟对象所具备的目标属性的属性值;在所述游戏中更新目标虚拟对象处于所确定的属性值下的目标属性。
164.在本技术的一种可能实施方式中,处理器210可以还执行如下处理:从所述游戏的预设代码库中查与目标属性相匹配的目标代码;利用查到的目标代码,将针对目标属性的属性计算公式加载到所述游戏中,以在所述游戏的游戏场景中展示目标虚拟对象在所述触发事件下的目标属性。
165.在本技术的一种可能实施方式中,所述预设代码库中存储有针对不同属性的属性计算公式、各属性计算公式的公式结构以及各属性计算公式对应的代码,其中,处理器210可以还执行如下处理:从所述游戏的预设代码库中搜索是否存在目标属性对应的属性计算公式;若存在,确定目标属性的属性计算公式的公式结构与搜索到的属性计算公式的公式结构是否一致;若一致,将所述预设代码库中与搜索到的属性计算公式对应的代码,确定为目标代码。
166.在本技术的一种可能实施方式中,各参数节点之间的拓扑关系包括与该参数节点存在计算关系的祖先节点以及该参数节点与每个祖先节点之间的计算关系,其中,处理器210可以还执行如下处理:针对属性计算公式中的每个参数节点,创建一个结构条目,每个结构条目包括与该参数节点存在计算关系的祖先节点以及该参数节点与每个祖先节点之间的计算关系;由所有参数节点对应的结构条目形成所述全局公式结构。
167.在本技术的一种可能实施方式中,处理器210可以执行如下处理,以通过以下方式生成所述配置文件:确定针对目标属性的属性计算公式中的每个参数节点的入度;构建属性计算公式的有向拓扑图,其中,所述有向拓扑图包括拓扑节点和有向边,每个拓扑节点分别对应属性计算公式中的一个参数节点,属性计算公式中入度为零的参数节点被确定为有向拓扑图的叶子节点,通过有向边将存在计算关系的两个拓扑节点进行连接,每个有向边的边属性用于记载所连接的两个拓扑节点之间的计算关系;根据所构建的有向拓扑图,确定每个参数节点对应的祖先节点以及各参数节点与对应的祖先节点之间的计算关系,以形成所述配置文件。
168.根据本技术实施例的电子设备,采用了公式数据与公式结构分离的设计方法,有效减少了内存的消耗,在便捷开发的同时,也给游戏带来了更高的运行稳定性。此外,还可以将游戏设计者编写的属性计算公式快速解析加载到游戏服务器中,使得游戏设计者可以快速查看新设计的属性计算公式所带来的战斗、数值表现。
169.本技术实施例还提供一种计算机可读存储介质,该存储介质上存储有计算机程序,该计算机程序被处理器运行时可以执行如上述任一实施例中游戏中的信息处理方法的步骤,具体如下:
170.读取配置文件,所述配置文件记载了针对目标属性的属性计算公式中的各参数节点及各参数节点之间的拓扑关系;根据所述各参数节点之间的拓扑关系,生成针对所述属性计算公式在游戏中的全局公式结构;针对所述游戏中所创建的至少一个虚拟对象,分别生成与各虚拟对象所具备所述目标属性对应的角公式数据,所述角公式数据包含每个所述参数节点对应的节点属性值;响应针对所述至少一个虚拟对象中的目标虚拟对象的触发事件,基于所述全局公式结构和所述目标虚拟对象对应的角公式数据,在所述游戏中更新所述目标虚拟对象在所述触发事件下的目标属性。
171.在本技术的一种可能实施方式中,所述全局公式结构包括属性计算公式中的每个参数节点、各参数节点对应的祖先节点、各参数节点与所对应的祖先节点之间的计算关系,
所述祖先节点指属性计算公式中能够被对应的参数节点影响节点属性值变化的节点。
172.在本技术的一种可能实施方式中,处理器可以执行如下处理,以通过以下方式更新目标虚拟对象在所述触发事件下的目标属性:从针对目标属性的属性计算公式中确定受所述触发事件影响导致节点属性值被更新的更新节点;基于所述全局公式结构,确定与所述更新节点存在计算关系的至少一个祖先节点、所述更新节点与每个祖先节点之间的计算关系;针对所确定的每个祖先节点,根据更新节点在受所述触发事件影响之后的节点更新数值,来按照该祖先节点与更新节点之间的计算关系,确定该祖先节点的节点更新数值;根据更新节点的节点更新数值以及各祖先节点的节点更新数值,更新目标虚拟对象在所述触发事件下的目标属性。
173.在本技术的一种可能实施方式中,处理器可以执行如下处理,以通过以下方式生成与每个虚拟对象所具备的目标属性对应的角公式数据:根据所述全局公式结构,确定目标属性的属性计算公式中的每个参数节点;针对每个虚拟对象,从所述游戏中读取该虚拟对象与各参数节点对应的节点属性值,以形成该虚拟对象对应的角公式数据。
174.在本技术的一种可能实施方式中,所述触发事件包括以下项中的任一项:在命令窗口中输入的模拟控制指令,所述模拟控制指令为作用于目标虚拟对象上、且用以影响目标属性变化的模拟指令,所述命令窗口为针对目标属性创建的、用于监测目标属性的属性值变化的程序窗口;在游戏的游戏场景中产生的触发事件,所述触发事件为作用于目标虚拟对象上、且用以影响目标属性变化的触发动作。
175.在本技术的一种可能实施方式中,处理器可以执行如下处理,以通过以下方式展示目标虚拟对象在所述触发事件下的目标属性:在所述命令窗口中呈现目标祖先节点的节点更新数值和/或所述目标属性的属性值,所述目标祖先节点为与更新节点存在计算关系的每个祖先节点,所述更新节点为属性计算公式中受所述模拟控制指令影响导致节点属性值被更新的节点;在所述游戏的游戏场景中展示目标虚拟对象在所述触发事件下的目标属性。
176.在本技术的一种可能实施方式中,处理器可以执行如下处理,以通过以下方式更新目标虚拟对象在所述触发事件下的目标属性:根据更新节点的节点更新数值以及更新节点所对应的祖先节点的节点更新数值,对所述目标虚拟对象对应的角公式数据进行更新,所述更新节点为属性计算公式中受所述触发事件影响导致节点属性值被更新的节点;基于更新后的角公式数据,确定所述目标虚拟对象所具备的目标属性的属性值;在所述游戏中更新目标虚拟对象处于所确定的属性值下的目标属性。
177.在本技术的一种可能实施方式中,处理器可以还执行如下处理:从所述游戏的预设代码库中查与目标属性相匹配的目标代码;利用查到的目标代码,将针对目标属性的属性计算公式加载到所述游戏中,以在所述游戏的游戏场景中展示目标虚拟对象在所述触发事件下的目标属性。
178.在本技术的一种可能实施方式中,所述预设代码库中存储有针对不同属性的属性计算公式、各属性计算公式的公式结构以及各属性计算公式对应的代码,其中,处理器可以还执行如下处理:从所述游戏的预设代码库中搜索是否存在目标属性对应的属性计算公式;若存在,确定目标属性的属性计算公式的公式结构与搜索到的属性计算公式的公式结构是否一致;若一致,将所述预设代码库中与搜索到的属性计算公式对应的代码,确定为目
标代码。
179.在本技术的一种可能实施方式中,各参数节点之间的拓扑关系包括与该参数节点存在计算关系的祖先节点以及该参数节点与每个祖先节点之间的计算关系,其中,处理器可以还执行如下处理:针对属性计算公式中的每个参数节点,创建一个结构条目,每个结构条目包括与该参数节点存在计算关系的祖先节点以及该参数节点与每个祖先节点之间的计算关系;由所有参数节点对应的结构条目形成所述全局公式结构。
180.在本技术的一种可能实施方式中,处理器可以执行如下处理,以通过以下方式生成所述配置文件:确定针对目标属性的属性计算公式中的每个参数节点的入度;构建属性计算公式的有向拓扑图,其中,所述有向拓扑图包括拓扑节点和有向边,每个拓扑节点分别对应属性计算公式中的一个参数节点,属性计算公式中入度为零的参数节点被确定为有向拓扑图的叶子节点,通过有向边将存在计算关系的两个拓扑节点进行连接,每个有向边的边属性用于记载所连接的两个拓扑节点之间的计算关系;根据所构建的有向拓扑图,确定每个参数节点对应的祖先节点以及各参数节点与对应的祖先节点之间的计算关系,以形成所述配置文件。
181.根据本技术实施例的计算机可读存储介质,采用了公式数据与公式结构分离的设计方法,有效减少了内存的消耗,在便捷开发的同时,也给游戏带来了更高的运行稳定性。此外,还可以将游戏设计者编写的属性计算公式快速解析加载到游戏服务器中,使得游戏设计者可以快速查看新设计的属性计算公式所带来的战斗、数值表现。
182.所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统和装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。在本技术所提供的几个实施例中,应所述理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
183.所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
184.另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
185.所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者所述技术方案的部分可以以软件产品的形式体现出来,所述计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-only memory,rom)、随机存取存储器(random access memory,ram)、磁碟或者光盘等各种
可以存储程序代码的介质。
186.以上仅为本技术的具体实施方式,但本技术的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本技术揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本技术的保护范围之内。因此,本技术的保护范围应以权利要求的保护范围为准。


文章投稿或转载声明

本文链接:http://www.wtabcd.cn/zhuanli/patent-15-1041-0.html

来源:专利查询检索下载-实用文体写作网版权所有,转载请保留出处。本站文章发布于 2022-11-27 21:25:54

发表评论

验证码:
用户名: 密码: 匿名发表
评论列表 (有 条评论
2人围观
参与讨论