Processor)が用意してるデバッグウィンドウ(Debugウィンドウ)機能を活用しましょう。変数の状態などのHSPプログラムの裏側の動作や処理をチェックできます。そもそも、「debug」(デバッグ)はプログラムのバグを見つけて問題を解消することです。「de+bug」から来たもので、「de-」は「除去」という意味の接頭語です。HSPWiKiの「デバッグの仕方」も参照)HSPのデバッグウィンドウは、HSP3スクリプトエディタの[HSP]→[Debugウィンドゥ表示]にチェックを入れておくことで、スクリプトのコンパイル実行の時に表示されます。スクリプト上ではassert命令を利用してデバッグウィンドウ表示を制御できます。当然ながら、実行ファイルとして出力した場合、このようなデバッグウィンドウは実行ファイル内部に存在しません。ウィンドウの3機能デバッグウィンドウ上には3つのタブが存在します。タブHSPの一般的な変数の状態が表示されます。一部の項目を挙げます。現在のカレントディレクトリのパス文字列が表示されます。dirinfo関数(タイプ0)でパスの取得、chdir命令でパスの変更ができます。dialog命令(タイプ16、17)などで変動します。コマンドラインオプションの文字列が表示されます。dirinfo関数(タイプ4)で取得できます。HSP3スクリプトエディタの[HSP]→[起動オプション]で、仮想のコマンドライン文字列を指定できます。コマンドラインは、たとえば実行ファイルのアイコンにファイルをドラッグ&ドロップした時、そのドロップされたファイルのパス文字列が返る部分です。現在の操作先となってるウィンドウID値が表示されます。ウィンドウはscreen命令とbgscr命令、仮想画面はbuffer命令で用意でき、メインウィンドウは0です。操作先はgsel命令で変更できます。命令の結果などが返るシステム変数の数値や文字列が表示されます。タブ自分が用意した変数の状態が表示されます。チェックする機会がもっとも多い部分かと思います。チェックボックスの項目は4つあり、それにより表示内容を変更、追加できます。変数名をabc順にソートして表示します。モジュール内(#module命令)の変数も表示します。配列変数の場合、「(0)=○」、「(1)=○」、「(2)=○」・・・の形式で要素ごとのデータも表示します。配列変数はdim命令(整数値型)、sdim命令(文字列型)、ddim命令(実数値型)で宣言できます。メモリ上の変数を状態をバイナリエディタ風(16進数)で表示します。変数の「型」は、下のような名前で提示されます。タブスクリプト上のlogmes命令で指定されたメッセージを表示するボックスです。mes命令のデバッグウィンドウ用といったところでしょうか。HSPスクリプトエディタ上でのコンパイル実行でのみ機能し、実行ファイルになった時点ではこの命令は内部に存在してないことになります。エラーの箇所を突き止める何もデバッグウィンドウを使わないで、HSPの命令でデバッグは可能です。変数の状態を文字で表示。タイトルバー上に変数の状態を表示。メッセージボックス上に変数の状態を表示。処理が一時停止するのもポイント。まで進めて、どの時点でHSPエラーが発生するのか分かります。ショートカットキーHSP(HSP3)のスクリプトファイル(*.hsp/*.as)を編集するためのエディタのショートカットキー一覧です。実行すると、問答無用でスクリプトエディタごと落ちる不具合が確認されてます。3.2では修正されてます。