Permanent Overrides allow you to conditionally set in-game Catalog definitions based on Player Segmentation properties. For example turning on or off certain game features based on Player location for legal reasons, serving different assets based on device type, and many more.
Unlike A/B Tests a Player can be assigned to multiple Permanent Overrides at any one time. A Permanent Override is either available or unavailable for assignment, and together with Segmentation Criteria matching will depend if the Player will be assigned for each session.
Players are assigned to Permanent Override Campaigns upon login and initial creation. A player is assigned a Campaign for the duration of their session, that is the duration of the ConnectAccessToken. Assignment will occur again at the next login event, at which point a additional Campaigns may be assigned, and existing ones unassigned.
A Player playing on two devices, a phone and a tablet will possess independent sessions for each device. The Campaigns assigned to each device may differ. For example in-game assets could be implemented by two Permanent Override Campaigns one containing Overrides with phone assets, and another with tablet assets.
A Cloud Code script can be run as the result of a Player action, Match Started, API Event, etc, or through the Scripting API asPlayer method. Like all sessions these perform a Campaign assignment event, however as they are not a device session, a notable difference is that these sessions will not have the session-start segmentation parameters available to them (device type, platform, etc).
To create a new Permanent Override in ChilliConnect, select top level the Live Ops menu option followed by the Overrides option. Use the "Add Permanent Override" button in the top right to bring up the form.
The details tab captures basic configuration information for the Campaign, including the name, description and initial status.
|Name||A descriptive name for the Permanent Override|
|Key||A unique Key that will be used to refer to the Permanent Override in API calls|
|Description||Optional additional text that can be used to capture more information about this Permanent Override|
|Status||The initial status that the Permanent Override will be created with. Note: if on it we immediately be available for assignment.|
The segments tab allows you to filter the Permanent Override to specific groups of players. For more details see our Segmentation guide.
Overrides allow you to easily define changes to the Catalog. Items can be added, removed and updated. Overrides are automatically applied for Players when retrieving the item definitions or downloading the Catalog package file. This means that no additional logic is required in your game to support overrides.
ChilliConnect will compute any possible conflicts with the Overrides and existing Campaign Overrides. If conflicts are found you will be presented with options on prioritising the Campaigns.
More details on Campaign prioritisation.
Custom Data allows you to define arbitrary, free-form JSON to be attached to the Permanent Override definition. This JSON can be retrieved at run time from your game via the GetActiveCampaigns call, providing a convenient place to add any small, extra data to the Campaign.
All Permanent Overrides are displayed in the dashboard. Filters in the top right of the screen can be used to show only those in the specific state.
Details of a specific Permanent Override can be viewed by selecting the Permanent Override from the list.
The edit button in the top right of the Permanent Override page can be used to modify the Campaign. Campaign metadata, segmentation criteria, prioritisation and custom data can be modified. Due to the Campaign possibly being in use in current sessions it is not possible to modify Overrides.
A Permanent Override is either in the On or Off State, this refers to it's availability for Player assignment. Note: turning a Permanent Override Off will stop it being available for assignment, but Player sessions with the Campaign already applied will continue for their duration.