初心者向けRPGツクールVX講座、第16回目です。
第15回では、変数を使った扉のイベントを作成しました。
今回は、テストプレイで使えるデバッグ機能など、知っておくと便利な機能を紹介します。
第15回で変数を使ったイベントに挑戦しましたが、テストプレイをしているとき「いま[0001:石版を壊した数]の変数の数値はいくつなんだろう?」と思ったことはありませんでしたか?変数やスイッチの変化はメッセージなどで表示されないため、ゲーム中に確認するのが難しい要素のひとつです。
『RPGツクールVX』には、デバッグ(テストプレイ)を支援するいくつかの機能が搭載されています。そのひとつがこれから紹介するデバッグ画面です。
テストプレイ実行中にキーボードの[F9]のキーを押すとデバッグ画面に切り替わります。どこかで見たような文字列が表示されました。この画面では、スイッチと変数がリストとして見られるのです。左側のリストの「S」はスイッチの、「V」は変数の意味です。[ ]の中の数字は、それぞれの番号の範囲を表しています。たとえばS[0001-0010]であれば、スイッチの0001番から0010番を示していることになります。右側には、それぞれのスイッチ(変数)の状態が表示されます。
左側の番号の範囲リストで操作したいスイッチの含まれる範囲を選び、決定キーを押すとカーソルが右側のリストに移ります。ここでスイッチの状態を変更することができます。たとえば「0001:王様と話した」にカーソルを合わせて決定キーを押してみましょう。
すると「0001:王様と話した」がOFFからONに変わりました。このようにデバッグ画面では、スイッチや変数の状態を確認するだけでなく、直接操作することもできるのです。
変数の状態を確認するときも同様です。左側の番号の範囲リストで操作したい変数の含まれる範囲を選び、決定キーを押すとカーソルが右側のリストに移ります。ここで変数の状態を変更することができます。たとえば「0001:石版を壊した数」にカーソルを合わせて方向キーの右を押します。
すると「0001:石版を壊した数」が0から1に変わりました。方向キーの左を押せば、現在値から1減ります。Pageupキーで変数の数値を現在値から-10、Pagedownキーで変数の数値を現在値に+10することができます。
この機能を利用すれば、最初から通してテストプレイしなくても任意のスイッチをON(もしくはOFF)にすることができるので、強制的に特定のイベントを終了した状態にすることもできます。たとえば、王様に話しかけなくても「0001:王様と話した」のスイッチをONにすることで、王様に話しかけた後の状態にできるわけです。
ただし、チェックのために操作が必要となるスイッチ(変数)を正確に把握していないとイベントの挙動がおかしくなってしまうことがあります。この機能は補助的なものと考えて、イベントが完成したら必ず最初から最後まで通してテストプレイするようにしましょう。
なお、この機能はテストプレイ専用の機能です。Game.exeから実行した場合には使えません。
テストプレイ中、マップを歩いていて「近道したいな」と思ったことはありませんか?特に広くて入り組んだダンジョンなどは、ゲームとして遊ぶときはよいのですが、繰り返し行なうテストプレイでは移動がとても面倒に感じられます。
そこでCTRLキーを押したままキャラクターを操作すると、壁や床、海など本来通行禁止となっている地形を無視して歩くことができます。『VXクエスト』から例を挙げると、船を手に入れずに海の上を歩いて「魔物の洞窟」に行ったり、飛行船を手に入れずに「魔王城」に行くことも可能になります。
さらにCTRLキーを押したままの状態ではイベントに触れても無視して歩けるようになります。たとえば『VXクエスト』の「魔物の洞窟・地下2階」にある扉を、カギなしの状態ですり抜けることができます。
なお、この機能はテストプレイ専用の機能です。Game.exeから実行した場合には使えません。
テストプレイでは、基本的にGame.exeから実行した場合と同じ操作が行なえます。もちろんプレイ中のゲームデータのセーブも可能です。セーブデータには、おもにレベルやお金、キャラクターのいる位置、そしてスイッチや変数の状態が保存されます。つまりスイッチや変数を記憶することによって、ゲームの進行状態を管理しているわけです。
ここで注意しなければならないのがイベント編集後のスイッチ(変数)の状態についてです。たとえばAというスイッチがONになるイベントを作り、テストプレイを開始します。そのイベントを実行してAのスイッチがONになった状態でセーブ、テストプレイを終了します。次にさきほどのイベントを編集して、ONになるスイッチをAからBに変更したとします。すると、どういうことになるでしょう?テストプレイを実行する際、最初から始めてイベントを実行した場合、ONになるスイッチはBです。ところが、さきほどのセーブデータから再開した場合、ONになっているスイッチはAのままです。
セーブデータからテストプレイを再開すると、スイッチや変数以外にも編集内容が正しく反映されず思わぬ不具合が発生する可能性があります。修正したはずなのに同じ不具合が繰り返される場合には、テストプレイをセーブデータから再開していないか確認してみましょう。
ゲーム中に表示されるメッセージの色を変えてみたいと思ったことはありませんか?『RPGツクールVX』ではメッセージテキストに決められた文字を含めることで、部分的に文字の色を変えたり、文字の表示速度を調整することができます。この決められた文字というのが制御文字と呼ばれるものです。通常、制御文字は「」で始まる半角文字の組み合わせで構成されています。これらの制御文字はゲーム中はメッセージとして表示されることはありません。
説明だけではわかりにくいと思いますので、実践してみましょう。ここでは「はじまりのお城」の王様のメッセージの文字色を変更します。
[モード]を[イベント]にします。
「はじまりのお城」の(008,004)の座標にある王様のイベントをダブルクリックします。
イベントエディターが起動したら王様のセリフをダブルクリックして編集画面を出します。
メッセージテキストの部分に直接制御文字を追加していくことになります。
文字色を変更する制御文字は「C[n]」です。「n」の部分には色の番号が入ります。番号ごとの色は、RTPのWindows.pngというグラフィックのシステムカラーの部分で指定されています。
ためしに文頭に「C[2]」と書いてみましょう。
[プレビュー]のボタンを押すことで確認できます。メッセージが2番の色に該当するオレンジ色に変わりました。しかし、すべてのテキストがオレンジ色になっています。これは、制御文字の働きがその後ろにあるすべてのテキストに影響するためで、部分的にテキスト色を変えたい場合には、ひと工夫が必要となります。
ここで「魔王」という言葉だけをオレンジ色に変えてみましょう。制御文字の働きがその後ろにあるすべての文字に影響するのであれば、必要な箇所だけ制御文字で挟んでしまえばよいのです。まず「魔王」の直前に文字をオレンジ色に変える制御文字「C>[2]」を置きます。次に「魔王」に続くテキストの直前に基本の文字色に変える制御文字「C[0]」を置いてみましょう。
うまく「魔王」の文字だけがオレンジ色に変わりました。
制御文字には、文字の色を変える以外にも、特定の変数内の数値を表示したり、メッセージの表示速度をコントロールする機能があります。これらの制御文字についてはマニュアルやヘルプでも説明されています。
よく使われる制御文字
第16回はここまでです。次回は「魔王城・2階」のイベントを作っていきます。