如何在打斷 AI 遊戲角色時不遺失提問內容
若 AI 遊戲角色仍在回答,打斷應是一項明確的玩家操作,既能停止當前回答,又能保留原始提問與已生成的文字內容。介面應將回答標記為未完成,並允許玩家選擇是否從可見位置繼續、提出後續問題,或是更換提問。這樣既能賦予玩家控制權,又不會讓殘缺的回答看起來像是已結束。
在角色回答時保持停止操作清晰可見
在整個回答過程中,應在玩家清晰可見的位置設置標籤明確的「停止」控制項。請確保其含義與其他控制項有所區分,例如在許多遊戲中代表略過對話的「跳過」,或是可能關閉對話的「關閉」。試圖叫停回答的玩家不應去猜測某個按鈕究竟會清除對話、推進劇情,還是僅僅加速文字播放。
當玩家觸發「停止」時,介面應迅速給予反饋。就文字而言,應停止在當前回答中繼續新增字元;就語音對話而言,應停止角色的語音播放以及任何持續出現的後續文字。串流傳輸(Streaming)系統可以在完整回應準備好之前逐步傳送輸出內容,因此可見文字可能只是完整回答的一部分;介面應反映出這種未完成狀態,而非暗示角色已完成發言。OpenAI 的串流回應指南詳細介紹了串流如何讓輸出的開頭部分在生成期間即可供讀取。
完整保留提問與已傳送文字
打斷操作應完整保留玩家的原話,以及在「停止」生效前已呈現在介面上的所有回答文字。將它們作為同一組對話保留在對話記錄中。如此一來,玩家可以查看自己問了什麼、重新閱讀已產生的回答,或是提出更具體的後續問題,而無需憑記憶重新構建上下文。
介面還應區分已傳送文字與從未接收到的文字。當玩家停止回答時,切勿補全未完的句子、默默用摘要取代部分回答,或是丟棄原始提問。這些改動會讓人更難判斷角色實際說了什麼。即使玩家決定放棄該話題,保留可見記錄依然很有價值:它能維持對話內容清晰易讀,並為下一步操作提供明確的起點。
將回答標記為已取消且未完成
在被打斷的回答旁顯示簡短狀態,例如「玩家已停止 · 未完成」。這能告知玩家回答為何在此結束,避免將對話片段誤認為完整回應。在玩家決定下一步行動時,該狀態可保留在記錄中;關鍵在於它能直截了當地說明當前狀態。
請將此狀態與劇情後果區分開來。停止顯示回答不應被預設為同意、已完成對話選擇,或是決定無視該角色。若某款遊戲刻意將玩家的打斷視為遊戲世界內的行動,介面需在玩家做出決定前清楚揭示該後果。有關遊戲對話設計的研究討論了在不同遊戲中跳過與打斷如何帶有不同意義,以及玩家有時可能無法清楚得知打斷會產生何種影響。Rennick 與 Roberts 對電玩對話的分析涵蓋了這種區別及其設計啟示。
提供深思熟慮的下一步操作
一旦回答停止,請針對玩家可能的意圖提供一組簡潔明確的選項。例如:
繼續回答——以現有問題為上下文,要求角色從中斷處繼續作答。
追問——在玩家補充細節或針對特定點提問時,保持問題與部分回答可見。
編輯或更換問題——允許玩家修改措辭或重新開始,同時不會從可見歷史中遺失先前的對話。
離開對話——返回遊戲,且不將未完成的回答視為已結束。
這些標籤代表著截然不同的操作,因此請避免將它們打包在諸如「重試」這類含糊不清的按鈕下。「重試」可能意味著從頭重新生成、繼續作答,或是再次發送相同的問題。如 Adventure Creator 對話教學所示,對話系統可以在角色發言時一併提供選單選項;這裡的設計啟示在於,下一步操作可以在發言進行時提供,但玩家應該能夠清楚判斷選擇該操作是會打斷、排隊等待,還是等待當前輪次結束。
繼續時保留上下文
若玩家選擇「繼續」,請明確提示現有問題依然有效。角色應在可能的情況下繼續同一個回答,而不是開啟一個空白的新輪次逼迫玩家重複提問。如果無法繼續作答,或是會生成一個全新的回答,請為該選項標註相應的說明(例如「生成新回答」),並在記錄中保留原始問題與被打斷的文字。
這一區別至關重要,因為玩家可能希望延續角色的思緒,也可能在看到開頭走偏後想要重新嘗試。這兩種意圖截然不同。在「繼續」與「重新開始」之間提供簡潔的選擇,能讓差異一目了然,而無需玩家具備回答生成的技術知識。
妥善處理延遲、錯誤與快速重複輸入
當回答停頓或意外中斷時,「停止」操作仍應合乎邏輯。若玩家叫停後沒有更多文字送達,請保留已顯示的文字並維持未完成標籤。如果在玩家按下「停止」之前連線或生成就已失敗,請將其描述為中斷或失敗,而非歸咎於玩家。提供明確的繼續或重新提問方式,並保持原始問題可見。
同時也應考慮快速重複操作的情況。一旦「停止」已被接受,該控制項就不應再顯示為正在停止活躍回答;取而代之的是顯示已停止狀態及可用的下一步選項。這樣可以避免混淆,不讓玩家疑慮再次點擊是會撤銷停止、清除回答,還是發送新請求。這些是基於未完成串流輸出與完整回應之間的外觀差異而提出的互動建議,並非針對任何特定遊戲實作的斷言。
可用於設計檢核的簡易互動流程
從玩家的角度檢視整個互動過程:
玩家提出問題,問題持續顯示在對話中。
角色開始回答;文字或語音傳輸期間,「停止」控制項始終可用。
玩家按下「停止」;回答中止,所有已傳送的文字維持可見。
介面將回答標記為未完成,並說明是由玩家叫停。
玩家選擇繼續、追問、編輯或更換問題,或是離開。
所選操作正常執行,不會在無聲無息間將文字片段轉為完整回答,也不會遺失原始問題。
此流程是一個編輯決策輔助工具,並非放之四海皆準的遊戲標準。其價值在於能檢測出該互動所需防止的具體問題:玩家停止了回答,卻發現問題、已收到的文字或下一步操作的意義隨之消失不見。
圍繞玩家控制權設計打斷機制
良好的打斷體驗包含三個可見部分:回答期間可靠的「停止」操作、完整保留提問與已傳送文字的記錄,以及明確的未完成狀態配以供玩家自主選擇的下一步行動。這些要素結合在一起,能讓玩家在掌握角色對話節奏的同時,清楚知曉發生了什麼,並自主決定如何推進。
