RPG Battle Balancing
Preproduction - Overview and Two Types of Difficulty
A Feature by Mike Willis (msw188)
I: OVERALL DIFFICULTY EMPHASIS
II: BALANCING TOOLS AVAILABLE
III: CHARACTER DEFINITION GOALS AND EXAMPLES
There are lots of elements, both large and small, that go into making good battles for an RPG. This is the first of a three-part series where I will be focusing on properly balancing non-boss battles, which I feel can be the hardest part of the whole mess. I will be assuming some familiarity with the OHR engine, but more importantly I will be assuming menu-based RPGs (think Dragon Warrior/Final Fantasy, NOT Zelda or Secret of Mana). It may well be that some aspects discussed herein are applicable to other genres, but I shall bypass such considerations and type only concerning the menu-based gameplay system that the OHR was designed to sustain.
This article will focus on the fundamental decisions that need to be made early on in the making of the game, or at the beginning of designing the dungeon in question, etc. These include overall map design, character definitions, and basics of how non-boss battles should play out. Many of these decisions are highly subjective, and can even vary from place to place in the game, but I shall try to remain as objectively general as I can.
I:OVERALL DIFFICULTY EMPHASIS
So let's get to it. Suppose we are trying to balance battles for a specific area. Before even considering characters and statistics and the such, a fundamental design decision must be made. How much emphasis do we, the designers, want to place on singular battle difficulty, and how much do we want to place on the cumulative effect of multiple battles (from this point on, the word "battle" shall signify non-boss battles only)? This decision should color nearly everything about our battle design, as well as how we balance things like money, experience points (EXP), equipment, healing processes, and map design. As this is such a fundamental question, let us examine the possibilities for a moment.
Placing a large amount of emphasis on single battle difficulty does a number of things. Above all it should force players to think carefully about how to survive each battle. To be difficult, it should also require players to make use of whatever resources are available to them. This leads to an interesting problem: how do we make it possible for the player to succeed without running out of the necessary resources? Do we make his resources inexhaustible? This removes the concept of cost, which is a very powerful tool for us as designers when it comes time to make attacks (and a very simple concept for the player to understand). Do we try to control the player's resources through game design, allowing us to predict roughly how much the player can handle, and design dungeons and battles accordingly? This sounds much harder, and it is, but that is what we are here for. The details will come later, but for now it is important to realize that the greater the single battle difficulty gets, the more we will need to keep a close eye on the number of potential battles there are. This makes it especially hard to balance out the number of 'required' battles with the number of 'avoidable' battles, as small tweaks to either number can greatly affect the difficulty of the dungeon.
Placing a large amount of emphasis on the cumulative effect of multiple battles is a little less straightforward, and perhaps needs a bit of explanation. The idea is to make battles slowly wear down the player's resources, forcing him to be prudent in battle. Several factors have to work in harmony to allow this to actually add difficulty. First of all, the player's resources must be limited, obviously. Secondly, while single battles do not necessarily have to be difficult to win, they must be damaging enough to deplete resources. These two things force the player to think carefully about how to win battles efficiently. To be difficult, a dungeon needs a large enough number of 'required' battles to kill inefficient players. The only way to do this is, once again, to control the player's resources through game design and to design dungeons and battles accordingly. Although the central concept is the same, the focus here is different from the high single battle difficulty scenario. Here we are given much more flexibility with the amount of potential battles (we're restricted only by a lower limit), but paradoxically we have to be even more careful with how we make our single enemies. Small tweaks in enemy statistics can greatly affect a dungeon's difficulty when we are guaranteeing at least, say, 15 required battles.
Any area with battles can place any amount of emphasis on either of these, but the balancing issue becomes more difficult when we try to emphasize both at once. On the other hand, it ought to be obvious that at least one of these approaches MUST be used at all times. To have no difficulty from either single battles or the cumulative effect of multiple battles makes the battles pointless from the player's perspective, and this is one of the main things that lead to boredom in RPGs. If we have ANY battles that do not contribute to either of these two categories of difficulty, we should seriously ask ourselves why the battles exist.
II: BALANCING TOOLS AVAILABLE
Once we decide on our relative emphasis, we should stick to it for the given area. Our goal in terms of battle balance is now to maintain our desired difficulty level for the area as a whole according to our relative emphasis analysis. We have MANY tools at our disposal, but we cannot control everything. The things that we can control can be tweaked as we go, but the things out of our control cannot be, so it is important to understand them well at the outset.
If we are using the OHR battle engine, the main things that we have little control over are the aiming and damage algorithms. For this reason we should decide early on how we will use the damage settings offered to us. We have three basic damage algorithms that grade the importance of Atk and Def stats ("Sharp">"Normal">"Blunt" in terms of reliance on stats for base damage), and two options for what stats we base our aiming calculations off of. We can choose freely between these as well as things that ignore stats ("Pure" damage, %-based, "Never Miss"), but we cannot alter any of them. Once they are chosen, all further tweaking to damage can only be done via stats and %-based multipliers (the "extra-damage %", elements, etc). Another seemingly large thing that we cannot control is the player's decision-making, although we can limit what choices we offer to the player. Depending on how we treat experience points and growth, we also cannot control the player's hero levels, which might mean we have only limited control over the heroes' stats. We also have no control over the random number generator (RNG), but its effects on damage are usually negligible, and we can disable it on an attack-by-attack basis. The RNG's most serious effect on battles is its control over what actions enemies choose. We will discuss this in the next article.
Once our limitations are understood, we can finally begin trying to create the area. This is where things get complicated quickly. It is easy to forget just how many options we have available to us as designers.
On a character-by-character basis we have:
[*]12 stats, 7 of which are free to us to tweak as needed (tweaking HP, MP, Speed, MP~, and Extra Hits can potentially have unwanted side-effects)
[*]our own defined choices for available attacks ("attacks" taken to mean literally "actions", as in the OHR)
[*]our own defined choices for available equipment (heroes only)
[*]inherent elemental qualities, and 'type' qualities for enemies
On an attack-by-attack basis we have:
[*]the choice of what stat(s) to affect (usually our attacks target HP, but they can affect others!)
[*]the choice of what stats will be used to determine damage (Atk and Def)
[*]the choice of what target(s) to allow
[*]cost(s) to the user (usually using MP, but we can think of others!)
[*]lots of special effects via bitsets like "Absorb Damage", "Divide Spread Damage"
[*]elemental and enemy type effects
On a battle-by-battle basis we have:
[*]what heroes the player has available to use
[*]what enemies to include
[*]what enemy spawning to allow (defined enemy-by-enemy, but balance-wise it made more sense to put this here)
On an area-by-area basis we have:
[*]map design (length, complexity of map)
[*]amount of battles required
[*]amount of battles 'avoidable'
[*]methods of triggering/avoiding battles
What makes this especially difficult is that, in order to properly balance our battles, we would ideally like to consider all of these things at once, because they all affect each other in varying degrees. A character's offensive stats are meaningless until we decide what attacks will use them, and which attacks shall be offered to the character. We can only measure our attack costs when we can measure our stats' relative values, which depend on what attacks use the stats (or are defended by them), and who will have access to these attacks, and so forth and so on. The specifics of these relationships will have to wait for the next article. Here I would like to establish some of our main goals in understanding these relationships.
III: CHARACTER DEFINITION GOALS AND EXAMPLES
Simply put, characters in battle (either heroes or enemies) should have roles. Characters should be able to play several roles well, but no one character should be able to excel at them all. However, it is important to allow the player to construct a party where every role needed can be filled. This can most easily be done by giving various heroes to choose from, but can also be accomplished with equipment, especially with different weapon-defined attacks.
What are these roles, and how should they be assigned? This is the fundamental question of hero and enemy design. On the broadest level, there are but two essentially different roles for any character: 1)to maximize damage given to the opposition, and 2)to minimize damage taken from the opposition. Both can immediately be split between direct and indirect actions. For example, a direct way to maximize damage given is to actually apply HP damage, whereas an indirect way would be to increase an ally's attack power. Similarly, a direct way to minimize damage given is to actually restore HP damage, while an indirect way would be to put an enemy to sleep. And from here the imagination is set free. There are so many ways to further divide and refine various roles in battle that it can be dizzying at first. Making meaningful differences between different roles for characters is equally an art and a science, and requires serious knowledge of our options in the OHR engine. Examining this will be the focus of the next article. Here I will end with a couple of simple examples.
A simple way to emphasize single battle difficulty is to have enemies that can cause significant amounts of HP damage. Perhaps there could be two roles here - the ability to cause great damage to those with low defense (but not much to those with high defense), easily accomplished using the "Sharp" damage algorithm (and perhaps attacking twice to take the stats into account twice!); and the ability to cause good damage to anyone regardless of defense (this is often portrayed with magic in RPGs, but it doesn't have to be that way!), using the "Blunt" damage algorithm. These two roles can be served by two different enemies, or by the same enemy with two different attacks, although we have more control with two separate enemies (we have two sets of stats to tweak that way).
To combat this, the player needs some important roles among his heroes. The simplest, but sometimes most effective, role to give is that of a basic healer. But there are other ways to minimize this damage. Increasing defense, or lowering offense, can be a role to give to one of the heroes. It may be more interesting if the hero with this role is NOT the healer, but maybe the defense raiser also has the role of high damage dealer to single targets. The healer could also play the role of a high damage dealer, but only to a certain enemy type. Doing things like this ensures that the player has some choices for their heroes within the battle. The important thing is to make sure that a large variety of these choices can lead to victory, but none of them too easily. If I wanted to take this example further, I would go back to the other side and explore some more enemy roles. An enemy that can mute heroes (preventing healing or defense spells, say) could make things even more interesting. But let's move on to another example.
Difficulty from the cumulative effects of battles is more subtle. We are more worried about depleting resources than HP, but if resources are mainly used to heal HP then there are lots of similarities. But we can still try different things. One enemy role could be minimizing damage by increasing defense. This could force the player to use some of his fancy but expensive attacks that ignore defense, if he has a hero with that role. A defense-raising enemy paired with a moderate damage-dealing enemy prevents the player from sticking to his cheaper, low damage attacks because the longer the battle goes, the more the moderate damage adds up. And if healing is as expensive to the player as attacking, he may soon find it more expensive to try to stick to cheaper attacks in battle. Notice how important cost effectiveness is in this setup. This also leads to a role unique to heroes - the role of a 'good' equipment wearer. Such a role might seem expensive at first to the player, but if we balance our dungeon properly he may find that the cost of all the healing items needed without a good equipment wearer actually outweighs the cost of the equipment.
Of course, it is more interesting if the good equipment wearer can play other roles as well. Perhaps the good equipment wearer is a good damage dealer to "weak to fire" enemies. It is up to us to make this useful by including such enemies in the dungeon, although not enough to make this hero almighty. Perhaps there is one enemy who can play the "Blunt" damage role to combat this good equipment wearer. This same enemy can share the role of aim-lowering with several other enemies, which again can force the player to use alternate attacks that use the alternate aiming stat. To combat this, one of the heroes can play the role of a "muter" to prevent this, while another can increase aim, although perhaps at a high cost...? If the aim-increaser also plays the role of the high, cheap damage dealer, the need to use his turn may be cost enough...
As we can see, the possiblities are nearly endless. I will try to explore them more thoroughly in the next article in this series. Expect to see this article in next month's Hamsterspeak.