能跑起來離好玩還有 321 個 commit
最近看到 Simon Willison 用 coding agents 做 Battle Drones,看到 12 個主要版本和 321 個 agent commits 的時候,我第一個反應是,這哪裡是 vibe coding,這根本是把 playtest 外包給一群不會喊累的工程師 XD
早期版本據說已經能運作,地圖能跑,單位能動,對戰也能開始,但玩起來不好玩。後來他直接對 Claude 下指令,Make it a LOT more fun,agent 跑了好幾個小時,才弄出明顯改善的版本。手機桌面、6 張地圖、隨機地圖、AI 對戰,甚至還有用聲音同步附近裝置的雙人模式,這些功能列出來很漂亮,真正難的是玩家會不會玩到第三分鐘還不想關掉。
可運作跟好玩中間那段
我自己用 vibe coding 做過小遊戲,第一版通常很快就能看到畫面,按鈕也會動,規則大概還算完整。問題是自己玩五分鐘就開始發呆,因為每一個選擇都沒有重量,贏了沒什麼爽感,輸了也不知道自己哪裡做錯。
這段距離很難寫成規格。你可以要求 agent 加上敵人、關卡、道具、音效,卻很難用一句 prompt 說清楚什麼叫做「玩家剛好想再來一局」。它通常藏在節奏裡,第一個決策有沒有立刻回饋,失敗之後有沒有學到東西,下一局有沒有一點點不一樣。這些都得靠人真的坐下來玩,玩到覺得煩,再指出到底是哪裡煩。
所以我現在看 vibe coding 的產出,會把「能不能做出來」和「能不能玩下去」拆成兩個檢查表。前者看功能有沒有壞,後者看自己願不願意在修好之後再玩一次。兩者中間差很多,甚至可能第一個打勾了,第二個連題目都還沒開始。
321 次提交代表什麼
321 個 commits 聽起來很像 agent 很厲害,其實也提醒一件比較不浪漫的事,創意成本沒有消失,只是從寫 TypeScript 轉成觀察、描述、取捨和重試。
每次 playtest 都要把「不好玩」拆成可驗證的改動。是開局太慢,還是資源太多,還是玩家根本看不懂自己為什麼輸。改完再玩一次,如果從三分鐘變成八分鐘,這才算有進展。只喊再有趣一點,通常只會得到更多特效和按鈕,這個坑我踩過,畫面熱鬧起來,遊戲還是像在填表格。
對我來說,vibe coding 最有價值的地方,是把做出第一版的門檻壓到很低,讓人有餘力把時間花在後面那一大段。最容易被低估的工作,剛好也是最像玩家的工作,坐下來玩,覺得無聊,記下原因,改一個變數,再玩一次。
會寫 code 的人未必知道哪裡好玩,會下 prompt 的人也一樣。最後還是得有人願意當那個很挑剔的玩家,連續玩 321 次,然後把一句「不好玩啦」翻譯成 agent 聽得懂、改完也驗證得了的要求。這才是最硬的部分,笑死
作者:島民No.9527