Gal Lop 中文文档 下载 App

Gal Lop 条件式分支——用变量值决定剧情走向

条件分支和选项分支的区别

Gal Lop 有两种让剧情分叉的机制:

类型触发方式谁在做选择典型用途
选项分支屏幕显示选项让玩家点玩家玩家主动做选择(答应 / 拒绝)
条件分支检查变量值,自动走不同路径系统(根据玩家过去的选择)系统根据玩家之前的累积行为自动判定

简单说:选项分支是"现在让玩家选",条件分支是"根据玩家之前选过什么来决定"。

条件分支的用途

用途 1:基于好感度的路线分岔

玩家之前选了很多让角色 A 开心的选项 → 好感度_A 高
玩家之前选了很多让角色 B 开心的选项 → 好感度_B 高

→ 在某个关键节点检查哪个好感度更高 → 进入对应角色的路线

用途 2:基于事件标记的剧情解锁

条件:去过天台(布尔变量 = true)
├─ 是 → 播放回忆段落
└─ 否 → 跳过回忆,直接进入下一段剧情

用途 3:基于道具的可用选项

条件:持有钥匙(布尔变量 = true)
├─ 是 → 显示 "用钥匙开门" 选项
└─ 否 → 这个选项不显示,或者点了提示 "没有钥匙"

用途 4:多层嵌套条件

条件 A AND 条件 B → 走路径 1
条件 A 但非 B → 走路径 2
非 A → 走路径 3

创建条件分支

步骤 1:插入条件节点

在时间线上需要做判定的位置插入一个条件节点。这个节点本身不显示任何内容,它的唯一作用就是"判定条件 → 走哪条路径"。

步骤 2:设置判定条件

Gal Lop 的条件判定支持以下运算符:

运算符含义例子
=等于好感度_A = 30
>=大于等于好感度_A >= 50
<=小于等于好感度_A <= 10
>大于计数_探索 > 5
<小于计数_说谎 < 3
!=不等于道具_钥匙 != true
== true布尔为真事件_告白成功 == true
== false布尔为假剧情_第三章开始 == false

步骤 3:连接分支路径

和选项节点类似,条件节点的每个判定分支需要用连线连到后续的目标节点:

条件节点
├─ 条件 A 满足 → 路径 1(连到路径 1 的第一个节点)
└─ 条件 A 不满足 → 路径 2(连到路径 2 的第一个节点)

多条件时可以有更多分支,或者嵌套多层条件节点。

步骤 4:复合条件(AND / OR)

复杂场景可能需要同时检查多个条件:

Gal Lop 条件设置界面里会有逻辑运算符的选择(并且 / 或 / 非)。

条件分支的典型模式

模式 1:好感度分水岭

最经典的视觉小说分线方式。在故事中后段(通常在结局前)设置一个条件节点:

检查:好感度_A >= 好感度_B AND 好感度_A >= 好感度_C
├─ 是 → 进入角色 A 专属路线
└─ 否 → 继续走共同线

模式 2:剧情收束点

多分支汇聚到某一点后,用条件判定决定后续内容。比如:

玩家走了角色 A 线 OR 走了角色 B 线
→ 条件:标记_A == true OR 标记_B == true
→ 走不同的结尾对话

模式 3:可重玩内容

某些内容只在特定条件下出现,鼓励玩家多次游玩:

条件:计数_完成结局 >= 2
├─ 是 → 解锁隐藏对话
└─ 否 → 正常对话

条件分支的调试技巧

调试技巧 1:从中间节点开始预览

Gal Lop 的预览模式支持从任意节点开始。要测某个条件分支:

  1. 先在之前的选项节点把变量调到触发条件
  2. 直接从条件节点开始预览
  3. 检查是否走了预期的路径

调试技巧 2:临时加显示节点

在条件节点之前临时插入一个对话节点,显示当前关键变量值:

"DEBUG:好感度_A = {好感度_A},好感度_B = {好感度_B}"

确认条件逻辑正确后删掉。

调试技巧 3:极端值测试

分别用最小值和最大值测试边界情况:

常见坑

坑 1:条件写反了

不小心把 >= 写成 <=,或者 true / false 搞反。症状是预期能触发的分支没触发,反而是另一条路。

解决方法:仔细检查条件写法,必要时临时加调试文本显示变量值。

坑 2:条件节点没连好

条件节点的某个分支没有连到任何目标节点。症状是预览走到条件节点就卡住了或崩溃。

解决方法:在时间线上检查所有条件节点的连线是否完整。

坑 3:变量名拼写错误

条件里写的变量名和之前操作的变量名不一致(比如之前是 好感度小樱,条件里写成了 好感度_小樱)。症状是条件永远不满足,因为变量值一直是初始值 0。

解决方法:Gal Lop 没有自动补全变量名,需要非常小心地保持拼写一致。建议从变量列表里复制粘贴变量名,不要手打。