Skip to content

行为 ​

行为就是「如果……就……」。它由引擎自己执行,不用 AI 参与,所以特别稳:说好好感到 80 就开心意,那就一定是 80,不会是 AI 心情好的时候 78 也算了。

和变量上的「行为规则」不一样:行为规则是教 AI 怎么改数,行为是引擎自己动手。

什么时候用行为 ​

  • 阈值:「好感到 80,打开一条隐藏设定」
  • 节奏:「每 5 回合推进一次时间」
  • 按钮:「玩家点了买酒,扣 5 个金币」
  • 一次性的惊喜:「第一次干杯,弹出一张图」

加一条行为 ​

点卡底下 还可以加 里的 + 行为,新行为的设置直接展开:

刚加的新行为

每条行为都是三段:什么时候触发、如果……(可以不写)、效果。下面这条是「好感涨到 80 以上时,给玩家弹个提示」:

好感到 80

好感和这条行为之间那根虚线是画布自己画的,意思是这条行为在看这个变量。

行为多了以后,行为块是这样一行一个:

行为多了以后

什么时候触发 ​

触发什么时候
每回合每次玩家和 AI 来回一轮之后
每 N 回合按固定间隔
每隔几秒按真实时间,只在玩家开着游戏的时候走
会话开始新开一局时
玩家说出关键词 / AI 说出关键词消息里出现某个词
变量变化某个变量的值变了
变量越过阈值数值往上或往下越过一条线的那一下
玩家点了某个按钮玩家界面上的按钮叫它

如果……(可以不写) ​

变量等于、大于、小于某个值,或者和另一个变量比。好几条的话选 全部满足 或 任一满足。

条件不满足的时候,可以在 条件不满足时告诉玩家 里写一句话,比如「金币不够,要 {参数.价格}」。不写的话,就什么都不发生,玩家也不知道为啥按钮没反应。

效果 ​

点 加一个效果,效果分成了几组:

选一个效果

组效果做什么
游戏修改变量设为、加上、减去、乘以、切换、追加
启用/禁用变量让一个变量出现或者藏起来
启用/禁用情境打开或关掉一个情境,「只看启用开关」的情境就靠它
AI 与故事告诉 AI给 AI 塞一句话,玩家看不到
启用词条 / 禁用词条打开或关掉一条设定
音频播放音乐 / 播放音效 / 停止音频
玩家显示通知给玩家弹一个提示
解锁一个时刻一张带图的小卡片,见下面
高级启用/禁用行为开关别的行为,可以连成一串

一条行为可以有好几个效果,按顺序执行。

停止条件 ​

最底下还有一栏 停止条件,可以不写。写了的话,条件成立的时候这条行为就不跑,条件不成立了又会照常跑。比如「好感到 100 就别再提醒了」。想让它只跑几次,用下面 其它选项 里的 最大触发次数。

按钮传值 ​

玩家界面上的按钮叫行为的时候,可以顺便 传一个值进去。比如酒馆的菜单上,每种酒一个按钮,都叫同一条「买一杯」行为,只是传进去的 价格 不一样:

  • 按钮那边:让一条行为生效 → 选「买一杯」→ + 传一个值进去,名字写「价格」,值写 5(也可以写 )
  • 行为这边:条件写 金币 ≥ {参数.价格},效果写 金币 减去 {参数.价格},条件不满足时告诉玩家「金币不够,一杯要 {参数.价格} 枚」

一条行为就管了整张菜单 (๑•̀ㅂ•́)و✧ 写成 {param.价格} 也行。

买一杯蘑菇酒:按钮传进来的价格

时刻 ​

解锁一个时刻 是给玩家的一张小卡片:一个标题、一句话、一张图,像游戏里的成就或者 CG 解锁。填好 标题、图片(链接),再选 收进哪个列表。

解锁一个时刻

同一个时刻进过列表就不会再弹第二次。把那个列表变量设成 跨存档保留(在变量设置里),就变成每个玩家一辈子只解锁一次,重开一局也还记得,做 CG 图鉴、多结局收集都靠它。

代码行为 ​

会写一点 JavaScript 的话,行为的效果里可以放一段 代码,玩的时候在卡里运行。能读写变量、弹提示、让 AI 说话、叫别的 AI、掷随机数。适合「抽卡」「洗牌」这种用效果表格写起来很别扭的东西。

AI 不会执行代码。代码只在玩家开着游戏的时候跑。

自定义行为 ​

行为设置最上面有 规则 / 自定义 两个按钮。规则就是上面讲的那一句话:什么时候、如果、做什么。自定义是另一回事:这条行为由代码来做,表单里的那一句不算数。

效果用表格写不出来、自己又不想写代码的时候,就选自定义。选了以后这条行为就是一个占位,可以贴张便签说要做什么,创作助手或者你接进来的外部 AI 会来写。写好了,这里会显示它是怎么实现的:自己带的代码有多少行,或者玩家界面里哪个文件哪一行在触发它。还没写就是空的。

实例:好感路线 ​

  • 好感 25:弹个提示「她好像注意到你了……」
  • 好感 50:解锁一个时刻「第一次干杯」,同时告诉 AI「她开始流露感情了,想靠近又不自觉地退缩」
  • 好感 80:启用词条「她的心意」,那条待命设定从这时起每回合都发给 AI

其它选项 ​

  • 优先级:好几条同时触发时,谁先跑
  • 冷却:两次触发之间至少隔几回合
  • 最大触发次数:1 就是一次性
  • 启用:可以先关着,等别的行为来打开它,连成一串

行为跑了没有、为什么没跑、离触发还差多少,试玩的时候都看得到。