Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Operating Roblox Studio for game development — the visual editor in which the 3D scene is built, tested, and published. Use this skill for: Studio basics (Explorer, Workspace, play-test, saving the place as .rbxl), the interplay with Rojo (Connect, scene-vs-code mode), AI control of Studio via the Roblox-Studio-MCP (execute_luau, insert_from_creator_store, generate_material, screen_capture, Play/Stop, reading the Console), the complete asset-pipeline workflow (Creator Store → clean up → kit → sc
| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-02 | ✗→✓ | ▲ Improved | 95% | 0% |
| case-03 | ✗→✓ | ▲ Improved | 70% | 0% |
| case-04 | ✗→✓ | ▲ Improved | 120% | 0% |
| case-13 | ✗→✓ | ▲ Improved | 53% | 0% |
| case-14 | ✗→✓ | ▲ Improved | 70% | 0% |
<img src="banner.png" width="100%" alt="rbx-studio banner">
> Deutsch — Offizielle Deutsch-Version / Documento Oficial en Deutsch.
> Note: Not affiliated with Roblox Corporation; "Roblox" is a trademark of its owners. "rbx" is the common community shorthand.
Roblox Studio is the official editor: build the 3D scene, test the game in play mode, insert assets from the Creator Store, and publish the place. In a Rojo workflow, Studio owns the scene (Workspace, Terrain, placed models) and the testing — the code comes via Rojo from the filesystem (see skill /rojo).
This skill covers: Studio basics, the clean separation of scene and code work, AI control via the Roblox-Studio-MCP, and the asset workflow including the mandatory malware scan for every marketplace asset.
With Rojo active, the mapped areas are populated live from the filesystem.
After every start, check the Output console for errors — the most important debug reflex.
.rbxl (binary) or .rbxlx (XML, diffable).The saved place contains the scene. Code lives in the filesystem, not in the place.
On Connect, Rojo overwrites all mapped script areas with the filesystem content. The Workspace (3D scene) is not mapped and stays intact. From this follows the most important rule of daily work — never mix the two modes:
Mode A — edit the scene (Rojo OFF):
taskkill //F //IM rojo.exe or Ctrl+C)..rbxl now holds the new scene.Mode B — test the code (Rojo ON):
rojo serve → in Studio's Rojo plugin → Connect..rbxl..rbxl).This way, scene work (Studio) and code work (editor + Rojo) can run in parallel and conflict-free — artists build scenes, developers write code.
The Roblox-Studio-MCP lets Claude/Gemini/Codex directly control a running Studio instance: execute code, inspect, Play/Stop, read the Console, insert assets. It does not replace Rojo — it complements it: Rojo for persistent code changes, MCP for inspection, tests, asset insertion, and material generation.
Editor + Rojo ──(persistenter Code-Sync)──► Studio (laufend) ◄──(Inspektion/Test/Insert)── MCP ◄── KI| Tool | Purpose | | --- | --- | | list_roblox_studios / set_active_studio | list open instances / select the active one | | search_game_tree / inspect_instance | search the hierarchy / read properties | | execute_luau | execute Luau code directly in Studio | | script_read / script_grep / script_search | analyze scripts | | multi_edit | change multiple instances/scripts in a batch | | start_stop_play | control Play/Stop | | get_console_output | read the Output log | | screen_capture | screenshot of the scene | | insert_from_creator_store | insert an asset from the Creator Store | | generate_material | generate an AI material/texture (MaterialVariant) | | character_navigation / user_keyboard_input / user_mouse_input | simulate input |
The MCP runs as a server shipped with Studio, often connected via a thin JSON-filter wrapper (it filters out non-JSON banners that some clients otherwise cannot parse):
%LOCALAPPDATA%\Roblox\mcp.bat<your roblox-mcp wrapper>(if present on this system; shared by Claude/Codex/Gemini)
~/.claude/mcp.json · ~/.codex/config.toml · ~/.gemini/antigravity/mcp_config.jsonExample entry (~/.claude/mcp.json):
json{ "mcpServers": { "Roblox_Studio": { "command": "node", "args": ["<your roblox-mcp wrapper>", "cmd.exe", "/c", "%LOCALAPPDATA%\\Roblox\\mcp.bat"] } } }
| Symptom | Meaning / fix | | --- | --- | | studios: [] or Not connected to WS host | not immediately "broken": send initialize → wait 2–3 s → list_roblox_studios; otherwise restart Studio | | Error: connection closed: initialized request | Studio is not open at all — start Studio, load the place, try again | | scripts written via MCP gone after Play/Stop | MCP edits to code are not persistent — for lasting code changes use Rojo | | value via require() in the plugin VM is wrong | the plugin VM has its own require cache — to verify, read .Source directly or check the server log after Play |
Greybox first (gameplay), assets later (before release). The proven sequence:
STORE DURCHSUCHEN → z. B. "medieval" → mehrere Kandidaten laden
AUSSORTIEREN → stilfremde/hässliche raus, 5–8 passende behalten
BEREINIGEN → ALLE Scripts entfernen (Malware!), nur Geometrie/Meshes behalten
KIT / SET BAUEN → aus Basis-Assets Varianten ableiten (gleiche Materials/Proportionen)
SZENE BAUEN (Studio)→ Assets zur Kulisse zusammensetzen (Dorf, Arena, Park)
ALS .RBXL SPEICHERN → die Kulisse ist die "Bühne"
ROJO BELEBT ES → Scripts/Gameplay/HUD kommen per Rojo dazu; Workspace bleibt unangetastetVariant technique ("modular kit"): Take a good base asset and derive a whole set from it (house → tower, barn, smithy, ruin). They all share materials, colors, and proportions → a consistent look with minimal effort, the way pro studios do it.
Asset sources (priority): Creator Store (free, huge, malware check mandatory) → AI materials (generate_material) → your own meshes (Blender → .fbx) → purchased asset packs.
Creator Store assets can contain obfuscated malicious scripts (backdoors, remote code, bot-network hooks). Scan every imported asset before use and remove all scripts — keep only geometry/meshes.
references/malware-patterns.md — the 8known obfuscation patterns (reversed attribute payload, fake system script, remote require(), loadstring, string.char, getfenv/setfenv, hidden Values, delayed execution).
scripts/scan_asset_malware.luau — run it in Studio viaexecute_luau (or the Command Bar); it checks an instance against all patterns and reports finds.
Red flags immediately: a large script in a pure decoration model · reversed strings in attributes · require(<number>) · loadstring · HttpService in an asset that needs no networking. When in doubt: delete the script. Document finds (e.g. _malware_reports/YYYY-MM-DD_*.md in the reference pipeline).
The most common ones that bite in Studio — the full list is kept by the skill /rbx-dev:
Model.Position does not exist → model:GetPivot().Position.tick() is deprecated → os.clock() / workspace:GetServerTimeNow().SetPrimaryPartCFrame() deprecated → model:PivotTo(cf).pcall.or raise the floor by +0.1 studs.
/rojo (sync, project setup), /game-design (roles, workflows, GDD),meta skill /rbx-dev (architecture patterns + all Luau lessons).
/websites/create_roblox_reference_engine,/roblox/creator-docs) or <https://create.roblox.com/docs>.
<your Roblox project pipeline>(ROBLOX_MCP_FAQ.md, ASSET_PIPELINE.md, _malware_reports/PATTERNS.md).
.ROBLOX pipeline (ROBLOX_MCP_FAQ, ASSET_PIPELINE,PATTERNS, LESSONS_LEARNED), written user-neutral.
Other measured skills in the registry, with their headline benchmark lift.