| name | dp-character-style |
| description | Use when establishing character speech patterns, writing dialogue, verifying voice consistency, or crafting subtext through what characters avoid saying |
如果你是被派遣执行特定任务的子代理,跳过此技能。
角色风格与对话塑形(含潜台词)
本技能是弹性技能。核心原则不变,具体细节可因故事类型、角色数量、文体风格而调整。
章节结构:核心定位 → 前置条件 → 角色风格档案模板 → 角色风格创建流程(graphviz) → 对话写作规则(结构规则/对话标签规则/潜台词写作指引)→ 角色风格一致性检查 → 潜台词深潜(核心定位/适用时机/四种来源/构建技法/密度控制/审查方法/构建流程)→ 交互表 → 反模式 → 注意事项 → 终止状态
交互:输入来自 dp-set-concept,被 dp-chapter-draft、dp-chapter-direct 调用,与 dp-chapter-direct 协同
核心定位
角色风格档案的终极检验标准:蒙住角色名字,读者仅凭对话就能辨认出说话者。
每个角色必须在两个维度上同时达标:
- 差异性:与其他角色的说话方式明显不同
- 一致性:自身的说话方式在全书范围内保持稳定(除非有明确的角色弧线支撑变化)
如果你的角色换个名字贴上去也毫无违和感,说明角色风格没有建立起来。
输入与围栏
本技能根据调用上下文有三种模式,读取范围不同:
| 调用模式 | 触发时机 | 允许读取 | 允许写入 |
|---|
| 定义模式 | 由 dp-set-concept 触发,为角色建立风格档案 | docs/dreampowers/set/character/*.md 全部角色文件 | docs/dreampowers/set/character/*.md(角色风格档案嵌入原文件) |
| 写作模式 | 由 dp-chapter-draft 阶段 C 触发,指导对白写作 | 当前章节文件夹内的 spec.md(§7 角色要点、风格指令) | 无写入 |
| 审计模式 | 用户显式要求("角色风格一致性审查"、"提取所有对话") | docs/dreampowers/release/chapter-*.md 全部 + docs/dreampowers/set/character/*.md 全部 | docs/dreampowers/set/character/*.md(更新演变记录) |
写作模式的关键约束:角色风格信息必须已由 dp-chapter-draft 阶段 A 从 character 文件定向提取并写入 spec.md §7。写作模式下禁止直接读取 docs/dreampowers/set/character/,避免绕开 spec.md 引入未授权的角色信息。
默认模式判定:若无显式说明调用上下文,按调用方推断——由 dp-chapter-draft 调用视为写作模式;由 dp-set-concept 调用视为定义模式;用户直接说"审查/提取"视为审计模式。
前置条件
必须已完成 dp-set-concept,且角色卡中包含基础信息(身份、背景、性格、动机)。角色风格档案是角色卡的延伸,不是替代品。
角色风格档案模板
每个主要角色一份角色风格档案,嵌入设定文档(docs/dreampowers/set/character/),紧跟对应角色卡之后。
## 角色风格档案:[角色名]
### 语言层次
- **教育程度**: [文盲/私塾/学院/自学成才/...]
- **词汇范围**: [文言/白话/方言/行话/混合]
- **典型用语举例**: [3个该角色会用的词或短语]
### 句式偏好
- **句长倾向**: [短句为主 / 长句为主 / 混合]
- **句型偏好**: [陈述 / 反问 / 祈使 / 省略]
- **主被动**: [主动居多 / 被动居多]
### 口头禅与标志词
- **口头禅**: [1-2个,不超过3个]
- **标志词**: [角色偏爱的特定词汇]
- **使用频率**: [每N句出现一次,避免过密]
### 情绪表达方式
- **愤怒**: [爆发型/压抑型/冷嘲型/沉默型]
- **喜悦**: [外放型/内敛型/自嘲型]
- **悲伤**: [流露型/掩饰型/转化为愤怒型]
- **恐惧**: [逃避型/强撑型/理性分析型]
### 禁忌词汇
- [这个角色绝不会说的词/句式,至少列2个]
- [原因说明]
### 说话节奏
- **语速**: [急促/平稳/缓慢/视情绪波动]
- **停顿习惯**: [频繁停顿/一口气说完/关键处停顿]
### 潜台词倾向
- **直接度**: [直说 / 暗示 / 极度委婉]
- **常见潜台词策略**: [反话/转移话题/以问代答/沉默]
### 信息量控制
- **话多还是话少**: [寡言/适中/健谈/因对象而异]
- **主动提供信息还是被动回应**: [主动/被动/视关系而定]
### 三项辨识特征(核心)
1. [区别于所有其他角色的第一特征]
2. [第二特征]
3. [第三特征]
角色风格创建流程
digraph voice_creation {
rankdir=TB;
node [shape=box, style=rounded];
bg [label="读取角色卡\n背景/教育/地域/职业/阶层"];
define [label="填写角色风格档案模板\n逐项完成"];
three [label="提炼三项辨识特征\n此角色与其他所有角色的区别"];
sample [label="撰写3段样本对话\n同一内容,不同角色各说一遍"];
test [label="蒙名测试\n遮住名字,能否辨认?" shape=diamond];
pass [label="角色风格档案通过\n写入设定文档" shape=doublecircle];
fail [label="强化差异\n调整辨识特征"];
bg -> define -> three -> sample -> test;
test -> pass [label="通过"];
test -> fail [label="未通过"];
fail -> define [label="重新调整"];
}
步骤详解
第一步:从角色背景出发
角色风格不是凭空捏造的。一个农民不会说官话,一个将军不会说市井俚语(除非有特定经历支撑)。从角色卡中的以下字段推导角色风格:
- 教育经历 → 语言层次
- 出生地域 → 方言痕迹
- 职业背景 → 行话来源
- 社会阶层 → 说话时的自信程度与措辞习惯
- 核心性格 → 情绪表达方式与潜台词倾向
第二步:定义三项辨识特征
从角色风格档案的所有维度中,提炼出 3 个最能将此角色与其他角色区分开的特征。这 3 个特征必须满足:
- 至少 1 个是句式层面的(不能全靠口头禅)
- 至少 1 个是内容层面的(说什么,不只是怎么说)
- 不得与已有角色的辨识特征重复
第三步:样本对话测试
选一个简单的场景(比如"拒绝一个请求"),让每个主要角色分别用自己的角色风格说一遍。写出来后并排对比。如果两个角色的台词互换后依然通顺,说明差异不够。
第四步:蒙名测试
遮住角色名字,让自己(或子 agent)仅从对话内容判断说话者身份。通过标准:主要角色的辨认准确率 ≥ 80%。
对话写作规则
结构规则
| 规则 | 阈值 | 说明 |
|---|
| 连续对话上限 | ≤5 个来回 | 超过 5 个来回必须插入叙事/动作/心理描写(详见 dp-chapter-direct) |
| 潜台词密度 | ≥60% | 至少 60% 的对话应承载 ≥2 层含义(字面义 + 潜台词) |
| 对话功能 | 必选其一 | 每句对话至少完成一项:推进情节、揭示性格、制造张力 |
对话标签规则
推荐:
- 动作节拍代替对话标签。"他放下茶杯"比"他说"更有画面感
- "说""道"足矣。朴素的标签不会打断阅读节奏
- 当说话者明确时,省略标签。两人对话中交替回合不需要每句都标注
禁止:
- 替代词滥用(咆哮道、嘶吼道、低吟道、轻笑道)❌ 除非极端情绪场景偶尔使用
- 副词堆砌("他愤怒地说""她温柔地道")❌ 如果对话本身不能传达情绪,加副词也救不回来
- 解释性标签("他讽刺地说")❌ 讽刺应该从台词本身读出来
潜台词写作指引
好的对话永远有两层:角色说了什么,角色真正在表达什么。
这一节提供核心原则。关于潜台词的完整技法体系(四种来源、六种构建技法、密度控制、审查方法、构建流程),参见本技能后半部分的**"潜台词:对话中没说出口的那一半"**章节。
简要原则:
- 角色有不能说的秘密
- 角色有想要但不好意思要的东西
- 角色在试探对方
- 角色在保护自己或他人
- 权力关系导致不能直说
如果一段对话只有字面意思,问自己:这两个角色之间有什么是不能直接说出来的?如果什么都没有,要么场景设置有问题,要么角色关系太平淡。
角色风格一致性检查
每完成 3-5 章后执行一次角色风格一致性审查:
- 提取:把角色 X 在所有已完成章节中的对话全部提取出来
- 比对:逐项对照角色风格档案,检查是否偏离
- 标记:发现偏离时,判断类别:
| 偏离类型 | 处理方式 |
|---|
| 角色成长导致的角色风格变化 | 合理。在角色风格档案中补充"演变记录",注明变化起始章节和驱动事件 |
| 情绪极端状态下的临时偏离 | 合理。不修改角色风格档案,但在该章节标注原因 |
| 无故偏离(作者笔误) | 不合理。修正对话,使其回归角色风格档案 |
- 演变记录:如果角色经历重大转折,角色风格档案应增加"演变"条目:
### 角色风格演变记录
| 章节 | 变化内容 | 驱动事件 |
|------|---------|---------|
| 第12章 | 开始使用敬语 | 身份暴露,被迫融入上层社会 |
| 第20章 | 口头禅消失 | 导师去世,刻意抛弃旧习惯 |
潜台词:对话中没说出口的那一半
本章节是对前面"潜台词写作指引"的深潜展开,提供完整的潜台词技法体系。
核心定位
这是一个专注于对话潜台词的深潜模块。
前面的角色风格档案解决"角色怎么说话"。dp-chapter-direct 对白模式解决"对话场景怎么搭"。本章节只关心一件事:角色说出口的话和真实意图之间的那条裂缝。
潜台词是对话技艺的最高层。没有潜台词的对话是信息传递。有潜台词的对话是角色碰撞。
判定标准很简单:把角色说的话原文抄下来,再把他"真正想说的话"写在旁边。如果两句话完全相同,这段对话就没有潜台词。
适用时机
在以下场景中激活本章节的技法:
- 情绪高度紧绷的对话(告白、质问、摊牌)
- 谈判与博弈(交易、审讯、外交)
- 权力不对等的对话(上下级、师徒、主仆)
- 角色藏有秘密,或故意欺骗/误导的场景
- 任何"角色不能/不愿/不敢说真话"的对话
如果角色之间没有隐瞒、没有权力差、没有情感压力,潜台词就缺乏驱动力。先检查场景设定是否具备产生潜台词的条件。
潜台词的四种来源
每一句有潜台词的台词,背后都有一个驱动力。识别驱动力,才能写出精准的间接表达。
| 来源 | 驱动力 | 角色状态 | 典型场景 |
|---|
| 秘密 | 角色知道某件事但不能暴露 | 闪躲、模糊、转移注意力 | 身份隐瞒、背叛前夕、双面间谍 |
| 权力 | 等级/关系阻止诚实表达 | 委婉、服从表面下的抵抗 | 下属暗讽上司、学生违心附和 |
| 情感 | 感受太脆弱/太强烈,直说等于暴露自己 | 压抑、伪装、用愤怒掩饰恐惧 | 告别、表白、创伤触发 |
| 策略 | 角色故意隐瞒以获取优势 | 设局、试探、钓鱼 | 谈判、审讯、情报刺探 |
一句台词可以同时被多种来源驱动。"策略"+"秘密"是最常见的复合型。
潜台词构建技法
间接回答
用另一个问题回避原始问题。回避本身就是答案。
"你昨晚去了哪里?"
"你什么时候开始查我行踪了?"
角色没有回答。但读者已经知道:去了不该去的地方。
话题转移
对话碰到敏感区域时,角色突然切换话题。越突然,越暴露。
"你真的不恨他?"
"这茶凉了。我去烧点水。"
转移的时机就是痛点的坐标。
过度补偿
解释得太多、太细、太急切,反而暴露了心虚。
"我只是路过,正好看到灯还亮着,想着你可能还没吃饭,也没什么特别的意思,就是顺路带了点东西……"
正常人不需要为一碗面条辩护。
身体语言矛盾
嘴上说的和身体做的不一致。文字对话中,通过动作节拍实现。
"我没事。"她把手藏到桌子底下,指甲掐进掌心。
台词和动作的缝隙就是潜台词的入口。
选择性沉默
不回答,也是一种回答。在关键节点插入沉默,用叙述填充那个空白。
"你还爱她吗?"
他把杯子转了半圈,又转回来。窗外有人在叫卖水果。
"走吧,该出发了。"
沉默持续的长度正比于问题的杀伤力。
代用品(位移表达)
不谈真正的问题,用一个安全话题承载真实情绪。两个人在争论一道菜的做法,其实在争论谁说了算。
"你每次都放太多盐。"
"你每次都嫌我放太多盐。"
他们不是在谈盐。
潜台词密度控制
不是每句台词都需要潜台词。目标密度:60%。
全程潜台词会让读者精疲力竭。密码一样的对话读起来像解谜游戏,不像故事。你需要在"加载句"和"呼吸句"之间交替:
| 类型 | 功能 | 占比 |
|---|
| 加载句 | 承载潜台词,字面意思和真实意图不同 | ~60% |
| 呼吸句 | 字面即全部,推动对话前进 | ~40% |
呼吸句的作用:给读者消化空间,让加载句更显锋利。连续三句加载句后放一句呼吸句,效果最佳。
潜台词审查方法
写完一段对话后,逐句做以下检查:
对每个对话交换,问自己:如果这个角色在这个场景中完全诚实,他会怎么说?
然后把"完全诚实版"和"实际台词"并排放。
- 两者完全相同 → 这句没有潜台词。检查:场景是否需要?角色是否有理由直说?
- 两者存在差距 → 差距就是潜台词。检查:差距是否可感知?读者能否在不解释的情况下隐约感受到?
- 读者完全无法察觉差距 → 潜台词太深,等于没有。需要增加身体语言线索或上下文暗示
这个方法也是诊断工具。如果你发现一场关键对话中每句台词的"诚实版"和"实际版"完全一致,说明角色之间缺乏足够的张力、秘密或不对等关系。问题不在对话技法,在场景设定。
潜台词构建流程
digraph subtext_flow {
rankdir=TB;
node [shape=box, style=rounded];
source [label="识别潜台词来源\n秘密/权力/情感/策略"];
honest [label="写出角色的\n'完全诚实版'台词"];
gap [label="确定间接表达策略\n间接回答/转移/沉默/代用品"];
write [label="写出实际台词\n+ 动作节拍"];
check [label="读者能否感知裂缝?" shape=diamond];
pass [label="潜台词成立" shape=doublecircle];
too_deep [label="增加身体语言\n或上下文线索"];
too_shallow [label="加大诚实版与\n实际版的距离"];
source -> honest -> gap -> write -> check;
check -> pass [label="能感知"];
check -> too_deep [label="完全不可察觉"];
check -> too_shallow [label="太直白"];
too_deep -> write;
too_shallow -> gap;
}
与其他技能的交互
| 关系 | 技能 | 说明 |
|---|
| 上游 | dp-set-concept | 角色背景、性格、动机、人际关系 |
| 被引用 | dp-chapter-draft | 写作阶段文笔审查中的"对话辨识度"检查和对话层次检查 |
| 被引用 | dp-chapter-direct | 场景对话子模式中的角色风格参考,以及"60% 潜台词密度"规则的具体执行指引 |
| 协作 | dp-chapter-direct | 潜台词密度影响对话节奏,加载句减速,呼吸句加速 |
| 协作 | dp-review-consistency | 角色风格是修订和去AI味的红线,不得抹杀角色说话方式 |
| 协作 | dp-set-outline | 角色风格应反映其对主题的立场 |
反模式
以下行为严格禁止:
- 所有角色说话像同一个人(作者本人) ❌ 角色风格档案存在的全部意义就是防止这件事
- 方言/口音作为唯一区分手段 ❌ 方言是差异的一部分,不是全部。去掉方言标记后角色仍应有差异
- 导游角色:只为解释设定而存在的角色 ❌ 每个角色都要有自己的目标和立场,不是作者的传声筒
- 对话读起来像论文 ❌ 没有人在日常对话中使用完整的因果论证链条
- 角色风格无故变化 ❌ 角色说话方式改变必须有角色发展支撑,否则就是笔误
- 口头禅过度使用 ❌ 口头禅是点缀,不是每句话的开头。频率过高会变成读者的噪音
- 用外貌描写替代角色风格 ❌ "粗犷的声音说道"不是角色风格,是偷懒
- 所有台词都是字面意思,对话变成信息传递带 ❌ 角色之间如果没有任何需要隐瞒的东西,场景设定有问题
- 潜台词深到读者完全无法察觉 ❌ 读者感知不到的潜台词等于不存在
- 用旁白直接解释潜台词 ❌ "他这么说,其实是想表达……"直接杀死了潜台词的全部力量
- 每句话都有潜台词,100% 密度 ❌ 读者会疲劳、脱离、不再信任任何台词的字面意思
- 潜台词与角色性格矛盾 ❌ 一个一向直率的角色突然满口暗示,没有铺垫就是笔误
- 所有角色用同一种间接表达方式 ❌ 角色 A 和角色 B 都用沉默回避,那就不是角色差异,是作者的偷懒
注意事项
出现以下任一情况,立即停下:
| 信号 | 说明 |
|---|
| 两个角色的台词互换后毫无违和感 | 角色风格差异不足 |
| 角色突然使用从未用过的句式/词汇 | 可能是笔误,检查角色风格档案 |
| 连续超过 5 个来回纯对话无叙事打断 | 违反结构规则 |
| 对话只有字面意思,没有潜台词 | 检查角色关系和场景张力 |
| 角色在"解释"而非"说话" | 导游角色陷阱 |
| 全篇对话标签都是"XX道" | 需要用动作节拍替换 |
| 关键对话中每句台词的"诚实版"和"实际版"完全一致 | 场景缺乏张力或角色缺乏隐瞒动机 |
| 连续多句潜台词后无呼吸句 | 密度过高,读者疲劳 |
| 角色的间接表达方式与角色风格档案中的"潜台词倾向"矛盾 | 角色风格一致性被破坏 |
| 需要旁白解释角色"真正的意思" | 潜台词太深或技法失败,需要重写 |
| 读者必须回翻前文才能理解一句对话 | 上下文暗示不足,线索需要前置 |
| 角色突然变得极度间接,无触发事件 | 缺乏动机铺垫 |
处理流程:
- 暂停写作
- 重新查阅相关角色的角色风格档案
- 运行潜台词审查方法(诚实版 vs 实际版对比),确认潜台词来源是否成立
- 改写问题对话
- 如果是系统性问题(多处出现),执行完整的角色风格一致性检查
终止状态
当以下条件全部满足时,本技能的产出物视为完成:
- 所有主要角色(主角 + 主要配角)均已建立角色风格档案
- 每份角色风格档案的三项辨识特征已定义,且不与其他角色重复
- 样本对话测试已完成
- 蒙名测试通过(辨认准确率 ≥ 80%)
- 角色风格档案已写入
docs/dreampowers/set/character/ 中的角色设定文档
- 对话中潜台词密度接近 60% 目标,加载句与呼吸句交替
- 每句潜台词都有可追溯的来源(秘密/权力/情感/策略)
- 读者无需旁白解释即可感知字面与真实意图之间的裂缝
- 角色间接表达方式与各自角色风格档案中的潜台词倾向一致
- 关键对话的"诚实版"与"实际版"存在可感知的差距
完成后,角色风格档案与潜台词技法将作为 dp-chapter-draft 和 dp-chapter-direct 的持续参考依据。