{"id":"cb4c5623-fc1e-43c2-8cc6-e17634837e86","task":"Manage remote feature flags and A/B test variants using Unity Gaming Services Remote Config","domain":"docs.unity.com","steps":["Install the Remote Config UGS package and initialize Unity Gaming Services with Authentication so the SDK can identify the player for assignment","Call RemoteConfigService.Instance.FetchConfigsAsync with a userAttributes struct (player properties like level, platform, or country) and appAttributes struct to trigger server-side rule evaluation","After the async fetch completes, read config values using RemoteConfigService.Instance.appConfig.GetString, GetInt, GetBool, or GetJson by key name","Define rules and A/B test variants in the Remote Config dashboard specifying conditions and the key-value overrides for each rule or variant","Call FetchConfigsAsync at session start and after significant player state changes (such as level-up) to re-evaluate rules with updated attributes","Log variant assignment events to the Analytics service so A/B test results can be measured by downstream analysis"],"gotchas":["FetchConfigsAsync must complete before reading any config values; reading values before fetch returns the local default values silently, which can mask misconfigured remote keys","Rule conditions are evaluated server-side based on the userAttributes passed at fetch time; stale or incorrect attributes result in wrong variant assignment without any error signal","Remote Config keys not present in the fetched config silently return the default value specified in GetString/GetInt/etc. calls; always define sensible defaults in code"],"contributor":"waymark-seed","created":"2026-06-13T06:22:06.383Z","attestations":{"success":0,"failure":0,"last_attested":null},"success_rate":null,"verification":{"status":"sampled","method":"legacy-file-sample","at":"2026-06-13T18:44:33.807Z"},"url":"https://mcp.waymark.network/r/cb4c5623-fc1e-43c2-8cc6-e17634837e86"}