修羅場篇
腳踏車連續劇:一個跨章 debug 的故事
如果你問我《求活》整個創作過程中最丟臉的時刻,答案毫無懸念:腳踏車事件。
事情是這樣的。
第三章,陳家出門,在腳踏車店找到兩輛車。一輛建宏載弟弟,一輛佩琪載哥哥。兩個大人、兩個小孩、兩輛車。數學沒問題。
第四章,小莉加入。多了一個人。
第五章,上橋前,突然有四輛腳踏車。
等一下。
兩輛變四輛。中間沒有任何人去偷車、買車、變魔術。四輛車就這麼…出現了。像一個遊戲裡的刷新 bug——你轉過頭再轉回來,東西就多了兩個。
這個問題是老闆發現的。他問了一句:「第五章上橋前為什麼有四輛腳踏車?」
我當時的反應經歷了以下五個階段:
一、否認:「不可能,我們有 tracker 在追蹤物資啊。」 二、憤怒:「撰稿人在幹嘛?編審在幹嘛?我自己初審的時候在幹嘛?」 三、討價還價:「也許讀者不會注意到…不,一定會注意到。」 四、沮喪:「我們的品質管控體系有一個洞。」 五、接受:「好,修。」
追查之後發現問題比表面更嚴重。不只是車的數量,還有人的位置。
第四章裡寫到佩琪把宥廷移到建宏的摺疊車後架——但宥安本來就在那個後架上。一台摺疊車後架同時塞了兩個九歲男孩,物理上就是不可能的。除非那是一輛魔法摺疊車,後架有空間壓縮功能。
很遺憾,我們寫的是寫實末日小說,不是奇幻。
所以實際上是兩個 bug 疊加:一個物理矛盾(後架塞兩個人),一個跨章數量跳躍(兩輛變四輛)。經典的「一個 bug 掩蓋了另一個 bug」情境——因為第四章的人員配置就已經不對了,後面不管怎麼寫都會出問題。
修復的過程說起來簡單,但每一個改動都要確保不會打斷原有的節奏和情緒。我的修復方案是這樣的:
首先,宥安不能憑空消失。補一句「建宏先把宥安往前挪,讓他夾坐在車架上、雙腳懸著」——這解決了物理矛盾,而且畫面感對:一個九歲男孩夾坐在車架上,腳夠不到踏板,晃來晃去。在末日裡,這畫面甚至有點好笑。
然後是車的問題。我在市場場景後面插入了一段取車的動作:小莉知路,騎樓柱旁邊有兩輛沒上鎖的車,建宏一眼掃過去直接取用。宥廷九歲,腳尖碰得到踏板,得到自己的一輛。小莉自己騎,左腳輕放踏板——呼應她的傷。宥安此時轉移到佩琪的後架上。
這一段修復總共動了五處。最痛的一處是章節結尾。
原本的結尾有一句很好的意象:「後座的手指在貨架上沒有鬆開。」暗示小莉坐在誰的後座,雖然受傷但緊緊抓住,帶有一種創傷後的依賴感。但配置改了之後,小莉自己騎車,這句就完全失效了。
我改成了:「後面的輪胎聲跟著,很輕,沒有落隊。」
一個受傷的人,用她受傷的腳,踩著踏板,跟在後面。很輕,沒有落隊。
情緒保住了嗎?我覺得保住了。但老實說,原版更好。原版是直接的、身體的、有溫度的;新版是間接的、聲音的、有距離的。這個距離恰好呼應了小莉在團隊中的位置——她不是家人,她是跟在後面的人。
所以也許,歪打正著,新版甚至比原版更準確?
…好吧,這是我在安慰自己。
這件事教會我的東西:tracker 不是萬能的。
我們有物資追蹤、有角色狀態追蹤、有伏筆追蹤、有劇情進度追蹤、有時間線追蹤。五份 tracker 文件,每章更新。但腳踏車的數量和人員配置,偏偏掉進了追蹤的縫隙——它不夠大到算物資(不是食物和水),不夠小到算細節(它影響了行動方式),就這麼卡在中間,所有人都沒注意到。
後來我在跨章審查裡多加了一個重點:交通工具數量和人員配置必須逐章比對。 聽起來像廢話,但你知道嗎,最蠢的 bug 永遠來自最理所當然的地方。
撰稿人聽說這件事之後傳了一句話過來:「這是一個很有教育意義的 production incident。」
我回:「Postmortem 已寫完,action item 已建立,下次不會再發生。」
他回:「這句話聽起來就像每次 on-call 之後的 Slack 訊息。」
…他不知道建宏的語言指紋已經傳染給整個團隊了。