Game Settings Configuration
Chunk #0
**Introduction**
In this page you’ll find…
- The basics of Game Settings
- Creating Overrides
**Table of Contents**
* * *
# Getting Started with Game Settings
Game Settings are the core of Game Server, and they are used to configure the game and distribute the settings to players using a set of Rules and Overrides.
# What are Game Settings?
Game Settings are the basic configurations required to configure the game, such as:
- Amount of initial coins
- Coin reward for winning the Daily Challenge
- Delay before hint animation
- Onboarding Decks
You can edit the settings using Game Server via Rules and Overrides, which we’ll explain below in this guide!
# What’s Base Config?
Base Config is the main configuration that includes all basic settings that are common for all users. Base Config, however, does **not** have rules enabled, and has a priority of zero by default.
You can access the Basic Config for each game by selecting your application, and navigating to Game Settings.
.gif?version=1&modificationDate=1656335401433&cacheVersion=1&api=v2&width=442&height=211)
Inside Base Config, you’ll find the basic game settings per application categorised under tabs. The number next to each tab title shows the amount of settings enabled in each category.
Base Config is editable, but if you want to send a specific set of values to a group of users, you’ll have to create an **Override**.
**Enabled and Disabled Fields**
All of the attributes in Game Settings can be enabled or disabled. In the page, there are two sections:
- **Enabled Fields:** when a field is enabled, it will send the setting to the client.
- **Disabled Fields:** if disabled, the setting will not be sent to the client.
To enable a field, click the **[green + button]**  and add your values. If a setting is enabled, but you’d like to disable it in your override, click the **[red - sign]** **.**

# What are Overrides?
Overrides are used to customise the game settings for specific user groups. Overrides will **only** be applied to a user if the user complies with a set of rules that you will set up to differentiate groups of users. However, if the 2 overrides apply to different settings, the user can receive both overrides depending on the rules defined in each of them.
## When should you use overrides?
Overrides are used when you want to send a different value from what it is established in Base Game for each setting. This means a user can receive settings both from Base Config and Overrides based on the rules you apply.
##
How does Game Server determine what to send to the client when a player starts a game?
1. Game Server determines the list of configs (Base and Overrides) that match a specific user and **sorts them by priority from lowest to highest.**
2. Set all enabled attributes from Base Config
3. Set/Rewrite the attributes from overrides started from lowest and ending with highest priority.
### **Which values would a player get in response?**
As the server sorts the configurations, the client will receive the attributes with higher priority first. If the attribute is disabled, then, Game Server moves onto the next attribute with higher priority.
Let’s use the table below as an example configuration. In this case, we have overrides that have rules which overlap or target identical segment of players. Taking that into consideration, the client will receive the settings in Override #2 as the have the highest priority for Attributes #1 and #2, but as the Attribute #3 is disabled, Game Server resorts to Override #1.
- Attribute 1 = 30 (from Override #2)
- Attribute 2 = “60” (from Override #2)
- Attribute 3 = 6.5 (from Override #1)
| | **Base Config** | **Override #1** | **Override #2** |
| **Priority** | **0** | **1** | **2** |
| **Attribute 1: Points for Placing** | 10 | 20 | 30 |
| **Attribute 2: Points for Combos** | _disabled_ | 50 | 60 |
| **Attribute 3: Points for Streaks** | 5.5 | 6.5 | _disabled_ |
Now let’s try the same with overrides that target the same segment of users but…
- There’s 3 overrides that have the same value.
- Overrides are disabled for an attribute.
- Some attributes are disabled in Base Config.
**Which values would a player get in response?**
- Attribute 1 from Override 3, because even though they all have the same value, override 3 has higher priority.
- Attribute 2 from Override 2, as it is disabled in Override 3, which has higher priority.
- Attribute 3 from Game Settings, as this attribute is disabled in all overrides, so Game Server will send the value configured in Base Config.
| | **Base Config** | **Override #1** | **Override #2** | **Override #3** |
| **Priority** | **0** | **1** | **2** | **3** |
| **Attribute 1: Points for Placing** | 20 | 20 | 20 | 20 |
| **Attribute 2: Points for Combos** | _disabled_ | 50 | 60 | _disabled_ |
| **Attribute 3: Points for Streaks** | 5.5 | _disabled_ | _disabled_ | _disabled_ |
### Example and Results of Settings Configuration
In the table below, you’ll find an example configuration to better visualise the results of your configurations:
| | **Configuration in Game Server** | **API response from Server** | **Result on Client** |
| --- | --- | --- | --- |
| **Base Config** |  | "settings": { "player_initial_balance": 2000, "catalogue_on": true, ... } |  .png?version=2&modificationDate=1658905707384&cacheVersion=1&api=v2&width=232&height=502) |
| **Override** |  | "settings": { "player_initial_balance": 15000, "catalogue_on": false, ... } |   |
* * *
Game Settings Configuration
Chunk #1
Creating an Override
1. To create an override, click the green **[New]** button.

**What does** _ **Override Used** _ **mean?**
_Override Used_ is a counter displays the number of times data from an override has been sent to a user within a 24-hour period, resetting at midnight UTC for accurate tracking every day.
2. Add a name, status, priority, availability (test/live), and labels (optional) to better track your configurations.

#### **About Override A/B Experiments Option**
Checking the box “Override A/B Experiments” enables overrides to bypass an ongoing A/B Experiment. This is useful in case or emergency, or if the experiment to be overridden cannot be cancelled due to long-term monitoring.
- This setting allows you to create overrides that have a higher priority than overrides with OFF toggle (no matter which priority has override with OFF toggle) OR any A/B experiment.
- Checking the box will move this new override to the top of the list, sorted separately from the rest of overrides and it will be highlighted with a different color to better distinguish it.
- If you uncheck the box, the override will be sorted according to its original priority.
Start At/End At are 2 **optional** fields allow you to create overrides that are scheduled to go live (ie. become active) in the future to avoid having to set the status of the override manually to Active. Please note, however, that when Game Server reaches the **End At** date, the system does **not** automatically revert the status of the override.
Below you’ll find a diagram that explains the logic for Start Date.

#### **What does priority and availability** _ **exactly** _ **mean?**
**What’s priority?**
Priority is the way used by Game Server to determine which configuration must be sent to the user in the first place.
Configurations are prioritised from **highest to lowest**. This means that a configuration with priority 5 is **higher** than one with priority 1.
**What’s availability?**
Availability is used in Game Server to separate the configurations used for test purposes from the configurations used for live configurations.
In Game Settings, you can select the availability of your configuration:
- **Test** : your config will be available only for **test devices**.
- **Live** : your config will be available for **all users**.
If you’re working in the **Staging** environment, **Live** will only send the configuration to test devices, and nothing will be push to Production and live players.
**IMPORTANT:** Game Server allows for a user to belong to different overrides, and the way they receive the settings depends on the rules established. When a user matches the rules for several configurations, the game server will send the one with higher priority. More details can be found [here](https://tripledotstudios.atlassian.net/wiki/spaces/KB/pages/2580021328/Game+Settings+Configuration#FAQ%3A-How-does-Game-Server-determine-what-to-send-to-the-client-when-they-start-a-game%3F).
3. Click the **[green + sign]** to enable the fields and edit the configurations for your override. The edited configurations will appear marked with a blue number next to each tab.

4. Add the relevant rules for your override. Rules are necessary to segment players and distribute the override to the, and target different sets of users depending on their attributes. Learn more about rules [in this guide](https://tripledotstudios.atlassian.net/l/cp/osgQ0TAC).
1. Once you’re done, click **[Save]** on the upper right corner and your override setup will be complete!
#### Notes and Settings Search Fields
This section allows you to optionally add contextual notes to your game settings and find a specific setting for easy traceability.
#### **Notes**
- A free-text field where you can write internal comments or explanations about this configuration.
#### **Find Setting**
- A searchable dropdown that lets you link the current configuration to an existing game setting.
- Start typing the name of a setting to filter or select from the list.

## Mass Updating, Searching, and Filtering Overrides and Game Settings
Game Server offers 2 options to search for settings and overrides.
- **Search** : search allows you to search for a setting and retrieve where it is being used.
- **Filter** : you can filter overrides by many different parameters:
-20230530-093454.gif?version=1&modificationDate=1685439325481&cacheVersion=1&api=v2&width=560&height=298)

You can also use the **[Mass Operations]** button to **change the status and the availability** of a group of entities at once.
.gif?version=1&modificationDate=1686046157822&cacheVersion=1&api=v2&width=340&height=181)
Mass Operations is also available in:
- Ads Configuration
- Activation Events
- Progression Events
- Scrapbooks
* * *
## Searching Game Settings
The Game Settings Fields Search interface allows to filter and locate specific game settings based on various metadata, such as creation date, status, and ownership.
### Filter Fields Overview
#### Created After
- Use this field to search for configurations created within a specific date range: Input a start date and/or end date.
#### Updated After
- Use this to filter configurations based on when they were last modified: Input a start date and/or end date.
#### Availability State
- Dropdown to filter configurations based on availability status: Test, or Live.
#### Status
- Filter by status of the configuration: Active, Inactive, Archived, Allocation Paused, Permanently Archived.
- Helps narrow results to relevant configuration stages.
#### Created by Me
- Checkbox to return only configurations created by your user account.
#### Include Permanently Archived Experiments
- Enable this to include configurations that were permanently archived and would normally be excluded from standard search.
#### Select Setting
- Dropdown to filter by a specific setting within the Game Settings system.
#### Clear Filters Button
- Click the Clear Filters button at the top to instantly reset all search fields to default, removing all filters.
* * *
# Archiving Game Settings
To archive Game Settings, follow the steps below:
1. In your game, navigate to Game Settings, and click **[Archived Settings]**
2. A new page will open where you’ll be able to see which settings have been already archived and their behaviour. To archive a new setting, click **[+Archive Setting]**
3. Click and select the setting you’d like to archive from the dropdown
4. Next, select the behaviour. There are 2 options:
5. When you’re done, click **[Save].** If the setting you’d like to archive is being used in any configuration, Game Server will display a pop-up screen which shows in which entities the setting is being used:


**Archiving Hardcoded Values**
Currently, Triple Tile and Solitaire Classic use some hardcoded values. These settings are **not** archivable.
Setting up A/B Experiments
Chunk #3
Which values will a player get if you set up A/B Experiments and Overrides?
In many cases, you’ll set up both A/B Experiments and Overrides in your game. **** , but as they are not the same type of entity, their priorities are different.
In the table below, you’ll see an example of a configuration with 2 A/B Experiments and 1 Override. The user will receive:
- Attribute #1 = 50 (from A/B experiment #2) as it has the highest priority
- Attribute #2 = “world” (from A/B experiment #1)
- Attribute #3 = 6.5 (from Override #1) as it has more priority compared to Base Config
| | **Base Config** | **Override #1** | **A/B experiment #1** | **A/B experiment #2** |
| --- | --- | --- | --- | --- |
| **Priority** | **0** | **1** | **1\*** | **2\*** |
| Attribute #1 | 10 | 20 | 40 | 50 |
| Attribute #2 | “test” | “hello” | “world” | not added |
| Attribute #3 | 5.5 | 6.5 | not added | not added |