ZenStory AI

Practical guide · 实用指南

Write distinct character dialogue through goals, knowledge and relationships

人物对白总是千人一面?先分目标、信息与关系,再改说话方式

Source checked 2026-09-12 · 源码核对日期

Distinct dialogue starts with what each speaker is trying to do to the conversation: obtain permission, protect something, avoid an admission, test a claim or offer a concession. Give each character a different selection of relevant information and a relationship to the listener, then choose wording and rhythm that fit this moment. Catchphrases alone do not provide that structure. Oh Story’s dialogue references connect voice to agenda, relationship, setting and purpose; they are not a rule that one character must always speak briefly or another must always explain. The original rehearsal example below preserves the same decision while separating three voices and keeping a private fact out of characters’ mouths.

有区分度的对白,先来自各人正在对这场谈话做什么:争取许可、保护某样东西、回避承认、试探依据,或作出让步。再分清各人掌握的信息及与听者的关系,最后才选适合当下的措辞与节奏。只添口头禅,补不出这层结构。Oh Story 的对白参考把声音与议程、关系、场合、目的联系起来,不意味着某个人必须永远短句、另一个必须永远解释。下面的原创排练室示例保留同一个决定,同时分开三人的声音,不把私人事实塞进其他角色嘴里。

Oh StorySource on GitHub

Before you start · 开始之前

Steps · 操作步骤

  1. Give speakers different conversational jobs Replace a label such as “cold personality” with an action: refuse the new demand without explaining a private reason, or make the other person choose between two feasible options. People can want the same broad outcome yet disagree over what must survive it. The singer wants a better opening; the drummer wants one shared moment preserved; the recorder needs a decision within the remaining time. If you cannot yet say why either person wants the outcome, start with character motivation; phrasing alone cannot supply an absent reason to act.
  2. Make information enter for a reason A character should reveal a fact because it helps, obstructs or changes the current exchange, not because the reader needs a briefing. In the example, only A Ke initially knows the remaining studio time; the others cannot cite six minutes before she says it. Qiu Ran’s departure is private author knowledge and cannot become the singer’s explanation for his request.
  3. Differentiate what speakers attend to before adding verbal habits Choose a few useful differences: concrete detail versus summary, questions versus proposals, direct naming versus evasion, formal address versus familiarity, or what a speaker notices first. Do not derive a whole voice from age, occupation or a repeated catchphrase. The bundled reference offers several voice dimensions; treat them as choices, not a checklist to maximize in every line.
  4. Let a reply respond to the previous move A line can accept, resist, narrow, redirect or test the preceding request. Subtext does not require obscure language: the drummer asks whether the laugh must be rerecorded rather than announcing all of his private feelings. If dialogue becomes an explanation of feelings everyone already understands, remove the duplicate commentary. Add an action only when it contributes information or changes what can happen.
  5. Allow the same person to sound different with different listeners A request to the person managing the session may be practical; a concession to a bandmate may focus on the moment they value. Stress and relationship changes can alter rhythm without erasing character. The handbook’s power-contest patterns are specific techniques, not proof that short lines always belong to the powerful or that long lines always signal weakness.
  6. Revise within the approved scene outcome Keep the existing decision and reveal boundary visible while testing the new exchange. Ask what each line does and whether the next reply still follows. A name-swapping exercise can expose interchangeable lines, but it is a heuristic, not a requirement that every sentence identify its speaker in isolation. If fixing the scene needs a different decision, separate that proposal using the revision-decision guide. If you are still designing a short story rather than repairing an established scene, settle the central question and payoff first; sharper lines cannot choose its ending for you.
  1. 给每个人不同的对话任务 把“性格冷淡”换成动作:不解释私人理由但拒绝新增要求,或让对方在两个可行选项中作决定。人们可以想要同一个大结果,却在必须保留什么上冲突。示例里,歌手要更好的开头,鼓手要留住一个共同瞬间,录音者需要在剩余时间内作出决定。 如果还说不清人物为什么要这个结果,先看人物动机指南;措辞本身补不出行动理由。
  2. 让信息有理由地进入对话 人物说出事实,应因为它帮助、阻碍或改变眼前谈话,而不是读者需要听一段介绍。示例起初只有阿珂知道录音时间还剩多久;其他人在她说出之前不能引用“六分钟”。邱冉离开的计划是作者私下的事实,不能变成歌手解释其请求的理由。
  3. 先分注意什么,再添说话习惯 挑少量有用差异:具体细节还是概括,问句还是提案,直呼还是回避,客气称呼还是熟悉语气,最先注意哪件事。不要由年龄、职业或一个反复出现的口头禅包办整个人物声音。随包参考提供多个声音维度,它们是可选工具,不是每句都要最大化命中的清单。
  4. 让回答回应上一句的动作 一句话可以接受、抵抗、缩小、转移或试探刚才的请求。潜台词不等于故意晦涩:鼓手问那次笑声是否也要重录,而不是把自己的全部私情宣告出来。对白若已经让人听懂,就不要再重复解释相同情绪;只有能提供信息或改变局面的动作才值得补入。
  5. 允许同一人对不同对象说得不同 面对管理录音的人,请求可以更具体;面对队友,让步可以落在对方珍惜的瞬间。压力与关系变化会改变节奏,不等于人设消失。手册里的权力交锋模式是特定技法,不证明短句永远属于强者、长句永远代表弱者。
  6. 在批准的场景结果内试改 始终保留既定决定与揭示边界,再看新对白每句做了什么、下一句是否接得上。交换姓名的练习可以暴露可互换台词,但只是启发,不要求每个孤立句子都能识别是谁说的。如果修好场景需要换一个决定,应按改稿决策指南单独提出,不借对白修订偷渡。 如果你仍在设计短篇,而不是修一场已定的戏,先确定核心问题与结尾兑现;更锋利的台词不能替你选定结尾。

Example · 示例

ORIGINAL DIALOGUE EXAMPLE — an editorial alternative, not recorded model output.

Scene: the band is deciding whether to record one more take. Keep the viewpoint close to singer Qi Ran; do not narrate another person's private thoughts.
Approved facts: Qi thinks she rushed the first line and asks for a full retake. The existing take contains a spontaneous laugh that both she and drummer Qiu Ran heard. Initially, only recorder A Ke knows six minutes remain. Qiu will soon leave the city, but neither of the others knows that, and he does not announce it here.
Approved outcome: preserve the existing recording and record only another opening, keeping the laugh. This scene decides what to record; it does not claim a finished audio edit.

Interchangeable version:
Qi Ran: “I would like to record the whole song again because I think the opening could be better.”
Qiu Ran: “I would like to keep this take because I think the laugh later on is good.”
A Ke: “I would like us to decide within six minutes because we cannot extend the session.”
Qi Ran: “I agree to record only the opening and preserve the old take.”
Qiu Ran: “I agree to keep the laugh.”

One possible revision:
Qi Ran: “I rushed the first line. Can we start again?”
Qiu Ran: “Your laugh halfway through. Are we doing that again too?”
A Ke: “Six minutes left. I'll keep this take. Is it the opening you want, or another whole song?”
Qi Ran: “The opening.”
Qiu Ran: “Don't cut the laugh.”
A Ke: “Then we record just the opening. The old take stays.”
Qi Ran: “All right. Nothing after that changes.”

Why the voices differ:
- Qi begins with a performance problem and narrows her request after hearing the constraint.
- Qiu points to a particular shared moment; he does not borrow a speech about his still-private departure.
- A Ke introduces information she owns and turns competing requests into an explicit decision.
- Their speech acts and attention differ without a catchphrase, accent stereotype or gesture after every line.

Same speaker, different listener — optional alternatives after the time limit is known, not extra required lines:
Qi to A Ke: “Just the first line, then. Do we have time?”
Qi to Qiu: “The laugh stays. I only want the opening.”
The first asks for feasibility; the second reassures a teammate about what will be protected.

Suggested request in an existing Claude Code writing project:
/story-long-write 修改第6章
Revise only the named rehearsal dialogue and speaker tags, not the surrounding scene. Use the approved facts, knowledge boundaries and outcome above. Distinguish each character's immediate aim and relationship to the listener before choosing wording. Preserve the book's existing narrative voice. Do not add new actions, a new decision, a departure announcement or private thoughts outside Qi's viewpoint. This is a one-scene choice, not a persistent author preference.
Confirm the local scope, back up the original and follow the bundled revision workflow. If the established chapter plan conflicts with these requested facts, report that before editing. Stop after this chapter's scoped revision and report changed passages and downstream conflicts; do not rewrite later chapters.
[Replace chapter number, paths and scene facts with your own.]
原创对白示例——一种编辑方案,不是模型运行记录。

场景:乐队决定是否再录一遍。视角贴近歌手戚然,不叙述他人私下的想法。
已确认事实:戚然觉得自己第一句抢了,要求整首重录。原录音中有一次她和鼓手邱冉都听见的自然笑声。起初只有录音者阿珂知道还剩六分钟。邱冉很快将离开这座城,但另外两人不知道,他也不在本场宣布。
既定结果:保留原录音,只另录开头,并保留笑声。本场决定录什么,不声称已经完成音频剪辑。

声音可互换的版本:
戚然:“我希望再完整录一遍,因为我觉得开头还不够好。”
邱冉:“我希望保留这一遍,因为我觉得你后来的笑声很好。”
阿珂:“我希望在剩下六分钟内决定,因为我们不能加时。”
戚然:“我同意只补录开头,保留原来的录音。”
邱冉:“我同意保留那段笑声。”

一种改法:
戚然:“第一句我抢了。再从头来一次?”
邱冉:“后面你笑的那一下,也重来?”
阿珂:“还有六分钟。旧的先留着。你们要的是开头,还是再唱一整遍?”
戚然:“开头。”
邱冉:“别把笑声剪没了。”
阿珂:“那只补开头。原来这遍不删。”
戚然:“好,后面不动。”

声音为什么有区别:
- 戚然先盯演唱问题,得知时间约束后缩小请求。
- 邱冉盯住共同经历中的一个具体瞬间,不借机发表尚未公开的离别宣言。
- 阿珂提供她掌握的信息,把不同请求变成一个明确决定。
- 不靠口头禅、刻板口音或每句后的动作尾巴,也能分开注意点与说话动作。

同一人面对不同听者——时间已知后的可选措辞,不是额外必须塞入的两句:
戚然对阿珂:“那只补第一句,来得及吗?”
戚然对邱冉:“笑声留着。我只要开头。”
前一句问可行性,后一句向队友说明什么会被保护。

在已有 Claude Code 写作项目里,可以这样请求:
/story-long-write 修改第6章
只改点名的排练对白与说话人标记,不改周围场景。采用上面的既定事实、信息边界和结果。先分每个人的眼前目标及与听者的关系,再选择措辞;保留本书已有叙述声音。不新增动作、另一个决定、离队宣告或越出戚然视角的私密心理。这只是本场选择,不记录为长期作者偏好。
确认局部范围、备份原稿,再按随包修订流程处理。若已有细纲与这些请求事实冲突,编辑前先报告。完成本章范围内修订后停止,说明改动段落与后续冲突,不重写后章。
[替换为自己的章节号、路径与场景事实。]

Expected files · 预期文件

Verify the result · 验证结果与边界

Sources and version notes · 来源与版本说明