{
 "schema": "aiblocks-page/1",
 "id": "agency-roblox-systems-scripter",
 "type": "agent",
 "name": "Roblox systems programmer",
 "summary": "Plan a Roblox game system in Luau with a server and client split, safe RemoteEvents and DataStore saves that do not lose player data.",
 "headline": "Roblox systems programmer",
 "subhead": "Tell it what your Roblox game system should do, or paste your scripts. It decides what the server owns and what the player's screen only shows. You get a RemoteEvent map, a save plan, a script layout and a security check.",
 "job": {
  "id": "build-software",
  "name": "Build and ship software"
 },
 "level": "intermediate",
 "thinking": "high",
 "tested": true,
 "updated": "2026-11-03",
 "first_published": "2026-10-26",
 "inputs": [
  {
   "type": "question",
   "required": true,
   "label": "Question",
   "what": "the problem, decision or piece of work you want help with, and what a good outcome looks like"
  },
  {
   "type": "codebase",
   "required": false,
   "label": "Codebase",
   "what": "a project's code, in a folder or repo the AI can open"
  },
  {
   "type": "plan",
   "required": false,
   "label": "Plan",
   "what": "a dated plan: what to do, in what order, with a decision rule for each step"
  }
 ],
 "outputs": [
  {
   "type": "plan",
   "required": true,
   "label": "Plan",
   "what": "a dated plan: what to do, in what order, with a decision rule for each step"
  },
  {
   "type": "audit_report",
   "required": true,
   "label": "Audit report",
   "what": "findings with evidence, severity, missing inputs and next actions"
  }
 ],
 "you_give": [
  "What the system should do, in a few plain sentences",
  "Your scripts or folder list, if the game already exists (optional)",
  "What must be saved for each player, such as coins, level or items",
  "Any problem you have seen, such as lost data or players cheating (optional)"
 ],
 "you_get": [
  "A list of what the server owns and what the client only shows",
  "A map of every RemoteEvent, with the checks the server must make",
  "A save plan with retries and a save on shutdown",
  "A script layout with ModuleScripts",
  "A security review of each server handler, and a test list"
 ],
 "use_when": [
  "You are building a shop, combat, inventory, round or points system and want the structure right before you write it.",
  "Players lose coins or items when they leave, and you suspect your saving.",
  "You think a client could cheat by firing your RemoteEvents with fake values.",
  "Your scripts have grown messy and you want them split into ModuleScripts."
 ],
 "skip_when": [
  "You want to design the game itself, such as goals, rewards and levels. Use the Roblox Experience Designer agent.",
  "You are making avatar items, such as hats and clothes. Use the Roblox avatar designer.",
  "You need a bug fixed in a live game right now. Test any fix in Studio first."
 ],
 "output_sample": {
  "input": [
   "What your system should do, in plain sentences",
   "Your existing scripts or folder list (optional)",
   "What must be saved for each player",
   "Any bug or cheat you have seen (optional)"
  ],
  "prerequisites": [
   "Roblox Studio, to build and test what the agent plans"
  ],
  "output": [
   {
    "name": "Authority split",
    "contains": "What the server owns and what the client only shows."
   },
   {
    "name": "Remote map",
    "contains": "Each RemoteEvent with its direction, its payload and the checks the server must make."
   },
   {
    "name": "DataStore plan",
    "contains": "Keys, default data, retry rule, and when data saves, including on shutdown."
   },
   {
    "name": "Module layout",
    "contains": "Folders and ModuleScripts, each with one job, and a start-up script that only wires them."
   },
   {
    "name": "Starter Luau",
    "contains": "Short code for the main module, marked untested. Only if you ask for it."
   },
   {
    "name": "Security review",
    "contains": "For each server handler, what a cheater could send and how to stop it."
   },
   {
    "name": "Tests to run",
    "contains": "Tests for fake input, fast joins and leaves, and server shutdown."
   }
  ]
 },
 "output_shape": "AUTHORITY SPLIT\n  Server owns: <list> | Client shows: <list>\n\nREMOTE MAP\n  <remote name> | <direction> | <what it carries> | <checks the server makes>\n\nDATASTORE PLAN\n  <key> | <default data> | <load failure plan> | <when it saves> | <retry rule>\n\nMODULE LAYOUT\n  <folder> > <ModuleScript> | <its one job>\n\nSTARTER LUAU (only if you asked)\n  <short code block, marked untested>\n\nSECURITY REVIEW\n  <handler> | <what a cheater could send> | <fix>\n\nTESTS TO RUN\n  <test> | <expected result>\n\nOPEN QUESTIONS\n  <what is missing or must be checked on the Roblox docs>",
 "how_to_use": [
  "Download the pack and add it to your AI as a skill. If you cannot, paste SKILL.md and then references/source-agent.md into a new chat.",
  "Describe the system. If you have scripts, paste them. Say what must be saved.",
  "Say \"Plan this first. Give me starter Luau only if I ask.\" Your AI asks once for anything missing.",
  "Read the RemoteEvent map first. For each row, ask what a cheater could send. Fix any row where the answer is \"anything\".",
  "Build in Roblox Studio. Run the tests from the list, including a player leaving mid-save.",
  "Paste your results or errors back and ask for a re-check."
 ],
 "checks": [
  "The result addresses your actual task and cites the evidence used.",
  "Examples, role-play experience and targets are kept separate from verified results.",
  "Claims of tests, memory, tool access or completed actions match what actually happened."
 ],
 "next": [
  {
   "name": "README and decision interviewer",
   "url": "https://useaiblocks.com/skills/readme-and-decision-interviewer",
   "why": "Build it"
  },
  {
   "name": "vLLM model server setup planner",
   "url": "https://useaiblocks.com/skills/vllm-model-server-setup",
   "why": "Build it"
  }
 ],
 "source": {
  "by": "Michael Sitarzewski and Agency Agents contributors",
  "repo": "msitarzewski/agency-agents",
  "url": "https://github.com/msitarzewski/agency-agents/blob/b37b5bb33b78f2c1d6567d98e25ca818e3259219/game-development/roblox-studio/roblox-systems-scripter.md",
  "licence": "MIT",
  "original_name": "Roblox Systems Scripter",
  "commit": "b37b5bb33b78f2c1d6567d98e25ca818e3259219"
 },
 "credits": [
  {
   "title": "Roblox Systems Scripter",
   "by": "Michael Sitarzewski and Agency Agents contributors",
   "url": "https://github.com/msitarzewski/agency-agents/blob/b37b5bb33b78f2c1d6567d98e25ca818e3259219/game-development/roblox-studio/roblox-systems-scripter.md",
   "used": "Original agent profile, preserved in references/source-agent.md; AI Blocks adds setup and review instructions."
  },
  {
   "title": "AI Blocks catalogue guidance",
   "by": "AI Blocks",
   "url": "https://useaiblocks.com",
   "used": "We added Before you start and After this sections that link to other AI Blocks steps. We refreshed those generated sections from the catalogue inputs and next-step links."
  }
 ],
 "files": [
  "LICENSE",
  "references/source-agent.md",
  "SETUP.md",
  "source.json"
 ],
 "links": {
  "page": "https://useaiblocks.com/agents/agency-roblox-systems-scripter",
  "markdown": "https://useaiblocks.com/agents/agency-roblox-systems-scripter.md",
  "json": "https://useaiblocks.com/agents/agency-roblox-systems-scripter.json",
  "instructions": "https://useaiblocks.com/skills/agency-roblox-systems-scripter/SKILL.md",
  "download": "https://useaiblocks.com/skills/agency-roblox-systems-scripter.zip",
  "api_item": "https://useaiblocks.com/api/v1/items/agency-roblox-systems-scripter",
  "api_document": "https://useaiblocks.com/api/v1/documents/agent/agency-roblox-systems-scripter",
  "mcp": "https://useaiblocks.com/mcp"
 }
}
