跳到主要内容

规则集编辑器

1. 概述

在规则集的编辑页面中,PGOS同时提供了表单模式源代码模式,我们可以灵活地在两种模式之间切换。 表单模式

  1. 数据编辑简单;
  2. 数据查看更直观;

源代码模式

  1. 更完整地查看脚本内容;
  2. 数据编辑更灵活;

2. 规则集编辑页面

当我们进入新建(或编辑)规则集页面时,PGOS默认会提供表单模式的编辑界面,如下图所示:

image-20220427092926724

我们可以将页面内容分为两部分:基本信息脚本信息

3. 基本信息

基本信息包括规则集的规则集名称描述,如下所示:

image-20220427093140953

字段说明:

  • 规则集名称:规则集的名称,在每个游戏区服内必须唯一。(最多128个字符,遵循正则表达式 [a-zA-Z0-9-.]*)
  • 描述:规则集的描述。(最多1024个字符)
提示

规则集名称在当前游戏区服内必须保持唯一

4. 脚本信息

PGOS为脚本编辑器提供了两种编辑模式,表单模式源代码模式。我们可以通过点击进入源代码模式退出源代码模式按钮来切换,PGOS会确保两种模式之间的数据一致性,您可以放心操作。

4.1 表单模式

当按钮显示进入源代码模式时,我们进入表单模式,如下图所示:

image-20220427094301203

通过表单模式,我们可以轻松编辑数据。从上图可以看出,规则集分为四个模块:玩家属性队伍规则扩展。下面我们详细介绍每个模块:

4.1.1 玩家属性

玩家属性表单如下所示:

image-20220427095012039

点击添加属性以添加数据。我们可以选择两种方式添加数据:客户端请求玩家数据,如下图所示:

image-20220427120052748

字段说明

  • 数据来源:可选,PGOS提供两种选择方式,客户端请求玩家数据
  • Key:必填,仅在数据来源选择为玩家数据时出现,选择内容为当前游戏区服定义的玩家数据;
  • 名称:必填,玩家属性的名称,最大长度为32个字符;
  • 类型:必填,玩家属性的数据类型,可选择字符串数值
  • 默认值:可选,玩家属性数据的默认值,必须符合当前定义的数据类型;

4.1.2 队伍

队伍表单如下所示:

image-20220427101750328

点击添加队伍以添加数据,如下图所示:

image-20220427120211855

字段说明

  • 名称:必填,团队的名称,最大长度为32个字符;
  • 最小玩家数:必填,数值必须在1到40之间;
  • 最大玩家数:必填,数值必须在1到40之间,且最大玩家数必须大于或等于最小玩家数;
  • 最小数量:选填,数值必须在1到999之间;
  • 最大数量:选填,数值必须在1到999之间,且最大数量必须大于或等于最小数量;

4.1.3 规则

PGOS 目前支持三种类型的规则配置:距离规则比较规则延迟规则。每种类型包含不同的字段,规则表单如下所示:

image-20220427103208840

点击添加规则添加数据,如下图所示:

image-20220427120556224

基本信息

  • 名称:必填,规则名称,最大长度为32个字符;
  • 类型:必填,规则类型,PGOS目前支持:距离规则比较规则延迟规则
  • 描述:必填,规则描述,最大长度为32个字符;

距离规则信息 当我们选择规则类型为距离规则时,表单将切换到距离规则字段信息,如下图所示:

image-20220427103822063

距离规则包含的字段信息如下:

  • 测量值:必填,距离规则的测量值,可以填写多个表达式信息,例如:flatten(teams[*].players.playerAttributes[mmr]);
  • 参考值:必填,距离规则的参考值,例如:avg(flatten(teams[*].players.playerAttributes[mmr]));
  • 最大距离:必填,距离规则的最大距离,类型:数值
  • 最小距离:可选,距离规则的最小距离,类型:数值
  • 组队聚合:可选,距离规则的组队聚合方式,可选值为:Each、Avg、Min、Max、Any

比较规则 当我们选择规则类型为比较规则时,表单将切换到比较规则的字段信息,如下图所示:

image-20220427104934298

比较规则中包含的字段信息如下:

  • 测量值:必填,距离规则的测量值,可以填写多个表达式信息,例如:flatten(teams[*].players.playerAttributes[mmr]);
  • 参考值:必填,距离规则的参考值,例如:avg(flatten(teams[*].players.playerAttributes[mmr]));
  • 运算符:必填,比较规则的运算符,可选值为:=, !=, <, <=, >, >=;

延迟规则 当我们选择规则类型为延迟规则时,表单将切换到延迟规则字段信息,如下图所示:

image-20220427105314354

延迟规则包含的字段信息如下:

  • 最大延迟:必填,延迟规则的最大延迟,类型为数字
  • 组队聚合:可选,延迟规则的组队聚合方式,可选值为:Each、Avg、Min、Max、Any

4.1.4 扩展

扩展表单如下所示:

image-20220427111528472

点击添加扩展以添加数据,如下所示:

image-20220427121149230

字段说明

  • 目标表达式:必填,Expansion的目标表达式,例如rules[mmr_calc].maxDistance;
  • 步骤:必填,Expansion的步骤,可填写多条数据;

4.2 源代码模式

当按钮显示为退出源代码模式时,我们进入源代码编辑模式,如下图所示:

image-20220427112244975

通过源代码模式,我们可以更完整地查看规则集脚本的数据信息。源代码是一个合法的Json字符串。当您输入的数据不合法时,页面会给出相应的提示信息:

image-20220427113447037

5. 提交规则集

完成规则集编辑后,您可以点击编辑页面左下角的操作按钮来执行相关操作。操作区域如图所示:

image-20220427115232748

操作说明:

  • 返回:返回上一页面,当前页面已编辑的内容将被清空
  • 验证规则集:验证规则集的有效性,方便验证数据;
  • 保存草稿:保存为草稿,保存时不会验证规则集脚本的有效性;
  • 提交:保存规则集,此操作会验证规则集脚本的有效性,可与对战配置关联;
提示
  1. 将规则集保存为草稿后,该规则集将无法与对战配置关联;
  2. 规则集名称在当前游戏区服中不能重复;