Inspiration

For this tutorial I was keen to introduce a different use for IWP that might not be the first thing people consider when they think about adding a shop.

What it does

This tutorial walks through building a subscription system for your world.
Players who purchase a specific IWP (In-World Purchase) will be able to collect coins from the Coin Vault each day they log in.
To make the subscription more enticing, the system will also pay out coins retroactively for all the days they’ve logged in before purchasing!

This mechanic works on two levels:

Conversion driver: the longer someone plays without subscribing, the more appealing the purchase becomes. Retention driver: once subscribed, players have a reason to come back every day to claim the reward they already paid for.

How we built it

The system utilised three variables plus one durable IWP.
The IWP tracks whether the user is allowed to access the vault at all.
We then have number player variables for:

  • Last day logged in: This is the days since epoch of the last day the user logged in. We use this to track when a player logs in on a "new distinct day"
  • unclaimed_days: We build up a count of how many days a player has logged in and not claimed from the vault. This works for players who forget to claim, but more importantly it helps us create a kind of piggy-bank mechanic that makes the IWP increasingly enticing.
  • Coins: The currency! If you are adding the system to an existing world, you could well already have a variable for this.

The tutorial walks the creator through hooking up these variables to their various stimulus.
Also included is a simple CUI script for displaying the current state / claim button to get the system up and running instantly.

What's next for Tutorial: Coin Subscription System

The system could be extended to be even more complex by:

  • Adding limits to the piggy-bank nature of the vault, further increasing pressure to convert past a certain number of days (as coins over the limit would be "lost")
  • Introducing a time limit on the subscription, meaning the vault would revert to its "accumulating" state after e.g. 30 days.

Built With

Share this project:

Updates