Skip to content

Instantly share code, notes, and snippets.

@hazre
Created November 12, 2023 07:45
Show Gist options
  • Save hazre/04a94c06a7d96a880c5f18a2a761ddaf to your computer and use it in GitHub Desktop.
Save hazre/04a94c06a7d96a880c5f18a2a761ddaf to your computer and use it in GitHub Desktop.
{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"$schema": {
"type": "string",
"description": "The schema URL",
"default": "https://raw.githubusercontent.com/Yellow-Dog-Man/JSONSchemas/main/schemas/Config.schema.json"
},
"unsafeModeWhiteList": {
"type": "array",
"items": {
"type": "string"
},
"description": "List of items in Unsafe Mode Whitelist"
},
"inputs": {
"type": "object",
"properties": {
"triggerDeadZone": {
"type": "number",
"description": "Trigger Deadzone"
},
"axisDeadZone": {
"type": "number",
"description": "Axis Deadzone"
}
},
"description": "Input configuration"
},
"universeId": {
"type": "string",
"description": "Universe ID"
},
"proxy": {
"type": "object",
"properties": {
"autoDetect": {
"type": "boolean",
"description": "Auto Detect Proxy"
},
"localBypass": {
"type": "boolean",
"description": "Local Bypass"
},
"bypassDomains": {
"type": "array",
"items": {
"type": "string"
},
"description": "List of bypass domains"
},
"address": {
"type": "string",
"description": "Proxy Address"
},
"credentialStore": {
"type": "string",
"enum": [
"DefaultSystemCache",
"NetworkCache",
"UsernamePassword"
],
"description": "Credential Store Type"
},
"username": {
"type": "string",
"description": "Proxy Username"
},
"password": {
"type": "string",
"description": "Proxy Password"
}
},
"description": "Proxy configuration"
},
"autoStartWorlds": {
"type": "array",
"items": {
"type": "object",
"properties": {
"isEnabled": {
"type": "boolean",
"default": true,
"description": "Flag to indicate whether the world is enabled"
},
"sessionName": {
"type": "string",
"description": "Session name"
},
"customSessionId": {
"type": "string",
"description": "Custom session ID"
},
"description": {
"type": "string",
"description": "Description of the world"
},
"maxUsers": {
"type": "integer",
"default": 32,
"description": "Maximum number of users"
},
"accessLevel": {
"type": "string",
"enum": [
"Default",
"Public",
"Friend",
"Invite",
"Moderator"
],
"description": "Access level of the session"
},
"useCustomJoinVerifier": {
"type": "boolean",
"description": "Flag to indicate whether a custom join verifier is used"
},
"hideFromPublicListing": {
"type": "boolean",
"description": "Flag to hide the session from public listings"
},
"tags": {
"type": "array",
"items": {
"type": "string"
},
"description": "List of tags"
},
"mobileFriendly": {
"type": "boolean",
"description": "Flag to indicate mobile-friendliness"
},
"loadWorldURL": {
"type": "string",
"description": "URL to load the world from"
},
"loadWorldPresetName": {
"type": "string",
"description": "Name of the world preset to load"
},
"overrideCorrespondingWorldId": {
"type": "object",
"properties": {
"recordId": {
"type": "string",
"description": "Record ID"
},
"ownerId": {
"type": "string",
"description": "Owner ID"
}
},
"required": [
"recordId",
"ownerId"
],
"description": "Record ID to override corresponding world"
},
"forcePort": {
"type": "integer",
"description": "Force port for the world"
},
"keepOriginalRoles": {
"type": "boolean",
"description": "Flag to keep original roles"
},
"defaultUserRoles": {
"type": "object",
"additionalProperties": {
"type": "string"
},
"description": "Default user roles"
},
"roleCloudVariable": {
"type": "string",
"description": "Role cloud variable"
},
"allowUserCloudVariable": {
"type": "string",
"description": "Allow user cloud variable"
},
"denyUserCloudVariable": {
"type": "string",
"description": "Deny user cloud variable"
},
"requiredUserJoinCloudVariable": {
"type": "string",
"description": "Required user join cloud variable"
},
"requiredUserJoinCloudVariableDenyMessage": {
"type": "string",
"description": "Message for denying required user join"
},
"awayKickMinutes": {
"type": "number",
"default": -1.0,
"description": "Minutes to kick away users"
},
"parentSessionIds": {
"type": "array",
"items": {
"type": "string"
},
"description": "List of parent session IDs"
},
"autoInviteUsernames": {
"type": "array",
"items": {
"type": "string"
},
"description": "List of auto-invite usernames"
},
"autoInviteMessage": {
"type": "string",
"description": "Auto-invite message"
},
"saveAsOwner": {
"type": "string",
"enum": [
"None",
"Leader",
"Owner"
],
"description": "Save as owner type"
},
"autoRecover": {
"type": "boolean",
"default": true,
"description": "Flag to enable auto recovery"
},
"idleRestartInterval": {
"type": "number",
"default": -1.0,
"description": "Interval for idle restart"
},
"forcedRestartInterval": {
"type": "number",
"default": -1.0,
"description": "Interval for forced restart"
},
"saveOnExit": {
"type": "boolean",
"description": "Flag to save on exit"
},
"autoSaveInterval": {
"type": "number",
"default": -1.0,
"description": "Interval for auto-saving"
},
"autoSleep": {
"type": "boolean",
"default": true,
"description": "Flag to enable auto-sleep"
}
},
"required": [
"isEnabled",
"sessionName"
]
},
"description": "List of Auto Start Worlds"
},
"autoJoinSessions": {
"type": "array",
"items": {
"type": "object",
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "URL of the session"
},
"sessionId": {
"type": "string",
"description": "Session ID"
},
"lanOnly": {
"type": "boolean",
"description": "Indicates if the session is LAN-only"
},
"headlessOnly": {
"type": "boolean",
"description": "Indicates if the session is headless-only"
},
"onlyUniverseId": {
"type": "string",
"description": "Universe ID to join"
},
"autoFocus": {
"type": "boolean",
"description": "Auto-focus on the session (default: true)"
}
},
"required": [
"url",
"sessionId",
"lanOnly",
"headlessOnly",
"onlyUniverseId"
]
},
"description": "List of Auto Join Sessions"
},
"noUI": {
"type": "boolean",
"description": "Flag to indicate whether UI is disabled"
},
"disableDesktop": {
"type": "boolean",
"description": "Flag to indicate whether the desktop is disabled"
},
"pathWhitelist": {
"type": "array",
"items": {
"type": "string"
},
"description": "List of items in Path Whitelist"
}
},
"required": [
"$schema"
]
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment