CardApp
CardApp 是 Luker 獨有的角色卡內嵌應用系統。它允許角色卡在 data.extensions.card_app 中定義小型應用(包含 HTML、JavaScript 和樣式),這些應用會在聊天介面中載入和渲染,為角色卡賦予互動式的動態能力。
開發 CardApp
推薦使用角色卡編輯助手中的 CardApp Studio 來開發和除錯 CardApp。Studio 提供了 CodeMirror 6 程式碼編輯器、即時預覽和 AI 輔助開發。完整的 API 參考和開發指南請參閱角色卡開發者指南。
生命週期
- 掛載 — 角色切換時,系統從角色卡提取應用定義,將應用掛載到聊天介面的 UI 容器,並呼叫應用的
init(ctx)函數 - 執行 — 應用透過
ctx上下文物件與 Luker 互動,回應聊天事件並更新自身狀態 - 卸載 — 切換到其他角色或關閉聊天時,系統清理應用實例,自動釋放所有透過
ctx註冊的計時器、事件監聽器和 dispose 回呼
使用場景
- 角色卡內嵌互動元素 — 狀態面板、情緒指示器、自訂按鈕等
- 小遊戲 — 文字冒險選擇介面、骰子投擲器、卡牌遊戲元件等
- 狀態追蹤 — 透過
getChatState/setChatState持久化好感度、任務進度、物品清單等資料