把代入名片从开场白拆到主角设定短码槽,并收紧对话落盘写法。

多开场可各自绑定名片;开玩挂载跳过开场产物并认用户需求类标签。

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-09-24 00:59:05 +08:00
co-authored by Cursor
parent da459fb34c
commit a4ad552aff
17 changed files with 417 additions and 58 deletions
@@ -12,7 +12,7 @@ name: 开场白与开场变量
id: opening-setup
artifact: 设计.开场白与开场变量
declaration: >
创作终节点:写出 1~多条开场(每条 = meta 初值/用户角色 + 正文 present.v1,壳与正文组成一致;须含字面 @玩家);选定后落库、结束创作并保存定稿
创作终节点:写出 1~多条开场(每条 = meta 开场变量初值 + 正文 present.v1,壳与正文组成一致;须含字面 @玩家);选定后落库、结束创作并保存定稿。用户代入名片走「主角设定」,勿把名字/简介写进开场正文。
when: |
收成链已齐(至少体验契约可引用,且「细化终稿」已产出或可立即收成运行规格),需要可开玩的第一段剧情与同真相初值。
排在收成之后作最后一步。用户要进游玩但还没有第一屏 → 排。
@@ -22,9 +22,9 @@ when_not: |
只要改真值规则不要开场文 → 「变量设计与更新规则」。
运行规格未齐 → 先「细化终稿」。尚未选定开场前若要补前序节点(如 NPC)→ 插在本步之前,勿以「收口已排入」拒绝追加。
boundary: |
本技能是创作终节点:1~多条开场。每条 = meta(用户角色名字+简介、开场变量初值)+ 正文(present.v1,shell 与「设计.正文组成」一致)。
用户角色跟这条开场走;不同开场可有不同用户角色。初值与该条叙述同真相。
必须遵守已验收的叙事指南、回复呈现、正文组成、变量设计;不重做这些契约。正文不得只交一段散文。
本技能是创作终节点:1~多条开场。每条 = meta(开场变量初值)+ 正文(present.v1,shell 与「设计.正文组成」一致)。
用户代入名片优先「设计.主角设定」;本步可不写用户角色。旧稿若在 meta 带了用户角色仍可读,但不要再往开场正文夹名字/简介。
初值与该条叙述同真相。必须遵守已验收的叙事指南、回复呈现、正文组成、变量设计;不重做这些契约。正文不得只交一段散文。
具体实例:开场可引用已有实例名片,不在本步新造百科。
选定后由程序写入 输出.开场白 / 运行.初始变量 / 运行.开场用户角色 / 变量.当前,关闭 DAG 并保存定稿;不要在本步之后再排其它能力。
feeds: narrator
@@ -55,8 +55,8 @@ feeds: narrator
- 开场比一章短:愿点进游玩即可,不必凑游玩默认 1000~2000 字。
**meta = 这条开场的初始设定:**
- `用户角色`:名字+简介(有代入则必填;不同开场可以不同)。
- `开场变量`:与该条叙述同真相的初值(名与变量设计一致)。顶层再抄一份推荐条的初值,供程序落库。
- `用户角色`:可选;优先已由「主角设定」钉好。若本条必须自带名片且尚无主角设定,可填名字+简介(程序会抬到主角设定节点)。禁止把名字/简介写进 `开场白全文` / 候选正文。
**用户角色占位(产物规格,不是可选项):**
- `开场白全文`、每条候选 `正文`(含 `blocks.body` 及其它有字区域)里,凡指称用户扮演角色,第三人称点名处必须写字面量 `@玩家`(六个字符:`@` + `玩家`)。
@@ -65,11 +65,11 @@ feeds: narrator
- 进游玩时程序把 `@玩家` 换成当前用户角色名;创作稿必须保留字面 `@玩家`。
执行顺序:
1. 读依赖:worker 集/美学/叙事/**正文组成(先抄 shell_id)**/监控栏/变量设计/舞台与实例。
2. 写 1~3 条候选:每条 `meta`(用户角色+开场变量)+ `正文`(present.v1)。同真相、第一拍可不同。
1. 读依赖:worker 集/美学/叙事/**正文组成(先抄 shell_id)**/监控栏/变量设计/舞台与实例/主角设定。
2. 写 1~3 条候选:每条 `meta`(开场变量;用户角色仅在缺主角设定时补)+ `正文`(present.v1)。同真相、第一拍可不同。
3. 推荐条的 present.v1 同时写入 `开场白全文`(对象,不是字符串)。
4. 顶层 `开场变量` = 推荐条 meta 里那份初值。冲突以叙述为准。
5. 交稿前自检:每条 `正文.shell` 与正文组成一致;JSON 搜索 `@玩家`;再自评 + 追问;输出 JSON。
5. 交稿前自检:每条 `正文.shell` 与正文组成一致;JSON 搜索 `@玩家`;正文无「用户角色.名字」行;再自评 + 追问;输出 JSON。
缺上游契约时:能写则按已有材料写开场并标开放问题;不能成立第一拍则追问 1~2 点,勿交空壳。
@@ -202,7 +202,7 @@ summary:`开场白与开场变量 · …`(点题场景)。
硬规则:
1. context-fragment.v1;自评含「玩家占位」与「版式符合」。
2. `开场白全文` 与每条候选 `正文` 必须是 present.v1 对象(含 `schema`/`shell`/`blocks.body`);`shell` 与「设计.正文组成」一致。禁止只交散文字符串。
3. `开场白候选` 1~3 条,每条含 `meta`(用户角色有代入则必填;开场变量与该条同真相)+ `正文`。顶层 `开场变量` 必填(推荐条初值)。
3. `开场白候选` 1~3 条,每条含 `meta`(开场变量与该条同真相;用户角色可选,优先主角设定)+ `正文`。顶层 `开场变量` 必填(推荐条初值)。
4. 每条正文(含 body)必须含字面 `@玩家`;不发明新真值名。
5. summary:`开场白与开场变量 · {brief 缩略}`。
@@ -219,11 +219,12 @@ summary:`开场白与开场变量 · …`(点题场景)。
## examples
```examples
好:正文为 present.v1,shell 与正文组成相同;body 里有字面 @玩家;meta 带用户角色与开场变量。
好:正文为 present.v1,shell 与正文组成相同;body 里有字面 @玩家;meta 带开场变量;名片在主角设定。
好:prose 壳也包成 {"schema":"present.v1","shell":"prose","blocks":{"body":"冷风灌进来时,@玩家还握着空水瓶。"}}。
好:「你(@玩家)站在闸机前,票夹是空的。」写在 blocks.body。
坏:`开场白全文` 只是一段字符串,没有 present.v1。
坏:shell 与正文组成不一致,或灌了该壳没有的区域。
坏:全文只有「你推开门」——零个 `@玩家`。
坏:「林晚推开门」——写死姓名。
坏:在正文或开场白全文里写「用户角色.名字: …」——名片应落「主角设定」。
```
@@ -17,12 +17,12 @@ when: |
when_not: |
旁观或把角色当棋子、不要代入身份 → 不排。
只要体验感觉、不要名片 → 「美学纲领与交互范式」。
NPC 名片 → 「具体实例」。开场第一拍 → 「开场白与开场变量」。
NPC 名片 → 「具体实例」。开场第一拍(叙事)→ 「开场白与开场变量」;名片本身仍走本步,勿写进开场白。
boundary: |
本技能:@玩家 扮演的那一张名片(名字、背景、特殊设定)。
美学纲领与交互范式:体验与轮转——本步不重定。
实现机制:世界法则——金手指写在本步「它能做什么」,法则来源不写。
开场白:第一屏怎么开始——本步不定时间地点冲突。
开场白:第一屏怎么开始——本步不定时间地点冲突;也不把名字/简介塞进开场正文。
feeds: gm
```
@@ -9,20 +9,20 @@ when: >-
core: >-
把用户原话收成可开玩的一核短局规格,写入本局黑板;开玩后主世界层读产物写正文,默认原文即终稿。
必交:美学纲领(这一核是什么、怎么代入、轮转到哪停)。
用户代入有名字/简介 → 写进开场白的用户角色(meta:名字+简介),不要另开主角设定。
用户代入有名字/简介 → insert 设计.主角设定(名字+背景);不要写进开场白。
核是拿掉会换故事的变造法则 → 再交实现机制。
核依赖跨轮记住 → 再 declare 至多两三个真值。核可玩 → 交开场白。
核依赖跨轮记住 → 再 declare 至多两三个真值。核可玩 → 交开场白(只要叙事,勿夹用户角色 meta)。
某一能力能不能落对照【能力 · 何时落盘】。材料只够围着这一核开玩 → 收口开场白。
用户改口要铺可经营世界 → 本局仍把已说的收成这一核,并告知完整世界用「数据化跑团体验」或工序编排「回合推演」。
process:
- 每轮对照【能力 · 何时落盘】与已有产物:条件已成立的可同轮多落;核还糊 → 问挡住的 1 点。
- 【1】insert 设计.美学纲领与交互范式:用用户原话写清这一核、站位、何时等用户。缺哪件问哪件。
- 【1b】代入且有名字/简介 → 写进开场白 meta 的用户角色(名字+简介),不要单独 insert 设计.主角设定。
- 【2】核=拿掉会换故事的变造法则(如任务失败即送走)→ insert 设计.实现机制,写短。只是身份或开场处境 → 写进开场白或主角设定,跳过机制。
- 【1b】代入且有名字/简介 → insert 设计.主角设定(或 设计.主角设定#短码,与开场同槽)。禁止写进开场白 meta。
- 【2】核=拿掉会换故事的变造法则(如任务失败即送走)→ insert 设计.实现机制,写短。只是身份或开场处境 → 写进主角设定,跳过机制。
- 用户点名文风/禁忌/写法档 → insert 叙事指南。点名推进/大纲/停笔 → insert 故事推进。二者条件独立,不要因为没谈推进就不落文风。用户要分区或壳 → 回复呈现再正文组成。未点名文风与推进 → 跳过二者,开玩吃默认散文。材料已齐且条件成立时可与上列同轮一并落。
- 核必须跨轮记住的数(时限/进度/好感,至多三个)→ declare_variable;到某值换文案再 declare_map。没有门控 → 不立真值。
- 核已可玩 → insert 设计.开场白(须含 @玩家;第一屏只写这一核怎么开始)。
- 核已可玩 → insert 设计.开场白(须含 @玩家)。多开局用 设计.开场白#短码,互不覆盖;改某一局 insert 同一完整 tag。禁止夹用户角色.名字/简介。
- 舞台骨架 / 生成规则 / 拓扑即使「何时用」成立也不 insert:地点与规则折进美学核或开场白。
principles: