设置与初始化变量#
当使用 MVU 变量框架时, 我们在同一个地方完成变量设置和初始化: 一个名字里包含 [initvar]
的世界书条目.

脚本会自动识别该条目中的 JSON5、TOML 或 YAML 代码, 并将其解析为变量.
为了方便编写和维护, 我个人强烈推荐使用 YAML 格式.
构建变量结构#
让我们以一个包含多角色的复杂角色卡为例. 一个清晰的变量结构不仅能帮助 AI 更好地理解设定, 也能让你自己在后续的修改中一目了然. 因此, 我们不妨先从分类开始:
角色:
世界:
在 YAML 中, 英文冒号 (:
) 用于建立归属关系, 而缩进则用来表示层级. 你可以将上面的代码理解为: 我们创建了名为 "角色" 和 "世界" 的两个顶层 "文件夹".
提示
如果实在不想手动写 YAML
你可以用 https://guifier.com/yaml 网站图形化地编写 YAML (就像你在电脑新建文件夹那样!)
也可以用我在类脑的直播教程或青空莉的文档配置好 Cursor, 创建一个
initvar.yaml
文件, 让 ai 帮你写和改正 (青空莉说你甚至可以这样让 ai 直接帮你写世界书qwq)
填充变量内容#
当然, 空的文件夹没有意义, 我们需要向其中填充内容.
角色:
络络:
好感度: 30
世界:
这里有几个关键点需要注意:
- 层级关系
我们通过缩进来表示层级.
络络:
前面有两个空格, 意味着它被包含在角色:
这个层级之下;好感度:
前面有四个空格, 意味着它属于络络:
.- 缩进规范
YAML 对格式要求严格, 请务必使用偶数个空格 (通常是2个) 进行缩进.
- 赋值
像
30
这样直接跟在冒号和空格后面的值, 就是好感度
这个变量的具体数值.
依照这个逻辑, 我们可以轻松地构建出一个内容丰富的变量结构:
角色:
络络:
好感度: 30
心情: 开心
青空莉:
好感度: 60
心情: 郁闷
世界:
日期: 2025-07-26
时间: 21:00
变量可以是数组#
一个变量可以拥有多个值, 这样的变量称为数组:
角色:
络络:
心情: [60, 开心]
-
开头#角色:
络络:
心情:
- 60
- 开心
结构是可选的#
当然, 前面所给的只是一种推荐的结构. 如果你觉得更直观, 也可以选择 "平铺式" 的结构, 完全不使用层级:
络络的好感度: 30
络络的心情: 开心
青空莉的好感度: 60
青空莉的心情: 郁闷
日期: 2025-07-26
时间: 21:00
选择哪种结构取决于你的个人偏好, 核心原则是保持清晰易懂. 但无论如何请注意, 变量的路径不是为了让你看起来清楚, 而是让AI容易理解.
因此, 我极度推荐你使用结构清晰、分类正确的变量结构.
禁用条目并验证#
当你在带有 [initvar]
的世界书条目中编辑好你的 YAML 代码后, 请务必注意以下几点:
- 保持该条目处于【禁用】状态
这一点至关重要! 这个条目的内容是专为 MVU 脚本读取并设置初始变量而设计的, 它不应该作为文本发送给AI.
- 重开聊天以应用变量
你需要 API 配置 (左上角插头) 里选为 聊天补全, 开启一个有第一条消息的新聊天来让设置生效.
- 检查变量是否生效
你可以点击输入栏左侧的 魔棒 图标, 在 选项卡中,查看所有变量是否已按你的设定正确加载. 如果你认为你写的没错, 但是管理器中什么都没有, 请重复第二步.
提示
至于如何根据不同的开局设定不同的初始变量, 我们将在后续的教程中进行讲解.