Remote Configurations
GameAnalytics' Remote Configurations feature offers the ability to set up and tune values in your game's dashboard.
These values can be changed on the whim without needing to release a new version of the game.
The remote configs are a custom set of key-pair values.
Set up your Remote Configurations in the GameAnalytics dashboard.
Check the status
Remote Configurations may not be available immediately, as they need to be retrived from the server. The remote configurations may be populated later during the session.
Once the Remote Configurations have been downloaded, IsRemoteConfigsReady will return true.
- C++
- IAnalyticsProvider
- Blueprint
if(GameAnalytics->IsRemoteConfigsReady())
{
// your code here
}
Alternatively you can also wait for the RemoteConfigs to be populated:
while(!GameAnalytics->IsRemoteConfigsReady() || !Timeout)
{
// use a timeout to avoid blocking
if(Timeout > 1000)
break;
UpdateTimeout();
}
// use remote configs here
Not available inside the IAnalyticsProvider interface.

Remember the remote configs can be populated with an empty dictionary if the device is offline and there are no cached remote configs from a previous session.
Retrieving values from Remote Configurations
Once the remote configurations have been downloaded, you can start using them inside your game. GameAnalytics supports 2 types of remote configurations:
- string
- json object
You can either get individual values by their key or get all remote configurations as a json string and parse it yourself. To get values out of a populated Remote Config you can use the following methods:
- C++
- IAnalyticsProvider
- Blueprint
// retrieve a remote config as string with a fallback value
FString RemoteValue = GameAnalytics->GetRemoteConfigsValueAsString("my_remote_key", "default_value");
// retrieve a json object configuration
TSharedPtr<FJsonObject> RemoteJson = GameAnalytics->GetRemoteConfigsValueAsJSON("my_remote_json");
// get all remote configs as a valid json string
FString RemoteConfigsContent = GameAnalytics->GetRemoteConfigsContentAsString();
Not available inside the IAnalyticsProvider interface.
