Documentation

Did you find this helpful?

LiveOps Example: First Time Purchase Store

Topics: Player Segmentation, Stores, Virtual CurrenciesStore Segmentation, Catalogs (bundles and durable items)

Philosophy: In a free-to-play game, getting a player to make their first purchase is very difficult. Players are much more likely to purchase again if they have already paid once. A properly incentivized first time purchase store can break that barrier against the first purchase.

This example is implemented with the following:

  • Several virtual currency bundles
  • One [optional] durable item
  • One player segment
  • Two Real-Money-Only stores with similar content

Virtual Currency Setup:

Consult the Virtual Currency Guide for more information about defining currencies.

Create two currencies: Gold and Silver.  Gold will be a premium currency exchanged directly from real money, and Silver will be a free currency earned in-game.

Catalog Setup:

Consult the Catalogs Guide for more information about defining catalogs and inventory items.

All items in this example use the item class "HiddenItem" which relies on custom client logic to filter these from the client GUI. These items should exist invisibly to the player.

Create several inventory items, the first being the durable AdEliminator item. The AdEliminator requires no special PlayFab setup, but it relies on the client to detect its existence and not play any popup ads (You could still play incentivized ads by triggered by player request, but this topic is a separate example):

This example uses several bundles, distributed across both stores. The gold bundles are time-consumable at 15 seconds, and contain only gold in varying amounts at varying RM costs:

The Starter Bundle will only be available to first-time-buyers, and will have more contents (as shown below):

Player Segment Setup:

Consult the Player Segmentation Guide for more information about defining player segments.

Create a segment called "Paying Players", which is defined by any player with VTD greater than zero.

Store Setup:

Consult the Stores Guide for more information about creating stores.

Create two stores called "BasicStore" and "BasicStore-Paying".  Both stores should contain all Gold Bundle items. BasicStore should additionally contain the "StarterBundle" from the Catalog above, and "BasicStore-Paying" should additionally contain the "AdEliminator" item. "BasicStore" should have a segment over-ride, which redirects paying customers to the "BasicStore-Paying" option.

Here's a screenshot for the "BasicStore" with all items and the segment override:

Here's a screenshot for the "BasicStore-Paying" with all items and the segment empty:

Testing:

The remainder of this example will be demonstrated in Postman. You can use Postman to verify your own results, or you can make the same calls in a game client using your preferred PlayFab SDK.

Verification requires making several PlayFab API calls. The first call for almost all examples is Login:

Using these credentials, you can immediately call GetStoreItems to access the store with the First-Purchase incentive:

Note, it is possible to purchase the "StarterBundle"

At this point, the steps become very complicated, beyond the scope of this guide. To get into the "Paying Players" segment, you must spend real money with this account. See the Real Money Guide to learn more information about how to get your player into the segment defined above. For testing, modify your segment based on another condition, such as a statistic, and manually set the statistic value for the test player.

For the case of this example, we assume the player is now in the segment, and they call GetStoreItems again:

Note the "StarterBundle" is no longer present, but now the "AdEliminator" item is now available for purchase.

Conclusion and Best Practices:

If you do receipt validation and/or payment processing through PlayFab, we can determine the value-to-date (VTD) for your players, and segment players into free players, paid players, and whales. The threshold for whales is up to you to define in your whales segment. With Stores, you can alter the store content for players based on their segmentation. First time payers are a particularly useful segmentation and you should spend extra effort in incentivizing a players first purchase.

Note: The first purchase incentive should not be too valuable. Some players may find more value in starting over and playing from scratch with only the first purchase incentive. Others may find a way to obtain it multiple times, based on an exploit in your game or other loopholes.

Best Practice: The AdEliminator item is given as an example of a good first purchase incentive. It is ideal, because obtaining it multiple times is useless - a key element of a good first purchase incentive. Additionally, mobile ads in video games tend to be for other games. Once a player pays you, it is not in your best interest to show them ads for other games.



Did you find this helpful?