Skip to content

Loadouts and Game Versions

A GameRoot can contain multiple game builds and named loadouts. Launcher-owned selection state is stored separately from the client identity.

  • The Launcher’s OS application-data Anomaly/launcher.json stores GameRoot, active loadout, and the highest accepted signed official-core version used for anti-downgrade enforcement. It is under Windows %APPDATA% on Windows and native application data for a native Linux Launcher.
  • GameRoot/loadouts/<name>/loadout.json stores that loadout’s game version and mod selections.
  • The selected game’s MelonLoader UserData/Anomaly/user.json stores client-owned nickname and identity data.
  • The Launcher never uses user.json as ongoing storage for GameRoot or loadout state.
GameRoot/
+-- games/<gameVersion>/
+-- mods-cache/<package>-<version>/
+-- loadouts/<name>/
| +-- loadout.json
| +-- local/
| +-- runtime/
+-- wineprefixes/<loadout>/ native Linux launcher

The runtime view contains the effective Mods, UserLibs, Plugins, UserData, and Anomaly managed-module files for one launch. Local files are layered into that view under the development audit policy. Only install files you trust with full process access.

Official Anomaly core tracking is on by default. When no local development core is present, tracking resolves the latest compatible signed package and verifies its full dependency closure; an explicit older entry cannot pin it. Tracking may be disabled only when the loadout pins exactly one signed official version. Missing, incompatible, unsigned, downgraded, or modified official core blocks an official-package launch. A local Anomaly.Client.dll in local/Mods/ selects the local development workflow regardless of tracking.

The selected core declares Anomaly SupportedGameVersion 14.2.7^. This accepts 14.2.7 and later 14.2 releases, but not earlier versions or 14.3.0 and later.

Each loadout uses GameRoot/wineprefixes/<loadout>/ for its Windows protection context. The client profile itself lives under the active game’s MelonLoader UserData/Anomaly directory. Moving UserData to another Wine prefix can make DPAPI-protected identity material unreadable; the client preserves an unreadable profile and fails closed.

Put trusted Melon mods in local/Mods, shared dependencies in local/UserLibs, and managed modules in local/UserData/Anomaly/Modules with their sidecars. See Local and Dev Mods and Managed Modules.

Continue to Compatibility.