用时: 约 15 分钟。开始前准备: 使用桌面浏览器打开编辑器;账号已有可用的模型配置;下载本页提供的 3 个媒体文件。页面代码可以在对应步骤展开并整段复制,不要求你自己编写。你会做出: 一篇最简单的 AI 互动剧本。《闭馆后的来信》从一段写好的悬疑序章开始。玩家可以追问信件,也可以追问沈砚;AI 会根据这次选择实时生成后续剧情和新的选项。玩家继续选择,剧情就会继续生成。
下载美术馆夜景
1920 × 1080,开始页和剧情页共用。
下载沈砚_平静
透明底男性半身立绘。
下载沈砚_认真
与平静立绘使用相同画布和人物位置。
先看懂这篇作品怎样运转
玩家打开《闭馆后的来信》后,会先看到开始页。点击“开始故事”,她会读到你写好的相遇:闭馆后的美术馆、第一次见面的策展人沈砚,以及一封日期写在明天的信。序章结束时,她决定先调查信件,或先试探沈砚。 玩家做出选择后,AI 会结合被点击的选项、世界设定和已有剧情生成后续内容,并在结尾提供新的行动。玩家选择下一步,AI 再生成一轮。 编辑器用下面几部分完成这段体验:
“固定序章”和两个“AI 续写”页面节点都会使用“剧情页”模板,所以它们拥有相同的画面和操作方式。区别只在内容来源:
- “固定序章”使用你写在页面节点里的预设内容,玩家每次看到相同的五帧。
- 两个“AI 续写”页面节点使用AI 生成。AI 参照“剧情页”模板中的内容示例和格式提示,生成同样结构的新帧。
模板中的“内容示例”不是固定序章。它负责预览模板,也向 AI 展示合法的内容结构;页面节点中的“预设内容”才是玩家会读到的固定剧情。
1. 创建空白作品
“流程蓝图”展示玩家会经过哪些页面。新作品中的开始节点只负责标记入口,之后需要把它连到真正的开始页。 在“我的作品”中点击“创建新作品”,填写:
进入编辑器后,保留流程蓝图中的开始节点。
检查: 编辑器顶部显示作品名称,流程蓝图中有一个绿色开始节点。
2. 上传 3 个媒体素材
素材库保存作品会使用的文件。上传完成只代表编辑器可以找到这些文件;第 6 步会把背景和立绘绑定到页面读取的 Frame 变量,它们才会出现在预览中。 打开顶部“素材库”,按下面的位置上传文件。素材名称与文件名保持一致,不要修改下划线。
检查: “背景图片”中有 1 张横图,“角色头像”中有 2 张透明底半身立绘。
3. 添加 State 变量和世界设定
玩家在序章结尾选择调查方向后,State 变量会在页面节点之间保留这个值。世界设定向 AI 提供沈砚、来信和美术馆中不能随意改变的事实。添加 State 变量
打开顶部“变量配置”,在 State 变量中添加:
第 9 步会在玩家点击选项时把它更新为“信件”或“沈砚”。下面的“叙事边界”会引用这个变量,让 AI 看到当前调查方向。
添加 4 条世界设定
打开顶部“世界设定”,创建以下条目。正文可以直接复制。角色设定|沈砚
角色设定|沈砚
沈砚,男性,昭宁美术馆策展人。外表冷静,观察细致,说话简短,不主动建立亲密关系。故事开始时,他与玩家是第一次见面。
概念物品|日期写在明天的信
概念物品|日期写在明天的信
信封未拆。收件人与落款都是玩家的名字,日期写在明天。信封会出现与旧库区有关的新标记,但每轮生成最多确认一个关键事实。
场景描述|闭馆后的昭宁美术馆
场景描述|闭馆后的昭宁美术馆
时间为 21:40。美术馆已闭馆,前厅和旧库区仍可进入。监控记录存在七分钟缺口,旧库区有一个已注销的 B-17 档案位。
规则设定|叙事边界
规则设定|叙事边界
使用第二人称“你”。玩家没有立绘。不要替玩家描述外貌、内心想法、台词或未选择的行动。沈砚与玩家从陌生关系开始,不突然告白、占有或建立亲密关系。
selected_route;世界设定中有 4 条新条目。
4. 创建“开始页”模板
模板决定同一种页面怎样显示内容、能接收哪些内容、点击后能做什么。开始页只需要背景、标题和一个按钮,因此它与后面的剧情页使用不同模板。 打开左侧“模板库”,点击“新建模板”:在“指令注册表”添加“封面”
指令定义作者或 AI 可以向一帧填写哪些内容。“封面”只需要一个“背景”参数,稍后开始界面的预设内容会填写具体素材名。 在右侧“指令注册表”中点击“添加指令”:
在左侧“内容示例”的第 1 帧添加“封面”,背景选择“美术馆夜景”。
添加“读取封面背景”触发器规则
指令中的背景素材 ID 不会自行出现在页面上。下面这条规则会在读取“封面”时,把“背景”参数写入frame.cover_background;开始页代码再读取这个 Frame 变量并显示对应图片。
在右侧“触发器规则”中新建规则组 开始页默认规则,再点击“添加规则”:
选择“解析指令”后,界面会把参数“背景”列为 $背景。这里选择“动态表达式”,表示把这个参数的原值直接交给 Frame 字段。
粘贴开始页的页面代码
页面代码负责排版和视觉效果。打开模板中间区域的“代码”,删除原内容,再展开并复制下面代码块的全部内容:展开并复制开始页代码
展开并复制开始页代码
点击代码块右上角的复制按钮,把全部内容粘贴到“开始页”的代码编辑区。
start-view.tsx
frame.cover_background。media_url(frame.cover_background) 再把这个 Frame 字段中的素材 ID 转成图片地址。
等待编译完成。预览应显示标题和“开始故事”按钮。背景素材会在第 6 步完成绑定后出现。

5. 创建“剧情页”模板
固定序章和 AI 续写都会显示背景、沈砚的半身立绘、台词和选项。它们共用一个“剧情页”模板,画面保持一致,页面节点只需要提供不同内容。 在“模板库”中再创建一个空白模板:在“指令注册表”添加“台词”和“选项”
“台词”规定一帧文字需要角色、背景、立绘和正文;“选项”规定一个按钮需要显示文字、路线标记和交给 AI 的提示。作者填写预设内容时使用它们,AI 生成新剧情时也使用同一套指令。 “台词”填写:
“选项”填写:

创建 15 帧内容示例
“内容示例”让你用具体内容检查模板,也让 AI 看见一次合格回复的结构。这里用 15 帧示范一轮剧情:前 14 帧推进调查,第 15 帧给出两种行动。后面会在“格式提示”中允许 AI 按剧情需要生成 15—20 帧。 一帧对应玩家看到的一次完整画面状态。背景、立绘、台词或可选操作发生变化时,再进入下一帧。 创建 15 帧:前 14 帧各放 1 条“台词”,第 15 帧只放 2 条“选项”。 前 14 帧的背景都选择“美术馆夜景”:
第 15 帧添加两个“选项”:
使用“复制帧”可以减少重复填写。复制后只修改角色、立绘和内容。

填写格式提示
把下面内容粘贴到左侧“格式提示”:添加 4 条基础触发器规则
剧情页还不能把“台词”和“选项”显示出来。前三条规则会把指令参数写入 Frame 变量,页面代码再从这些变量取出背景、立绘和文字;第四条规则让玩家点击后进入下一帧。 新建规则组剧情页默认规则,按顺序添加:
下面的 $角色、$背景、$立绘 和 $内容 都来自当前正在解析的指令。“动态表达式”可以直接返回字符串、数组或对象;“宏嵌入文本”只用于固定文字或空字符串。完整区别见规则值、表达式与输入。
规则 1|进入新帧时清空文本和选项
- 触发时机:进入帧。
- 添加 1 个“更新变量”动作,在同一动作中加入 3 行:
规则 2|把台词写入当前帧
- 触发时机:解析指令。
- 指令名:台词。
- 添加 1 个“更新变量”动作,在同一动作中加入 4 行:
页面代码会把“旁白”显示为旁白样式,并在立绘值为“无”时隐藏图片。规则只需要原样写入参数。
规则 3|把选项追加到当前帧
- 触发时机:解析指令。
- 指令名:选项。
- 添加 1 个“更新变量”动作:
规则 4|显示下一帧

粘贴剧情页的页面代码
打开“代码”,删除原内容,再展开并复制下面代码块的全部内容:展开并复制剧情页代码
展开并复制剧情页代码
点击代码块右上角的复制按钮,把全部内容粘贴到“剧情页”的代码编辑区。
story-view.tsx
frame.speaker、frame.text 和 frame.choices 直接读取普通数据;media_url(frame.background) 与 media_url(frame.portrait) 把已绑定的素材 ID 转成图片地址。按钮上的 data-route 和 data-prompt 会在第 9 步交给点击规则。
等待编译完成,点击左侧不同帧,确认计数、文本和选项会变化。背景和立绘会在第 6 步完成绑定后出现。
检查: 左侧“内容示例”有 15 帧;不同帧会显示不同文字,第 15 帧显示两个选项。
点击顶部“保存作品”,等待两个模板都保存完成。新模板第一次保存后,变量配置才能为它的 Frame 变量建立素材绑定。
6. 把 Frame 变量绑定到素材库
指令和触发器规则写入的是“美术馆夜景”“沈砚_平静”这样的素材 ID。编辑器界面把这种可读 ID 显示为“素材名称”。素材绑定规定每个 Frame 字段允许使用哪些素材 ID;页面代码再通过media_url(frame.x) 把当前 ID 解析成浏览器可以加载的 URL。
打开顶部“变量配置”。右侧的 Frame 变量按模板分组显示。
在“开始页”分组中:
- 找到
frame.cover_background,点击“联动素材库”。 - 勾选“美术馆夜景”。
- 点击素材卡片上的星标,把它设为默认素材,然后确认。
- 为
frame.background勾选“美术馆夜景”,并设为默认素材。 - 为
frame.portrait同时勾选“沈砚_平静”和“沈砚_认真”。 - 把“沈砚_平静”设为默认素材,然后确认。
只给保存素材 ID 的变量建立素材映射。
frame.speaker、frame.text 和 frame.choices 保存文字或选项数据,不需要绑定素材。

7. 创建 4 个页面节点并连接流程
模板定义页面的共同行为,页面节点负责把一次具体内容放进故事流程。因此,这篇作品有 4 个页面节点,却只需要 2 个模板:开始界面使用“开始页”,其余 3 个页面节点共用“剧情页”。 回到“流程蓝图”,从“模板库”创建以下页面节点:
拖动节点边缘的圆点,建立 4 条连接:
- 开始节点 → 开始界面
- 开始界面 → 固定序章
- 固定序章 → AI 续写|追问信件
- 固定序章 → AI 续写|追问沈砚
把世界设定加入两个 AI 页面节点
分别打开“AI 续写|追问信件”和“AI 续写|追问沈砚”:- 在右侧“上下文配置”中点击“配置”。
- 在左侧“世界设定树”勾选第 3 步创建的 4 条世界设定。
- 保持“无条件”,点击“确认”。
8. 在两个页面节点中填写预设内容
现在把玩家一定会看到的内容写入两个“预设内容”页面节点。这里填写的是作品正文,不是模板中的“内容示例”:开始界面只出现一帧封面,固定序章播放五帧剧情。开始界面
打开“开始界面”。确认内容模式为“预设内容”,在第 1 帧添加:固定序章
打开“固定序章”。确认内容模式为“预设内容”,创建 5 帧。 前 4 帧各放 1 条“台词”,背景都选择“美术馆夜景”:
第 5 帧只放 2 条“选项”:
检查: 固定序章左侧“预设内容”中有 5 帧;第 5 帧显示 2 条“选项”指令。
9. 添加跳转和 AI 生成规则
流程蓝图只表示页面节点之间允许存在的路线。真正决定“玩家点击哪个按钮后发生什么”的是触发器规则。开始按钮只需要跳转;固定序章的两个选项需要先记录调查方向、进入对应页面节点,再请求 AI。开始页:进入固定序章
回到“开始页”的开始页默认规则,添加:
这条规则不添加“触发 AI 回复”。开始页只负责进入你写好的固定序章。
剧情页:两个固定分支
回到“剧情页”的剧情页默认规则。
添加 从信件线索开始 AI 续写:
添加
从沈砚掌握的信息开始 AI 续写:

剧情页:根据 AI 选项继续生成
AI 生成的选项使用continue 路线。玩家点击后不跳转到其他页面节点,而是在当前 AI 页面节点继续生成。
再添加一条规则:
保存模板和作品。重新打开流程蓝图后,3 条跳转连线应显示对应的规则名称。
