StoryGraphEditor 9「通過ルートで自動的にセリフをつくる」

この記事では、「Bot3D StoryGraphEditor」のテンプレート【複雑なストーリーテンプレ】通過ルートで自動的にセリフをつくるを使います。
このテンプレートで紹介している方法を使うと、通過ルートに応じたセリフの自動作成ができるので、複雑なストーリーをよりシンプルに作ることができます。

この記事のサンプル

「Bot3D StoryGraphEditor」ではいろいろな便利な機能をシンプルに使えるように、様々なテンプレートが用意してあります。
画面左上の「テンプレートから作成」を押します。 テンプレートが表示されるので、【複雑なストーリーテンプレ】通過ルートで自動的にセリフをつくるをクリックして開きます。 ことばの説明:このテンプレートの説明では以下のことばを使います。
  1. 会話ボックス:
    このグレー地の箱は、アクションをひとまとめにするものです。アクションとは、「Botにさせること」です。いろいろなことをさせることができます。
  2. "変数操作"アクション:
    "変数操作"と書いてある、この青色の箱(アクション)は、変数を定義したり、文字や数値を覚えさせたり計算させたりといった変数操作ができます。
  3. "Botのセリフ"アクション:
    "Botのセリフ"と書いてある、このオレンジ色の箱(アクション)は、この中にセリフや絵文字を書くことでBotをしゃべらせることができます
  4. 変数を入力:
    "Botのセリフ"アクションに変数を入力をすることで、変数の値をセリフとして読み上げることができます。

基本操作のおさらい

簡単に基本操作のおさらいをしましょう。
テンプレートをカスタマイズするときに一番重要なのは、9番の、ストーリーのいちばん最後の会話ボックス「終了ボックス」につなげることです!

変数って何?

"変数操作"アクションで使う変数とは何でしょう?
変数とは文字や数値を覚えておくための入れ物です。
変数には「文字」タイプ「数値」タイプがあります。
「文字」タイプの変数には、名前などを覚えさせておくことができます。また、あとから入れた文字をくっつけることもできます。 「数値」タイプの変数には、数値を覚えさせておくことができます。また、変数に入っている数値に対して、あとから入れる数値で計算を行うことができます。 この記事では「文字」タイプの変数の活用方法を具体的に見ていきます。
「数値」タイプの変数の活用方法についての記事はこちら

変数を使う大まかな流れ

それではテンプレート【複雑なストーリーテンプレ】通過ルートで自動的にセリフをつくるを開いて一度保存し、どんなふうに「Bot3D Player」で再生されるか見てみましょう。
再生の仕方はStoryGraphEditor クイックヘルプ:Bot3DPlayerで見る方法をご覧ください。

旅行先でしたいことを聞かれるので、「ヨーロッパ」「観光」、「アジア」「食べ歩き」の2パターンで答えてみました。
そうすると、選んだ選択肢の違いによって、最後のセリフが、「ヨーロッパで観光するんですね」が、「アジアで食べ歩きするんですね」というふうに変化します。 このような、選択肢の分岐で一つ一つ個別のセリフを作ろうとすると、ものすごい量の会話ボックスやアクションを作らないといけなくなります。
そこで変数に、旅行先や旅行先でやりたいことを覚えさせておいて、最後にその値を"Botのセリフ"アクションで使うととてもシンプルに作ることができるんです。

テンプレート【複雑なストーリーテンプレ】通過ルートで自動的にセリフをつくるの画面を見てみましょう。 "ボタン選択"アクションから分岐して、"変数操作"アクションの中のそれぞれで、変数 "location" に「ヨーロッパ」や「アジア」などの「場所」を覚えさせています。
同様に、変数 "activity" に「観光」や「食べ歩き」を覚えさせています。
どのルートを通っても変数が結果を覚えていてくれるので、最後の"Botのセリフ"アクションでは、"location" と "activity" を使うだけで、自動でセリフが作れます。
これが文字タイプの変数を活用するおおまかな流れです。

変数を作る

このストーリーでは、"location""activity"という変数に値を覚えさせていますが、そもそもどうやって変数を作るのか見ていきます。
「変数location」と書いてある会話ボックス"変数操作"アクションをどれでもいいのでクリックすると、画面下部にエディタが表示されます。 エディタ上の、変数定義の追加ボタンを押すと、変数を追加できる画面が表示されます。 "location"と"activity"が「文字」タイプの変数として登録されているのがわかりますね。
自分で変数を追加したいときは、変数追加画面上部のフォームより追加できます。
デフォルト値を設定したり、「数値」タイプの変数に変更したりできます。 なお、定義した変数は、どこの"変数操作"アクションで定義したかに関わらず、ストーリー内のどこからでも使うことができます。
次は登録した変数を操作してみましょう。

変数を操作する

ひきつづき"変数操作"アクションのエディタを見てみると、変数"location"「代入」で「ヨーロッパ」を登録していますね。
この操作で変数に「ヨーロッパ」を覚えさせることができました。 "変数操作"アクションではいくつでも操作を追加することができます。
  1. 操作を追加から、対象になる変数を選んで追加ボタンを押すと、操作タブが追加されます。
  2. 操作内容(代入か追加か)を選んで、値をフォームに記入することで変数に値が記憶されます。
  3. 「保存」ボタンを押して反映します。

変数をセリフの中で使う

このようにして記憶させた変数の値を、セリフの中で使いましょう。
「どこで何する」と書いてある会話ボックスの中の"Botのセリフ"アクションをクリックします。
そうすると、エディタのテキスト部分に、"location""activity"の変数が入力されているのが確認できますね。
この変数が、「ヨーロッパ」や「観光」などの変数の値に、都度おきかえられることで、自動的にセリフが作られるんです! 変数を入力するには、テキストエリアで入力したい場所にカーソルを置いてから、「変数を入力」ボタンを押します。
変数のリストが表示されるので、クリックすると、変数が追加されます。
"activity"うらやましいです! というセリフも簡単に追加できましたね。
このように変数を使うと、柔軟に複雑なストーリーを作ることができます。
「変数」という言葉は聞きなれないかもしれませんが、活用するととても便利なので、"変数操作"アクションを使ってみてくださいね!