# 开场白与开场变量 ## meta ```meta name: 开场白与开场变量 id: opening-setup artifact: 设计.开场白 declaration: > 普通楼层创作终节点,且可增殖:每条开场是一个节点,落成 `设计.开场白#场景短码`。 默认写 1 条;用户要多个入口时再增殖。每条自带 present.v1、同真相初态与这条开场的最少玩家角色事实。 全部保存。游玩时左右切换,选中的一条作为 0 层。 when: | 回复呈现、正文组成和其它本局内容能力均已完成,且程序已依次编译信息可见范围、游玩执行方式、上下文排序与运行配置后,需要可开玩的第一屏时使用。 when_not: | 语义区域或前端模板未钉 → 先回复呈现、正文组成。 `设计.worker集` 尚未由程序组装 → 先运行收口工具链。 只改文风或真值规则 → 叙事指南 / 变量设计。 要做持久 0 层开场 → 0层开场白与初态,不在本步兼顾。 boundary: | 本能力只写开场候选与各候选初态。不重开篇幅、文风、区域清单或前端模板。 只填正文组成声明为模型生成的 blocks;状态与拓扑由程序按候选初态投影。 随机数是变量表隐藏行:本步不写具体数字。0 层玩法不依赖随机;普通楼层在第一次正式回复时由程序补齐随机行。 每条开场单独落盘。游玩时左右切换,选中的一条作为 0 层;创作里不把入口收成一道先选定的题。 feeds: gm,narrator ``` ## opening ```opening 设定已齐时,用几句话说清第一拍:玩家进场时在哪、正发生什么、结束后显然能做什么。默认写一条开场。还要别的入口时,每条再增殖一个开场节点;进游玩后左右切换,选中的一条作为 0 层。 ``` ## task ```task 读取程序已组装的 `设计.worker集` 和全部最终层产物,把每一张开场写成 `设计.开场白#场景短码`。这是普通楼层创作终节点;不得在本步首次整理执行单元或上下文顺序。 position 必须带场景短码,例如 `设计.开场白#opening-cycle2`。改某一条就再 insert 同一个完整 tag。裸 `设计.开场白` 和整包 `设计.开场白与开场变量` 会和带短码的卡抢同一条写入,不要使用。 默认只生成 1 条,仍然要带场景短码。用户要多个入口时,每条再 insert 一个新的短码。不要把多条入口收成聊天里的选择题,也不要把多条塞进同一次 insert。游玩时按这些短码左右切换,选中的一条作为 0 层,并整套换该条正文、初态与角色。 每一张卡携带: - 符合正文组成数据契约的 `present.v1`(只填模型生成区) - 可选一句区分说明 - 这一条开场的玩家角色 `meta.用户角色`(名字 + 简介):不同开场的玩家可以不同,写在各自卡里;程序会同步成同短码的主角设定,游玩切到这条时替换 `@玩家` - 与该条叙述同真相的变量初值:这张卡有要开场定下的变量才写 `开场变量`;没有就不写,卡仍然是 `设计.开场白#场景短码` - 若本局有拓扑:当前位置/焦点与已揭示范围 硬规格: 1. 可见正文里凡指称玩家角色的名字位都写字面 `@玩家`,每条至少出现一次。「你」可以和 `@玩家` 并用(如「你(@玩家)站在闸机前」),但全文只有「你」、零个 `@玩家` 不合格;不写死具体姓名,也不用「用户」「主角」顶名字位。 2. `present.v1` 的区域只覆盖正文组成声明的模型生成 blocks;程序投影区留空给程序灌。 3. 不输出 `名称.随机数` 的具体数组;随机行由程序在第一次正式回复前或回复时补齐。 4. 开场宜短,愿点进游玩即可,不抄故事推进的单轮篇幅预算当第一章。 5. 人物、地点、势力只引用已有产物里的;第一拍需要的路人只写身份,不在开场新造有名有姓的设定。 材料足够便直接成稿;会改变第一拍成立的缺口交给 `self_score.gap`。产物正文不放评分、诊断、追问或开放问题。 ``` ## principles ```principles 1. 开场为主,初态配套。叙述与该条变量、拓扑初态必须同真相;写完发现两者对不上时以叙述为准,改初值。 2. 默认一条。多条是不同入口,每条一个 `设计.开场白#场景短码`,不是同文换皮,也不是先让用户选唯一开场。没有变量的卡省略 `开场变量`,短码照旧。 3. 玩家角色最少化:把这个角色交还给用户扮演。`用户角色.简介` 只写这条开场成立所必需的客观事实——身份、处境、与在场人物的已知关系,一到三句;不写性格、心理、动机、口癖、外貌细节,也不替玩家定态度或下一步。共通的主角设定已有的事实不重抄,只写这条开场独有或与它不同的部分。 4. 用户没给名字时不编名字,省略 `用户角色`,正文照用 `@玩家`;这条开场必需的身份事实写进叙述里让玩家看见。 5. 只写模型生成区。状态芯片、地图等权威显示由程序投影,不在开场正文里重编一份。 6. 文风、视角和人称跟叙事指南与交互范式;不剧透隐藏档,不写成第一章,不在本步改前端模板。 7. 本步结束后创作收口;不要再排后续内容能力。 ``` ## probe ```probe 每轮 1~2 点。优先确认地点与冲突、某真值开场值是否推得出、多条时入口差异是否成立、每条是否含 `@玩家`。不追问前端重设计或随机骰面。 ``` ## output ```output position: 设计.开场白#场景短码 content: { "schema": "present.v1", "shell": "与正文组成一致", "blocks": { "body": "清晨,@玩家推开门。……", "其余模型生成区": "read_module 回包 reply_contract.model_blocks 里的每一项都要出现,类型按契约" }, "meta": { "区分": "多条时写这一入口和其它条差在哪;仅一条可省略", "用户角色": { "名字": "用户给过的名字;没给就省略整个用户角色", "简介": "一到三句客观事实:这条开场里玩家是谁、处境如何、与在场人物的已知关系" }, "开场变量": [ { "名": "与变量设计真值名一致", "值": "初值", "依据": "开场事实" } ], "拓扑初态": [ { "topology_id": "有拓扑时填写", "当前位置": "节点 id", "已揭示": ["节点或连接 id"] } ], "suggested_actions": ["若正文组成启用文字选项则给短建议;否则 []"] } } 硬规则: 1. 每次 insert 只写一张卡。position 是 `设计.开场白#场景短码`,content 是这一张的 `present.v1`。 2. 这张卡有初值才写 `meta.开场变量`;没有变量就省略该字段,position 仍带场景短码。 3. `present.v1` 只含正文组成允许模型生成的 blocks;可见正文须含字面 `@玩家`。 4. 不同卡可有不同用户角色与初态;切换时整套替换,不混用。 5. 不输出随机数具体值,不重写前端,不把程序投影区填成模型编造状态。 6. 产物正文不含自评、追问或开放问题。 7. 玩家角色只写在 `meta.用户角色`,名字不进 blocks 正文;程序据此写入同短码的 `设计.主角设定#场景短码`,不要另 insert 一份。 ``` ## score ```score 开场必要: - 5:第一拍清楚、有行动空间,短到愿意开玩。 - 3:能开玩,但入口或下一步略含糊。 - 1:像第一章摘要,或缺冲突与下一步。 前端符合: - 5:present.v1 只填模型生成区,且与正文组成契约一致。 - 3:主体符合,有一个次要区域或空态处理含糊。 - 1:裸散文,或把程序投影区填成模型重编数据。 状态自洽: - 5:每条候选的变量与拓扑初态都与该条叙述同真相,互不串味。 - 3:默认条自洽,备选条有一处初态含糊。 - 1:叙述与初值冲突,或多条共用一套却声称不同入口。 角色占位: - 5:每条含字面 `@玩家`;`用户角色.简介` 只有这条开场必需的客观事实,玩家性格与决定留给用户。 - 3:占位正确,但简介多写了性格、动机或与共通主角设定重复的内容。 - 1:写死姓名、全文只有「你」没有 `@玩家`,或简介替玩家定了性格和态度。 收口可切换: - 5:默认条明确,全部候选可保存;多条时入口差异成立。 - 3:能收口,但多条差异偏弱。 - 1:默认不清,或未要求多条却堆出重复候选。 ``` ## checklist ```checklist - [ ] position 是 `设计.开场白#场景短码`,没有另写裸 `设计.开场白` 或 `设计.开场白与开场变量`? - [ ] 默认 1 条;仅用户要求时才再增殖别的短码? - [ ] 有初值才写 `开场变量`;没有变量就省略,卡名不变? - [ ] 含 `@玩家`,present.v1 只含模型生成区? - [ ] `用户角色.简介` 只有必需客观事实,没有性格、心理和替玩家做的决定? - [ ] 初态与这条叙述同真相,未填写随机数具体值? - [ ] 未重开前端、篇幅或区域清单? ``` ## examples ```examples - 单条:`设计.开场白#debt-hall`,堂屋债契,body 含 `@玩家`,开场变量写债额初值;状态栏由程序投影。 - 用户要两条入口:`设计.开场白#lender` 与 `设计.开场白#office`,各带自己的初态。没有初值的那条省略开场变量。 - 单条带玩家角色:`meta.用户角色` 为 `{"名字":"沈聿","简介":"本地放贷人,持有这家的债契;与这对母女相识但不熟。"}`,body 写「清晨,@玩家推开堂屋门,债契还摊在桌上。」 - 不合适:再写一份裸 `设计.开场白` 或 `设计.开场白与开场变量`;开场里填写 `敏捷.随机数=[…]`。 - 不合适:全文只有「你推开门」,零个 `@玩家`。 - 不合适:简介写「沉稳果决,内心渴望被认可,决定今天收回债款」——性格、心理和决定都该留给玩家。 ```