你剛把棋子點在天元,螢幕亮了一下,手機也震了一下,可心裡還是覺得這手棋「沒落穩」。這種彆扭很小,卻會累積:每一手都像隔著一層玻璃,局面再緊張,手指也很難進入棋盤。落子回饋要解決的,就是這半秒裡的觸感、聲音和畫面是否合拍。
一手棋的回饋,先從「確認感」開始
手機上的五子棋少了棋子碰到棋盤的重量。玩家點下去之後,需要一個清楚的確認:這顆子已經在這個交叉點上,回合已經交給對面。確認感太弱,會讓人懷疑是否誤觸;確認感太重,又會把注意力從棋形上拉走。
最常見的場景是搶防對方的活三。你找到唯一擋點,手指落下,如果回饋慢半拍,腦子會先檢查「是不是點錯了」。這一下猶豫很短,卻會打斷連續讀棋。
震動要短,力度要按事件分層
觸覺最容易被做過頭。每下一手都來一次長震,幾分鐘後就會變成干擾;殘局裡連續交換,更容易讓人覺得手機在催促。節制的震動,通常比熱鬧的震動更有手感。
Apple Human Interface Guidelines 提醒設計者,觸覺應該補充視覺和聲音回饋,保持一致,並避免過度使用;短促、可選擇的觸覺更適合頻繁操作。五子棋正是高頻操作:一局幾十手,快速復盤時還會更多。
Android 的觸覺設計原則也說得直接:less is more,並建議把事件的重要性和出現頻率同震動強度對應起來。普通落子可以輕,勝負判定可以稍重,悔棋或無效點位則用另一種更短的提示。玩家不用看說明,也能慢慢學會這些差別。
手感來自分寸,不來自音量。
聲音只負責收邊,不負責表演
棋子聲很誘人。木板、石子、清脆碰撞,聽起來都像在補回真實棋盤。但手機外放環境複雜:捷運、辦公室、夜裡床邊,同一個聲音會從精緻變成打擾。
更穩妥的做法,是把落子聲做短、輕、少尾音。它像一個句號,告訴你這手棋結束了。聲音一旦拖得太長,下一手的思考就被上一手的尾巴掛住。
Google Design 關於 Sound and Touch 的資料 把多感官設計描述為視覺、聽覺和觸覺的匯合,也提到微互動在聲音和觸覺足夠細緻、足夠輕的時候,會更令人滿意。這裡的關鍵字是 subtle:聽得見,但不占位置。
動效要跟手,延遲會破壞讀棋
畫面回饋常被低估。棋子從透明到實心、從小到正常尺寸,或者在交叉點上輕輕定住,這些動效都在告訴玩家「位置正確」。問題出在時間:動效稍慢,讀棋節奏就散了。
五子棋的思考不是單手發生的。你下在右上角防衝四,眼睛馬上要回到左下角檢查雙三風險。如果棋子還在緩慢彈入,視線會被留住,下一段判斷就晚了一拍。
好的落子動效應該短到幾乎不被意識到。玩家能感覺它存在,卻不會等它完成。棋盤保持平靜,局面才有空間。
三種回饋必須同時設計
視覺、聲音、觸覺分開調,很容易各自都對,合起來卻彆扭。比如棋子已經出現,聲音晚了半拍;或者震動先來,畫面還沒變。人的感知會把這些錯位讀成卡頓,即使程式本身很流暢。
可以把一次落子當成一個小節拍:觸點發生時,棋子立即占位;很短的觸覺在同一瞬間給確認;聲音略微貼住棋子到位的時刻。這個順序不花俏,但會讓手指、耳朵和眼睛說同一句話。
不同局面,需要不同重量
所有落子都用同一種回饋,會顯得乾淨,但也會損失資訊層次。普通一手、形成五連、無效點位、超時判負,它們在棋局裡的重量不同,回饋也應該有輕重。
例如普通落子只給輕觸和短聲;落成五連時,可以讓勝負提示稍微明顯一點,但仍然收得住;無效點位適合乾脆的短回饋,告訴你這裡不能下。這樣做的目的不是製造獎勵,而是減少解釋成本。
分層還要考慮頻率。每手都會發生的回饋必須輕,偶爾發生的提示才有資格更強。Android 的原則把這一點講得很清楚:事件越頻繁,觸覺越要節制。
讓玩家保留關閉的權利
觸覺和聲音都有私人邊界。有人喜歡棋子聲,有人只在靜音模式下下棋;有人覺得輕震能幫他確認落點,有人會被震動打斷思路。一個精緻的棋盤,應該允許這些差異存在。
設定裡最好把聲音和觸覺分開。不要把它們藏在一個總開關後面,也不要讓關閉回饋影響棋局資訊。勝負、輪到誰、禁手或無效落點,都應該透過清楚的視覺狀態繼續可讀。
落子回饋做得好,玩家未必會誇它;做得粗糙,幾手之內就會露出來。下一局可以只觀察一件事:每次棋子落下,你是在繼續讀棋,還是先確認手機有沒有聽懂你。