ChilliConnect offers powerful tools that allow you to dynamically alter your game's Catalog applied to players dependant on complex segmentation criteria. Campaigns are perfect if you're looking to send different in-game assets to iOS than Android players, toggle country specific features, or run tests to optimise retention and conversion, and many others.
There are two types of Live Ops Campaign; AB Tests, and Permanent Overrides. AB Tests are designed for running optimisations on groups of players, recording and analysing the affect on KPI metrics, before you roll changes to your whole player base. Permanent Overrides apply a set of Overrides to a Player if they match the Segmentation criteria, making it super easy to send different assets to different classes of device for example.
The general workflow for Campaigns is the same. A player is assigned Campaigns based on matching Campaign Criteria and Player Segmentation properties. Once assigned, the Campaign Overrides are layered on top of the base Catalog definitions to form the definitions that the Player receives in-game. For a simple setup it could be that a couple of sets of definitions are in use for an entire player-base, equally more complex systems could see hundreds of Override combinations, all of which ChilliConnect handles seamlessly for you.
Campaigns are assigned to a Player primarily on login, and the set of assignments holds constant for the duration of their Session. This way the Catalog definitions can be downloaded and cached on the device, and interactions with the server will be consistent.
Catalog definitions are the combination of the Campaign Overrides layered on top of the base Catalog. Definition conflicts and priority are handled at Campaign creation time.
A/B Testing allows you to run experiments on your game to find out what particular features or configurations of your game are most effective. A Player can be assigned to one A/B Test. A/B Tests have multiple test groups that each have their own set of Overrides, a Player is assigned a test group when being assigned to the test. The definitions applied to the Player can continue after the A/B Test by use of the Sticky feature. For more details check our A/B Testing guide.
Permanent Overrides allows you to have conditional Catalog definitions applied to players based on their Segmentation properties, such as platform, device type, and others. A Player can be assigned to multiple Permanent Override Campaigns, this assignment is recalculated for each session, meaning phone assets could apply to a mobile session, tablet for a tablet session, for the same player. For more details check our Permanent Override guide
The segments tab allows you to filter a Campaign to specific players only. By default, the Campaign will match all players and segment criteria must be specified by selecting the check box next to each category. To be included in a Campaign, a player must match at least one criteria in all categories.
|Location||The location of players to take part in this test. Locations can be inclusive ("Only players in these countries") or exclusive ("Every player apart from those in these countries")|
|Device Types||Device Types that are to be included in this test. Player must have at least one of the selected device types to be included. For example, a player that has recorded both iOS and Android would be included in an Android only test and an iOS only test, regardless of what device they are currently logging in with.|
|Platforms||What device platforms should be included in the test. As with Device Types, it is important to remember that a player who has matched against any platform previously will be included - the check is not limited to the device the player is currently logged in with. This is to ensure data consistency for the player if they are playing on multiple devices.|
|Device Model||Device Models to be included in the test. This is provided free form so rather than specific models being selected, one or more patterns can be defined. Like other categories, the player just needs to match at least one pattern. So to include Samsung and LG devices, you could add 2 separate criteria for
Overrides allow you to easily define changes to the Catalog. Items can be added, removed and updated. Overrides are automatically applied for Players based in their assigned Campaigns 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. For a detailed example, see our A/B Testing tutorial
Items can be added to the list by clicking on the Add Override button, clicking on the type of the item and then clicking on the item name.
Items can be edited by clicking the text in the table for the item you want to change and the group you want to change it for.
Changes to the catalog can be viewed by clicking the Diff button below the test. This will open a dialog with two JSON representations of your catalog. The one on the left is the original and the one on the right is with the overrides applied.
Two Campaigns are in conflict if they have an override for the same Catalog item. As you can imagine layering multiple sets of Overrides there is the possibility that some of those Overrides may conflict with one another. When a set of Overrides is created (usually on Campaign creation) ChilliConnect calculates a list of these conflicts. This list is presented in the Prioritisation tab.
Campaigns are assigned in the order defined in the Prioritisation list. Where conflicts occur the first Campaign will take precedence and subsequent conflicting Campaigns will not be assigned. For example, two Permanent Overrides A and B conflict on a definition. Permanent Override A is prioritised above B. For players that meet the criteria for both Campaigns will be assigned A and not B.
This conflict behaviour applies between different types of Campaigns equally. However an A/B Test will only be considered for assignment if the Player isn't already assigned to an A/B Test. Assignments continue down the prioritisation list following a conflict, observing the same conflict resolution behaviour for any additional conflicts detected.