ロブロックス(Roblox)でスクリプトが動かないときの確認手順|出力の見方・print・置き場所を画像で解説

制作手順難易度: 入門所要時間: 約30分(目安)情報確認日: 2026年10月5日

「AIに書いてもらったスクリプトを入れたのに、何も起きない」「赤い文字が出ているけど、どこを直せばいいか分からない」

ロブロックス(Roblox)スタジオでスクリプトが動かないときの確認手順を、実際の画像付きで誰でも簡単に分かるように解説します。動かない原因は、「出力のメッセージ」「どこまで動いたか」「置き場所と種類」の3つを順番に見ると、ほとんど見つけられます。

入門ステップ6/24 前の記事:ロブロックス(Roblox)スクリプトの作り方 全体の順番を見る

使うもの:Roblox Studioが起動するパソコン、動かないスクリプトが入った作品。スクリプトの入れ方はスクリプトの作り方で解説しています。

症状から最初に見るところを選ぶ

症状最初に見るところ
何も起きず、出力にも何も出ないスクリプトが無効になっていないか、置き場所、テストのやり方
赤い文字が出る赤い文字の内容と、何行目か
オレンジ色の「Infinite yield possible」が出るコードのWaitForChild(部品が出てくるまで待つ命令)で、部品を待ち続けているときに出る警告。待っている部品の名前と場所が、エクスプローラと合っているか(手順2と同じ考え方)
メッセージは出るのに見た目が変わらない変えている部品が正しいか(printで確かめる)

直す前に、今の作品を残しておきます。3D画面上部メニューの「ファイル」を押し、「ファイルに保存」(赤い枠)を押してパソコンに保存しておきます。こうしておくと、直している途中でおかしくなっても戻せるので安心です。画像の赤い枠が「次に押す場所」で、画像を押すと大きく表示できます。ボタンの名前や置き場所は、Roblox側の更新で変わることがあります。

1. 出力を開いて、メッセージを隠していないか確かめる

出力は、スクリプトからのメッセージやエラーが出る場所です。画面の下に見当たらないときは、3D画面上部メニューの「ウィンドウ」を押し、一覧から「出力」(赤い枠)を押します。

出力の左上には、出すメッセージを選ぶ2つの絞り込みがあります。左の「すべてのメッセージ」を押すと、エラー・警告・情報などのチェックが出ます(赤い枠)。ここでエラーのチェックが外れていると、赤い文字が出ていても見えません。

右の「すべてのコンテキスト」では、クライアント(状態を見せてもらい、操作を送る側)とサーバー(ゲームの正しい状態を持っている側)のどちらのメッセージを出すかを選べます。迷ったら、全部にチェックが入った状態にしておきます。

2. 赤いエラーを読む

練習として、わざとエラーを出してみましょう。練習は自分の作品とは別に行います。Studioのホーム画面の左の「テンプレート」から「Baseplate」を選び、新しいBaseplateを開きます。

まず、部品を入れるフォルダーを作ります。エクスプローラの「Workspace」にマウスを乗せて、右に出る「+」を押し、一覧から「Folder」を押します。

エクスプローラにできた「Folder」を選んでF2キーを押し、名前を「Stage」に変えます。

次に、エクスプローラの「Stage」にマウスを乗せて、右に出る「+」を押し、一覧から「Part」を押します。Stageの中にPartが入ります。

エクスプローラにできた「Part」を選んでF2キーを押し、名前を「ColorPart」に変えます。板の大きさと位置は、この練習では決めなくてかまいません。

ColorPartを選んだまま、3D画面上部メニューの「ホーム」タブにある「色」ボタン(「素材」ボタンの右)のすぐ右にある小さな矢印を押して色の一覧を開き、濃い青の「Really blue(真っ青)」を選びます。そのあと「色」ボタンのアイコン本体を押すと、板が青くなります。

最後に、エクスプローラの「ServerScriptService」にマウスを乗せて「+」を押し、一覧から「Script」を押します。できた「Script」を選んでF2キーを押し、名前を「ColorCheck」に変えます。Stageの中のColorPart(画像の1)と、ServerScriptServiceの中のColorCheck(画像の2)が、次の画像のように並べば準備は完了です。

エクスプローラのColorCheckをダブルクリックして開き、中身を全部消して、次のコードを貼り付けます。

print("A: 処理を開始", script:GetFullName())
local part = workspace.ColorPart
print("B: 対象を取得できた")
part.Color = Color3.fromRGB(255, 0, 0)
print("C: 変更の処理を通過した")

コードの「print(プリント)」は、出力に文字を出す命令です。「A」「B」「C」の目印を処理の前後に入れておくと、どの目印まで出たかで、どこで止まったかが分かります。

3D画面の上の作品のタブ「Place1」を押して3D画面に戻り、F5キーでテストを始めます(タブの名前はパソコンによって違います)。出力に次のように出ます(赤い枠)。

出力分かること
A: 処理を開始 ServerScriptService.ColorCheckスクリプトは動き始めている
ColorPart is not a valid member of Workspace "Workspace"「Workspaceのすぐ下にColorPartがない」というエラー
ColorCheck:2ColorCheckの2行目で止まった
Bが出ていない2行目より先には進んでいない

エクスプローラで見ると、ColorPartはWorkspaceのすぐ下ではなく、「Stage」フォルダーの中にあります(赤い枠)。名前は合っていても、場所が違うのが原因です。

3. 直して、A・B・Cが全部出るか確かめる

Shift + F5キーでテストを停止します。画面左上の赤い四角の「停止」(赤い枠)を押しても止まります。

3D画面の上の「ColorCheck」のタブを押し、中身を全部消して、2行目を「workspace.Stage.ColorPart」に直した次のコードを貼り付けます。

print("A: 処理を開始", script:GetFullName())
local part = workspace.Stage.ColorPart
print("B: 対象を取得できた")
part.Color = Color3.fromRGB(255, 0, 0)
print("C: 変更の処理を通過した")

3D画面の上の作品のタブ「Place1」を押して3D画面に戻り、F5キーでテストを始めます(タブの名前はパソコンによって違います)。A・B・Cの3つが出て、板が赤くなります(赤い枠)。

どこまで出たか次に調べるところ
Aも出ないスクリプトが動いていない(下の手順4・5・6)
Aだけ出るAとBの間(部品を探す行)
AとBが出るBとCの間(色を変える行)
全部出るのに見た目が変わらない別の部品を変えていないか、ほかのスクリプトが元に戻していないか

この記事の練習では、このあとの手順4〜6でもColorCheckのA・B・Cを使うのでprintは残したまま進めます。自分のスクリプトでは、調べ終わったら目印のprintは消しておきます。たくさん残っていると、大事なメッセージが探しにくくなります。

4. LocalScriptの置き場所を確かめる

何も出ないときは、スクリプトの置き場所を疑ってください。特に、遊ぶ人の画面で動く「LocalScript」は、置ける場所が決まっていて、それ以外に置いても動きません。

試しに、同じLocalScriptを、エクスプローラの「ReplicatedStorage」と「StarterPlayerScripts」の2か所に置いて比べます。

Shift + F5キーでテストを停止します。エクスプローラの「ReplicatedStorage」にマウスを乗せて「+」を押し、一覧の上の検索欄に「LocalScript」と入れて「LocalScript」を押します。

できた「LocalScript」を選んでF2キーを押し、名前を「HelloLocal」に変えます。HelloLocalをダブルクリックして開き、中身を全部消して、次の1行を貼り付けます。出力に、そのスクリプトがどこで動いたかを出す1行です。

print("LocalScriptが動きました", script:GetFullName())

次に、StarterPlayerScriptsにも入れます。StarterPlayerScriptsは、エクスプローラの「StarterPlayer」の中にあります。「StarterPlayer」の左の三角を押して開きます。

エクスプローラの「StarterPlayerScripts」にマウスを乗せて「+」を押し、一覧の上の検索欄に「LocalScript」と入れて「LocalScript」を押します。

StarterPlayerScriptsの中にできた「LocalScript」を選んでF2キーを押し、名前を「HelloLocal」に変えます。

StarterPlayerScriptsの中のHelloLocalをダブルクリックして開き、中身を全部消して、次の1行を貼り付けます。ReplicatedStorageに入れたものと同じ1行です。

print("LocalScriptが動きました", script:GetFullName())

2か所に「HelloLocal」が入れば準備は完了です。

3D画面の上の作品のタブ「Place1」を押して3D画面に戻り、F5キーでテストを始めます(タブの名前はパソコンによって違います)。LocalScriptの行は1行だけ出ます(赤い枠)。上の3行は、手順3のColorCheckが出したものです。行の中の「PlayerScripts」は、StarterPlayerScriptsに置いた方が動いたという意味です。ReplicatedStorageに置いた方は動いていません。

スクリプトの種類動く主な置き場所
Script(RunContextが最初の「Legacy」のまま)ServerScriptService、Workspaceの中(Workspaceの部品の中でも動くが、Robloxの公式の説明ではおすすめしていない)
LocalScriptStarterPlayerScripts、StarterCharacterScripts、StarterGui、StarterPackの中
ModuleScript置いただけでは動かない。ほかのスクリプトから呼んで使う

RunContextは、スクリプトをサーバーとプレイヤーの画面のどちらで動かすかを決めるプロパティです。「+」で入れたScriptは、最初は「Legacy」になっています。この記事のColorCheckも「Legacy」のまま変えずに動かしています。

5. 「テスト」と「実行」を間違えていないか

Studioの窓の左上で、青い再生ボタンの左にある「テスト」の右の「∨」を押すと、テストのやり方を選べます。「実行」(赤い枠)が選ばれていると、アバターを出さずにゲームを動かします。違いを確かめるために、Shift + F5キーでテストを停止してから、「∨」を押して「実行」を選びます。

「テスト」の文字が「実行」に変わったら、その右の青い三角のボタンを押して動かします。実行では、アバターが出てこず、遊ぶ人の画面で動くLocalScriptも動きません。下の画像では、サーバーで動くColorCheckのA・B・Cは出ていますが、HelloLocalの行は出ていません。プレイヤーが触れたときの仕掛けや、画面のボタンを試すときは、必ず「テスト」を選びます。

確かめたら、Shift + F5キーで停止します(画面左上の赤い四角の「停止」を押しても止まります)。そのあと「実行」の右の「∨」を押し、一覧から「テスト」を選んで元に戻します。戻さないと、このあとのテストでもアバターが出ず、LocalScriptも動きません。

6. スクリプトが無効になっていないか

スクリプトには、動かすかどうかを決める「Enabled」というプロパティがあります。エクスプローラの「ColorCheck」を選んだ状態で、プロパティの検索欄に「Enabled」と入力します。最初はチェックが入っています。試しに、このチェックを押して外します。チェックが外れていると(赤い枠)、そのスクリプトは動きません。

3D画面の上の作品のタブ「Place1」を押して3D画面に戻り、F5キーでテストを始めます(タブの名前はパソコンによって違います)。無効になったスクリプトは、タブの名前の前に「[Disabled]」と付きます。そのスクリプトのメッセージは出力に出ません。下の画像では、出力に出ているのはHelloLocalの1行だけで、ColorCheckのA・B・Cは出ず、板も青いままです。AIに頼んだり、ツールボックスのモデルを入れたりしたあとに、知らないうちに無効になっていることもあります。

確かめたら、Shift + F5キーでテストを停止します。エクスプローラの「ColorCheck」を選んだまま、プロパティの「Enabled」のチェックを押して、もう一度チェックを入れて戻します。

AIに相談するときの伝え方

ここまで確かめた内容をまとめて伝えると、AIも原因を見つけやすくなります。

Roblox Studioのスクリプトが思ったとおりに動きません。直し方を教えてください。
・期待した動き:(例)テストを始めると板が赤くなる
・実際の動き:(例)板が青いまま
・スクリプトの種類と置き場所:(例)ServerScriptServiceの中のScript、RunContextは最初のLegacyのまま
・どこまでprintが出たか:(例)Aだけ出た
・出力のメッセージ:(赤い文字をそのまま貼る)
・コード全文:(ここに貼る)
まず確かめることを1つ教えてから、直したコードを示してください。

よくある質問

自分の画面では動くのに、ほかの人には見えないのはなぜ?

LocalScriptで部品を変えると、その変化は自分の画面にしか出ません。全員に見せたい変化は、サーバーで動くScriptで行います。2人で確かめる方法はオビーの作り方の手順8で紹介しています。

テストを止めたら、直したはずのところが元に戻った

テスト中にエクスプローラやプロパティを変えても、止めると元に戻る仕組みです。直すときは、必ずテストを止めてから変えます。

次のステップ(入門 7/24)

次は、足場を渡ってゴールを目指すオビーを作ります。

→ ロブロックス(Roblox)でオビーを作る方法

次に知りたいことを選ぶ

次に読む記事