開発日誌

テクニック

[ テクニック ] 指定した番号のスイッチや変数を検索

2021-07-24 02:36:41

RPGツクールのゲームデータ内から、指定した番号のスイッチや変数が使われている箇所を抽出して、一覧化してくれるエクセルツールを作りました。

スイッチや変数の指定をミスったり、途中で番号を変更したくなったりといったことがよくあります。現状のRPGツクールのインターフェースでは、どこで当該のスイッチや変数が使われているかを漏れなく探し出すのは困難です。

そこで、簡単に指定した番号のスイッチや変数が使われている箇所をリストアップしてくれるツールを用意しました。これを使えば、スイッチや変数に指定ミスがないかどうかの確認や、修正すべき箇所の抽出が簡単にできます。

RPGツクールMV/MZに対応しています。実行にはMicrosoft Excelが必要です。

まずは上記のファイルをダウンロードしてください。zipファイルなので解凍し、中にある「RMDebugger.xlsm」を起動します。

起動時にマクロに関するセキュリティ警告が出ますので、「コンテンツの有効化」でマクロを有効にしてください。

使い方は簡単です。

検索したいのがスイッチか変数かを「種別」欄で選択し、検索したいスイッチまたは変数の番号を「番号」欄に入力します。

そして「検索実行」ボタンをクリックすると、ファイル選択ダイアログが出るので、対象となるゲームのプロジェクトフォルダーにある「game.rpgproject」(MVの場合)または「game.rmmzproject」(MZの場合)のファイルを開きます。

しばらく待っていると、対象のスイッチまたは変数が使用されている箇所がシートに出力されます。全てのイベントコマンドを検索するので、大規模なプロジェクトだとそれなりに時間がかかります。

検索対象は、通常イベント、コモンイベント、バトルイベントのイベントコマンドでスイッチや変数を使用する箇所をはじめ、イベントの出現条件や敵キャラの行動パターンの条件、移動ルートの設定でのスイッチをON/OFF、文章や説明文中で「\V[1]」のように制御文字で指定されている箇所、スキルやアイテムのダメージ計算式で「v[1]」のように指定されている箇所など、ほとんど全ての項目が検索対象となります。詳しくは「Help」のシートに記載してあるので、そちらを参照してください。

ただし、「\V[\V[2]]」のような記述で、2番の変数の値が1で、結果として1番の変数を参照しているようなケースは、追い切れないので対応していません。同様の理由で、スクリプトやプラグインコマンド、プラグインパラメータでの指定、メモ欄での記述などにも対応していません。プラグイン等で独自の記法によりスイッチや変数を表現している場合も非対応です。要望があって、それなりに汎用性があれば、対応するかもしれません。

あくまで使用されている箇所を列挙するだけで、番号の修正や代入値の変更までは自動的にはやってくれません。実際の修正は、リストアップされた一覧を見ながら自力で行う必要があります。

「Check」欄は、確認用等として自由にお使いください。修正・確認が済んだら「○」を付ける、といった活用を想定しています。

「目安行数」欄には、イベントの「実行内容」で出現する行数を示していますが、「移動ルートの設定」や「スクリプト」などのイベントコマンドがあると行数がズレるので、あくまで目安の行数として考えてください。

質問やアドバイスなどはコメント欄まで、お気軽にどうぞ。素材利用条件などについては、このサイトについての「提供素材について」の項目などをご覧ください。

このツールを作ろうと思ったきっかけは、変数の修正を漏れなく行うためです。

ストーリーの進行度を表す変数を用意していたのですが、途中にいくつか進行度を追加する必要が出てきて、進行度の値を代入している部分や進行度で条件分岐している部分ほぼ全てで、進行度の値を繰り下げなければならなくなったためです。

普通にやったのでは絶対に修正漏れが生じますが、このツールを使えば漏れなく修正することが可能です。

このツールを活用して、デバッグ作業が少しでも楽になればいいなと思います。

コメント
お名前
コメント
※ 確認画面はありません。