template: 模板体系重构(SSOT、叙事时间线、reveals、占位符)

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-02-24 10:32:22 +08:00
co-authored by Cursor
parent 58decfa759
commit a73f02ed17
5 changed files with 199 additions and 151 deletions
+12 -57
View File
@@ -1,16 +1,17 @@
---
id: "" # 内容命名,不含Day前缀,例:"火山-结巴" "梦-海边-姐姐"
id: "" # 遵循 Beats 命名约定:{场景/角色}-{事件},不含 Day,例:"诊室门口-年审公布" "梦-海边"
type: beat
beat_type: "" # 维修 | 场景对话 | 梦境 | 特殊
day: ""
day: "" # 留空则进入 outline 的 Backlog
order_in_day: 0
status: draft # draft | review | locked
dev_status: fiction # fiction | playable | function | close
dev_status: fiction # fiction | playable | function | prototype | close
emotional_tone: "" # 情绪基调,例:"压抑/解脱" "荒诞/温暖"
cuttable: false
cut_cost: ""
characters: [] # 出场角色列表,例:[佩佩, 火山]
terms: [] # 关联的 term 条目名
summary: "" # 一句话概述
player_feels: "" # 本 Beat 情绪落点
characters: [] # 出场角色(与 kb/bible/角色 挂接)
terms: [] # 涉及设定(与 kb/bible/设定 挂接)
reveals: [] # 本 Beat 对各实体的揭示,每项格式:【实体名】玩家得知...;例见佩佩-维修1
created: ""
updated: ""
tags: [beat]
@@ -18,30 +19,7 @@ tags: [beat]
# {{title}}
> **一句话概述**{供 outline 显示}
---
## 叙事状态
**设定放出进度**
- 世界观已揭露:{到这个 beat 为止,玩家知道了哪些世界观真相}
- 本 beat 新揭露:{这个 beat 会放出什么新信息}
- 尚未揭露:{哪些真相此时还必须藏着}
**角色状态快照**
- [[角色A]]:{此时此刻的心理状态、与医生的关系阶段}
- [[角色B]]{同上}
**心流节奏**
- 前一 beat 的情绪落点:{承接}
- 本 beat 的节奏:{如"极快,短句为主,压迫感" / "舒缓,长对话,允许走神"}
- 情绪落点:{玩家带着什么感受离开}
> [!retcon] 待定/待改项
> {列出本 beat 中所有拍脑袋的、可能被 eureka 推翻的内容}
> - `[#TBD: 说明]`
> - `[#Retcon: 哪个 eureka 触发的,影响什么]`
> **一句话概述**{同步 frontmatter 的 summary}
---
@@ -53,31 +31,8 @@ tags: [beat]
---
## Production
**落地形式**:{纯对话 / 演出动画 / 沙盒交互 / 混合}
**沙盒逻辑**:{触发条件、分支、关键变量——用自然语言描述}
**Yarn 节点**
**美术文档**
**程序文档**
**制作备注**
- 演出:
- 机制:
- 关键变量:
**任务单**
```dataview
LIST
FROM "kb/tasks"
WHERE contains(beats, this.file.name) AND status != "完成"
```
---
## 变更日志
| 日期 | 变更内容 | 决策理由 | 来源 |
|------|---------|---------|------|
| | | | |
| 日期 | 变更内容 | 决策理由 |
|------|---------|---------|
| | | |
+92 -58
View File
@@ -2,8 +2,7 @@
id: ""
type: character
aliases: [] # 别名/代号,如 ["Kirin", "调酒妹", "奇琳"]
status: active # active | suspended | archived
dev_status: fiction # fiction | playable | function | close
status: active # active | suspended | archived | ⚠️ Conflict | 🚧 WIP
created: ""
updated: ""
tags: [character]
@@ -13,82 +12,112 @@ related_worldbuilding: []
# {{name}}
> **一句话**:{用一句话说清楚这个角色是谁}
> **核心矛盾**:{他/她/它在两种力量之间撕裂——是什么 vs 什么}
> **创作意图**:{我们为什么要创作这个角色?想让玩家感受到什么?}
---
## 基础信息
## 🔒 1. 权威设定 (SSOT) — 单一信息源区
> *单一信源区,仅通过变更日志修改;下游文档以此为准。*
> *写作约定:每段用 **加粗关键词** 领起,句末标 `(来源)` 便于溯源;小节可按实际信息增减,不必机械填满。*
<!--
SSOT 写作风格指南:
1. 核心简述真正短——1~2 句点明角色核心矛盾,不塞细节
2. 各小节用「**加粗关键词**:一句话说明」格式,不写长段落
3. 每条事实在句末标注来源,如 `(落地全剧情)`,方便溯源
4. 涉及其他实体时用 [[wikilink]] 关联
5. 无信息的小节直接省略,不留空壳
示范参考:kb/bible/角色/特罗菲姆.md
-->
### 1.0 核心简述
> - **核心矛盾**:{一句话,如:想象和创造力与命令和效率之间的矛盾}
> - **一句话描述**:{一句话,如:医生,连太阳和树叶的颜色都分不清,我还能画画么}
### 1.1 基础信息
- **名称**
- **代号**
- **代号/别名**
- **年龄**
- **职业/机体类型**
- **视觉描述**
- **参考图**
- **性别**:(可选)
---
### 1.2 视觉设定(可选)
## 核心机制
- **描述**:{外貌/场景中的视觉描述}
- **图片**:{参考图/立绘路径,可留空}
> 这个角色的 Gameplay 机制是什么?机制如何和角色的心理/叙事绑定?
### 1.3 特征
**机制描述**
**Gameplay 体现**
**机制的叙事意义**
- **{关键词}**:{短句说明}(来源)
- **{关键词}**:{短句说明}(来源)
- *涉及他者时用 [[角色名]]、[[设定名]] 关联。*
---
### 1.4 核心机制与 Gameplay 锚点(可选)
## 声音
- **机制描述**:{机制如何和角色心理/叙事绑定}(来源)
- **Gameplay 体现**:{关键流程/节拍中的体现}(来源)
> 给写作者和 AI 用的校准区。让这个角色"听起来像自己"。
### 1.5 台词(可选)
**说话方式**{句式、节奏、习惯——几句话描述就够}
- **说话方式**:{句式、节奏、习惯}
- **代表台词**
- "…"
- "…"
**代表台词**
- "…"
- "…"
- "…"
### 1.6 前史与核心矛盾
---
- **{阶段/事件}**:{短句,写清楚角色怎么变成现在这样}(来源)
- **{阶段/事件}**:{同上}(来源)
- *可多用 [[bible]] 关联。*
## 前史与核心矛盾
{自然语言,写清楚这个角色是怎么变成现在这样的。
AI 和写作者都能从这里理解角色内部的逻辑。}
---
## 关系网
### 1.7 实体关系网 (Entity Graph)
- **[[角色A]]**:{这段关系的本质和张力}
- **[[角色B]]**{同上}
- *涉及设定时链 [[设定/xxx]]。*
---
### 1.8 叙事时间线 (Narrative Timeline)
## Arc 追踪
> *聚合该角色所有已知剧情动态,按叙事顺序排列。「关联 Beat」为空 = 尚无 beat 承载。Bible ↔ Beat 双向同步此表。*
> *状态:✅ 已落地(bible 与 beat 一致) | 🔹 无Beatbible 有、beat 未承载) | 🆕 仅Beatbeat 有揭示、bible 未记录,需反向补 SSOT) | ⚠️ 有出入(双方内容/粒度不一致) | 🚧 草稿(beat 为 draft*
> AI 在每次聚合后更新。写作者写某个 beat 时,可以直接引用这里的最新状态。
| # | 阶段 | 剧情点 | 关联 Beat | 状态 | 来源 |
|---|------|--------|-----------|------|------|
| | | | | | |
| Beat | Day | 事件 | 角色内部变化 | 关系变化 |
|------|-----|------|------------|---------|
| | | | | |
#### 关联 Beats(自动索引)
---
## 关联 Beats
> *dataview 自动生成,与上表交叉核对:出现在此但不在上表 = 表格待补;出现在上表但不在此 = beat 的 characters 字段待补。新建时把 `"角色名"` 替换为 frontmatter 的 `id`。*
```dataview
TABLE beat_type AS "类型", day AS "Day", dev_status AS "制作状态"
FROM "kb/beats"
WHERE contains(terms, this.file.name)
TABLE file.link AS "Beat", day AS "Day", beat_type AS "类型"
FROM "beats"
WHERE contains(characters, "角色名")
SORT day ASC, order_in_day ASC
```
---
## 变更日志
## ⏳ 2. 待确认 / 待办
- [ ] {待决项 1}
- [ ] {待决项 2}
*无则写「无」或省略。*
---
## ⚠️ 3. 冲突记录
| 冲突点 | 版本A | 版本B | 来源 | 状态 |
|--------|-------|-------|------|------|
| | | | | 待裁决 / ✅ 已决议 |
*已决议可保留并标 ✅;决议说明可归档至 `kb/decisions` 后在此留简短引用。*
---
## 📋 4. 变更日志
| 日期 | 变更内容 | 决策理由 | 来源 |
|------|---------|---------|------|
@@ -96,22 +125,27 @@ SORT day ASC, order_in_day ASC
---
## 冲突记录
## 🔗 5. 来源索引 (Context & Index)
| 冲突描述 | 版本A | 版本B | 来源 | 状态 |
|---------|-------|-------|------|------|
| | | | | 待裁决 |
> *放在最后。点击条目可跳转原文;下表概括各来源「主要提供的信息」。*
---
### 核心设定源
## TODO
| # | 来源 | 主要提供的信息 |
|---|------|----------------|
| 1 | [[inbox/xxx]] | {该来源主要提供的信息} |
| 2 | [[inbox/yyy]] | {同上} |
> [!todo]
### 角色/关系与世界观(可选)
---
| # | 来源 | 主要提供的信息 |
|---|------|----------------|
| | [[inbox/zzz]] | {同上} |
## 原始来源
### 参考与会议(可选)
| 来源 | 状态 |
|------|------|
| | 已聚合 |
| # | 来源 | 主要提供的信息 |
|---|------|----------------|
| | | |
*无来源时本节可留空或写「待补充」。*
+13 -3
View File
@@ -18,9 +18,19 @@ tags: [day]
## Beat 列表
| 顺序 | Beat | 类型 | 情绪基调 | 落地形式 | 制作状态 |
|------|------|------|---------|---------|---------|
| 1 | [[]] | | | | |
> 由 beat 文件的 `day` / `order_in_day` 驱动,与 outline、Kanban 一致。未建文件的 beat 需在 `kb/beats` 下新建并在 Kanban 中归属到本日。
```dataview
TABLE
order_in_day as "顺序",
file.link as "Beat",
beat_type as "类型",
emotional_tone as "情绪基调",
dev_status as "制作状态"
FROM "kb/beats"
WHERE type = "beat" AND day = this.id
SORT order_in_day ASC
```
---
+1 -1
View File
@@ -4,7 +4,7 @@ status: unprocessed # unprocessed | processing | done
priority: normal # urgent | normal | low
created: ""
source: "" # 会议 | 脑暴 | 飞书 | 灵感 | 测试反馈
affects: [] # AI 填充:受影响的 term/beat 文件名列表
affects: [] # AI 填充:受影响的 bible/beat 文件名列表
tags: [eureka]
---
+81 -32
View File
@@ -2,7 +2,6 @@
id: ""
type: worldbuilding
category: "" # 社会制度 | 技术 | 地理 | 历史事件 | 组织 | 物品
tier: "" # T0(核心不变) | T1(重要) | T2(可调整)
aliases: [] # 别名,如 ["蜂群思维", "蜂群", "Hivemind"]
status: active # active | disputed | deprecated
created: ""
@@ -14,43 +13,88 @@ related_worldbuilding: []
# {{term_name}}
> **一句话定义**{最简洁的描述}
> **叙事功能**:{这个设定在故事里服务于什么?}
---
## 权威设定
## 🔒 1. 权威设定 (SSOT) — 单一信息源区
{自然语言,写清楚这个设定的完整真相:核心规则、边界、例外、历史背景。
不考虑玩家视角,写的是世界"实际上"怎么运作的。}
> *单一信源区,仅通过变更日志修改;下游文档以此为准。*
> *写作约定:每段用 **加粗关键词** 领起,句末标 `(来源)` 便于溯源;小节可按实际信息增减,不必机械填满。*
---
<!--
SSOT 写作风格指南:
1. 核心简述真正短——1~2 句点明该设定在剧情中的锚点,不塞细节
2. 各小节用「**加粗关键词**:一句话说明」格式,不写长段落
3. 每条事实在句末标注来源,如 `(落地全剧情)`,方便溯源
4. 涉及其他实体时用 [[wikilink]] 关联
5. 无信息的小节直接省略,不留空壳
示范参考:kb/bible/角色/特罗菲姆.md(角色示范,写法通用)
-->
## 玩家认知
### 1.0 核心简述(可选)
**玩家最终知道什么**
{游戏结束时玩家对这个设定的完整理解}
> {一两句:该设定在剧情中的锚点。}
**玩家起初以为是什么**
{初次接触时的错误或不完整认知}
### 1.1 核心定义
**揭露路径**
{通过哪些 beats,一点点揭开?自然语言描述即可。}
- **{关键词}**:{短句,权威定义}(来源)
- **{关键词}**:{补充定义}(来源)
---
### 1.2 关键特征
## 在故事中的体现
- **{关键词}**:{规则、边界、例外}(来源)
### 1.3 历史背景
- **{阶段/事件}**:{该设定如何形成、演变}(来源)
### 1.4 实体关系网(可选)
*若该设定与角色、其他设定强绑定时填写。*
- **[[角色A]]**{关系简述}
- **[[设定/xxx]]**{同上}
### 1.5 叙事时间线(可选)
> *若该设定在剧情中有关键揭示/变化点,可按叙事顺序列出。「关联 Beat」为空 = 尚无 beat 承载。Bible ↔ Beat 双向同步此表。*
> *状态:✅ 已落地(bible 与 beat 一致) | 🔹 无Beatbible 有、beat 未承载) | 🆕 仅Beatbeat 有揭示、bible 未记录,需反向补 SSOT) | ⚠️ 有出入(双方内容/粒度不一致) | 🚧 草稿(beat 为 draft*
| # | 阶段 | 剧情点/揭示 | 关联 Beat | 状态 | 来源 |
|---|------|-------------|-----------|------|------|
| | | | | | |
#### 关联 Beats(自动索引)
> *dataview 自动生成,与上表交叉核对:出现在此但不在上表 = 表格待补;出现在上表但不在此 = beat 的 terms 字段待补。*
```dataview
TABLE day AS "Day", beat_type AS "类型", file.link AS "Beat"
FROM "kb/beats"
WHERE contains(terms, this.file.name)
FROM "beats"
WHERE contains(terms, this.id)
SORT day ASC
```
---
## 变更日志
## ⏳ 3. 待确认 / 待办
- [ ] {待决项 1}
- [ ] {待决项 2}
*无则写「无」或省略。*
---
## ⚠️ 4. 冲突记录
| 冲突点 | 版本A | 版本B | 来源 | 状态 |
|--------|-------|-------|------|------|
| | | | | 待裁决 / ✅ 已决议 |
*已决议可保留并标 ✅;决议说明可归档至 `kb/decisions` 后在此留简短引用。*
---
## 📋 5. 变更日志
| 日期 | 变更内容 | 决策理由 | 来源 |
|------|---------|---------|------|
@@ -58,22 +102,27 @@ SORT day ASC
---
## 冲突记录
## 🔗 6. 来源索引 (Context & Index)
| 冲突描述 | 版本A | 版本B | 来源 | 状态 |
|---------|-------|-------|------|------|
| | | | | 待裁决 |
> *放在最后。点击条目可跳转原文;下表概括各来源「主要提供的信息」。*
---
### 核心设定源
## TODO
| # | 来源 | 主要提供的信息 |
|---|------|----------------|
| 1 | [[inbox/xxx]] | {该来源主要提供的信息} |
| 2 | [[inbox/yyy]] | {同上} |
> [!todo]
### 角色/关系与世界观(可选)
---
| # | 来源 | 主要提供的信息 |
|---|------|----------------|
| | [[inbox/zzz]] | {同上} |
## 原始来源
### 参考与会议(可选)
| 来源 | 状态 |
|------|------|
| | 已聚合 |
| # | 来源 | 主要提供的信息 |
|---|------|----------------|
| | | |
*无来源时本节可留空或写「待补充」。*