Studio は、統合開発環境 (IDE) で一般的に見られる多くのデバッグツールとワークフローを提供します。これにより、スクリプトの実行中にエラーを検査し解決するのに役立ちます。
ブレークポイントデバッグ
ブレークポイントは、特定の行でスクリプトの実行を一時停止または「中断」するチェックポイントです。これらの一時停止を利用して、あなたの体験を検査・デバッグし、ウォatch 変数を確認し、コールスタックを調査できます。ブレークポイントは、関数をデバッグするための最も効果的な方法の1つであり、最も重要なデバッグツールの1つです。
管理
スクリプトエディタ では、複数のタイプのブレークポイントを挿入し、いつでもブレークポイントの設定を編集できます。プレイテストセッション中も含めて、ブレークポイントを編集しても、セッションが終了した後でもその編集は保持されます。また、プレイテストセッションを一時停止しているブレークポイントも編集できますが、変更は次のプレイテストセッションまで適用されません。
挿入
ブレークポイントには複数のバリエーションがあり、実行可能コードの任意の行に挿入できます。以下の方法で行います:
標準のブレークポイントをコードの行に挿入するには、その行番号の右側のガターをクリックします。または、ガターを右クリックして ブレークポイントを挿入 を選択します。ブレークポイントのアイコンは赤い円として表示されます。

無効化
ブレークポイントを削除することなく一時的に無効化するには、以下のいずれかの方法を使用します:
- ブレークポイントのアイコンをクリックします。
- ブレークポイントのアイコンを右クリックして ブレークポイントを無効にする を選択します。
- 編集してブレークポイントの 有効 チェックボックスを切り替えます。
無効化されたブレークポイントは、その有効なアイコンの中身が抜けたバージョンとして表示されます。例えば、無効化された標準ブレークポイントは抜けた円として、無効化されたログポイントは抜けたダイヤモンドとして表示されます。


削除
ブレークポイントを削除するには、そのアイコンをミドルクリックするか、アイコンを右クリックして ブレークポイントを削除 を選択します。
編集
いつでもブレークポイントの設定を編集できます。プレイテストセッション中も含めて、ブレークポイントを編集しても、セッションが終了した後でもその編集は保持されます。また、プレイテストセッションを一時停止しているブレークポイントも編集できますが、変更は次のプレイテストセッションまで適用されません。
ブレークポイントを編集するには:
ブレークポイントアイコンを右クリックして ブレークポイントを編集 を選択します。
ブレークポイントの編集 ウィンドウで、ブレークポイントを希望のように設定します。これらの設定を組み合わせて、デバッグニーズに最適な設定を作成できます。
オプション 説明 条件 ブレークポイントがアクティブになるかどうかを決定するオプションの式です。条件が空の場合、ブレークポイントは常にアクティブになります。条件が存在する場合、ブレークポイントは条件付きブレークポイントになり、条件が真であるときにのみアクティブになります。例えば、変数 var が 10 に等しいときにのみブレークポイントをアクティブにしたい場合、条件を var == 10 に設定します。 ログ メッセージ ブレークポイントがヒットしたときに出力ウィンドウに出力される式です。ログメッセージのフォーマットは print() 文のものと同じです。例えば、ログメッセージを "The value of var:", var に設定すると、print("The value of var:", var) と同じメッセージを出力します。 実行を続ける ブレークポイントがアクティブになった場合にスクリプトを一時停止するかどうかを決定します。このオプションは、挿入されたブレークポイントがログポイントでない限り、デフォルトでは無効になっています。 ヒット時にブレークポイントを削除 チェックが入っている場合、ブレークポイントは最初のプレイテストセッションの後に自動的に削除され、結果的に一時的ブレークポイントになります。 トリガー条件 ブレークポイントの コンテキスト は、クライアント (クライアント側スクリプト)、サーバー (サーバー側スクリプト)、または 編集 (デバッグプラグインスクリプト) にアクティブになるべきかを決定します。カスタムコンテキスト を選択すると、ウィンドウに現在のトリガーコンテキストが表示されます。
ワークフロー
ブレークポイントデバッグの典型的なワークフローは次のとおりです:
デバッグしたいスクリプトを開き、挿入ブレークポイントを行いたいコードの行に挿入します。
Studio のメザニンから、プレイテストを開始してデバッグを開始します。

スクリプトがブレークポイントに達すると、プレイテストセッションは 一時停止 します(そのブレークポイントが設定されていない限り)。ブレークポイントの上にある黄色い矢印が、次に実行されるコードの行を示します。

ブレークポイントに当たった後にコードの実行を続けるには、メザニンで スクリプトを再開 をクリックします。

また、メザニンのステッピングボタンを使用して、行を一度に一行ずつ実行することもできます。

アクション ショートカット 説明 ステップイン F11 ステップイン ボタンは、デバッガーを現在の行の関数のコードに移動させます。現在の行に関数がない場合には、デバッガーは次の行に移動します。 ステップオーバー F10 ステップオーバー ボタンは、デバッガーを次のコード行に移動し、関数には入らない。 ステップアウト ShiftF11 ステップアウト ボタンは、デバッガーを現在の関数の外に移動し、その関数呼び出しの後の次のコード行へ移動させます。現在の行が関数内にない場合、デバッガーは次の行に移動します。 現在のデバッグセッションが終了したら、停止ボタンをクリックします。

モニタリング
Studio には、デバッグ中の変数値や関数の実行を監視するための複数のウィンドウおよびツールが含まれています。この情報を使用して、スクリプト内のほとんどの問題の根本原因を特定できます。

ブレークポイント
ブレークポイント ウィンドウは、すべてのスクリプト内のすべてのブレークポイントを表示する統一ビューです。これを開くには、Studio の スクリプト タブツールバーから ブレークポイント をクリックするか、ウィンドウ ⟩ デバッグ メニューに移動して ブレークポイント をオンにします。
ウィンドウでは、スクリプト と 行 の列が常に表示され、他の設定列を左上隅の ⋮ メニューを通じてオン/オフすることができます。スクリプト 列内で、任意のブレークポイントを右クリックすると、編集、無効/有効、削除、スクリプト内でブレークポイントの行にジャンプするためのオプションメニューが表示されます。

デバッグセッション中は、最も左の列が (x3) を表示し、これはブレークポイントの複数のコンテキスト(クライアント、サーバー、編集)を示します。任意のブレークポイントのブランチを展開すると、そのコンテキストに対してブレークポイントを無効/有効にするためのアイコンをクリックできます。たとえば、クライアント コンテキストでは無効にしたが、サーバー コンテキストでは有効にしたままにすることができます。

コールスタック
コールスタック ウィンドウは、Studio の スクリプト タブツールバーや ウィンドウ ⟩ デバッグ メニューからアクセスでき、デバッガーがブレークポイントに達したときに次に実行される行を示します。内部の他の関数から関数を呼び出す場合、それらの関数がどの行から呼び出されたかを示し、実際の呼び出しの流れが期待される流れに一致するか確認できます。


スクリプトがブレークポイントで一時停止している間、ワークフローに記載されているように、メザニンのステッピングボタンを使用して、関数/行の中に入ったり、飛び越えたり、出たりすることができます。

ウォッチ
ウォッチウィンドウは、Studio の スクリプト タブツールバーや ウィンドウ ⟩ デバッグ メニューからアクセスでき、ブレークポイントを通過する際に変数や式の値を積極的に監視できます。
変数タブは、スコープ内の現在の変数に関する情報を表示します。ウィンドウの上部バーで すべてのスコープ ボタンをクリックしてフィルタリングすることができます。ブランチを展開すると、その変数またはインスタンスのメンバーとその値が表示されます。スクリプトエディタ内で強調表示するためにダブルクリックすることで任意の変数を監視することもできます。また、右クリックして、ポップアップメニューから ウォッチを追加 を選択します。


スクリプトエディタ
デバッガーはスクリプトエディタに統合されています。スクリプト内のブレークポイントで体験が一時停止しているときに、変数の名前の上にマウスを乗せると、その値が表示されます。たとえば、テーブルの構成やその含まれるキー/値を見ることができます。

追加のデバッグツール
デバッガーに加えて、Studio には体験内の問題やバグを修正するための追加のデバッグツールが提供されています。
コマンドバー
コマンドバーは、体験が実行中に Luau コマンドを実行できるようにします。Studio の ウィンドウ ⟩ スクリプト メニューおよびデベロッパーコンソールで利用できます。
デベロッパーコンソール
デベロッパーコンソールは、クライアントおよびサーバーの出力、メモリ使用量、ネットワークパフォーマンスなどを含む幅広い詳細情報を提供します。体験をテストまたはプレイ中にコンソールを開くには、チャットに /console と入力するか、F9 を押します。
ログファイル
スクリプトが Studio またはプレイヤーアプリ内で印刷またはエラーを発生させると、アプリはメッセージをローカルファイルシステムのログファイルに記録します。これらのファイルは、オペレーティングシステムに応じて異なる場所にあります。
Windows
Windows でログファイルにアクセスするには:
- ファイルエクスプローラを開きます。
- %LOCALAPPDATA%\Roblox\logs ディレクトリに移動します。
- ログをダブルクリックして開きます。同じ XXXXX 値のログは同じ Studio セッションのものです。
Mac
Mac でログファイルにアクセスするには:
- Finderを開きます。
- メニューバーから 移動 ⟩ フォルダへ移動... を選択します。
- ダイアログ内に ~/Library/Logs/Roblox と入力します。
- 結果をダブルクリックして、Roblox ログディレクトリに移動します。
- ディレクトリ内にあるログをダブルクリックして開きます。
iOS
Mac または iOS デバイスを使用して iOS ログを収集できます。
Mac上でiOSログファイルにアクセスするには:
- iOSデバイスをMacに接続します。
- Finderを開きます。
- ユーティリティに移動し、コンソールアプリケーションを開きます。
- コンソールアプリケーションでリアルタイムのログを表示するには、サイドバーからiOSデバイスを選択し、スタートボタンをクリックしてiOSデバイスで問題を再現します。
- コンソールアプリケーションでアーカイブされたログを表示するには、ターミナルで sudo log collect --device-name "[iOS Device Name]" を実行します。デバイス名にアポストロフィが含まれていないことを確認してください。このコマンドを実行するときにエラーが発生する可能性があります。
Android
Android 上でログファイルにアクセスするには:
- 設定 ⟩ システム ⟩ 開発者オプションに移動します。
- 開発者オプションをオンにします。
- コンピュータでAndroid Studioをダウンロードしてインストールします。
- Android Studio で Logcat をクリックします。
- Android デバイスをコンピュータに接続して Logcat に自動的にログを表示します。