対話ウィンドウは熟練者向けイベント演出の仕組み
タクティクスチャレンジv2には字幕シーンやトピック、バトルフィールドの戦闘前後イベントなどでストーリーを表現できますが、それらの仕組みでは実現できない・しにくい演出もあります。そこで字幕シーンなど既存の仕組みを充分に理解し活用できる方がさらに次のステップへ進むために
「対話ウィンドウ」を導入しました。
新システム「対話ウィンドウ」は、システムに合わせてシナリオを組み立てたり、シーンに必要となるグラフィックなどを自分で用意できる方をメインターゲットとしています。バトルなどゲームらしい部分とは別の制作ノウハウが必要となるので、タクティクスチャレンジv2の基礎をきちんと理解してから利用することをおすすめします。
また、ユーザーのみなさんそれぞれストーリーに合わせた画像などの素材類を素材として提供するのは困難なため、原則として素材類は自作する必要があります。ただし「ゲーム制作は得意だけど背景画などを用意することが苦手……」という方のために自作補助素材集を提供しています。後述の「対話ウィンドウ制作に必要な準備」をご確認ください。
記事更新履歴
2013/9/20
・仮実装機能について記事を公開しました。
・仮実装機能について記事を公開しました。
2013/12/20
・正式実装に伴い、記事を更新しました。
・タグ一覧に新規タグ「LastSelected」の説明を追加しました。
・正式実装に伴い、記事を更新しました。
・タグ一覧に新規タグ「LastSelected」の説明を追加しました。
2013/12/23
・文章表示の置換処理に、トピックと同様の代名詞を利用できる旨の補足を追記しました。
・文章表示の置換処理に、トピックと同様の代名詞を利用できる旨の補足を追記しました。
脚本はテキストファイルに記述
対話ウィンドウは作り手の自由度を優先し、できるだけ制限を排すためテキストファイルにシーンの内容を定義する仕組みになっています。当記事の後半で紹介している専用のタグを記述することで「対話ウィンドウ脚本」として使えるテキストファイルを作成し、これをメディアファイルの一種としてプロジェクトに登録することで作品中で利用できるようになります。
| 記述例 | |
|
[SkyWindowSetting] [BG] File=1 [Music] File=8 [Font] Index=1,Size=11,ForeColor=250/250/250,BackColor=65/65/65 [Begin] [Text] Index=1,Message=最小限サンプルです。すぐ終わります。,X=80,Y=100,Font=1 [Page] Icon=1,X=240,Y=120 [End] |
|
| 下準備 |
まずは対話ウィンドウのシーンで使用する要素の準備を行ないます。 ・[BG]タグで背景画像をNo.1に指定。 ・[Music]タグでBGMをNo.8に指定。 ・[Font]タグで使用文字設定の1番をサイズ「11」、文字色を白、影色を暗いグレーに指定。 |
| 開始 | [Begin]タグでシーン表示を開始します。 |
| シーン内容 |
対話ウィンドウに表示する内容や動作を指定していきます。 ・[Text]タグで文章、表示位置、文字設定を指定。 ・[Page]タグでプレイヤーが決定ボタンを押すのを待機させ、アイコンの形状と表示位置を指定。 ゲーム中にプレイヤーが決定ボタンを押すと、[Page]タグの次の行へと進みます。たくさんの文章や画像を表示させたいときは、表示用のタグ→[Page]タグの記述を繰り返し、プレイヤーが決定ボタンを押すたびに次の文章などを表示させていきましょう。 |
| 終了 | [End]タグに到達すると対話ウィンドウのシーンは終了します。 |
対話ウィンドウ制作に必要な準備
脚本を記述するまえに必要な画像をひととおり揃えておき、メディアリストで登録しておきましょう。
対話ウィンドウの導入により、タクティクスチャレンジv2は新しい3種のメディアファイルを取り扱うようになります。
ひとつめは前述の「対話ウィンドウ脚本」です。対話ウィンドウのシーン内容を定義するタグを記述したテキストファイルを登録できます。
ふたつめは「対話ウィンドウ背景」です。これは対話ウィンドウの背景として表示する横512×縦256ドットのワイドな画像です。歩行キャラクターなどと同様に、用意したBMPやPNGファイルを登録できます。この画像はシステム標準ファイルが提供されないので、必要な画像は自分で用意し、登録しておかなければなりません。
3つめはシステム画像の「対話ウィンドウ基本パーツ」です。これは対話ウィンドウの規定の枠やフキダシなどの細かいパーツをまとめた画像で、システム画像リストに登録します。この画像はシステム標準ファイルが提供されるので、規定の画像をそのまま利用するのであればユーザーが用意する必要はありません。
また、既存のメディアファイルを対話ウィンドウに利用することもできます。任意の画像表示を行なう際に正方景と歩行キャラクターを指定できますので、必要に応じて画像を用意してください。例えば人物のバストアップを表示させたい場合は正方景として登録しておくと良いでしょう。
サンプルデータ+自作補助素材集を提供
対話ウィンドウのサンプルとして、ワールドエディターに登録して試用できる対話ウィンドウ脚本と対話ウィンドウ背景のデータを提供しています(こちら からダウンロードできます)。
ファイルを圧縮したZIP形式で提供していますので、ダウンロード後はエクスプローラから中身を閲覧したり、ウィンドウズ標準の機能でファイルの中身を展開することができます。収録内容やファイルの使い方について簡単に説明しているテキストファイルを同梱していますのでお読みください。
| 準備するファイルについてのまとめ | |
| 対話ウィンドウ脚本 | テキストファイルに専用の脚本タグを記述。 メディアリスト「対話ウィンドウ脚本」として登録必須。 |
| 対話ウィンドウ背景 |
512×256ドットの画像。 メディアリスト「対話ウィンドウ背景」として登録必須。 |
| 対話ウィンドウ 基本パーツ |
256×256ドットの画像。 システム標準ファイルが提供されるので独自ファイルの登録は任意。 |
| 正方景 /歩行グラフィック |
必要に応じて任意に用意。 |
対話ウィンドウの活用法
サンプルゲーム『冒険者募集中!!』最新版ではプレイガイドから対話ウィンドウのサンプル3種を見られるようになっています。
対話ウィンドウを作中で表示するためには、登録した対話ウィンドウ脚本を呼び出すよう設定を行なう必要があります。対話ウィンドウ脚本はオーダーとバトルフィールドの戦闘前後イベントから呼び出せます。
オーダーはオープニングやクエスト受諾時に呼び出せるほか、新たにアイテム使用時やトピック表示後にも呼び出せるようになったので活用方法は様々です。
| 活用例 | |
| オーダーを介した 呼び出し |
作品/オープニングに設定するオーダーで対話ウィンドウを呼び出し、オープニングとして利用。 |
| クエスト受諾時のオーダーで対話ウィンドウを呼び出し。クエストについての詳細を対話ウィンドウで詳しく解説。 | |
| クエスト完了時のオーダーで対話ウィンドウを呼び出し。クエストの後日談について語る。 | |
| 道具やキーアイテム使用時の世界使用効果オーダーで対話ウィンドウを呼び出し。「本」を「読む」ことで本に書かれた物語を対話ウィンドウのシーンで表現。 | |
| トピックの続けて実行するオーダーで対話ウィンドウを呼び出し。トピックの文章自体は軽い挨拶程度にしておき、対話ウィンドウのシーンで詳細について語る。 | |
| 戦闘前後イベントでの 直接呼び出し |
戦闘前イベントで対話ウィンドウ脚本を呼び出し、目前の敵と戦うことになったいきさつ、ライバルとの過去の因縁について説明する。 |
プレビュー機能
プレビューを見てテキストや画像が正しく表示されているか、といったチェックをしましょう。問題が見つかった場合は、元のテキストファイルを修正し、対話ウィンドウ脚本
を再登録しましょう。
対話ウィンドウ脚本は動作が重要な要素であるため、ゲームとしてテストプレイしなくても動作を確認できるプレビュー機能を搭載します。
対話ウィンドウ脚本をリストに設定すると[プレビュー]ボタンが有効になるので、クリックしてプレビューを開始できます。
プレビュー開始後、プレイヤーの決定ボタン入力を待機する状態になると[!]ボタンが有効になり、クリックすることでシーンを先に進めることができます。また、選択肢が表示されると[↑][↓]ボタンが有効になり、クリックすることでアクティブな選択肢を選ぶことができます。さらに[!]をクリックすると選択肢を決定し、シーンを先に進めることができます。
また、プレビュー領域にマウスカーソルを合わせると、対話ウィンドウ内の座標を表示させることできます。対話ウィンドウ脚本への各種タグ記述において座標を指定する必要がある場合などに利用してください。
対話ウィンドウ脚本 タグ一覧
対話ウィンドウ脚本に記述できるすべての脚本タグについて解説します。
| コマンド/設定項目 | 説明 | |
| [SkyWindowSetting] | テキストファイルが対話ウィンドウ用のものであることを示すため、ファイルの先頭に必ず記述しなければならないタグです。 先頭にこのタグがないテキストファイルは対話ウィンドウ脚本として利用できません。 なお「SkyWindow」とは対話ウィンドウの開発中の内部名称です。俯瞰で見下ろした場面だけで構成されるタクティクスチャレンジv2のゲームに「空が見えるシーン」を導入することを目的としていたため、こう命名されました。ただしこのタグ以外では意識する必要のない名称です。 |
|
| 例: [SkyWindowSetting] | ||
| [Begin] | 対話ウィンドウの表示を開始させるタグです。 [Begin]タグより前に記述したタグは画像表示位置の変更など静的なものは有効ですが、時間経過の待機や選択肢の表示など動的なものは無効となり無視されます。 |
|
| 例: [Begin] | ||
| [End] | 対話ウィンドウの表示を終了させるタグです。 [End]タグよりあとに記述したタグは一切実行されず、対話ウィンドウは閉じられます。 |
|
| 例: [End] | ||
| [BG] | 対話ウィンドウの背景画像を設定・更新するタグです。 | |
| 例: [BG] File=1, Shadow=90 | ||
| ! | File | [BG]タグの必須項目です。 値として「対話ウィンドウ背景」の番号を指定してください。 |
| Shadow |
この背景を表示している際に利用する「影」の濃度を1〜99で指定します。影は[Shadow]タグによって表示させることができ、キャラクターの足元の丸い影やテキスト表示の下地として利用できます。 [Shadow]タグを利用しない場合は設定不要な項目です。 |
|
| [Music] | BGMとして再生されるミュージックを設定・更新するタグです。 | |
| 例: [Music] File=1, Volume=7 | ||
| ! | File | [Music]タグの必須項目です。 値として「ミュージック」の番号を指定してください。 |
| Volume | ミュージックの音量を1〜9で指定できます。 ただしWindows7などのサウンド環境ではソフトウェア側から音量を変更できない場合があり、その場合はWindowsのユーザー設定に応じた音量で再生されます。 |
|
| [Sound] | サウンドを再生するタグです。 | |
| 例: [Sound] File=1 | ||
| ! | File | [Sound]タグの必須項目です。 値として「サウンド」の番号を指定してください。 |
| ※注意事項 | 対話ウィンドウでは複数のサウンドをまとめて再生することはできません。時間経過などを待たずに複数の[Sound]タグを連続し て記述した場合は最後に指定したサウンドだけが再生されます。 | |
| [Font] | 文字設定を行なうタグです。 あらかじめ[Font]タグで指定した文字設定は、テキスト表示とフキダシ表示で利用することになります。 全9個の文字設定を利用できます。 |
|
| 例: [Font] Index=1, Name=MS UI Gothic, Size=10, ForeColor=250/250/250, Backcolor=50/50/50 | ||
| ! | Index | [Font]タグの必須項目です。 最初の設定項目をIndexとし番号(1〜9)を指定することで、どの番号に対しての設定変更を行なうかを決定してください。 |
| Name | 使用するフォントを書体名で指定します。 この項目を省略した場合は前回指定した書体のままになります。一度も指定していない場合の標準書体は「MS UI Gothic」です。 ※プレイヤーのWindows環境にも含まれているフォントを指定しなければ正しく表示されません。原則として日本語Windowsに標準で含まれるフォントを指定しましょう。 |
|
| Size | 文字のサイズを指定します。 この項目を省略した場合は前回指定したサイズのままになります。一度も指定していない場合の標準サイズは「10」です。 ※フォントによって表示上の大きさが異なるほか、プレイヤーのWindows環境によって若干文字の大きさが異なる場合があるのでご注意ください。 |
|
| ForeColor | 文字本体の色を指定します。 色の値はRed,Green,Blueの各値(1〜255)をスラッシュで結合し「250/240/240」のように指定します。例は明るい ピンクになります。 この項目を省略した場合は前回指定した色のままになります。一度も指定していない場合の標準色は「250/250/250」です。 |
|
| BackColor | 文字の影色を指定します。 色の値はRed,Green,Blueの各値(1〜255)をスラッシュで結合し「50/50/50」のように指定します。例はかなり暗いグレーになります。 この項目を省略した場合は前回指定した色のままになります。一度も指定していない場合の標準色は「1/1/1」です。 |
|
| [Text] | テキスト1行を背景上に描画するタグです。 全9行のテキストを利用でき、行ごとに位置などを個別設定できます。 |
|
| 例: [Text] Index=1, Message=ようこそ!, Font=1, X=80, Y=50 | ||
| ! | Index | [Text]タグの必須項目です。 最初の設定項目をIndexとし行番号(1〜9)を指定することで、どの行に対して設定を行なうかを決定してください。 |
| ! | Message | [Text]タグの必須項目です。 表示させる1行ぶんの文章を指定します。 「Text=」と文章を空白に指定すると表示を消去することができます。 |
| Font | テキスト表示に用いる文字設定番号(1〜9)を指定します。 文字設定はあらかじめ[Font]タグによって指定しておくことができます。 |
|
| ! | X | テキストの表示開始位置(ウィンドウ左端からの水平ドット数)を指定します。 値を「X=50」として左から50ドットの位置を新しい表示開始位置にするほか、「X=+10」として現在の表示開始位置を基準に右へ10ドット移動させたり、「X=-5」として現在の表示開始位置を基準に左へ5ドット移動させることもできます。 |
| ! | Y | テキストの表示開始位置(ウィンドウ上端からの垂直ドット数)を指定します。 Xと同様に、値を直接指定するだけでなく、数値の先頭に「+」「-」を付与することで現在の値を基準に加減することもできます。 |
| Bind | テキストを継続的に表示するか否かを指定するための項目です。 標準設定は「Off」で、この状態だとプレイヤーによる決定ボタンの入力待機後や選択肢決定後に自動でテキストが消去されます。 「On」にすると決定ボタンの入力待機後や選択肢決定後にもそのまま継続してテキストが表示されたままになります。 |
|
| ※補足 |
[Text]タグによるテキスト表示は全9行まで利用できますが、長い文章の1行目〜9行目として連続表示させるだけでなく、バラバラの位置に表示させてもかまいません。 例えば対話ウィンドウの背景として「地図」を表示しておき、テキスト表示で地図上の9箇所の地名を示す、といった利用も可能です。 |
|
| [Talk] |
規定のフキダシを用いてセリフを表示させるタグです。 全9個のフキダシを利用できます。 |
|
| 例: [Talk] Index=1, Message=こんにちは!, Font=1, Pop=1, X=250, Y=200 | ||
| ! | Index | [Talk]タグの必須項目です。 最初の設定項目をIndexとしフキダシ番号(1〜9)を指定することで、どのフキダシに対して設定を行なうかを決定してください。 |
| ! | Message1 Message2 Message3 |
1行目〜3行目に表示させる文章を指定します。 2行以上の文章を指定すると、大型のフキダシになります。 なお「Message1=」と1行目に空白を指定すると、このフキダシは表示されなくなります。 |
| Font | フキダシ表示に用いる文字設定番号(1〜9)を指定します。 文字設定はあらかじめ[Font]タグによって指定しておくことができます。 |
|
| Pop | フキダシ根元のデッパリの形状を0〜2のタイプ番号で指定します。 「0」を指定するとデッパリはなくなります。 「1」を指定すると通常会話用の尖ったデッパリになります。 「2」を指定すると声に出さない思考型の丸破線になります。 |
|
| ! | X | フキダシの表示基点座標(ウィンドウ左端からの水平ドット数)を指定します。 表示基点座標はフキダシの中央となる位置です。 値を「X=50」として左から50ドットの位置を新しい表示基点にするほか、「X=+10」として現在の表示基点座標を基準に右へ10ドット移動させたり、「X=-5」として現在の表示基点座標を基準に左へ5ドット移動させることもできます。 |
| ! | Y | フキダシの表示基点座標(ウィンドウ上端からの垂直ドット数)を指定します。 表示基点座標はPop(下向きデッパリ)が表示される位置で、フキダシそのものと文章はこの位置より上方向に表示されます。 Xと同様に、値を直接指定するだけでなく、数値の先頭に「+」「-」を付与することで現在の値を基準に加減することもできます。 |
| LineHeight | 複数行の文章を表示する場合の改行縦幅(ドット数)を指定します。 最小値は「10」、最大値は「32」、未指定時の標準値は「20」です。 |
|
| Bind | フキダシを継続的に表示するか否かを指定するための項目です。 標準設定は「Off」で、この状態だとプレイヤーによる決定ボタンの入力待機後や選択肢決定後に自動でフキダシが消去されます。 「On」にすると決定ボタンの入力待機後や選択肢決定後にもそのまま継続してフキダシが表示されたままになります。 |
|
| ※補足 | [Talk]タグによるフキダシ表示は全9個まで利用できますが、2行以上の大型フキダシを多用すると対話ウィンドウ内に表示しきれず、うまく配置してもお互いが重なり合うことにあるので注意が必要です。フキダシは番号が若い順に(1番から)描画され、フキダシ同士が重なる場合は9番のフキダシが一番上に表示されるようになります。 | |
| [PictureSetting] |
画像を表示する下準備を行なうタグです。 全15個の画像を使用でき、各画像にはそれぞれ15フレームの情報を設定できます。 |
|
| 例1: [PictureSetting]
Index=1, File=Square:1, BlendColor=250/0/0, BlendPercent=75 例2: [PictureSetting] Index=1, Frame=0, Left=0, Top=0, Width=64, Height=64 |
||
| ! | Index | [PictureSetting]タグの必須項目です。 最初の設定項目をIndexとし画像番号(1〜15)を指定することで、どの画像に対して設定を行なうかを決定してください。 |
| ! | File | [PictureSetting]タグの必須項目です。 使用する画像ファイルを指定します。 書式は「メディアファイルの形式:ファイル番号」となっています。メディアファイルの形式は「Square」(正方景)、「Walker」(歩行キャラクター)、「WindowBG」(対話ウィンドウ背景)のいずれかを選択して指定し、半角コロンと、その右にファイル番号を指定してください。 |
| BlendColor | 画像を染色して使用する場合に、色を指定します。 色の値はRed,Green,Blueの各値(1〜255)をスラッシュで結合し「0/0/250」のように指定します。例は青くなります。 |
|
| BlendPercent | 画像を染色して使用する場合に、その濃度を0〜99で指定します。 | |
| Layer |
対話ウィンドウ実行時に画像は初期状態ではテキストやフキダシよりも先(下)に描画されますが、この項目を「Fore」と指定することでテキストやフキダシよりも手前に描画するようになります。 また「Back」を指定することで「Fore」状態を解除することもできます。 |
|
| ! | Frame |
画像には全15のフレーム(コマ)の設定を行ない、擬似的にアニメーション(キャラクターの表情変化など)表示させることが可能です。 この表内の次項移行の設定項目はフレームごとに個別設定できるものなので、設定対象となるフレーム番号(1〜15)を指定してください。 ※省略は可能です。Frameを指定せずに次項移行の設定項目を使用した場合、指定内容はフレーム1番に反映されます。 ※File,BlendColor,BelndPercent,Layerの各設定項目は画像単位で反映されます。フレームごとに個別指定することはできません。 |
| ! | Left | フレームのグラフィック表示範囲の左位置(ドット数)を指定します。 例えば歩行キャラクターで[Left=0」と指定すると静止ポーズとなり、「Left=64」と指定すると右手を前に出したポーズになります。 ※合わせてTop,Width,Heightの指定も必要です。 |
| ! | Top | フレームのグラフィック表示範囲の上位置(ドット数)を指定します。 例えば歩行キャラクターで[Top=0」と指定すると左下向きポーズになり、「Top=64」と指定すると右下向きポーズになります。 ※合わせてLeft,Width,Heightの指定も必要です。 |
| ! | Width | フレームのグラフィック表示範囲の横幅(ドット数)を指定します。 例えば歩行キャラクターの1ポーズを表示させたい場合は「Width=64」と指定してください。正方景全体を表示させたい場合は「Width=256」と指定してください。 ※合わせてLeft,Top,Heightの指定も必要です。 |
| ! | Height | フレームのグラフィック表示範囲の縦幅(ドット数)を指定します。 例えば歩行キャラクターの1ポーズを表示させたい場合は「Height=64」と指定してください。正方景全体を表示させたい場合は「Height=256」と指定してください。 ※合わせてLeft,Top,Widthの指定も必要です。 |
| [PictureView] | [PictureSetting]で設定した画像を対話ウィンドウ上に表示させるタグです。 | |
| 例1: [PictureView] Index=1, Frame=1, X=50, Y=50 | ||
| ! | Index | [PictureSetting]タグの必須項目です。 最初の設定項目をIndexとし画像番号(1〜15)を指定することで、どの画像を表示させるかを決定してください。 |
| ! | Frame | [PictureSetting]タグの必須項目です。 表示させるフレームを1〜15で指定してください。 |
| ! | X | フレームの表示位置(ウィンドウ左端からの水平ドット数)を指定します。 値を「X=50」として左から50ドットの位置を新しい表示位置にするほか、「X=+10」として現在の表示位置を基準に右へ10ドット移動させたり、「X=-5」として現在の表示位置を基準に左へ5ドット移動させることもできます。 |
| ! | Y | フレームの表示位置(ウィンドウ上端からの垂直ドット数)を指定します。 Xと同様に、値を直接指定するだけでなく、数値の先頭に「+」「-」を付与することで現在の値を基準に加減することもできます。 |
| [PictureHide] | [PictureView]で対話ウィンドウ上に表示させた画像を消去するタグです。 | |
| 例1: [PictureHide] Index=1 | ||
| ! | Index | [PictureHide]タグの必須項目です。 最初の設定項目をIndexとし画像番号(1〜15)を指定することで、どの画像を消去するかを決定してください。 |
| [Shadow] |
指定位置に影(背景を暗くしたもの)を描画するタグです。 全15個の影を利用できます。 |
|
| 例1: [Shadow] Index=1, View=On, Left=250, Top=200, Width=32, Height=16, Edge=Round | ||
| ! | Index | [Shadow]タグの必須項目です。 最初の設定項目をIndexとし影番号(1〜15)を指定することで、どの影に対して設定を行なうかを決定してください。 |
| ! | View | [Shadow]タグの必須項目です。 影を描画するか否かを指定します。値を「On」にすると描画され、「Off」にすると描画されません。 |
| ! | X | 影の表示位置(ウィンドウ左端からの水平ドット数)を指定します。 値を「X=50」として左から50ドットの位置を新しい表示位置にするほか、「X=+10」として現在の表示位置を基準に右へ10ドット移動させたり、「X=-5」として現在の表示位置を基準に左へ5ドット移動させることもできます。 |
| ! | Y | 影の表示位置(ウィンドウ上端からの垂直ドット数)を指定します。 Xと同様に、値を直接指定するだけでなく、数値の先頭に「+」「-」を付与することで現在の値を基準に加減することもできます。 |
| ! | Width | 影の横幅(ドット数)を指定します。 省略した場合の最小値の「4」、または前回指定した値になります。 |
| ! | Height | 影の縦幅(ドット数)を指定します。 省略した場合の最小値の「4」、または前回指定した値になります。 |
| Edge | 影のカドに対する特種処理を以下のタイプ文字列で指定します。 「None」または無指定にすると、カドへの処理は行なわれず四角い影として描画されます。 「Cut」を指定すると、カドが直線的に切り落とされた形状で描画されます。この指定はテキスト表示の背景のように利用されることを想定しています。 「Round」を指定すると、カドが丸められた形状で描画されます。この指定は歩行キャラクターの影として利用されることを想定し、横長の小さな影がもっともきれいに丸められるよう最適化されています。 |
|
| [Page] | プレイヤーが決定ボタンを押すのを待ち、待機中にページめくりアイコンを表示するタグです。 | |
| 例1: [Page] Icon=1, X=480, Y=240 | ||
| ! | Icon | [Page]タグの必須項目です。 待機中に表示するページめくりアイコンの種類をアイコン番号(1〜4)で指定します。 「1」を指定すると白い▽になります。 「2」を指定すると黒い▼になります。 「3」を指定すると青色背景の丸ボタンになります。 「4」を指定すると黄色背景の丸ボタンになります。 |
| ! | X | ページめくりアイコンの表示位置(ウィンドウ左端からの水平ドット数)を指定します。 省略した場合は「0」、または前回指定したX値になります。 |
| ! | Y | ページめくりアイコンの表示位置(ウィンドウ上端からの垂直ドット数)を指定します。 省略した場合は「0」、または前回指定したY値になります。 |
| [BranchSetting] |
[BranchView]で表示させる選択肢についての設定を行なうタグです。 選択肢は1〜4の最大4個を利用できます。 |
|
| 例1: [BranchSetting] Index=1, Length=5, Title=はい, FontNormal=1, FontActive=2, TitleLeft=10, X=50, Y=50 | ||
| ! | Index | [BranchSetting]タグの必須項目です。 最初の設定項目をIndexとし選択肢番号(1〜4)を指定することで、どの選択肢に対して設定を行なうかを決定してください。 |
| ! | Length | [BranchSetting]タグの必須項目です。 選択肢画像の長さをブロック単位(0〜9)で指定します。1ブロックは32ドットで、この指定値に加えて選択肢の左端パーツと右端パーツが描画されます。 |
| ! | Title | [BranchSetting]タグの必須項目です。 選択肢名として表示する文字列を指定します。 1文字以上の文字を指定すると[BranchView]タグ実行時に表示される選択肢になります。文字を空白にすると表示されなくなります。 |
| FontNormal | 選択肢が非アクティブ状態のときに選択肢名の表示に用いる文字設定番号(1〜9)を指定します。 文字設定はあらかじめ[Font]タグによって指定しておくことができます。 |
|
| FontActive | 選択肢がアクティブ状態のときに選択肢名の表示に用いる文字設定番号(1〜9)を指定します。 文字設定はあらかじめ[Font]タグによって指定しておくことができます。 |
|
| Position |
選択肢名の表示開始位置を指定します。値を「1」以上にすると選択肢名は選択肢画像の左端から指定ドット数の位置に表示されます。 値を「0」にすると選択肢名はセンタリングされ選択肢画像の中央に表示されます。 ※この値で指定できるのは水平位置のみです。垂直位置は自動決定でセンタリングされます。 |
|
| ! | X | 選択肢の表示位置(ウィンドウ左端からの水平ドット数)を指定します。 省略した場合は「0」、または前回指定したX値になります。 |
| ! | Y | 選択肢の表示位置(ウィンドウ上端からの垂直ドット数)を指定します。 省略した場合は「0」、または前回指定したY値になります。 |
| [BranchView] |
選択肢を表示し、プレイヤーの選択・決定を待機します。 あらかじめ[BranchSetting]タグで表示する選択肢ごとの設定を行なっておく必要があります。 |
|
| 例1: [BranchView] Active=1 | ||
| Active | 選択肢の表示を開始する際に最初からアクティブになっている選択肢番号(1〜4)を指定します。 省略すると原則として「1」がアクティブになります。 |
|
| [LastSelected] | 最終選択番号(直前の選択肢でプレイヤーが選択した選択肢の番号)を強制変更します。 | |
| 例1: [LastSelected] Select=4 | ||
| ! | Select | 新たな最終選択番号の値(1〜4)を指定します。 |
| Random | [LastSelected]タグを実行する確率(0〜100)を設定できます。 省略すると[LastSelected]タグは実行され、最終選択番号はSelectで指定した値に変更されます。 |
|
| [Wait] | 指定した時間が経過するを待つタグです。 | |
| 例1: [Wait] Clock=500 | ||
| ! | Clock | [Wait]タグの必須項目です。 待機時間を指定します。単位は1/1000秒なので、1秒待機なら「1000」、0.5秒待機なら「500」を指定します。 最大値は10000(約10秒)です。 ※Clock値は1/1000秒単位で指定できますが、対話ウィンドウ実行時の判定は厳密ではありません。プレイヤーのパソコン環境によっては値の下2桁の差を出すことができないこともありえるため、だいたい100(0.1秒)ごとで値を指定すると良いでしょう。 |
| [Quake] | 指定した時間が経過するを待つタグです。 | |
| 例1: [Wait] Clock=500 | ||
| ! | Index | [Shadow]タグの必須項目です。 最初の設定項目をIndexとし影番号(1〜15)を指定することで、どの影に対して設定を行なうかを決定してください。 |
| ! | View | [Shadow]タグの必須項目です。 影を描画するか否かを指定します。値を「On」にすると描画され、「Off」にすると描画されません。 |
| ! | X | 影の表示位置(左端からの水平ドット数)を指定します。 省略した場合は「0」、または前回指定したX値になります。 |
| ! | Y | 影の表示位置(上端からの垂直ドット数)を指定します。 省略した場合は「0」、または前回指定したY値になります。 |
| 特種設定 | ||
| 各タグには上述の専用設定項目のほかに、共通の特種設定項目があります。 | ||
| Only |
「Only」は最終選択番号(※)が特定の値のときのみタグを実行するよう条件を定める特種設定項目です。例えば「Only=2」と指定した行は、最終選択番号が2以外の場合は処理されなくなります。 その特性上、「Only」は最初の設定項目として指定する必要があり、2番目以降に指定しても無効になります。「Index」の指定が必要となるタグに「Only」を指定する場合は「Index」を2番目に指定してください。 ※[BranchView]で表示された選択肢をプレイヤーが選択すると、最終選択番号が更新されます。例えば選択肢番号1を選択すれば最終選択番号も「1」になります。選択肢を利用する前の最終選択番号は「0」です。 |
|
| Wait | タグ実行後に時間経過を待機させる特種設定項目です。 例えば「[BG] File=2,Wait=2500」と指定すると、背景を切り替えたあとに2.5秒待機します。 ※この特種設定項目は[SkyWindowSetting]、[Begin]、[End]、[Wait]には指定できません。 |
|
| Sound | タグ実行後にサウンドを再生する特種設定項目です。 例えば「[BranchView] Active=1,Sound=2」と指定すると、選択肢を表示すると同時にサウンド2番を再生します。 ※この特種設定項目は[SkyWindowSetting]、[Begin]、[End]、[Sound]には指定できません。 |
|
対話ウィンドウ脚本の原則
●表示更新の機会
対話ウィンドウのシーンに設定されている文字や画像は、プレイヤーが時間経過や決定ボタン入力を待っている際に表示が更新されてプレイヤーの目に止まることになります。指定時間の経過を待機する[Wait]、決定ボタン入力を待機する[Page]、選択肢の表示を開始する[BranchView]、一定時間ウィンドウを震動させる[Quake]のいずれも設定されていない脚本では設定変更系のタグが瞬時にすべて処理されるだけになるので、なにも表示されずにシーンが終了してしまいます。
対話ウィンドウのシーンに設定されている文字や画像は、プレイヤーが時間経過や決定ボタン入力を待っている際に表示が更新されてプレイヤーの目に止まることになります。指定時間の経過を待機する[Wait]、決定ボタン入力を待機する[Page]、選択肢の表示を開始する[BranchView]、一定時間ウィンドウを震動させる[Quake]のいずれも設定されていない脚本では設定変更系のタグが瞬時にすべて処理されるだけになるので、なにも表示されずにシーンが終了してしまいます。
●基本の書式: [CommandName] Property1=value1,Property2=value2
行の先頭に大カッコで囲まれたタグ名([CommandName])を記述し、設定項目名と値をイコールで結ぶかたち(Property1=value1)が基本の書式です。複数の設定項目をまとめて記述するケースではカンマのあとに続けてさらに設定項目と値を追加して(,Property2=value2)記述してください。
行の先頭に大カッコで囲まれたタグ名([CommandName])を記述し、設定項目名と値をイコールで結ぶかたち(Property1=value1)が基本の書式です。複数の設定項目をまとめて記述するケースではカンマのあとに続けてさらに設定項目と値を追加して(,Property2=value2)記述してください。
●記号類と数値は半角で
タグの大カッコ"["や設定項目と値を結ぶイコール"="はすべて半角で入力する必要があります。また設定項目名や値に英数字を指定する場合もすべて半角でなければなりません。ただし英字が大文字か小文字かは区別しません。
タグの大カッコ"["や設定項目と値を結ぶイコール"="はすべて半角で入力する必要があります。また設定項目名や値に英数字を指定する場合もすべて半角でなければなりません。ただし英字が大文字か小文字かは区別しません。
●行頭大カッコ"["でない行は無視
テキストファイル内の各行の先頭が大カッコ"["でない行は無視され、実行対象となりません。改行を入れて流れを見やすくしたり、コメントを書いてもかまいません。
テキストファイル内の各行の先頭が大カッコ"["でない行は無視され、実行対象となりません。改行を入れて流れを見やすくしたり、コメントを書いてもかまいません。
●設定項目の処理は15番目まで
各タグに付与する設定項目(カンマでつなげたもの)は15番目まで処理されます。現在対応している各タグの設定項目数は15個以下ですが、同一設定項目を複数回指定したり、カンマを無駄に多く記述してしまった場合などに16番目以降が無視されることになります。
各タグに付与する設定項目(カンマでつなげたもの)は15番目まで処理されます。現在対応している各タグの設定項目数は15個以下ですが、同一設定項目を複数回指定したり、カンマを無駄に多く記述してしまった場合などに16番目以降が無視されることになります。
●文章表示の置換処理
タグの記述の際の設定項目の区切りにカンマ","を使用しているため、テキスト表示の文章や選択肢のタイトルに直接カンマ","を指定することはできません。例えばテキスト表示の文章を「Message=こんにちは,おひさしぶりですね」と指定すると、表示されるのは「こんにちは」までとなり、カンマよりあとの「おひさしぶり」の部分は次の設定項目とみなされ表示されません。
数値の座標(X,Y)や距離(10,000km)などで文中にカンマを使いたい場合は、カンマを入力すべき場所に「%comma」という置換用文字列を指定してください。「10%comma000km」と指定しておけば対話ウィンドウ実行時には「10,000km」と表示されます。
また、トピックと同様の代名詞(「%title」→作品名に置換、他)を利用できます。対応代名詞についてはトピックの解説ページをご覧ください。
タグの記述の際の設定項目の区切りにカンマ","を使用しているため、テキスト表示の文章や選択肢のタイトルに直接カンマ","を指定することはできません。例えばテキスト表示の文章を「Message=こんにちは,おひさしぶりですね」と指定すると、表示されるのは「こんにちは」までとなり、カンマよりあとの「おひさしぶり」の部分は次の設定項目とみなされ表示されません。
数値の座標(X,Y)や距離(10,000km)などで文中にカンマを使いたい場合は、カンマを入力すべき場所に「%comma」という置換用文字列を指定してください。「10%comma000km」と指定しておけば対話ウィンドウ実行時には「10,000km」と表示されます。
また、トピックと同様の代名詞(「%title」→作品名に置換、他)を利用できます。対応代名詞についてはトピックの解説ページをご覧ください。
●制御構造や変数はなし
プログラム言語やスクリプトとは異なるので、対話ウィンドウ脚本にはIF文のような制御構造や変数の概念はありません。原則としてテキストファイルの1行目から順にタグが実行されていきます。ただしプレイヤーが最後に選んだ選択肢の番号を保持することができ、特定の選択番号の場合にだけ各タグを実行するよう条件付けすることができます (詳細はタグ一覧の特種選択項目「Only」の説明をご覧ください)。
プログラム言語やスクリプトとは異なるので、対話ウィンドウ脚本にはIF文のような制御構造や変数の概念はありません。原則としてテキストファイルの1行目から順にタグが実行されていきます。ただしプレイヤーが最後に選んだ選択肢の番号を保持することができ、特定の選択番号の場合にだけ各タグを実行するよう条件付けすることができます (詳細はタグ一覧の特種選択項目「Only」の説明をご覧ください)。
●最大行数は2000行
対話ウィンドウ脚本のテキストファイルは最大2000行目まで処理できます。2001行目以降に記述した内容は無視されます。
対話ウィンドウ脚本のテキストファイルは最大2000行目まで処理できます。2001行目以降に記述した内容は無視されます。