AI 角色有兩個相反的願望,怎樣讓對白仍然連貫?
要讓相反的願望保持連貫,可以先拆成四層:表面目標、深層需要、當前壓力、不可越過的底線。再標出每句對白的主要意圖,以及它受到哪種牽制,檢查轉折有無原因。下面用虛構的燈塔守衛阿澈演示:他想讓弟弟阿硯離島,又怕獨自守塔。人物與對白是教學例子,不對應真實使用者記錄。

導讀
要讓相反的願望保持連貫,可以先拆成四層:表面目標、深層需要、當前壓力、不可越過的底線。再標出每句對白的主要意圖,以及它受到哪種牽制,檢查轉折有無原因。下面用虛構的燈塔守衛阿澈演示:他想讓弟弟阿硯離島,又怕獨自守塔。人物與對白是教學例子,不對應真實使用者記錄。
四層拆解:先分清哪句話在替哪一層說話
| 層 | 阿澈的內容 | 在對白裡的表現 |
|---|---|---|
| 表面目標 | 讓弟弟搭明早的補給船走 | 說出口的指令、催促、安排 |
| 深層需要 | 有人證明他一個人也能撐住 | 很少直說,藏在試探和讓步裡 |
| 當前壓力 | 今夜風暴提前,燈不能滅 | 決定語速、打斷、答非所問 |
| 底線 | 不替弟弟做留下或離開的選擇 | 一旦被逼代選,他會停住或改口 |
四層可以同時影響一句話,但要分清主次。同一場景內,意圖發生變化時應有可追蹤的觸發點,比如一句追問、一次汽笛、一盞燈閃。讀者因此有依據判斷角色為什麼退縮,作者也能檢查這個原因是否足夠。
四種壓力下的選擇與對白
壓力一:時間緊。 補給船兩小時後到,阿硯還在修壞掉的旋轉齒輪。阿澈的選擇是催,但不代選。
阿澈:齒輪我來。你去收東西。 阿硯:收什麼? 阿澈:你說呢。 阿硯:哥,你每次說「你說呢」,都是讓我走。
這裡表面目標在前,深層需要藏在「我來」裡——他想證明自己扛得住。底線沒被觸碰,所以對白短、硬、不解釋。
壓力二:弟弟反問。 阿硯問:「你是不是怕一個人?」阿澈的退縮出現了,但他不否認目標。
阿澈:怕。 阿硯:那我留下。 阿澈:不行。怕是我的事,走是你的事。
注意「怕」是承認壓力,不是推翻目標。退縮落在情緒層,目標層不動,所以前後不矛盾。
壓力三:底線被逼近。 阿硯說:「你不說留還是走,我就不上船。」這逼阿澈代選,觸發底線。
阿澈:船不等你。 阿硯:你也不等。 阿澈:(把燈罩扣上)燈等你。我不替你按這個手印。
「不替你按手印」是底線外化。他仍想弟弟走,但拒絕用命令完成它。對白從催促切到沉默動作,讀者能感到這是同一個人。
壓力四:風暴壓頂。 燈油只剩一格,阿硯若留下能幫忙。阿澈的深層需要和表面目標第一次正面撞上。
阿硯:我留下能多撐一夜。 阿澈:能。 阿硯:那—— 阿澈:我確實想讓你陪著。但我也想試一次,不靠你撐過這夜。到岸上給我報個平安,等天亮再聽我說結果。
這句同時承認害怕獨處和想證明獨立的需要。讓弟弟報平安,保留了關係;獨自守塔,落實了他願意承擔的選擇。需要仍是「證明我也能撐住」,沒有到結尾突然換成另一套動機。
欲望衝突裁決表
寫完一場戲,用這張表逐句檢查。填「觸發點」一欄時,寫清上一句或哪個動作讓角色換了層。
| 對白/動作 | 服務哪層 | 觸發點 | 是否越底線 | 裁決 |
|---|---|---|---|---|
| 「齒輪我來。你去收東西。」 | 表面目標 | 船期逼近 | 否 | 保留 |
| 「怕是我的事,走是你的事。」 | 壓力+目標 | 弟弟反問 | 否 | 保留 |
| 「我不替你按這個手印。」 | 底線 | 被逼代選 | 是,已守住 | 保留 |
| 「等天亮再聽我說結果。」 | 深層需要 | 燈油告急 | 否 | 保留 |
| 「你留下吧,我一個人不行。」 | 推翻目標 | 無 | 是,未守住 | 改寫或刪除 |
最後一行的寫法不是不能出現,而是它需要一個新的、足夠強的觸發點,比如阿澈受傷失去行動能力。沒有觸發點就改口,讀者會讀成作者在湊情緒。
與AI協作時的簡短提醒
如果讓AI續寫這類對白,先把它當前服務的是哪一層寫進提示,例如「此刻只表現壓力層,不碰底線」。提示約束不保證每次輸出都正確,生成後仍需人工逐句核對觸發點和底線。不要指望模型自動記住上一場的分層狀態。
完成檢查
- 四層是否各自有至少一句可指認的對白或動作?
- 每次層與層切換,是否有具體觸發點,而不是突然變臉?
- 底線被逼近時,角色是否做出了可觀察的守線動作?
- 深層需要是否至少被翻譯成一次可執行的目標,而不是只停在情緒詞?
- 裁決表裡有沒有「無觸發點卻改口」的行?有就改寫。
拿你手上那個反覆無常的角色,只挑一場戲,填一遍裁決表。填不滿四層,說明矛盾還沒拆開;填滿但觸發點空著,說明對白還缺一個讓讀者跟得上的轉折。


