Skip to main content

Configuration

JsonConfigStore reads and writes Config.json in the application directory. JSON properties use PascalCase and are read case-insensitively

Close the launcher before editing the file manually and preserve unrelated fields. The following fragment illustrates common preferences, not a complete replacement file:

{
"Language": "en-US",
"Theme": "dark",
"AccentColor": "blue",
"CloseAfterLaunch": false,
"UseCustomJava": false,
"JavaArguments": "-Xms2G -Xmx4G",
"GpuPreference": "auto",
"OnlineMode": false
}

Selection and authentication​

KeyDefaultMeaning
Version2.0.0Configuration schema version, not the launcher release
SelectedInstanceIdemptyCurrent instance ID
SelectedProfileIdemptyActive profile ID
OnlineModetrueUse a connected authentication service for local profiles
AuthDomainsessions.sanasol.wsConnected local-profile session service
AuthServers[]User-added authentication service domains available in Network settings
CurseForgeKeyemptyAPI key prepared during bootstrap when missing

Official profiles always use official authentication and do not show the Auth Server editor. For unofficial profiles, the Network settings list appears only while Connected mode is enabled. The built-in sessions.sanasol.ws entry is always listed; AuthServers stores additional user-added entries and AuthDomain stores the selected value. The desktop checks each listed server with the game-session authentication API and records no availability result in configuration. Local Node chooses a free port from 8443 to 9999 on 127.0.0.1; neither the address nor its per-launch port is stored in this file

Launch settings​

KeyDefaultMeaning
CloseAfterLaunchfalseClose Desktop after successful process start
UseCustomJavafalseUse the executable in CustomJavaPath
CustomJavaPathemptyPath to the Java executable
JavaArgumentsemptyExtra JVM arguments and UI-managed heap options
GpuPreferencededicatedAutomatic, legacy adapter type, or a specific adapter key
GameEnvironmentVariablesemptyNewline-separated KEY=VALUE assignments

GPU values include auto, legacy dedicated and integrated, or pci:<id> when available and an adapter name otherwise. Platform adapters translate the selection into supported launch overrides

Interface and storage​

KeyDefaultMeaning
Languageen-USUI culture
ThemedarkDesktop appearance: dark, light, or system; system follows the operating system
AccentColorbluePrimary action color: blue, cyan, green, yellow, orange, red, pink, purple, or slate
InstanceDirectoryemptyDefault instance root, or the HyprismLibrary path created inside the directory selected in Desktop
ShowAlphaModsfalseInclude alpha mod releases
LastExportPathemptyRemembered mod export destination
HasCompletedOnboardingfalseWhether first-run setup finished after a profile was created or official sign-in succeeded

Desktop shows the wizard when this flag is false and there are no existing profiles or instances. It checks for an enabled mirror when the player chooses an offline profile; a mirror skips the download-source warning.

When loading an older configuration, Desktop removes the unused music and Discord announcement preferences and dismissed announcement IDs. Other unknown properties remain available for future migrations.

Older configurations can contain a custom instance root outside HyprismLibrary. Desktop recognizes those paths when reading configuration. When moving from such a path, it copies recognized instance data and leaves the old directory in place. Desktop marks libraries it creates with .hyprism-library and only removes marked custom roots after a successful move.

Compatibility​

Profile names, UUIDs, and sessions belong in Profiles, not Config.json. Loading older data migrates Nick, UUID, Profiles, and ActiveProfileIndex into the profile store

Instances, VersionType, and SelectedVersion remain compatibility fields. PreferredMirror is obsolete and ignored; source selection is automatic

Environment overrides​

VariableScope
HYPRISM_DATAExisting directory used as the full application data root
XDG_DATA_HOMELinux default data root when HYPRISM_DATA is absent
HYPRISM_WIN32_COMPOSITIONWindows rendering diagnostic override, see performance
HYPRISM_DOCS_SCREENSHOTSOpt-in output directory for documentation captures

The managed launch also supplies Java, DualAuth, GPU, and local certificate variables to child processes. Those runtime values are not independent launcher settings

Source: Config

Edit this page on GitHub