Live Config
Live Config lets operators publish structured configuration for Roblox games without shipping a new Roblox build.
What Live Config manages
- Studio and Production environments
- Profiles
- Draft values
- Published versions
- Public and private visibility
- Import/export
- Runtime preview
- Environment comparison
- History and rollback
Main workflow
- Open a game.
- Enable Live Config.
- Open Configs.
- Select the environment: Studio or Production.
- Select or create a profile.
- Edit config in flow, tree, or raw JSON mode.
- Mark sensitive paths private.
- Preview runtime output.
- Publish.
Example config
{
"event": {
"enabled": true,
"name": "Lucky Weekend",
"startsAt": "2026-05-08T18:00:00.000Z",
"endsAt": "2026-05-10T22:00:00.000Z"
},
"economy": {
"coinMultiplier": 2,
"rareDropBoost": 1.25
},
"ui": {
"bannerText": "Lucky Weekend is live!"
}
}Editor modes
| Mode | Best for |
|---|---|
| Flow | Visual editing and inspecting variable relationships |
| Tree | Structured editing with individual paths |
| Raw JSON | Fast edits, imports, and engineer review |
Public vs private example
Public:
{
"event": {
"enabled": true,
"name": "Lucky Weekend"
}
}Private:
{
"economy": {
"serverRewardCap": 5000,
"adminDropRate": 0.02
}
}Publishing
Publishing creates an active runtime version. Runtime endpoints serve only published versions, not drafts.
Before publishing:
- Review the diff.
- Preview the runtime payload.
- Confirm the environment.
- Confirm the profile.
- Publish all changes or selected paths.
Rollback
Use rollback when a published version causes a production issue.
- Open history.
- Select the last known good publish.
- Review the diff.
- Roll back the profile.
- Confirm Roblox servers receive the expected runtime payload.
Roblox server example
local HttpService = game:GetService("HttpService")
local url = "https://api-rocontrol.duckdns.org/runtime/projects/PROJECT_ID/config?environment=production&visibility=client"
local response = HttpService:GetAsync(url)
local payload = HttpService:JSONDecode(response)
local Config = payload.config
if Config.event and Config.event.enabled then
print("Event is live:", Config.event.name)
end