LPAI 独立网页游戏 AI 社区指南

传统模式 · 配置参考

属性转化【需求、花费、获得】

传统模式控件和事件中的条件、扣除、发放字段及原子执行顺序。

# 属性转化字段参考

# 三段式契约

区域 是否写入 作用
需求 判断是否允许继续
花费 成功前扣除玩家或对象资源
获得 成功后写入属性、对象、字符串或表格

需求不满足时,花费和获得都不应执行。花费不足时不得只完成部分扣除。

# 常用字段

字段 说明
属性 目标属性 ID
比较方式 等于、大于等于、小于、不包含等
目标数值/目标文本 比较或写入的值
公式 动态计算数值
概率/权重 控制分支命中
前置条件 为当前条目追加条件
玩家/对象版本 决定写入主体

# 执行顺序

显示需求 -> 运行需求判断 -> 校验全部花费 -> 一次性扣除 -> 发放获得 -> 显示反馈

事件、控件和插件可能有额外触发条件,但不能改变这条基本顺序。

# 把一条转化定义完整

每一条转化都要记录:

  • 触发器所有者,以及当前玩家/对象上下文;
  • 需求两侧输入、比较符和全部/任意组合;
  • 每项花费的所有者、数量和资源不足行为;
  • 每项获得的所有者、数量/内容,以及覆盖或累加语义;
  • 概率或分支规则;
  • 拒绝、取消、成功和基础设施部分失败时的反馈;
  • 重复输入和重试策略。

不能因为字段在界面上分成一组,就假设它们天然原子化。如果多个字段属于同一业务事务,验收必须证明后续校验失败时不会留下前面的写入。

# 目标所有权矩阵

目标 身份规则 安全写入边界
玩家属性 稳定属性 ID 全部需求/花费验证后写入
当前对象 上下文中的稳定对象 ID 对象缺失或已销毁时拒绝
筛选对象 筛选结果和稳定对象 ID 每个选中实例只执行一次
动态字符串 可写且非脚本模式的字符串 ID 成功后写入最终文本
动态表格 表格 ID 与明确行列 验证动态类型和边界
插件/平台动作 平台请求身份 只在定义的成功点提交本地状态

# 特殊目标

绑定对象时,需求、花费和获得可以分别作用于玩家或当前对象。对象筛选器决定命中集合;对象 ID 才是稳定身份。字符串和表格写入也属于获得结果,需确认目标可写。

# 迁移风险

不要把同一扣除或奖励同时配置在转化字段和 js_g。概率与权重不是保证命中;多个条目的“全部满足/任意满足”和停止策略必须明确。复杂跨系统事务应迁移到一个显式脚本,并保留失败回滚。

# 失败诊断

现象 常见原因
动作失败仍扣除花费 全部校验完成前已经发生写入
奖励发放两次 字段和脚本重复结算,或重复输入未锁定
修改了错误对象 用数组下标/名称代替稳定对象 ID
显示需求与实际执行不同 渲染判断和动作判断读取不同来源
重试重复执行 请求结果没有与本地幂等标记对账

# 验收

测试需求不足、花费不足、多个花费、对象筛选为空、概率未命中、成功一次、快速重复点击和脚本异常,确认没有部分写入或重复奖励。

下一页:深入理解控件