<aside> <img src="/icons/home_gray.svg" alt="/icons/home_gray.svg" width="40px" /> Menu


Latest News

Homa Belly SDK

N-Testing

Games

Ideas

Fast Market Validation

Homa Lab FAQ

Homa Academy

Contact Us


Map

</aside>

Table of Contents

How to determine if an N-Testing variable in your game can be used in segmentation, and how to build your game's code around segmentation

Here is the main challenge when working with segmentation: How to craft an experience as coherent as possible for the user, while still tweaking its parameter based on its behaviour.

Part 1: assessing balance between coherence and manoeuvrability

This question is the first you want to ask yourself when you want to use segmentation for a part of you game. Because players will create a mental model of your game, and changing variables against this mental model can easily worsen the user experience.

Let's take an example: Let's say my game is an auto-chess, where the player's fighter configuration competes automatically against the game's configuration (think of Merge Master).  And let's say the user discovered that an archer level 2 can kill a dinosaur level 2 in 5 arrows. If after level 7 for some reason an archer level 2 kills their level 2 dinosaur in 2 shots, then the game will look rigged.

But if instead they see a "damage multipliers" pop-up for archers for this level, then this change in power is expected, and it will feel that the game still "plays by the rules".

The effect of segmentation will greatly vary between the different types of variables. Obviously the more hidden ones will be safer to change, like loot tables for a surprise chest.

Note: try not to remove features using segmentation! It would be detrimental to the user experience. Move them behind a paywall instead (soft of hard currency). Adding features through segmentation is fine though.

Part 2: designing code around segmentation

To work with segmentation, you will need to be familiar with DVR v2, and have it enabled in your game. See this article for more information.

Once you have decided which variables you want to use with segmentation, developers need to make sure that changes of this variable value will not cause issues in the game.

⚠️ When using segmentation, the values can change at truly anytime during gameplay!

Here are a couple of things to be aware of:

Contract breaking

This is the most important design feature to think about when using segmentation: do not break the contract you have with the user. This is even more essential when you know that variable updates can happen anytime.

For example: if the player opens an IAP screen, that will give the player 500 gems. But this gem count is controlled by segmentation, and between the screen opening and the player clicking "purchase", the gem count is reduced to 200. The player will buy what they think is a 500 gems pack, and only receive 200.