酒館正則與指令碼使用教程:從新手到進階
酒館正則與指令碼使用教程:從新手到進階
Contents
正規表示式與酒館助手指令碼是 SillyTavern 中用於文本處理和互動功能的核心工具。正則負責查詢和替換文本,而指令碼則能執行更復雜的邏輯和互動。本教程將幫助你快速上手這兩者,並解決常見問題。
正規表示式是什麼?它能做什麼?
正規表示式(Regex)是一套文本匹配規則,用於查詢、提取和替換特定模式的文本。在酒館中,正則常用於以下場景:
- 美化介面:將純文本標記(如狀態列標籤)替換為美觀的 HTML 結構。
- 隱藏內容:摺疊模型的思考鏈或刪除出戲旁註(如 OOC 旁白)。
- 清理文本:去除多餘的符號或格式化輸出的內容。
正則的核心是“查詢並替換”,但它不適合處理複雜的互動邏輯(如狀態更新、按鈕點選)。
酒館助手指令碼是什麼?它能做什麼?
酒館助手指令碼是在 SillyTavern 頁面環境中執行的 JavaScript 程式碼,具備以下能力:
- 資料讀寫:讀取和修改變數、設定、訊息與世界書資料。
- 介面構建:建立狀態列、控制中心、彈窗、按鈕等互動元素。
- 事件監聽:響應生成、變數更新、對話切換等事件。
指令碼適合處理複雜的互動邏輯,例如點選按鈕後更新狀態或管理生命週期。
正則與指令碼的區別是什麼?
以下是兩者的核心區別:
| 需求 | 正則 | 酒館助手指令碼 |
|---|---|---|
| 隱藏指定標籤 | ✔️ | 通常沒必要 |
| 將文本替換為靜態卡片 | ✔️ | 也可以 |
| 點選按鈕後讀寫變數 | ✖️ | ✔️ |
| 變數變化後重新整理狀態列 | ✖️ | ✔️ |
| 載入遠端資料並處理失敗 | ✖️ | ✔️ |
| 管理複雜 UI 和狀態鏈 | ✖️ | ✔️ |
簡單口訣:
- 如果需要“找出來、藏起來、換個樣子”,用正則。
- 如果需要“點了以後做事、資料變化後重新整理、失敗後給反饋”,用指令碼。
如何使用正規表示式?
前置準備
- SillyTavern 執行環境。
- 帶正則的角色卡或預設。
分步教程
- 匯入正則:點選「設定 → 角色卡與酒館 → 從酒館匯入」,選擇帶正則的檔案。
- 啟用正則:在「酒館全域性設定 → 預設 / 正則 / 宏」中啟用匯入的正則。
- 測試效果:發一條訊息,觀察文本是否被替換或狀態列是否美化。
- 排查問題:如果文本消失或異常,檢查替換串是否寫錯,關閉或修改相關規則。
如何使用酒館助手指令碼?
前置準備
- JavaScript 基礎。
- SillyTavern 支援指令碼的執行環境。
分步教程
- 建立指令碼:在指令碼編輯器中編寫邏輯,例如讀取變數或建立按鈕。
- 監聽事件:繫結指令碼到生成、變數更新等事件。
- 測試互動:點選按鈕或觸發事件,觀察狀態列或資料是否更新。
- 最佳化效能:確保指令碼在頁面載入、解除安裝時正確清理資源。
常見問題排查
正則問題
- 文本消失:檢查替換串是否為空,停用相關規則。
- 美化不生效:確認正則的執行時機(雙向、僅顯示、僅提示詞)。
指令碼問題
- 按鈕無功能:確保指令碼綁定了點選事件並執行寫入邏輯。
- 狀態未更新:檢查變數是否正確寫入,監聽器是否正確繫結。
FAQ
正則美化會不會亂改我的聊天記錄?
不會。美化正則走「僅顯示」時機,只改渲染效果,聊天記錄原封不動。
指令碼能管理世界書嗎?
能。指令碼可以建立、更新和解除安裝世界書條目,但需確保不覆蓋使用者修改的內容。
正則和指令碼可以一起用嗎?
可以。正則處理文本替換,指令碼管理互動邏輯,兩者可以配合使用。
想了解更多關於正則和指令碼的高階用法,請訪問 tuniang.ai。