星火编辑器:自定义数遍-进阶
03/11163 浏览主题教程
一、什么是自定义数编?
在星火编辑器开发中,自定义数遍允许你在数据编辑器中定制特定的事件和逻辑。通过自定义数编,你可以根据自己的需求,扩展和优化数据编辑器的使用。
二、创建自定义数编模块类型
1、创建项目后,用 VSCode 或其他工具打开项目目录。
2、在 editor/table/ 下新建文件夹并命名为 node-type 。
所有配置数编类型的文件都应该放在这个文件夹中。
3、接下来,新建你的数编类型。
在 node_type 文件夹下,根据你的需求新建一个文件夹。例如,我这里新建了一个名为 excel 的文件夹。然后在这个文件夹下新建一个名为 node_type.ini 的文本文件。
这样数编模块类型就创建好了。
文件夹的名称就是模块类型的ID
数遍类型文件创建和修改后需要编辑器重新加载才可以正常显示
还有可以快速创建数遍模块类型的方法,通过这个方法保存编辑器后项目目录就会生成配置文件
类型编辑器使用指南 | 星火编辑器文档
触发编辑器中的类型编辑器可以定义数编节点分类及类型,供数据编辑器读取或使用。接下来将介绍类型编辑器,并用类型编辑器简单实现类似塔防模板中的关卡配置表。
https://doc.sce.xd.com/Manual/TriggerEditor/Advanced/TypeEditor
打开数据编辑器点击左上角的⚙︎齿轮,勾选模板和创建的数遍类型

下图就是新建的数遍类型,打开可以发现他只有一个名称和类型的显示什么都没有,因为还没有对这个数遍类型进行数据配置

新建的数遍类型
三、配置数编模块类型
数编的模块类型,unit、spell、buff等都是模块类型,每个模块类型包括若干个节点类型(这些节点类型可能有一个或多个基本的,其余继承它们),也对应一个基本类型,官方声明的模块类型有独立的链接基本类型

[#CONFIG]
‘DisplayName’显示名称字段是给数遍类型配置在数据编辑器中显示名称的
'Icon'显示图标字段可以不配置有默认图标。

配置后效果
四、配置数遍节点类型
数编的节点类型是由基本类型堆叠起来的类型,包括两种情况:一种是通过别名方式对原始类型的修改;一种是通过表-元素结构构造出一个复合类型。

配置节点
['Excel']: 节点ID
‘DisplayName’: 显示名称,显示在节点的右上角
‘Inherit’:继承某个节点,值为nil时默认继承模块根节点
‘Color’:在作为链接节点时右上角标签显示颜色,值为nil继承模块类型的配置
‘Data’:配置子级字段
‘UIConfig’:节点类型的UI基本配置
‘Game’:显示在数据编辑器右边节点属性栏中的[游戏属性]中的字段
‘Value’: 字段类型的key
'Type':字段的数据类型,# 表示这是一个数组类型 ,1表示一维数组
‘DisplayName’:显示名称,
‘UIConfig’:字段类型的UI配置
‘ShowOnNode’:是否显示在节点上,值为false时则只显示在右边属性栏上

节点效果
配置节点后就可以在项目蓝图中新建实例节点
五、配置自定义属性
数编的属性类型是由基本类型堆叠起来的类型,包括两种情况:一种是通过别名方式对原始类型的修改;一种是通过表-元素结构构造出一个复合类型。
配置前在excel模板修改Excel节点添加2个节点类型

Excel节点类型

ExcelPage节点类型

ExcelValue节点类型
这里的ExcelPageLink、ExcelValueLink、anyFun就是要自定义的类型,
1、在项目目录下的editor\table\下新建property_type文件夹
2、在property_type文件夹下新建property_type.ini文件

property_type.ini配置
[] 属性名
‘BaseType’: 基本类型,官方定义的基本类型
‘LinkID’: 属性类型链接ID,仅在BaseType配置为link时配置,填写的值是一个模块类型或节点类型,填写模块类型等价于填写模块类型的公共父节点类型,填写值无效时,属性类型对应的数据视为字符串处理
‘MethodInfo’:属性类型方法信息,在BaseType配置为method、validator或公式相关类型时配置
'Args':方法参数列表
'ArgID':参数名称
'Type': 参数类型
'ReturnType': 返回类型
配置后效果

Excel节点类型

ExcelPage节点类型

ExcelValue节点类型
六、配置节点模板
数编的实例模块是数编对象在游戏运行时的基本单元,它代表了一个确定游戏对象的完整数据。
1、在项目目录下的editor\table\entry_data\下新建template@模块类型ID的文件夹:template@excel
2、在template@excel下新建一个节点ID名的文件夹,一个文件代表了一个节点模板
文件夹的命名需要符合一些规则,大写的字母需要# 符号后加上小写字母:Excel > #excel
3、在#excel文件夹下新建entry _data.ini文件
4、给相应字段设置值
模板的定义和节点配置的差不多不同的是‘Game’里面的属性是设置值
‘Name’是每个节点默认有的,是显示在节点左上角的名称

节点模板配置
['root']: 代表这个是蓝图中的根节点
‘NodeType’: 模板类型ID.节点类型ID
‘Inherit’: node_type@模板类型ID.节点类型ID.root
还可以进一步的配置默认模板

Excel节点模板配置

配置效果
模板的配置可以在数据编辑器中完成,配置好后保存编辑器就会自动生成配置文件,所以配置模板文件可以不写。
配置文件在编辑器保存的时候都会在原有的文件上添加一些默认字段。


需要注意如果配置文件出现错误配置的话,编辑器重新加载的话可能就会出现报错、无法正常进行加载流程会卡在那、或者无法正确显示数遍编辑器。当不知道错误时可以删除修改的配置内容,或者配置文件,重新加载编辑器就行。

