トークを書く

キャラクターの会話は簡易トーク記法で書きます。日本語で直感的に記述でき、変換ツールでエンジンが読めるJSONに変換します。

簡易トーク記法とは

キャラクターの動きやセリフを、日本語で直感的に書ける記法です。プログラミングの知識は不要で、1行が1つのコマンドになります。全角コロン(:)で区切ります。

SSPの里々を使ったことがある方なら、雰囲気が近いと感じるかもしれません。日本語で書いて変換ツールに通す流れも似ています。
配置:キャラ:向き:表情:セリフ

具体例:

右:アリス:左向き:笑顔:おはよう!今日もいい天気だね。
左:ボブ:右向き:通常:……そうだな。
ヒント: 省略したフィールドは前の状態を引き継ぎます(空のままでOK)。// で始まる行はコメントとして無視されます。

トリガー

トークの先頭で、いつ再生されるかの条件を指定します。

【朝】
右:アリス:左向き:笑顔:おはよう!
左:ボブ:右向き:通常:おはよう。

使えるトリガー

種類 書き方
時間帯 【深夜】【朝】【昼】【午後】【夕方】【夜】 時間帯に応じて再生
曜日 【月曜日】【火曜日】 特定の曜日に再生
【1月】【12月】 特定の月に再生
特定日 【12/25】【1/1】 特定の日付に再生
条件なし 【条件なし】 いつでも再生される
組み合わせ 【朝・土曜日】【夜・7/7】 時間帯+もう1条件を「・」で繋ぐ

優先度

条件が具体的なほど優先されます。

  1. 時間帯×特定日(【夜・7/7】
  2. 時間帯×月(【朝・12月】
  3. 時間帯×曜日(【朝・土曜日】
  4. 特定日(【7/7】
  5. 月(【12月】
  6. 時間帯(【朝】)+ 条件なし(【条件なし】)を混合
時間帯トークさえ用意しておけば最低限動きます。【条件なし】 のトークは時間帯トークと同じプールに入り、ランダムに混ざって再生されます。作品紹介など時間帯を問わない内容に便利です。

便利なコマンド

表情だけ変える(キャラ省略)

既に表示されているキャラの表情を変えるには、キャラ名を省略します。

左::右向き:驚き:えっ、本当に!?

退場

左:退場:::

即・登場(フェードなし)

中:即・アリス:左向き:驚き:

改行を含むセリフ

全角スペースで始まる行は、直前のセリフの続きとして改行結合されます。

左:ボブ:右向き:通常:……朝から元気だな。
 まだ眠いのに。

待機(間を空ける)

待機:2000

ミリ秒単位です。2000 = 2秒。無言の間や呼吸の表現に使います。

演出のコツ

【朝】
右:アリス:左向き:笑顔:おはよう!
待機:2000
中:ボブ:左向き:疲れ:
待機:1500
中::右向き:通常:……朝から元気だな。
待機:2000
右:アリス::笑顔:元気だよ! 今日は何して遊ぶ?
待機:3000
中:即・退場:::
右:アリス::驚き:あっ、行っちゃった……
セリフ内に全角コロン を含めても大丈夫です。最初の4つ目以降はすべてセリフとして結合されます。

defineファイル

簡易トーク記法で使う日本語名と、エンジン内部の英語名の対応を define ファイルで定義します。

【キャラクター定義】
アリス: alice
ボブ: bob

【表情定義】
通常: normal
笑顔: smile
驚き: surprised
悲しみ: sad

【向き定義】
左向き: left
右向き: right

【配置定義】
左: left
中: center
右: right

変換ツール

簡易トーク記法で書いたトークは、同梱の変換ツールtools/converter.html)でJSONに変換します。

  1. defineファイルを読み込む
  2. 簡易トーク記法のトークを貼り付ける
  3. 「変換」ボタンでJSONが出力される
  4. 出力されたJSONを worlds/あなたのワールド名/scenario/ に保存
簡易トーク記法→JSON変換ツールの画面