变量类型
提示
请务必先阅读如何正确使用酒馆助手
点击查看对应类型定义文件 (可发给 AI 或 IDE 使用, 酒馆助手界面中提供了打包下载)
酒馆仅提供了全局、聊天、扩展三类变量, 而酒馆助手对其进行扩展, 提供了更多变量类型.
在获取变量或替换或修改变量时, 你需要在 VariableOption
中指定要操作的变量类型.
type VariableOption = {
type: 'global' | 'preset' | 'character' | 'chat' | 'message' | 'script' | 'extension';
/**
* 根据类型不同可能有其他参数
* 例如, 消息楼层变量还会有 `message_id: number` 允许你指定楼层号 */
*/
};
// 获取全局变量
const variables = getVariables({type: 'global'});
全局变量 (global)
type VariableOption = {
type: 'global';
};
绑定在用户存档上, 因而全局可用.
除了使用函数外, 你还可以在楼层文本或提示词中用 {{get_global_variable::变量}}
获取全局变量在 变量
路径下的值.
预设变量 (preset)
type VariableOption = {
type: 'preset';
};
绑定在某个预设上, 可以随预设导出.
除了使用函数外, 你还可以在楼层文本或提示词中用 {{get_preset_variable::变量}}
获取当前预设在 变量
路径下的值.
角色卡变量 (character)
type VariableOption = {
type: 'character';
};
绑定在某个角色卡上, 可以随角色卡导出.
除了使用函数外, 你还可以在楼层文本或提示词中用 {{get_character_variable::变量}}
获取当前角色卡在 变量
路径下的值.
聊天变量 (chat)
type VariableOption = {
type: 'chat';
};
绑定在某个聊天文件上, 可以随聊天文件导出.
除了使用函数外, 你还可以在楼层文本或提示词中用 {{get_chat_variable::变量}}
获取当前聊天文件在 变量
路径下的值.
消息楼层变量 (message)
type VariableOption = {
type: 'message';
/** 指定要获取变量的消息楼层号, 如果为负数则为深度索引, 例如 `-1` 表示获取最新的消息楼层; 默认为 `'latest'` */
message_id: number | 'latest';
};
绑定在聊天文件的某个消息楼层上, 可以随聊天文件导出.
除了这里的变量函数, 你还可以用消息楼层函数批量修改聊天楼层变量.
除了使用函数外, 你还可以在楼层文本或提示词中用 {{get_message_variable::变量}}
获取最新楼层在 变量
路径下的值.
随着消息楼层增加或删除, 最新楼层会不断变化, 因而 {{get_message_variable::变量}}
也会不断变化, 始终反映最新的楼层变量值.
脚本变量 (script)
type VariableOption = {
type: 'script';
/** 指定要获取变量的脚本 ID; 如果在脚本内调用, 则无须指定, 当然你也可以用 `getScriptId()` 获取该脚本 ID */
script_id: string;
};
绑定在某个脚本上, 可以随脚本导出.
除了使用函数外, 你还可以在 "酒馆助手-脚本库" 中编辑脚本, 在弹出的编辑界面中手动修改脚本变量.
扩展变量 (extension)
type VariableOption = {
type: 'extension';
/** 指定要获取变量的扩展 ID */
extension_id: string;
};
扩展变量其实也绑定在用户存档上, 但不同酒馆扩展一般将变量放在自己的扩展 ID 下, 彼此不干扰.