ティラノゲームフェス2017入賞作品決定!

変数を使って条件で分岐させよう

*本機能を使うにはVer1.40以上が必要です。

ゲームにおいて、例えば「グッドエンド」と「バッドエンド」を分けるようなゲームがありますね。
その場合、フラグを回収しているか、もしくは、好感度が一定以上達成しているかなどによって分岐するゲームが多いかと思います。

このような、過去の選択肢によって物語が分岐していくのは、ノベルゲームの大きな魅力となります。

ティラノビルダーでは2通りの方法を使って、このようなフラグ管理を行なうことができます。

①スクリプトを使う方法
→自由度は高いが、スクリプトの式を書く必要がある

②変数管理機能を使う方法
→スクリプトを書かずに、変数を扱う事ができる

この章では②の変数管理機能を使ったフラグ管理を試してみます。
①のスクリプトを使う方法は以下のページで確認できます。

>>スクリプトによるフラグ管理へ

ワンポイント

この①と②の方式は、一緒に使うこともできます。
なので、簡単な計算の場合は②の変数管理機能でつくっておいて
複雑な計算が必要な箇所で①のスクリプトで書くということもできます

変数とは

そもそも、変数とは何なのでしょう?

変数とは 何かを記憶させておく箱になります。
この「何か」というのは、例えば

・プレイヤーに入力させた、主人公の名前
・キャラクターの好感度
・フラグ管理

などです。

例えば「ゆうこちゃん」というキャラクターの好感度を増減したい場合
まず、yuko_pointといった名前の変数を作ります

そして、選択肢などで好感度の増減があった時に、この変数(箱)に入っている値を増減していていきます。

説明だけだとイメージしにくいかと思いますので
実際に選択肢によって好感度が変わっていくゲームを作ってみましょう。

変数を定義しよう

変数を使うためには、最初に変数を定義する必要があります。
メニューの[プロジェクト]-[変数管理]を選択してください。

変数名に「yuko_point」と入力後、「追加」ボタンを押します。
すると、変数が追加されますので、初期値の欄に「10」という値を入れておきましょう
この、初期値は箱(変数)の中にはじめに入っている値です。

今回は、好感度を表すので、はじめは10くらいが標準としておきましょう。



これで、変数を使う準備が整いました。

変数を操作しよう

次に、選んだ選択肢によって、好感度が増えたり減ったりさせてみます。

つくるのは、「ねぇ、何か気づかない?」という質問に対して

「髪切った?」
「鼻毛伸びた?」

という、選択肢を用意して、前者を選択すると好感度が上がり、後者だと下がる

早速、作ってみましょう。シンプルな選択肢なので、以下の様になりますね。

一旦、プレビューして分岐がきちんとされているかを確認します。

次にそれぞれの分岐先で、変数の値を増減を行なう処理を入れます。
左エリアから変数設定のコンポーネントをドラッグ&ドロップで配置します。
まずは、「好感度を上げる」処理なのでラベル「kami」のすぐ後ろに配置しましょう。





そして、この変数設定のコンポーネントを選択して
変数 yuko_point に 5を足す処理を行います。

パラメータ部分を以下のように設定します


同じように、「鼻毛伸びた?」が選択された場合は
5を引き算するコンポーネントを配置します

これで、選択肢によって、好感度が変わるゲームが作れるようになりますね。

本当に値が変わっているか確認するには、iscriptを配置して変数を確認することができます。

ラベル「common」の後ろに、以下のiscriptコンポーネントを配置して下さい。
スクリプトは

alert(f.yuko_point);

と書きます。



プレビューして確認してみましょう。選択肢によって好感度が増減している様子がわかります。



5が足されて15 となっていますね

変数の状態によって、物語を分岐させよう

前回までで、変数の値を自由に変更することができるようになりました。

仕上げとして、最終的な好感度によって告白が成功するか失敗するかといった仕組みをつくってみましょう。

前回のプロジェクトの最後に
「好きです!」と告白してその結果を好感度によって分岐させる処理を描いてみます

変数の結果によってシナリオを分岐させる場合は
「ジャンプ」コンポーネントを使います。

以下のように配置して下さい。


OKとNGの場合を変数の状態によって、分岐させます
ジャンプには「実行条件を指定する」という項目があります。
これは変数が指定した状態を満たす時だけ実行することができます。
OKとNGをそれぞれ、以下のように設定して下さい


つまり
yuko_pointが 10より大きい場合は OK へ
yuko_pointが 10より小さい場合は NG へ行きます

それでは、全体を通してプレビューしてみましょう
選択肢で選んだ内容によって、最終的な物語が分岐されたと思います。

如何だったでしょうか?
これらを使うと、複雑な攻略条件のゲームも簡単に作れそうですね。

ランダム変数

変数設定で、ランダム要素を持たせたい場合があるかもしれません。
その場合以下のように設定することで、毎回異なる数値を設定することができます


この場合、3〜10 の間で数値が足し算されます。

システム変数

システム変数とは、ゲーム全体で共有される変数です。
変数を定義するときに「システム変数」にチェックを入れていると
その変数はゲーム全体で共有されます

これは、ゲームを一度でもクリアしたかどうかといった
判定で利用できます。