Till now we have had metrics that changed only as the direct result of an action or a task done by a player. This is good for keeping track of a player's performance in individual streams, but when you need to give an overall picture, these simplistic metrics fall short. Therefore, we've added a new kind of metric: the Compound Metric.

Compound Metrics are a special type of metric, who's value depends only on other metrics. The Compound Metric's value is calculated using a formula, an arithmetic expression such as x*10 + y/6.

What's the use of that you ask? Well, let's tell you:

Imagine you need an Effectiveness Rating for your sales reps. Of course, you are already measuring the total value of sales, total minutes spent on call, margin on each sale, etc. But all these metrics are very simple — your sales rep stays on call for 10 minutes and gets 10 minutes credited to his score — and don't give you that full picture. If you want to see who the top sales rep is, any of these metrics alone won't really cut it. So, what do you do? For starters, you look at more than just one metric — how many minutes did my rep stay on phone, and what is the margin made on each sale and the value of the sale — or better yet, you define the weight of each metric — the value of each sale should be high, margin should be good, and the number of minutes spent be... not too high, so something like the following would be a more desirable measure:

(10 * value + 2 * margin)

This is exactly what the Compound Metrics let you do! They let you define a metric which depend on the scores of other metrics and their weights to give you a more rounded view.

So, while defining the Compound Metric, the Effectiveness Rating can be defined by specifying a formula, which is an arithmetic expression consisting of player scores:

(10*$scores.value + 8*$scores.margin)/$scores.minutes

Update: Now, you can just focus on the formula field, and press Ctrl + Space to bring up the list of metrics you can choose from. Just use the and keys to navigate in the list, or type the metric name and press Enter to select the metric or metric item (for a set metric).

How to use the autcomplete for quicker editing
Autocomplete in action!

On the platform, that would look something like this:

Creating a Compound Metric

Here, the $scores. prefix tells the Playlyfe engine to read the value from the player's scores and the value, margin and minutes are the IDs of the various metrics. The formula can be as intricate and complex as you like: you can use all of the arithmetic operators in javascript. Also, you can use the values of point, set and other compound metrics in the formula expression. When using the set type metrics, the value will be the count of the set items — if the player has 2 gold badges, $scores.badges.gold would evaluate to 2.

You can also create leaderboards for compound metrics, and use them in rules like any other metric.

So everytime the player does some action that affects any of the dependent metrics (value/margin/minutes) the compound metric would be automatically recomputed to the new value. Here's how it keeps changing with each score change for the player:

How the Compound Metric keeps updating with the player's scores

There is one this which you need to be mindful of: the value of a compound metric can never be set directly through an action or a process, it is always calculated.

Hope you like this new feature. We'd like your feedback on how you'd use it or how it can be improved. In case of any queries, you can post a comment below or head to our forums.