Sunday, April 2, 2017

Design Dive: Balancing Dissimilar Skills

Hail, Wanderers!

Game balance is a massive subject, and one of major focus for almost any game. I'm not going to touch on balance from a conceptual standpoint in this design dive, but I'll certainly talk about parts of it in other weeks.

For now though, I want to offer a method I use for balancing skills or other actions that don't have easy means of comparison. Please note that what I'm covering is by no means the only, or even necessarily the best, way of going about balancing gameplay components. It's simply meant to be another tool to use to gain insight into the way different pieces of the game stack up against each other.

In this discussion, we're going to be mocking up a balance of a simple turn based strategy game. The Dueling Game that I've been working on would be a good example, but any sort of turn based RPG would also work. Alternatively, the method of comparison I'm going to present can also work for item stats, or whenever the strength of something with multiple values attached to it must be compared.

When skills have one value attached to them, we'll start with damage here, it's simple enough to compare them just by the numbers. We'll call our two skills Skill A and Skill B. With just a damage stat, the skills look like this:

Skill A - 10 Damage
Skill B - 5 Damage

With just the one stat to compare, it's easy to see that Skill A, with everything else being equal, is twice as powerful as Skill B. However, it's often the case that skills will have more than just the one value associated with them. So let's add in a resource cost for each skill.

Skill A - 10 Damage, 20 Cost
Skill B - 5 Damage, 8 Cost

With the two stats in play, it's harder to figure out exactly how the skills compare to each other. Because they only have the two values in play, however, we can figure out a ratio to compare the values. In this case, 10 Damage is equal to 20 resource Cost, so 1 Damage is equal to 2 resource Cost. With that in mind, we can see that 5 Damage would be equal to 10 resource Cost, which actually means that Skill B, with a cost of 8, is a little bit less expensive in the long run.

Note, however, that it's very important what skill is used to determine the ratio. If we used Skill B to find the ratio between Damage and Cost, we'd instead find that 1 Damage was equal to 1.6 Cost, which would change how the numbers looked for the rest of the skills. As such, picking an imbalanced skill to determine the ratio could lead to imbalances across the rest of the game. It's still a valuable, if simple tool, but just one to be cautious in using.

Now, let's add in a third resource. We'll give each skill a cooldown of a few turns.

Skill A - 10 Damage, 20 Cost,  3 Cooldown
Skill B - 5 Damage, 8 Cost, 5 Cooldown

With three values to balance, we would have a much harder time figuring out the ratios. We could still figure out that, using Skill A as our basis, 1 Damage is equal to 0.3 Cooldown and balance from there, but that doesn't really tell us the overall power of the skill.

For problems like this, such as the Dueling Game, which uses Damage, Stamina, and Balance as its three values for skills, I assign a point value to each component of the skill. In this case, we'll say that Damage is equal to 3 points, Cost is equal to 1, and Cooldown is equal to 2.

How the points are determined is something of a tricky matter, but I try and weight them based on how valuable I think each value is. For the Dueling Game, I weighted Damage the most, as applying damage is the main focus of the game and it's the only thing that can't be recovered, followed by Balance, and then Stamina as the lowest rated value as it's the easiest to regain. Also, I assign negative points to parts of the skill that draw resources from the player. So a skill that has a resource Cost will have the associated points deducted from the total, while one that, say, restores Resource on dealing damage would have the restored value factored in positively. The above point weights give us the following values for each skill:

Skill A - 30 Damage points, -20 Cost points, -6 Cooldown points (4 total)
Skill B - 15 Damage points, -8 Cost points, -10 Cooldown points (-3 total)

From that, we can see that Skill A is actually more powerful overall than Skill B. Furthermore, we can see that most of Skill B's negative points come from its cooldown, marking it as a good place to start examining how to rebalance the skill. That being said, it's not necessarily a bad thing to have some skills be more powerful than others, so it's good to see that the skills aren't too far away from each other in terms of total power.

Again, just like with using ratios, giving each part of a skill a point value can throw off the overall balance depending on how the points are assigned. To use an extreme example, assigning a point value of 10 in the above example would throw off the final value of each skill quite a bit. Also, this certainly isn't the only method that should be used, though it does provide a good starting point for additional balance changes or further looks into the skills.

Lastly, it's possible to assign point values to more complex components of a skill. Let's say a skill has a 25% chance of dealing x2 damage. It's hard to figure out just how much value that really brings to the skill. We can certainly calculate the total points for the bonus and non-boosted damage (using Skill B as the example):

Normal - 15 Damage points, -8 Cost points, -10 Cooldown points (-3 total)
Boosted - 30 Damage points, -8 Cost points, -10 Cooldown points (12 total)

That gives us an idea of how valuable a normal hit is versus a hit with the boost, but it doesn't give us an easy look into how much value the percent chance of bonus damage brings to the skill overall. However, we can add the possibility for bonus damage into the point total using a modified formula. If we say that damage that has a certain percent chance of happening has a point value equal to bonus damage points multiplied by the chance of that bonus damage happening (in this case 30 * .25) we could add that into the damage point total for the skill. Which gives us the following:

Skill B - 22.5 Damage points (15 base + 7.5 boosted), -8 Cost points, -10 Cooldown points (4.5 total)

It's not a perfect solution, but it does give a rough idea of how much value the 25% chance at double damage is bringing to the skill. With a little work, similar methods can be applied to most other types of skill components.

At the risk of endlessly repeating myself, assigning point values to pieces of a skill, item, or other gameplay component that need balance can help to get an idea of that component's total power and how much each piece of it impacts that overall power is a very useful tool. It does have its risks, as care must be taken when weighting each piece of the skill or item in question, and the method isn't necessarily applicable to all game types, but it is a good tool to keep in mind when looking at balance problems. I've used it in the major balance pass I made on the Dueling Game during the jump from version 5 to version 6, and it revealed quite a bit about the initial decisions I had made about the game's balance. Which is material enough for a blog post in and of itself, but that'll be for another week. I hope this was useful, or at the very least interesting, and to any designers reading this working on balance challenges, best of luck!

Until next time!
Charles

No comments:

Post a Comment