ビヘイビア
AIの関与なしに発火するイベント駆動型トリガーです。精密さ、一貫性、または即時の応答が必要なものを処理します。
エディタではこれがビヘイビアセクションです。変数のビヘイビアルールとは別物で — ビヘイビアルールはAIに応答方法を教えますが、ビヘイビアは機械的に発火します。

先ほどのホラーワールドはビヘイビアを一切使っていません — エントリとビヘイビアルールだけで動いています。
自動化をいつ使うか
自動化が向いているケース:
- しきい値アラート: 「体力が10を下回ったら警告を表示」
- ゲームフェーズの遷移: 「好感度が75に達したらロマンスモードに切り替え」
- 時限イベント: 「5ターンごとに昼夜サイクルを進める」
ビヘイビアの仕組み
すべてのビヘイビアは3つの部分から成ります。
WHEN — トリガー
このルールを発火させるイベント:
| トリガー | 発火するとき |
|---|---|
| Variable crossed | 変数がしきい値を超えた、または下回った |
| State changed | 任意の変数が値を変えた |
| Turn complete | Nターンごと(例: 5ターンごと) |
| Session start | プレイヤーが初めてワールドを開始した |
| Player keyword | プレイヤーが特定の語を言及 |
| AI keyword | AIの応答に特定の語が含まれる |
| Every turn | 毎ターンの後 |
| Action | カスタムUIボタンが api.executeAction(actionId) を呼ぶ |
| Manual | イベント駆動のトリガーを持たない。評価パスで条件が満たされたときに発火 |
IF — 条件(任意)
ルールが発火するために真でなければならない追加チェック:
- 変数が値と等しい/等しくない/より大きい/より小さい
- ANDまたはORロジックで複数条件を組み合わせ
THEN — アクション
ルールが発火したときに起きること:
| アクション | 何をするか |
|---|---|
| Modify variable | 変数値を変更(set、add、subtractなど) |
| AIに伝える | 1回限りのディレクティブをAIに注入 |
| Send context | 次のAIターンに1回限りのsystem/userメッセージを注入(プレイヤーには見えない) |
| Notify player | トースト通知を表示 |
| Play audio | サウンドエフェクトや音楽の変更をトリガー |
| Toggle entry | ロアブックエントリを有効化/無効化 |
| Toggle rule | 別のルールを有効化/無効化 |
実例: 恋愛シミュレーションのルートシステム
好感度25で — さりげない通知: 「彼女があなたに気付いたようです...」
好感度50で — 実績トーストとAIへの新しいディレクティブ: 「彼女は気持ちを示し始めている。近づきたいが引いてしまう、矛盾した行動を描写する。」
好感度75で — クライマックストリガー: AIに告白シーンを書くディレクティブを与え、ストーリーフェーズを「クライマックス」に切り替える。
ルールのオプション
- Priority: 優先度が高いルールが先に発火(複数ルールが同時にトリガーされるときに便利)
- Cooldown: 発火間の最小ターン数(スパムを防ぐ)
- Max fire count: このルールが発火できる総回数(1 = 1度きりのイベント)
- Enabled/disabled: ルールは他のルールから切り替えられます(連鎖反応)
