Chunks Used in Chat #1

3 chunks from 3 documents

Configuring Embedded Machine Learning Models in Game Server
Chunk #0
Nov 06, 2025
**Introduction** In this page, you’ll learn… - To create a new embedded machine learning model - To use the models in Ads Configuration **Table of Contents** * * * ## **Overview** This guide explains how to configure Embedded ML models in Game Server so the client can download a model and its metadata, and fetch features from your app. * * * ## Create a New Embedded ML Model Use Embedded ML models to publish a client-downloadable model plus its metadata and feature-service key. In Game Server, you’ll create a model entry with a clear name/labels, then provide URLs for the model file. Once saved, the client reads these values via the documented keys and can fetch, cache, and run the model locally. The flow below walks you through creating a model, required fields, and basic validations. 1. Navigate to ML: Embedded ML models and click [**+New**]. 2. Fill **Name** : Specify a unique name. 3. Add **Labels** : Optional tags to group/find models. 4. Fill Settings (all mandatory unless noted): 5. **Save**. The Feature service is a key that tells the backend which feature service to use. - Calls are made to the base URL configured in Edit Application → Feast host endpoint (Endpoint URL). The feature service key is then passed to that endpoint to select the specific service (the host can expose multiple feature services). - If the Feast host endpoint is not set, the Feature service key cannot be resolved and the feature lookup will fail. Set the host endpoint first, then provide the Feature service key. ![image-20251104-162738.png](https://tripledotstudios.atlassian.net/wiki/download/thumbnails/4548263939/image-20251104-162738.png?version=1&modificationDate=1762273664276&cacheVersion=1&api=v2&width=1076&height=639) * * * ## Use the **Embedded ML model** in Ads Config (Ad Frequency) This section explains how to start using an Embedded ML model and what it currently does. **What this model does (purpose)** - Current purpose: Replaces the manual Frequency restriction setting in Ads Config with a model-driven ad frequency decision (computed on device from the embedded model). - Future: We may extend Embedded ML to other ad decisions, but today it affects only frequency restriction. **Where to enable it** Game Server → Ads → Ads Config → _Embedded ML Config_ ![image-20251104-113104.png](https://tripledotstudios.atlassian.net/wiki/download/thumbnails/4548263939/image-20251104-113104.png?version=1&modificationDate=1762255879234&cacheVersion=1&api=v2&width=1136&height=76) - Select the Embedded ML model you created (or choose “None” to disable). **Behaviour & precedence** - When Embedded ML Config is set, the model’s output determines ad frequency. - Setting Embedded ML Config = None reverts to manual frequency restriction. * * * ## Edit, Duplicate, Delete - Edit: Open a model: change fields: Save. - Duplicate: From the list view, use Duplicate to create a copy. - Delete: Removes the configuration (cannot be undone). Only do this if no client build depends on it. * * *
Configuring Game-Specific 3rd Party Machine Learning Models in Game Server
Chunk #0
Nov 06, 2025
**Introduction** In this page, you’ll learn… - To create a game-specific 3rd-party machine learning model - To use the models in game settings **Table of Contents** * * * ## **Overview** This guide explains how to configure game-specific 3rd-party machine learning models in Game Server so the client can download a model and its metadata, and fetch features from your app. * * * ## Creating a New Game-Specific 3rd-Party Machine Learning Model This section shows how to create and manage a Game-Specific 3rd-Party ML Model in Game Server, configure its inference endpoint, and set request parameters the client will send when calling your model. This feature is **not available in all games**. Refer to this section **only if your application supports Game-Specific 3rd-Party ML models** and you have an active inference endpoint. Perform the following steps to create a new classic ML model: 1. Navigate to ML: ML models and click [**+New**]. 2. Fill Name: Specify a unique name. 3. Type: Choose between the options: Classic or Journey. Available settings depend on the Type. If you’re using an endpoint for classic, select Classic and configure its settings. 4. Add Labels: Optional tags to group/find models. 5. Add the Endpoint _(required)_: The HTTPS URL the server will call to obtain predictions. 6. Specify the Model request parameters: These flags and values control what the model should compute/return. They are sent along with the request. Enable only what your model supports: | **Setting** | **Classic** | **Journey** | **Description** | | --- | --- | --- | --- | | **Number to configs to return** | ✓ | ✓ | Integer count of configuration candidates to return. | | **ML for All Shapes Placeable enabled** | – | ✓ | Only return configurations where _all shapes are placeable_ (Journey constraint). | | **ML for Perfect Fit enabled** | ✓ | ✓ | Ask for a “perfect-fit” option (tightest match to player/context). | | **ML for Complementary fit enabled** | ✓ | ✓ | Request an option that complements recent player behaviour. | | **ML for Terminator enabled** | ✓ | ✓ | Include a fail-safe/“terminator” option to fall back to. | | **ML for Seeds** | ✓ | – | Return deterministic seed values (Classic only). | | **ML for Figure sets** | ✓ | – | Return figure-set–aware configurations. | 1. Click Save. * * * ## Select an ML Model in **Game Settings** This section tells the client which model to use and how many recent events it must send so the model can produce a prediction. **Where to set it** Game Server → Game Settings: - ML Model for Classic - ML Model for Journey **Fields** | **Block** | **Field** | **What it does** | **Notes** | | --- | --- | --- | --- | | Classic / Journey | **ML configuration ID** | Pick the ML Model you created earlier. Selecting a model sends a boolean to the client indicating that ML is enabled and which configuration to use. | Choose None to disable ML for this game. | | Classic | **Number of events for ML model** | How many of the latest Game End events the client should send to Game Server for the model to analyse. | Must be a positive integer. | | Journey | **Max number of game end events for ML model** | Same as above, but for the Journey flow. | Must be a positive integer. | > **Validation tips** > > - Leaving ML configuration ID as None means ML is off for the client. > > - Event count 0 disables sending events. * * * ## End-to-end flow (what happens after you save) 1. Config to client: - Game Server sends down: 1. Client collects events: - After the defined client trigger (e.g., _game win_ or _game start_), the client sends the latest N Game End events to Game Server. 1. Server → ML endpoint - Game Server forwards those events to the selected ML Model’s endpoint together with the request parameters you configured in the ML Model (e.g., number of configs to return, perfect/complementary fit, terminator, seeds/figure sets, etc.). 1. ML inference - The ML service returns results based on the chosen ML configuration (Classic or Journey). 1. Results to client - Game Server returns the model’s result to the client, which then applies the recommended configuration. * * *
Setting up A/B Experiments
Chunk #5
Nov 06, 2025
Labels in A/B Experiments You can use labels to organise and manage A/B Experiments in Game Server easily.  Labels will help you categorise your experiments and you can use the search and filter functions to find them by group. ### Labels Overview On the left side panel of Game Server, you’ll find a section called **Labels**. Under this page, you can visualise the existing labels, edit them, search by label, or create new ones. ![](https://tripledotstudios.atlassian.net/wiki/download/thumbnails/2581889051/image-20230905-150515.png?version=1&modificationDate=1693926319224&cacheVersion=1&api=v2&width=690&height=244) ### Creating a new Label To create a new label, click the **[+New]** button on the upper right side of the screen. Type in the name of your label and select its color. You can use either RGB or HEX for the color selection. Under type, there are 2 options available: - **Admin:** Admin labels are used to organise and categorise entities **internally** in Game Server. - **Analytics Filter:** Analytics Labels are **synchronised** with Snowflake and **Looker** , and can be used to filter dashboards with results for all of the experiments that have that label. ![](https://tripledotstudios.atlassian.net/wiki/download/attachments/2581889051/image-20230619-081118.png?version=1&modificationDate=1687162283422&cacheVersion=1&api=v2) Once you’re done, click **[Confirm]**. Your new label will appear on the Labels Page. You can edit it by using the blue edit button under Actions. You can also delete it using the red delete button. ![](https://tripledotstudios.atlassian.net/wiki/download/thumbnails/2581889051/image-20230619-081624.png?version=1&modificationDate=1687162589126&cacheVersion=1&api=v2&width=340&height=197) ### Using your label in a Experiment To use your label in your experiments, navigate to A/B Experiments. When you’re creating a new experiment or editing an existing one, you’ll be able to select one or multiple labels from the existing labels. Select your label and click **[Save].** ![](https://tripledotstudios.atlassian.net/wiki/download/thumbnails/2581889051/wiujTn8S8f5pC0JMmHYq_pedRcXrbk0b4MbPBc3_1Nav9pHY0XMjF-EVqwxwOkR-q6ssHJOafJ9FMkyAY4iNmommMOnjmcAk8QtKPIZnRTdKJHb-rylaqnB3PbNH5xyxoFl6qnqqWwb0mEuGmcoIXE7lQB_LH0sWHNQ3_gG1FWauaRpba7ouQdupuQ?version=1&modificationDate=1663580420222&cacheVersion=1&api=v2&width=340&height=252) In the main A/B Experiments screen, you can now visualise your labeled experiments: ![](https://tripledotstudios.atlassian.net/wiki/download/thumbnails/2581889051/176-sNGcVfmvm1fOhLDkZsOETYk5Tz7BKelvrtdktWpSYRQRmBl0a8psq8gfQbCbpoaG78UqWcmc3CutIUpHzavEuWgf8uO6n77j7C1Mkv08Z2Ote4MnWPy0W0lawIWSsKYdUSAT9ClmeorU-fZRcF3-2JOw9lui8WBikcwb6A-V-fFe5jG-WAlOJg?version=1&modificationDate=1663580420229&cacheVersion=1&api=v2&width=340&height=172) ### Filtering by Label You can use labels to filter your experiments. To do so: 1. Click **[Filter]** on the upper right side of the screen.  2. Under **Labels,** type in the name of your label. 3. In the table below, you’ll see the results of your search: ![](https://tripledotstudios.atlassian.net/wiki/download/thumbnails/2581889051/image-20220919-094521.png?version=1&modificationDate=1663580726080&cacheVersion=1&api=v2&width=340&height=158) ### Searching by Label You can use labels to search your experiments by directly clicking the label on the tables: ![](https://tripledotstudios.atlassian.net/wiki/download/thumbnails/2581889051/image-20230905-150401.png?version=1&modificationDate=1693926245741&cacheVersion=1&api=v2&width=374&height=175) A new screen will open where you’ll be able to visualise where your label is being used and the status of the entity: ![](https://tripledotstudios.atlassian.net/wiki/download/thumbnails/2581889051/image-20230905-150657.png?version=1&modificationDate=1693926420716&cacheVersion=1&api=v2&width=340&height=239) * * * ## 🔍 Frequently Asked Questions - **If I change the rules of an active A/B experiment, does it deallocate/reallocate users that are in the experiment?** - **When using the experiment variant NOT IN rule - does it include users who are not allocated to that test at all? Or only users allocated to that test, but not in the selected variant(s)?** - **Does the experiment variant rule still work if the selected experiment is inactive or archived?** - **If the player does not qualify for the rules on the experiment start date, but qualifies later when the experiment is still active, does the user get allocated to the experiment?** - **If an experiment starts for all users (old and new) on a set date, and the allocation is later changed to old users only, what would happen to players that install the game between these 2 dates and got included in the experiment?** - **If there is A/B experiment running which has been set to “inactive” and then it’s activated again, would Game Server redistribute the Variant ID, or the players that already got a specific variant ID, will stay? e.g. player A got variant ID 10, test gone inactive, then activate again, player A would still be in variant ID 10 or randomized again?** * * * ### \uD83D\uDCCB Related articles - Page: [Configuring Game-Specific 3rd Party Machine Learning Models in Game Server](/wiki/spaces/KB/pages/4580999169/Configuring+Game-Specific+3rd+Party+Machine+Learning+Models+in+Game+Server) - Page: [Configuring Embedded Machine Learning Models in Game Server](/wiki/spaces/KB/pages/4548263939/Configuring+Embedded+Machine+Learning+Models+in+Game+Server) - Page: [File Configuration in Game Server](/wiki/spaces/KB/pages/4440228000/File+Configuration+in+Game+Server) - Page: [Managing Localisations in Harmony](/wiki/spaces/KB/pages/3230760961/Managing+Localisations+in+Harmony) - Page: [Generic Daily Challenges](/wiki/spaces/KB/pages/2933653553/Generic+Daily+Challenges) - Page: [Configuring Ads in Game Server](/wiki/spaces/KB/pages/2765029415/Configuring+Ads+in+Game+Server) - Page: [Rules in Game Server](/wiki/spaces/KB/pages/2668494860/Rules+in+Game+Server) - Page: [Setting up A/B Experiments](/wiki/spaces/KB/pages/2581889051/Setting+up+A+B+Experiments) - Page: [Game Settings Configuration](/wiki/spaces/KB/pages/2580021328/Game+Settings+Configuration)