Coda Platform Documentation

The Coda Developer Hub

Welcome to the Coda developer hub. You'll find comprehensive guides and documentation to help you start working with Coda as quickly as possible, as well as support if you get stuck. Let's jump right in!

Getting Started    Discussions

SDK Module: A/B Testing & Remote Configuration

You can use the Coda Platform to test configurations and also manage your game remotely

Coda SDK A/B Testing Module

Coda A/B Testing Module is responsible for handling remote configuration and A/B Testing procedures. We are currently fetching remote configuration and their default values that are available for the game from Coda Platform API. These configurations will be fetched when you link your Unity Project with your game from Coda SDK Settings / Developer Settings.

A/B Testing Variants

A/B Testing Module lets developers create custom A/B Testing variants. There are 5 primitive types that are supported as A/B Testing variants.

Entries on the upper side of the window show the already-defined variables, their types and their default values.
You can change Key, Type or Value of an existing entry or delete an entry altogether.

The lower part of the editor is used for introducing new variables.

Your changes will automatically be saved.

Boolean Variant

Value can be true or false.
You can fetch a boolean variant by calling GetBool(string variantKey) or you can check if a boolean variant key is defined by calling HasBool(string variantKey) functions.

Integer Variant

Value can be any integer value.
You can fetch an integer variant by calling GetInt(string variantKey) or you can check if an integer variant key is defined by calling HasInt(string variantKey) functions.

Float Variant

Value can be any float value.
You can fetch a float variant by calling GetFloat(string variantKey) or you can check if a float variant key is defined by calling HasFloat(string variantKey) functions.

Long Variant

Value can be any long value.
You can fetch a long variant by calling GetLong(string variantKey) or you can check if a long variant key is defined by calling HasLong(string variantKey) functions.

String Variant

Value can be any string text.
You can fetch a string variant by calling GetString(string variantKey) or you can check if a string variant key is defined by calling HasString(string variantKey) functions.

There are 17 default A/B Testing variants that are already defined for your project and they are being used by the Coda SDK Modules.

In order to change variant values or run A/B testing experiments on variants from Firebase Remote service, all of the A/B Testing variants (customs and the ones that are coming with Coda SDK by default) have to be declared with exact same key on the Firebase Remote Dashboard as well. If they are not created they will have the default value that is defined in Unity Editor/ Coda SDK Settings / Advanced Settings / AB Testing Module.

Full List of Predefined Remote Configs on Coda SDK

Below you'll find all the remote configs that are available to Coda Platform developers

Variant Name & TypeKey & DefinitionDefault ValueExample Setting
Skip After Rewarded (Boolean)skipAfterRewarded:
When set to true interstitial ads will not be shown after a level where user has watched a rewarded Ad.
truetrue/false
if you set this value to false interstitial ads will not be skipped in a level where player watches a rewarded ad.
This value will be used internally by the Advertisement Module ShowInterstitialAd() function as an ad ruleset.
Skip Interstitial Below Progress (Float)skipInterstitialBelowProgress:
Set a value between 0 to 1 where 0 means start of the level and 1 means end of the level in terms of progress. This value will determine if showing of an interstitial ad should be skipped when user fails the level below this progress ratio.
0.0f0.0f to 1.0f
if you set this value to 0.5, Interstitial ads will only be shown if user passes half of the level.
This value will be used internally by the Advertisement Module ShowInterstitialAd() function as an ad ruleset.
Max Interstitial Per Session (Integer)maxInterstitialPerSession:
Maximum number of interstitial that a player can see in one session. A session ends if player closes or pauses the game for more than 10 minutes.
100000 to Max integer value
if you set this value to 40 there will be maximum of 40 interstitial ads will be shown to a user in one session.
This value will be used internally by the Advertisement Module ShowInterstitialAd() function as an ad ruleset.
Max Interstitials Per Day (Integer)maxInterstitialsPerDay:
Maximum number of interstitial that a player can see in one day.
100000 to Max integer value
if you set this value to 40 there will be maximum of 40 interstitial ads will be shown to a user in one day.
This value will be used internally by the Advertisement Module ShowInterstitialAd() function as an ad ruleset.
Interstitial Ad Frequency (Integer)interstitialAdFrequency:
This number indicates the number of core game cycles that are needed to show an Interstitial ad.
00 to Max integer value
Setting this value to 2 means we will skip showing interstitial ads for next 2 levels after player sees an interstitial ad.
This value will be used internally by the Advertisement Module ShowInterstitialAd() function as an ad ruleset.
Interstitial After Level (Integer)interstitialAfterLevel:
This number indicates after which level Interstitial ads will become available.
00 to Max integer value
Set this value to 5 to start seeing interstitial after level 5.
This value will be used internally by the Advertisement Module ShowInterstitialAd() function as an ad ruleset.
Seconds Before First Interstitial (Integer)secondsBeforeFirstInterstitial:
This number indicates how many seconds Coda SDK will wait before being able to show first interstitial of the current session.
250 to Max integer value
Settings this number to 5 means we will show first interstitial if 5 seconds passed after the session start.
This value will be used internally by the Advertisement Module ShowInterstitialAd() function as an ad ruleset.
Seconds Before First Interstitial First Session (Integer)secondsBeforeFirstInterstitialFirstSession:
This number indicates how many seconds Coda SDK will wait before being able to show first ever interstitial for the game.
250 to Max integer value
Settings this number to 5 means we will show first ever interstitial if 5 seconds passed after the first run of the game.
This value will be used internally by the Advertisement Module ShowInterstitialAd() function as an ad ruleset.
Seconds Needed For Next Interstitial (Integer)secondsNeededForNextInterstitial:
This number indicates how many seconds that player will not be seeing another interstitial after seeing one.
250 to Max integer value
Settings this number to 25 means player will not be seeing any interstitial for the next 25 seconds.
This value will be used internally by the Advertisement Module ShowInterstitialAd() function as an ad ruleset.
Seconds Before Loading First Interstitial (Integer)secondsBeforeLoadingFirstInterstitial:
This number indicates how many seconds Coda SDK will wait before requesting the first interstitial of the session from Mopub.
50 to Max integer value
Settings this number to 10 means first interstitial video ad of a session will be requested to download 10 seconds after player opens the game.
This value will be used internally by the Advertisement Module ShowInterstitialAd() function as an ad ruleset.
Seconds Before Loading Next Interstitial (Integer)secondsBeforeLoadingNextInterstitial:
This number indicates how many seconds Coda SDK will wait before requesting another interstitial from Mopub after user sees the previous one in a session.
50 to Max integer value
Settings this number to 10 means an interstitial video ad will be requested to download 10 seconds after player sees one.
This value will be used internally by the Advertisement Module ShowInterstitialAd() function as an ad ruleset.
Seconds Before Loading First Rewarded (Integer)secondsBeforeLoadingFirstRewarded:
This number indicates how many seconds Coda SDK will wait before requesting the first rewarded ad of the session from Mopub.
50 to Max integer value
Settings this number to 10 means first rewarded video ad of a session will be requested to download 10 seconds after player opens the game.
This value will be used internally by the Advertisement Module ShowInterstitialAd() function as an ad ruleset.
Seconds Before Loading Next Rewarded (Integer)secondsBeforeLoadingNextRewarded:
This number indicates how many seconds Coda SDK will wait before requesting another rewarded ad from Mopub after user sees the previous one in a session.
50 to Max integer value
Settings this number to 10 means a rewarded video ad will be requested to download 10 seconds after player sees one.
This value will be used internally by the Advertisement Module ShowInterstitialAd() function as an ad ruleset.
Too Many Ad Count Rewarded Ad (Integer)tooManyAdCountRewardedAd:
This number indicates how many rewarded ads a user must see in a session to be labelled as this user has seen too many rewarded ads.
200 to Max integer value
Settings this value 250 means a player has to watch 250 rewarded ads to be labeled as this player has seen too many ads in a session.
This value will be used internally for ad targeting.
Too Many Ad Count Interstitial Ad (Integer)tooManyAdCountInterstitialAd:
This number indicates how many interstitial ads a user must see in a session to be labelled as this user has seen too many interstitial ads.
200 to Max integer value
Settings this value 250 means a player has to watch 250 interstitial ads to be labeled as this player has seen too many ads in a session.This value will be used internally for ad targeting.
Too Many Ad Count Banner Ad (Integer)tooManyAdCountBannerAd:
This number indicates how many banner ads a user must see in a session to be labelled as this user has seen too many banner ads.
500 to Max integer value
Settings this value 250 means a player has to watch 250 banner ads to be labeled as this player has seen too many ads in a session.
This value will be used internally for ad targeting.
Delay Seconds After Level Fail (float)delaySecondsAfterLevelFail:
This number is used to decide whether an interstitial ad should be delayed after a level fail. If the seconds between an interstitial is triggered and the last level fail before that is less than this number, the interstitial will be delayed.
00 to Max float value
Setting this number to 50 means we will show interstitial after a level fail, if 50 seconds passed since the last fail.
Excluded Levels (String)excludedLevels:
This value is a comma separated level indices which should be skipped. Note that this variant is not being handled internally by Coda SDK. You can fetch the value inside your level building code and skip level if it is included in this list.
"""5, 16, 21"
When you set this value like this you get the value wherever you load the level and skip the level 5, 16 and 21.

Updated 28 days ago


What's Next

Implement custom remote configurations

Custom Remote Configurations

SDK Module: A/B Testing & Remote Configuration


You can use the Coda Platform to test configurations and also manage your game remotely

Suggested Edits are limited on API Reference Pages

You can only suggest edits to Markdown body content, but not to the API spec.