では、これより台詞作成にはいります。
Questウインドウの上部にずらりと並んでいるボタンを参照してください。初期状態では「QuestData」が選択されています。これらのボタンのうち、クエストを管理しているのは「QuestData(クエストの基本設定)」と「QuestStage(クエストの進行管理)」だけです。残りは全部、台詞用です。
以下に台詞用各ボタンの分類と大まかな説明を記します。
- Topics(話題) :基本的にPlayとNPCの対話(会話相手がズームするやつ)用の台詞。分岐選択肢(Choices)が設定できる。
- Conversation(会話) :非対話状態時にPlayerに向けられる台詞(挨拶など)や、NPC同士の対話(挨拶や噂話など)の台詞。
- Combat(戦闘) :戦闘状態のときに使われる台詞。「あいおんとぅゆーだーい!」とか。
- Persuasion(説得) :友好度上げのミニゲーム時に使われる台詞。
- Detection(発見) :NPCが何か(犯罪、死体、ターゲット)を見つけたときに使われる台詞。
- Service(サービス) :NPCが提供するサービス(店、トレーニングなど)を使用時に使われる台詞。
- Misc(その他) :その他。
RPGツクール的な「会話」(PlayerとNPCが行うもの)は「Topics」が該当し、この講座ではこれしか扱いません。
基本的にこれらの分類は「状況に応じ自動で適用される特別な項目がそれぞれに存在すること」と「台詞に付加できるオプションがそれぞれ違う」だけで、根本的な違いはありません。
次に台詞を管理するTopic(トピック)という要素について説明します。
Oblivionにおける台詞は「Topicという容器」に1個〜複数個の「パターン(Info)」を含む形で構成されます。個々のinfoは「条件式」や「オプション」の設定が可能で、1〜複数行の「返答(Response)」を有します。
以下にいくつかの例をあげます。
- LocalGreeting (2個のResponseを持つ1個のinfoで構成されるパターン)
- DispositionCheck (条件分岐する4個のinfoで構成されるパターン)
- (条件)Playerに対する友好度が40未満の場合 「できれば視界にいれたくないわね」
- (条件)Playerに対する友好度が40以上60未満の場合 「まぁ、普通って感じかな」
- (条件)Playerに対する友好度が60以上80未満の場合 「素直に言えば好意的に思ってるわ」
- (条件)Playerに対する友好度が80以上の場合 「友人以上、恋人未満かしら?」
- TodaysDivination (2個のResponseを持つ4個のランダムオプションを付与されたInfoで構成されるパターン)
- 「貴方の今日の運勢は大吉です。」「いいことがあります。」(ランダム)
- 「貴方の今日の運勢は中吉です。」「いいことがあるかもしれませんね。」(ランダム)
- 「貴方の今日の運勢は小吉です。」「よくも無く悪くも無く。幸せとはそういったものかもしれません。」(ランダム)
- 「貴方の今日の運勢は大凶です。」「この壺を買わないと死にます。」(ランダム・ランダムエンド)
以上を踏まえた上でこれよりQuesウインドウ(Topics)を具体的に触ってみましょう。
1、Questウインドウ上段の「Topics」ボタンを押す。
2、Topicリスト(「QuestData」「QuesStage」ボタンの真下、縦長の白い領域)内の適当な場所を右クリックして、メニューより「トピックの追加」を選択する。
3、「トピックを選択」ウインドウが表示されるので一覧の中から「GREETING」を探して選択する。
4、Topicリストに「GREETING *」が追加される。
この「GREETING」は特別なトピックで対話を行った際、必ず最初に適応されます(詳細はTipsにて)。名前の横についた「*」印は「この項目は、いまActiveなesp上に新しく作られたか、マスターファイルの内容を変更するものだよ」という印です。
次に、このトピック「GREETING」の中に「らば子」専用の台詞を追加しましょう。
5、Topicリスト上の「GREETING」の項目をクリック。
6、Infoリスト(中央から右側上段にある横長の白い領域)内の適当な場所を右クリックして、メニューより「新規作成」を選択する。
7、「NEW Response」というタイトルの新しいウインドウが開くので、その中の「返答の文章」という入力欄に「 Hello Lovers! 」と入力して「OK」ボタンを押す。
これで「 Hello Lovers! 」という台詞が追加されましたが条件が設定されていないため、すべてのNPCがこの台詞を使用してしまいます。よって「条件式」を設定し、この台詞を「らば子専用」にする必要があります。
条件式は、Questウインドウ最下部の「条件」の欄で設定します。
8、infoリスト中の「Hello Lovers!」をクリック。
9、ウインドウ下部の「条件」の欄の「新規」ボタンを押す。
10、その右の「条件式」という選択ボックスの中から「
GetIsID 」という関数を選択。
11、その右のパラメータというボタンを押し、新しく開いたウインドウのObjectID選択ボックスの中から「
AAALoversFNPC00 」を選択して「OK」ボタンを押す。
12、パラメータボタンの右の「比較」が「
== 」、「値」が「
1.000 」になっていることを確認する。
この作業により、この台詞は「らば子専用」になりました。
ついに関数がでてきました。怖がらないで下さい。今回使用したGetIsID関数について少し詳しく説明します。
「GetIsID」という関数は「
(呼び出したObjectの)IDが「パラメータ」のIDと同じであるかを比較する」という関数です。同じ場合「1」、違う場合「0」という結果を返します。
いま設定した条件式を無理やり日本語に訳すると、
(この条件式を参照したObjectの)IDが「AAALoversFNPC00」と同じ(==1)である場合、適用される。
という意味になり、この条件式に合致するのは「AAALoversFNPC00」のみ、すなわち「らば子専用」となります。
この説明が理解できない場合、
専用の台詞は、条件式「GetIsID」、パラメータ「NPCのID」で「== 1.000」にすれば良いと覚えてください。
個々のNPC固有の台詞を作成する場合はこの条件式を必ず設定してください。さもないと面白いことになります。
さて、これで「らば子」の挨拶の台詞と、それをらば子専用にする設定が完了しました。
「OK」ボタンを押してQuestウインドウを閉じ、保存してからOblivionを起動してみましょう。CSは起動したままでも構いません。
らば子はちゃんと挨拶できましたか?
できた人は第二目標達成です、次のステップへ進んでください。できなかった人はもう一度このステップを読み直し、どこで間違えているかを確認してください。