二人用読み物シナリオを作ろう!

 この記事ではXEditorを使用して、二人用読み物シナリオの初期設定のやり方を解説します。 XEditorの独自機能は使用していないので、WirthBuilderでも同じやり方で出来るはずです。

今回の目標

「PCの所持クーポンに対応した一人称・二人称・口調の自動設定」
「主役・相方を指定して、事前の人数調整を不要とする」
「指定したPCを喋らせる」
「手動で一人称・二人称・口調を変更する」



 つまりこの画面になるまでの設定です。
 またこの記事では、拙作『催花雨、綻びを待つ』を参照しながら解説します。実際にエディタで拙作を見ながら読むとわかりやすいかと思います。両片思いはいいぞ。増えてくれ。

事前準備

XEditor

 まずはエディタをダウンロードしましょう。
 そしてもしよければ拙作もダウンロードしてください。これがダイレクトマーケティング。
『催花雨、綻びを待つ』 (py版では独自機能を使っているため、この記事では1.50版を使って解説します)

 エディタで拙作を開いてみます。(XEditorはタブ配置を自分で調節できるため、私は右半分をエリア表示にしています)


 まずは[開始エリア]をクリック。こんな画面になります。
 うわぁ何かすごいいっぱい表示されてる。目をそらしたくなりますが頑張りましょう。
 開始エリアのイベントビューを見てみましょう。イベントビュー(上画像②)をクリック。

文字がいっぱいです。目をそらしたくなりますが(以下略)

人数を確認しよう

 ここから本番です。
 まず到着イベント(エリアに入った際自動で始まるイベント)で人数を確認します。二人用シナリオなので、うっかりPC一人で入ってしまった場合は、メッセージが出てシナリオが終了するようにしています。

 これをどうやって判定しているのかというと、クーポンを参照しています。
 クーポンにはいくつか種類があり、何らかのシナリオをプレイ中、PC達には左から順に_1、_2……と番号がついた隠蔽クーポンが配布されています。画像では少し見づらいと思うので、実際にcw本体を起動し、デバッガモードで確認してみましょう。Pyならctrl+Dで手軽に見れます。  このシナリオでは「パーティ中に_2を所持しているPCがいない」=「パーティには二人目のPCがいない」→「シナリオを終了する」という処理を組んでいます。


追記

わざわざクーポンで判定しなくても[人数判定分岐]ありました!

一人称・二人称・口調を自動で設定しよう

 人数判定ができたところで、少し上に戻ってみましょう。
 _1の所有で分岐→パーティの一人が_1を所有している場合、[到着(2)]に飛ぶ処理となっています。
 クーポン判定処理を行った際、「そのクーポンを持っているPCが選択されている状態」になります。今回は_1の所持判定を行っているので、_1を持つPC=一番左にいるPCが選択中になっています。
 次に[到着(2)]でどんな処理をしているのか見てみましょう。三つのパッケージを呼び出しています。
 呼び出しているパッケージの中身を確認しましょう。エディタの左側に戻って、[初期設定]をクリック、続けて[自動設定_口調]をクリックします。

 上記画像の三枚目が[自動設定_口調]フォルダの中身です。まず選択中のPCから、口調に関する時限クーポンを削除しています。最初の設定なので要らない気がしますがまぁ念のため……。
 次に口調を判定していきます。「選択中のPCが**口調になるクーポンを持っているか判定」→「持っている場合は、このシナリオ内で使う時限クーポンを取得/持っていない場合は次の口調を判定する」を繰り返していきます。 なるべく珍しい順に判定していきましょう。
 プレイを始めたばかりなど、口調に関するクーポンを全く持っていないPCもいるでしょう。フォルダの最後に置いた[口調暫定]では特徴クーポンでそれらしい口調を判定していきます。

 続いて一人称、二人称を設定しましょう。
 流れは口調と同じで、「選択中のPCが一人称**になるクーポンを持っているか判定」→「持っている場合は、このシナリオ内で使う時限クーポンを取得/持っていない場合は次の一人称を判定する」です。何も持っていない場合はとりあえず「私」「お前」に設定します。

 お疲れ様です。これでPCの口調・一人称・二人称が自動設定されました。デバッガモードで確認してみるとこのようにクーポンが配布されています。
 これを実際の台詞に反映させる処理はもう少し後で。
 では開始エリアに戻りましょう。PC2がいる場合、同じように[到着(2)]に飛んで口調・一人称・二人称が自動で設定されます。いない場合は前述したとおり。
 その次の分岐を見てみましょう。「PC3がいる場合は同じように[到着(2)]に飛び、元のツリーに戻る/いない場合は[主役選択]に飛ぶ」となっています。このシナリオでは「まずPC全員の口調・一人称・二人称を自動で設定→主役と相方を選ぶ」という流れになっているため、こういう処理を組んでいます。
 以降PC4, 5まで同じ処理を、PC6がいる場合は「[到着(2)]で口調・一人称・二人称を自動設定してから[主役選択]に飛ぶ」処理になっています。

主役と相方を選択しよう

 ここまで来たらあと少しです。[主役選択]を見てみましょう。

 PCを手動で選択し、選んだPCに識別用クーポンを付与します(今回は時限クーポンで配布)
 同時に[:R]を配布して主役PCを一旦非表示にし、相方選択に飛びます。
 [相方選択]も途中までは同じ流れです(識別クーポンを配布→一旦:Rで非表示)
 ここでシナリオに出したい二人が決定しました。他のPCはもう出ないのでこちらも非表示にしましょう。
 そしてここでうっかり処理を終えるとパーティが全滅します。なんということでしょう……。悲劇を回避するため、主役と相方を表示させましょう。
 主役識別クーポンの所持判定を行って主役を選択→:Rを削除。相方にも同じ処理をします。
(パッケージの中身は「主役クーポンの所持判定」/「相方クーポンの所持判定」のみです。それだけなのに わざわざパッケージを使っているのは、「クーポン分岐コンテントを置いて、識別クーポンを入力して……」が面倒だからです。パッケージがあればそれをコピペすればいいだけなので)
 お疲れ様です。これで必要なクーポンは全て配布しました。あともうちょっとだけ頑張りましょうね。

主役と相方が誰か、わかりやすく表示しよう

 ここからはフラグを使って、わかりやすい表示を作りましょう。
 相方を選んだあと[初期設定/役職表示]というパッケージを開く処理になっています。そのパッケージの中身を見てみましょう。


 主役PCが何番目かに応じて、対応するフラグ(主役がPC1の時は[主役_PC1]というフラグ)をTRUEにする→相方PCが何番目かに応じて、対応するフラグ(相方がPC1の時は[相方_PC1]というフラグ)をTRUEにするという処理になっています。
 事前に[状態変数]からフラグを作成しておきましょう。
 TRUE,FALSEにも、フラグ名のように表記を設定できます。分かりにくいなと思ったらON/OFF、表示/非表示のように変えておくといいかもしれません。  また主役・相方を変更したい時のために、最初に全てのフラグをFALSEにする処理を入れています。別所でも使うので別のパッケージで作成し、リンクを貼ってあります。
 開始エリアのシーンビューに戻ります。
 開始エリアでは背景画像の他、主役を示す画像が六枚、相方を示す画像が六枚設置されています。背景をクリックして詳細を確認してみると、画像にそれぞれ[主役_PC1], [主役_PC2]……とフラグが設定されています。
   このようにフラグを使って「主役がPC1の時、この画像を表示する」「主役がPC2の時、この画像を表示する」……と設定しているのです。
 もう一度[初期設定/役職表示]のパッケージを見てみましょう。
 対応するフラグをTRUE(オン)にし、そのフラグを参照している画像を表示するよう[画面再構築]を入れてあります。これをしないと画像が表示されないので注意しましょう。



 これでシナリオ入場~このメッセージが表示されるまでの設定が終わりました!
 最初の目標のうち「PCの所持クーポンに対応した一人称・二人称・口調の自動設定」「主役・相方を指定して、事前の人数調整を不要とする」はこれで達成です。 おめでとうございます!

PCを喋らせよう

 では残り二つの目標を片付けていきましょう。大丈夫、本当にあともう少しですから。
 PC1の上に表示されている[口調確認]カードを押してみると、こんなメッセージが出てきます(下記画像一枚目)
 エディタでどんな処理をしているのか見てみると、クーポン分岐でPC1を選択した後三つのパッケージを呼び出し、セリフを表示させています。そのセリフの詳細を確認してみると……

 謎の文字列が並んでいます。ここで新しい機能「ステップ」の登場です。フラグと同じ「状態変数」にあるので見てみましょう。
 フラグが「TURE/FALSE」の2つしかないのに比べ、ステップは最大10段階設定できます。 またステップはメッセージやセリフコンテント内に挿入できるため、これを使って口調・一人称・二人称を表示させています。
 セリフの直前に呼び出した[初期設定/口調ステップ]パッケージを見てみましょう。選択中のPCが所持している口調クーポンに応じて、ステップを変更しています。一人称、二人称も同じ処理をしています。
 この時参照しているのは「一人称・二人称・口調を自動で設定しよう」で配布した時限クーポンです。
 実際にメッセージ・セリフにステップを挿入してみましょう。
 挿入したいステップを選び、[追加]を押すと挿入されます。 右側のプレビューでは初期値が表示されていますが、事前にステップ変更処理をしていればちゃんと反映されます。  口調・一人称・二人称の一覧の次にはこんなセリフが出てきます。
 セリフコンテントでは話者・口調条件を設定できます。
 まず話者ですが、「選択中」「選択中以外」「ランダム」「評価メンバ」から選べます。このセリフの場合選択中を選ぶとPC1が、選択中以外を選ぶとPC2~6の誰か、ランダムは言葉通りランダムに、評価メンバは下の評価条件で一番点数が高いPC(設定したクーポンと点数により決定)が話者となります。
 口調条件では話者のPCが持つクーポンを参照し、セリフの中身を切り替えることができます。ここでも「一人称・二人称・口調を自動で設定しよう」で配布した時限クーポンを使用しています。
 口調はクーポンで切り替えられますが、一人称・二人称はステップ挿入で対応しています。一人称・二人称が出るセリフを書くときは、セリフの直前に一人称・二人称のステップを変更させる処理をお忘れなく。
 ちなみにセリフ中にある#M, #Y, #Tはプレビューを見ればわかる通り、選択メンバ名、宿名、パーティ名です。下のボタンを押すと挿入できます。


口調・一人称・二人称を手動で変更しよう

 いよいよラストです。これまでの処理では、PCが持つクーポンによって自動で口調・一人称・二人称を設定していました。ですが「口調系のクーポンを持っていなかった」などの理由で設定と違う口調・一人称・二人称が設定されてしまった場合もあるでしょう。そんな方のために手動で変更できる処理を入れましょう。
 先程の[口調確認]カードの続きを見てみましょう。口調を変更しますか?のメッセージの後、選択肢が出ています。ここで[口調を変更する]を選んだ場合、[初期設定/手動設定_口調]パッケージが呼び出されています。

 パッケージの中身を見てみましょう。まず配布した口調の識別クーポンをすべて消去しています。続けて選択肢を表示し、選んだ口調の識別クーポンを配布しています。
 その後呼び出している[初期設定/手動設定_一人称][初期設定/手動設定_二人称]パッケージの中身も同様です。 処理が終わった後もう一度[口調確認]カードを押すと、変更が反映されているはずです。
 
 [開始エリア]のシーンビューを見てみましょう。右上真ん中に[役割再設定]というカードがあります。
 このカードの詳細を見てみましょう。やっていることはほぼ口調の手動設定と同じです。
 主役・相方の識別クーポンと:Rをパーティ全員から削除→改めて「主役と相方を選択しよう」「主役と相方が誰か、わかりやすく表示しよう」の処理を繰り返しています。
 これで「指定したPCを喋らせる」「手動で一人称・二人称・口調を変更する」も達成できました! 本当にお疲れ様です。
 これで読み物シナリオに必要な初期設定はすべて終了です。そして実は、ここまで出てきた処理を使えば読み物シナリオ本編も作れます。素晴らしい! 
 ……ネタがない? では両片思いシナリオとかどうでしょうか? 私が喜びます。


実際にエディタに入力するには

 エディタの見方や処理の流れがわかってきたところで、実際にエディタに入力する際の操作について説明しましょう。
 イベントビュー上側を見てみるとアイコンがたくさん並んでいます。このアイコンを押して[コンテント]を入力していきます。

 まずは適当な新規エリアを作り、シーンビューを開きます。[メニューカードの作成]をクリックし、適当なカードを作成します。
 イベントビューに戻りましょう。先程作成した[新規カード]を選択し、 右上のコンテントから青い三角マークをクリックすると、カードをクリックした時のイベントが作成できます。
赤い三角マークは[スタートコンテント]と言い、イベントの起点となるものです。 ツリー(コンテントの連なり)を増やす際はこれを入力します。

 これまでの制作で使ったコンテントを確認しましょう。まずはクーポンに関するコンテントです。

続けてフラグ・ステップの変更、セリフ・メッセージ、人数判定コンテントです。  本記事で使用したコンテントは以上のはずです。シンプルな読み物ならこれだけのコンテントで作成可能なので、是非挑戦してみてください。

お世話になった記事

 私がシナリオを制作する際よく見ている記事です。

雛の揺り籠亭/Xeditorでシナリオを作ろう

この記事がすっ飛ばしたエディタの初期設定からとても丁寧に解説してくださっています。最初からこちらを読めばいい気もします。

春夏秋冬調音庵/店シナリオの作り方

店シナリオの作り方について、こちらも丁寧に解説してくださっています。テンプレートも配布されています。

シナリオ制作で遊べる画像の話

メッセージやセリフコンテントで、立ち絵などPCの大きな画像を表示する方法について解説されています。