规则集编辑器
1. 概述
在规则集的编辑页面中,PGOS同时提供了表单模式和源代码模式,我们可以灵活地在两种模式之间切换。 表单模式:
- 数据编辑简单;
- 数据查看更直观;
源代码模式:
- 更完整地查看脚本内容;
- 数据编辑更灵活;
2. 规则集编辑页面
当我们进入新建(或编辑)规则集页面时,PGOS默认会提供表单模式的编辑界面,如下图所示:
我们可以将页面内容分为两部分:基本信息、脚本信息。
3. 基本信息
基本信息包括规则集的规则集名称和描述,如下所示:
字段说明:
- 规则集名称:规则集的名称,在每个游戏区服内必须唯一。(最多128个字符,遵循正则表达式 [a-zA-Z0-9-.]*)
- 描述:规则集的描述。(最多1024个字符)
规则集名称在当前游戏区服内必须保持唯一。
4. 脚本信息
PGOS为脚本编辑器提供了两种编辑模式,表单模式和源代码模式。我们可以通过点击进入源代码模式、退出源代码模式按钮来切换,PGOS会确保两种模式之间的数据一致性,您可以放心操作。
4.1 表单模式
当按钮显示进入源代码模式时,我们进入表单模式,如下图所示:
通过表单模式,我们可以轻松编辑数据。从上图可以看出,规则集分为四个模块:玩家属性、队伍、规则和扩展。下面我们详细介绍每个模块:
4.1.1 玩家属性
玩家属性表单如下所示:
点击添加属性以添加数据。我们可以选择两种方式添加数据:客户端请求、玩家数据,如下图所示:
字段说明
- 数据来源:
可选
,PGOS提供两种选择方式,客户端请求,玩家数据; - Key:
必填
,仅在数据来源选择为玩家数据时出现,选择内容为当前游戏区服定义的玩家数据; - 名称:
必填
,玩家属性的名称,最大长度为32个字符; - 类型:
必填
,玩家属性的数据类型,可选择字符串,数值; - 默认值:
可选
,玩家属性数据的默认值,必须符合当前定义的数据类型;
4.1.2 队伍
队伍表单如下所示:
点击添加队伍以添加数据,如下图所示:
字段说明
- 名称:
必填
,团队的名称,最大长度为32个字符; - 最小玩家数:
必填
,数值必须在1到40之间; - 最大玩家数:
必填
,数值必须在1到40之间,且最大玩家数必须大于或等于最小玩家数; - 最小数量:
选填
,数值必须在1到999之间; - 最大数量:
选填
,数值必须在1到999之间,且最大数量必须大于或等于最小数量;
4.1.3 规则
PGOS 目前支持三种类型的规则配置:距离规则、比较规则和延迟规则。每种类型包含不同的字段,规则表单如下所示:
点击添加规则添加数据,如下图所示:
基本信息
- 名称:
必填
,规则名称,最大长度为32个字符; - 类型:
必填
,规则类型,PGOS目前支持:距离规则、比较规则、延迟规则; - 描述:
必填
,规则描述,最大长度为32个字符;
距离规则信息 当我们选择规则类型为距离规则时,表单将切换到距离规则字段信息,如下图所示:
距离规则包含的字段信息如下:
- 测量值:
必填
,距离规则的测量值,可以填写多个表达式信息,例如:flatten(teams[*].players.playerAttributes[mmr]); - 参考值:
必填
,距离规则的参考值,例如:avg(flatten(teams[*].players.playerAttributes[mmr])); - 最大距离:
必填
,距离规则的最大距离,类型:数值; - 最小距离:
可选
,距离规则的最小距离,类型:数值; - 组队聚合:
可选
,距离规则的组队聚合方式,可选值为:Each、Avg、Min、Max、Any;
比较规则 当我们选择规则类型为比较规则时,表单将切换到比较规则的字段信息,如下图所示:
比较规则中包含的字段信息如下:
- 测量值:
必填
,距离规则的测量值,可以填写多个表达式信息,例如:flatten(teams[*].players.playerAttributes[mmr]); - 参考值:
必填
,距离规则的参考值,例如:avg(flatten(teams[*].players.playerAttributes[mmr])); - 运算符:
必填
,比较规则的运算符,可选值为:=, !=, <, <=, >, >=;
延迟规则 当我们选择规则类型为延迟规则时,表单将切换到延迟规则字段信息,如下图所示:
延迟规则包含的字段信息如下:
- 最大延迟:
必填
,延迟规则的最大延迟,类型为数字; - 组队聚合:
可选
,延迟规则的组队聚合方式,可选值为:Each、Avg、Min、Max、Any;
4.1.4 扩展
扩展表单如下所示:
点击添加扩展以添加数据,如下所示:
字段说明
- 目标表达式:
必填
,Expansion的目标表达式,例如rules[mmr_calc].maxDistance; - 步骤:
必填
,Expansion的步骤,可填写多条数据;
4.2 源代码模式
当按钮显示为退出源代码模式时,我们进入源代码编辑模式,如下图所示:
通过源代码模式,我们可以更完整地查看规则集脚本的数据信息。源代码是一个合法的Json字符串。当您输入的数据不合法时,页面会给出相应的提示信息:
5. 提交规则集
完成规则集编辑后,您可以点击编辑页面左下角的操作按钮来执行相关操作。操作区域如图所示:
操作说明:
- 返回:返回上一页面,当前页面已编辑的内容将被清空;
- 验证规则集:验证规则集的有效性,方便验证数据;
- 保存草稿:保存为草稿,保存时不会验证规则集脚本的有效性;
- 提交:保存规则集,此操作会验证规则集脚本的有效性,可与对战配置关联;
- 将规则集保存为草稿后,该规则集将无法与对战配置关联;
- 规则集名称在当前游戏区服中不能重复;