249 lines
5.3 KiB
JSON
249 lines
5.3 KiB
JSON
{
|
|
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
"$id": "https://schemas.glavo.site/hmcl/game-settings/1.0.1",
|
|
"title": "HMCL Game Settings Presets",
|
|
"type": "object",
|
|
"additionalProperties": true,
|
|
"required": [
|
|
"$schema"
|
|
],
|
|
"patternProperties": {
|
|
"^\\$schema$": {
|
|
"enum": [
|
|
"https://schemas.glavo.site/hmcl/game-settings/1.0.1"
|
|
]
|
|
}
|
|
},
|
|
"properties": {
|
|
"presets": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/$defs/preset"
|
|
}
|
|
}
|
|
},
|
|
"$defs": {
|
|
"preset": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/gameSettings"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": true,
|
|
"required": [
|
|
"id"
|
|
],
|
|
"properties": {
|
|
"id": {
|
|
"$ref": "#/$defs/gameSettingsPresetID"
|
|
},
|
|
"name": {
|
|
"$ref": "#/$defs/localizedText"
|
|
},
|
|
"autoNameNumber": {
|
|
"type": "integer",
|
|
"minimum": 1
|
|
},
|
|
"defaultIsolationType": {
|
|
"enum": [
|
|
"NEVER",
|
|
"ALWAYS",
|
|
"MODDED"
|
|
]
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"gameSettings": {
|
|
"type": "object",
|
|
"additionalProperties": true,
|
|
"properties": {
|
|
"javaType": {
|
|
"enum": [
|
|
"AUTO",
|
|
"VERSION",
|
|
"DETECTED",
|
|
"CUSTOM"
|
|
]
|
|
},
|
|
"customJavaVersion": {
|
|
"type": "string"
|
|
},
|
|
"customJavaPath": {
|
|
"type": "string"
|
|
},
|
|
"detectedJava": {
|
|
"type": "object",
|
|
"additionalProperties": true,
|
|
"properties": {
|
|
"version": {
|
|
"type": "string"
|
|
},
|
|
"pathHash": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"notUseJavaw": {
|
|
"type": "boolean"
|
|
},
|
|
"jvmOptions": {
|
|
"type": "string"
|
|
},
|
|
"noJVMOptions": {
|
|
"type": "boolean"
|
|
},
|
|
"noOptimizingJVMOptions": {
|
|
"type": "boolean"
|
|
},
|
|
"notCheckJVM": {
|
|
"type": "boolean"
|
|
},
|
|
"notCheckGame": {
|
|
"type": "boolean"
|
|
},
|
|
"autoMemory": {
|
|
"type": "boolean"
|
|
},
|
|
"minMemory": {
|
|
"type": "integer"
|
|
},
|
|
"maxMemory": {
|
|
"type": "integer"
|
|
},
|
|
"permSize": {
|
|
"type": "string"
|
|
},
|
|
"windowType": {
|
|
"enum": [
|
|
"WINDOWED",
|
|
"FULLSCREEN",
|
|
"MAXIMIZED"
|
|
]
|
|
},
|
|
"width": {
|
|
"type": "number"
|
|
},
|
|
"height": {
|
|
"type": "number"
|
|
},
|
|
"runningDirectory": {
|
|
"type": "string"
|
|
},
|
|
"processPriority": {
|
|
"enum": [
|
|
"LOW",
|
|
"BELOW_NORMAL",
|
|
"NORMAL",
|
|
"ABOVE_NORMAL",
|
|
"HIGH"
|
|
]
|
|
},
|
|
"launcherVisibility": {
|
|
"enum": [
|
|
"CLOSE",
|
|
"HIDE",
|
|
"KEEP",
|
|
"HIDE_AND_REOPEN"
|
|
]
|
|
},
|
|
"allowAutoAgent": {
|
|
"type": "boolean"
|
|
},
|
|
"disableAutoGameOptions": {
|
|
"type": "boolean"
|
|
},
|
|
"gameArguments": {
|
|
"type": "string"
|
|
},
|
|
"graphicsBackend": {
|
|
"enum": [
|
|
"DEFAULT",
|
|
"OPENGL",
|
|
"VULKAN"
|
|
]
|
|
},
|
|
"openGLRenderer": {
|
|
"type": "string"
|
|
},
|
|
"vulkanRenderer": {
|
|
"type": "string"
|
|
},
|
|
"highPerformance": {
|
|
"type": "boolean"
|
|
},
|
|
"environmentVariables": {
|
|
"type": "string"
|
|
},
|
|
"commandWrapper": {
|
|
"type": "string"
|
|
},
|
|
"preLaunchCommand": {
|
|
"type": "string"
|
|
},
|
|
"postExitCommand": {
|
|
"type": "string"
|
|
},
|
|
"quickPlay": {
|
|
"enum": [
|
|
"NONE",
|
|
"MULTIPLAYER",
|
|
"SINGLEPLAYER",
|
|
"REALMS"
|
|
]
|
|
},
|
|
"quickPlayMultiplayer": {
|
|
"type": "string"
|
|
},
|
|
"quickPlaySingleplayer": {
|
|
"type": "string"
|
|
},
|
|
"quickPlayRealms": {
|
|
"type": "string"
|
|
},
|
|
"showLogs": {
|
|
"type": "boolean"
|
|
},
|
|
"enableDebugLogOutput": {
|
|
"type": "boolean"
|
|
},
|
|
"notPatchNatives": {
|
|
"type": "boolean"
|
|
},
|
|
"useCustomNatives": {
|
|
"type": "boolean"
|
|
},
|
|
"nativesDirectory": {
|
|
"type": "string"
|
|
},
|
|
"useNativeGLFW": {
|
|
"type": "boolean"
|
|
},
|
|
"useNativeOpenAL": {
|
|
"type": "boolean"
|
|
}
|
|
}
|
|
},
|
|
"gameSettingsPresetID": {
|
|
"type": "string",
|
|
"pattern": "^game-settings-preset:[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$"
|
|
},
|
|
"localizedText": {
|
|
"oneOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"minProperties": 1,
|
|
"additionalProperties": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|