Files
writing-agent/skills/dialogue/world-simulator/modules/generation-rules/prompt.md
T

7.2 KiB
Raw Blame History

生成规则

meta

name: 生成规则
id: generation-rules
artifact: 设计.生成规则
declaration: >
  为需要统一生成的一类对象写出合同:名称、用途、字段、池或提示约束、填写工作流;不填最终实例;可按对象反复。
when: |
  要落两份或以上同类对象时使用。
  只落一份,但字段多、结构重要,或需要先审字段和填写工作流时也使用。
  不因开场后是否继续按同一合同生成而改道。每个产物只写一条规则。
when_not: |
  只有一条、字段很少、也不承载玩法的具名内容,才不建规则。这种内容通常也不必落具体实例。
  一张有节点和连接的结构(地图、升级路径、关系网)→ 拓扑图谱。
  跨轮真值 → 变量设计;舞台格局与硬法则 → 舞台骨架 / 实现机制。
boundary: |
  本能力只交生成合同:名称、用途、字段、池或提示、填写工作流。
  不填最终 records,不重写世界百科,不改变量公式与剧情推进。
feeds: gm,auditor

opening

先说这套规则生成什么、用在什么场合。只有一条字段很少的具名内容,通常不必建规则,也不必落具体实例。

task

为单一对象族写出一份生成合同,写入 `设计.生成规则#中文规则名`。先写名称与用途,再按用途推出字段与每项填充要求;需要封闭选取的字段绑池,更适合一句话约束的字段写提示;最后写填写工作流(含依赖、自检、反模式),供具体实例与游玩期动态生成共用。

每个产物只含一条规则。材料足够便直接成稿;真正会改合同的缺口(生命周期、必填字段、单条/同批关系)交给 `self_score.gap`。产物正文不放评分、诊断、追问或开放问题。

principles

1. 用途决定字段:每个字段都要能回答「对这个用途是否必要」;女 NPC 不写性别;药水要写清效果参数,不要只写外观。
2. 字段不多不少、互不重叠:资产与存款这类同义字段只留一个。
3. 取值分三类:自由生成;从池中选取(填写方按合理度选,不是伪随机程序);提示约束(如「现代都市中正常的职业」)。默认优先提示约束;只有需要封闭一致或分阶段选型时才建池。
4. 填写工作流按重要性推进:先锚定会约束后续的选项,再填血肉;阶段、依赖、自检、反模式都服务于「怎么填对」,写短写准。
5. 生命周期三选一:`仅游玩期`(创作期不预填)、`只预生成`(预填完即可丢掉规则)、`预生成并游玩期`(既写种子,开场后仍可再生成)。选哪一档不改变「要不要先写这份合同」。
6. `只预生成` 为中间层;另两类为最终层,挂主世界层与旁观。
7. 上游舞台/机制只短引用;不在本步发明共通前提百科。
8. 不输出最终实例记录。
9. 给人读的键和专名用中文。材料里的英文名音译成中文。外壳的 schema、brief、mount 保持既有键。

output

{
  "schema": "context-fragment.v1",
  "技能": "生成规则",
  "brief": "一句话:对象 + 用途 + 生命周期",
  "mount": ["world-simulator", "auditor"],
  "稳变": "stable",
  "正文": {
    "名称": "人话规则名,如「末世可征服 NPC」",
    "用途": "这套规则在本局用来生成什么、服务哪类游玩反馈",
    "规则名": "中文短名,与名称对应且稳定",
    "生命周期": "仅游玩期|只预生成|预生成并游玩期",
    "数量": {
      "模式": "固定|区间|看情况",
      "值": 1,
      "最小": 1,
      "最大": 1,
      "决定规则": "contextual 时说明如何决定条数"
    },
    "一次生成": {
      "模式": "单条|同批",
      "关系": "同批必填:本批必须一起钉死的互指;单条写彼此独立"
    },
    "字段": [
      {
        "名": "顶层字段名",
        "填充要求": "填什么、填到多厚、为何本用途需要它",
        "取值方式": "自由|池选取|提示约束",
        "绑定池": "池选取时填写池名称;其它省略",
        "提示": "提示约束时写可执行的一句范围;其它省略"
      }
    ],
    "池": [
      {
        "名称": "与字段绑定的人话名",
        "说明": "何时从中选取、选取口径",
        "条目": ["封闭可选项;只列必须一致的有限集合"]
      }
    ],
    "填写工作流": {
      "工作流": {
        "阶段1 骨架锚定": "先选哪些池/字段、定下什么内核",
        "阶段2 灵魂注入": "下一步推什么,如何与上一阶段咬合",
        "阶段3 血肉填充": "姓名、外貌等如何服务已定内核",
        "阶段4 立场定调": "可选;最后定关系或立场类字段"
      },
      "依赖关系": [
        "字段A → 字段B:约束说明"
      ],
      "自检清单": [
        "填完后必须能回答的关键问题"
      ],
      "反模式": [
        {
          "名": "短名",
          "说明": "为什么错",
          "反例": "可选一句"
        }
      ]
    }
  }
}

硬规则:

  1. 输出合法 JSON;每个产物只描述一条规则,禁止 rules 数组堆多条。
  2. 字段 由用途推出;可省略的字段不写;重叠字段合并。
  3. 池 可 [];池选取字段必须能对应到某个池;提示约束字段必须有 提示。
  4. 填写工作流 必含 工作流;依赖关系 / 自检清单 / 反模式 为子字段,无则 [],不要拆成正文顶层并列大段。
  5. 一次生成 为同批时关系必填且本批至少 2 条;为单条时一次只交 1 条。
  6. 字段值为扁平可填内容;不要嵌套对象当字段值契约。
  7. 不在产物正文写自评、追问、开放问题或最终记录。
  8. 只预生成 时程序记为中间层;仅游玩期 / 预生成并游玩期 记为最终层。
  9. 字段名和专名用中文;英文专名音译为中文。

score

字段妥当:
- 5:字段由用途推出,不多不少、不重叠;该有的玩法/效果接口齐全,该省略的已省略。
- 3:大体可用,但有 1 个冗余、重叠或明显缺失字段。
- 1:通用名片乱塞,或关键效果/接口字段缺失。

池与提示:
- 5:该用池的用了,不该用的改成一句提示约束;池精炼可选取;提示具体可执行。
- 3:大体合理,但个别字段误用/漏用池,或池过泛、提示含糊。
- 1:大段假穷举,或本该一句话提示却做成巨型词表。

填写工作流:
- 5:阶段简洁有力,依赖与自检/反模式能引导按重要性推进,不臃肿。
- 3:有阶段但顺序或依赖不清,或清单偏长却抓不住关键咬合。
- 1:无工作流,或与字段脱节,无法指导动态生成。

checklist

- [ ] 名称与用途已写清?
- [ ] 字段由用途推出,无冗余重叠、无关键缺失?
- [ ] 池与提示分工正确?
- [ ] 填写工作流含子字段:工作流 / 依赖关系 / 自检清单 / 反模式?
- [ ] 生命周期与一次生成已钉?
- [ ] 未输出最终实例、百科长文、评分或追问?