On first-capable startup, download java-runtime-epsilon via the existing BMCLAPI-mirrored Mojang path when missing (progress dialog only; no prompt). Remove launcher April Fools prompts/settings/UI tags, the top-right task center page/button, dead NBT/April Fools images, and unused locale packs (ar/de/es/ja/ru/uk) to shrink the distributable.
239 lines
4.8 KiB
JSON
239 lines
4.8 KiB
JSON
{
|
|
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
"$id": "https://schemas.glavo.site/hmcl/launcher-settings/1.0.0",
|
|
"title": "HMCL Launcher Settings",
|
|
"type": "object",
|
|
"additionalProperties": true,
|
|
"required": [
|
|
"$schema"
|
|
],
|
|
"patternProperties": {
|
|
"^\\$schema$": {
|
|
"enum": [
|
|
"https://schemas.glavo.site/hmcl/launcher-settings/1.0.0"
|
|
]
|
|
}
|
|
},
|
|
"properties": {
|
|
"language": {
|
|
"type": "string"
|
|
},
|
|
"commonDirectoryType": {
|
|
"enum": [
|
|
"DEFAULT",
|
|
"CUSTOM"
|
|
]
|
|
},
|
|
"commonDirectory": {
|
|
"type": "string"
|
|
},
|
|
"logLines": {
|
|
"type": "integer"
|
|
},
|
|
"selectedTheme": {
|
|
"$ref": "#/$defs/themeSelection"
|
|
},
|
|
"themeAppearanceOverrides": {
|
|
"type": "array",
|
|
"items": {
|
|
"enum": [
|
|
"themeBrightnessMode",
|
|
"themeColor",
|
|
"themeColorStyle",
|
|
"titleBarTransparent",
|
|
"windowTransparent",
|
|
"background",
|
|
"backgroundOpacity"
|
|
]
|
|
},
|
|
"uniqueItems": true
|
|
},
|
|
"themeBrightnessMode": {
|
|
"type": "string"
|
|
},
|
|
"customThemeColor": true,
|
|
"themeColorType": {
|
|
"enum": [
|
|
"DEFAULT",
|
|
"CUSTOM",
|
|
"BACKGROUND"
|
|
]
|
|
},
|
|
"themeColorStyle": {
|
|
"enum": [
|
|
"TONAL_SPOT",
|
|
"FIDELITY",
|
|
"MONOCHROME",
|
|
"NEUTRAL",
|
|
"VIBRANT",
|
|
"EXPRESSIVE",
|
|
"CONTENT",
|
|
"RAINBOW",
|
|
"FRUIT_SALAD"
|
|
]
|
|
},
|
|
"titleBarTransparent": {
|
|
"type": "boolean"
|
|
},
|
|
"backgroundType": {
|
|
"enum": [
|
|
"DEFAULT",
|
|
"BUILTIN",
|
|
"CUSTOM",
|
|
"NETWORK",
|
|
"PAINT",
|
|
"THEME_COLOR"
|
|
]
|
|
},
|
|
"builtinBackgroundId": {
|
|
"type": "string"
|
|
},
|
|
"customBackgroundImagePath": {
|
|
"type": "string"
|
|
},
|
|
"networkBackgroundImageUrl": {
|
|
"type": "string"
|
|
},
|
|
"customBackgroundPaint": true,
|
|
"backgroundOpacity": {
|
|
"type": "number",
|
|
"minimum": 0,
|
|
"maximum": 1
|
|
},
|
|
"networkBackgroundImageCachePolicy": {
|
|
"enum": [
|
|
"ENABLED",
|
|
"DISABLED"
|
|
]
|
|
},
|
|
"backgroundFallbackType": {
|
|
"enum": [
|
|
"BUILTIN",
|
|
"PAINT",
|
|
"THEME_COLOR"
|
|
]
|
|
},
|
|
"backgroundFallbackPaint": true,
|
|
"backgroundLoadPolicy": {
|
|
"enum": [
|
|
"WAIT_FOR_BACKGROUND",
|
|
"SHOW_FALLBACK_WHILE_LOADING"
|
|
]
|
|
},
|
|
"logFontFamily": {
|
|
"type": "string"
|
|
},
|
|
"logFontSize": {
|
|
"type": "number"
|
|
},
|
|
"launcherFontFamily": {
|
|
"type": "string"
|
|
},
|
|
"windowTransparent": {
|
|
"type": "boolean"
|
|
},
|
|
"animationDisabled": {
|
|
"type": "boolean"
|
|
},
|
|
"autoDownloadThreads": {
|
|
"type": "boolean"
|
|
},
|
|
"downloadThreads": {
|
|
"type": "integer"
|
|
},
|
|
"versionListSource": {
|
|
"$ref": "#/$defs/downloadSource"
|
|
},
|
|
"fileDownloadSource": {
|
|
"$ref": "#/$defs/downloadSource"
|
|
},
|
|
"defaultAddonSource": {
|
|
"type": "string"
|
|
},
|
|
"hasProxyAuth": {
|
|
"type": "boolean"
|
|
},
|
|
"proxyType": {
|
|
"enum": [
|
|
"SYSTEM",
|
|
"DIRECT",
|
|
"HTTP",
|
|
"SOCKS"
|
|
]
|
|
},
|
|
"proxyHost": {
|
|
"type": "string"
|
|
},
|
|
"proxyPort": {
|
|
"type": "integer"
|
|
},
|
|
"proxyUser": {
|
|
"type": "string"
|
|
},
|
|
"proxyPassword": {
|
|
"type": "string"
|
|
},
|
|
"selectedGameDirectory": {
|
|
"$ref": "#/$defs/gameDirectoryID"
|
|
},
|
|
"defaultGameSettingsPreset": {
|
|
"$ref": "#/$defs/gameSettingsPresetID"
|
|
},
|
|
"selectedInstance": {
|
|
"type": "object",
|
|
"propertyNames": {
|
|
"$ref": "#/$defs/gameDirectoryID"
|
|
},
|
|
"additionalProperties": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"preferredLoginType": {
|
|
"type": "string"
|
|
},
|
|
"selectedAccount": {
|
|
"$ref": "#/$defs/accountID"
|
|
}
|
|
},
|
|
"$defs": {
|
|
"packageId": {
|
|
"type": "string",
|
|
"pattern": "^[A-Za-z0-9][A-Za-z0-9_-]*(\\.[A-Za-z0-9][A-Za-z0-9_-]*)*$"
|
|
},
|
|
"downloadSource": {
|
|
"enum": [
|
|
"DEFAULT",
|
|
"OFFICIAL",
|
|
"MIRROR"
|
|
]
|
|
},
|
|
"themeSelection": {
|
|
"type": "object",
|
|
"additionalProperties": true,
|
|
"required": [
|
|
"packId"
|
|
],
|
|
"properties": {
|
|
"packId": {
|
|
"$ref": "#/$defs/packageId"
|
|
},
|
|
"themeId": {
|
|
"$ref": "#/$defs/packageId"
|
|
}
|
|
}
|
|
},
|
|
"accountID": {
|
|
"type": "string",
|
|
"pattern": "^account:[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$"
|
|
},
|
|
"gameDirectoryID": {
|
|
"type": "string",
|
|
"pattern": "^game-directory:[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$"
|
|
},
|
|
"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}$"
|
|
}
|
|
}
|
|
}
|