実行する
実行の前に自動で解析が走ります。
require の誤りなど、エクスポート時に確実に失敗するものが
あれば VM を起動せずに拒否します。「ブラウザで動いたのにゲームでは動かない」を防ぐためです。
Auto Rerun
File > Auto Rerun on Lua Change が有効なとき、.lua を編集すると自動で再実行します。
既定は有効です。
Stop を押すと、VM を止めるだけでなく予約されている自動再実行も取り消します。
止めたつもりが勝手に動き出すことはありません。Stop 後に新しく編集すれば、また予約されます。
ブレークポイント
止まっている間は、
変数 パネルで現在のスコープの値を、コールスタック パネルで呼び出しの階層を確認できます。
変数 パネルには Watch 欄があり、登録した式が停止のたびに評価されます。
ブレークポイントと Watch 式は端末ごとに保存され、リロードで復元されます。
ログ
ログ パネルは読み取り専用の表示です。入力やコマンド履歴はありません。
表示は「実行ブロック」単位で、ヘッダ行 $ <コマンド> → 標準出力/標準エラー →
フッタ [exit N · 123ms] の形です。終了コードが 0 でなければ赤く表示されます。
Lua の print もここに流れます。
上限は 5000 行です。超えると「N 行を破棄」という行が1つ出ます。
Remote MCP 経由でエージェントが実行した出力は、この
パネルには出ません。人間が操作した結果だけを出す方針のためです。
エージェントの出力は MCP ターミナルウィンドウに分けて表示します。
scode コマンド
ログパネルからは scode コマンドで実行を操作できます。
--help で使い方が出ます。
ls や cat のような標準的なコマンドとシェルの構文も使えます。
参照先は Storm Code のワークスペースで、端末のファイルではありません。
エラーの見え方
実行時エラーは種類ごとに分類され、原因に応じたヒントが付きます (nil の添字参照、nil の呼び出し、算術演算、比較、連結、引数不正、
スタックオーバーフロー、実行時間超過、メモリ超過、構文エラーなど)。
分類できないものは原文をそのまま表示します。黙って握り潰すことはありません。
一覧は診断とエラーコードにあります。
require したモジュールで起きたエラーは、そのモジュール名と行番号で表示されます。
デバッグ実行はリンクも minify も通さず、書いたソースをそのまま実行しているためです。
タブを離れると自動で止まります
タブが隠れて30秒経つと Lua VM の実行を止め、戻ってきたら再開します。 モバイルで電池を消費し続けるのを防ぐためです。- 止めるのは実行中のときだけです。ブレークポイントで止まっているときや、 自分で一時停止したものには触りません。
- 再開するのは自動で止めたものだけです。手で止めたものが勝手に動き出すことはありません。
- モニターは最後のフレームを残します。
- **同期は止まりません。**止まるのはこの端末の実行だけで、ワークスペースの内容ではありません。
- 戻ってきたときに1回だけ通知します (止まった瞬間は画面が見えていないため)。