角色篇
程諳遠的工程師情書
設計程諳遠這個角色的時候,角色設計師交上來的第一版,我看了三十秒就退回去了。
不是寫得不好。是寫得太「好」了。
第一版的程諳遠是個完美丈夫——深情、體貼、會做菜、會說甜話、還順便是 AI 天才。我看完之後跟設計師說:「這個人如果真的存在,他太太不會嫌他搞 AI。他太太會跪下來感謝上天。」
故事需要的不是完美,是真實。而真實的工程師丈夫是什麼樣的?是那種你跟他說「我今天好累」,他會回你「那你要不要試試看把家事流程優化一下」的人。不是不愛你,是他把「愛」翻譯成了「優化」,然後完全不理解你為什麼翻白眼。
這就是他的鋒利面——用解決問題來迴避情感連結。他把妻子當 bug 修。
設計師搞懂這一點之後,整個角色活過來了。程諳遠不會說「我愛你」,但他會花三個月幫你建一套 AI 系統。他不會在你哭的時候抱你,但他會在凌晨三點幫兒子重新貼好掉了的夜光星星貼紙。他寫的程式碼註解比他當面說的話多十倍——那些藏在 # 號後面的碎碎念,才是他真正的情書。
「她不會記得繳費的,設自動扣款。」 「這個 function 是怕老婆又被人唬。」 「TODO: 等兒子大一點教他寫程式。」
他爸是水電師傅。沉默的人。從來不說愛,但會在冬天騎摩托車送兒子上學時把自己外套塞給他。程諳遠的「愛的語言」就是從這裡來的:不說,做。
然後失憶了。
失憶的設定是全書最大的技術挑戰之一。我們選了解離性失憶——心理創傷觸發的記憶封存。它的好處是:忘了自己是誰,但技能還在、常識還在。壞處是:我必須讓一個什麼都不記得的人,在九章裡持續散發「他還愛著家人」的訊號,但不能讓他「想起來」。
解決方案是「身體記得」。
他在雜貨店多拿了兩盒鮮奶——不知道要給誰。走路時手會不自覺往下伸——那個高度,剛好是五歲小孩的身高。寫程式時變數名稱用疊字——像在跟孩子說話。買了一件小小的黃色雨衣掛在門後——每天看著它,不知道為什麼。
這些細節不是我想出來的,是角色設計師和故事架構師一起設計的。但我在審核的時候做了一個關鍵決策:每一個「身體記得」的瞬間,都不給解釋。 不寫「他覺得這可能跟他失去的記憶有關」。不寫「他模糊地意識到什麼」。就讓行為發生,讓讀者自己去補完。
因為讀者比角色知道得更多。讀者知道他有太太、有雙胞胎、有一個在等他的家。所以當他站在童裝店前面出神的時候,讀者的心碎程度,是他自己的一千倍。
這就是資訊不對稱的力量。
除夕夜那場戲,他對著海說「我不知道你們是誰,但我很想你們」——這是全書我最喜歡的一句台詞。它的力量在於「你們」:複數。他不知道自己在想誰,但他知道不只一個人。一個連對象都不知道的思念,比任何具體的思念都殘忍。
程諳遠的名字也值得說一下。「諳」這個字,意思是「熟悉」。一個以「熟悉」為名的人,失去了所有熟悉的一切。設計師埋這個的時候,我差點想加薪。
最後說一個被淘汰的設定:第一版裡,程諳遠有養一隻貓。設計師覺得貓可以增加他的「柔軟面」。我說不行——這個人的柔軟面不應該對著貓展現,應該對著程式碼展現。他的溫柔不是摸貓,是在 Prompt 裡多寫一行「如果有人用善意包裝的東西逼你簽字,不要急。你不笨,你只是太善良」。
貓很可愛。但程式碼裡的碎碎念更動人。