Generals 2

Blog: Balancing Generals 2

Reply to this topic Start new topic
# 1AgmLauncher Feb 23 2012, 12:03 PM
Balancing a real time strategy game is not an easy task. Balance is a moving target; as players discover new ways to play the game, the perceived state of balance can shift dramatically over a short period of time. This shifting is known as metagame development, and while it makes finding a balance target almost impossible, that in itself means that balance adjustments are not necessarily required. If players are still solving perceived balance problems through various improvements in their understanding of the game and execution of play, then the game designer can essentially sit back and wait for the metagame shifting to slow down.

Of course, there is the notion that perceived “fake” balance problems are just as detrimental to the health of the online community as actual balance problems, and thus you’ll find developers patching things that may not actually need patching, just to placate people. However the purpose of this blog is not to explore balancing strategy as it relates to customer service. Instead, the purpose of this blog is to explore how game design itself plays an important role in the ease with which the game can be balanced.


The Butterfly Effect


An RTS game is a complex system whereby small changes have the potential to create unintended consequences. An analogy would be the famous butterfly effect: a hypothetical example where the small disturbances from a butterfly flapping its wings could have a cascading effect over a long period of time, resulting in a hurricane.

This “butterfly effect”, coupled with the shifting metagame, makes it very likely that any balance changes a developer introduces to fix existing problems, will cause different balance problems in the future. In order to mitigate this, a developer needs to make as few low-impact changes as possible. A low impact change is one in which the change affects only a specific unit relationship, and as specifically as possible.

For example, suppose unit X is overpowered against unit Y. One solution is to simply increase the damage of unit Y. However the trouble with such a change is that you’re affecting every other balance relationship involving unit Y. Even though a very slight increase in damage (say, +5%) may seem like a low-impact change, it’s actually a high impact change because of how many balance relationships it affects.


Balance Handles


In order for a balance designer to be able to make “fine grained” changes that affect only specific unit relationships in specific ways, the game needs to be designed with as many “handles” as possible. This metaphor can be understood by imagining a physical control panel with which you edit the various characteristics of a unit. Imagine if a unit were a real model. The more knobs, levers, and controls you have to modify it, the more precise and specific your modifications will be.

Thus, the more of these handles that are infused into the game's design, the easier it will be to make very specific, isolated relationship changes. Let’s consider the previous example of unit X and unit Y, and then compare two different games: Command and Conquer Generals, and Empire at War.


Handle: unit relationship matrix


In Command and Conquer Generals, units don’t merely have damage and health, they also have damage types and armor sets that determine exactly how much damage they take from each damage type. For example, a Gattling Tank does GATTLING damage type, but a Crusader Tank has an armor set which takes only 10% damage from said damage type. Meanwhile infantry units take 100% damage. So if you wanted to make Gattling Tanks stronger against the Crusader only without affecting its effectiveness against infantry, you could simply edit the Crusader’s armor set to take more GATTLING damage.

However, there’s a basic flaw in Command and Conquer Generals: while each unit can have its own armor set, there are only a handful of damage types available. This means that many units must ultimately share the same damage type. So in this situation, any other unit that deals GATTLING damage will also become stronger against Crusaders whether the designer wants this or not. So while editing the damage relationship is more granular and lower impact than outright changing the damage of the Gattling Tank itself, it is still not a perfectly insulated change.

Now let’s look at Empire at War, Petroglyph’s first RTS (a Star Wars game). In Empire at War, unit relationships were governed by XML matrices, and every single unit was coded to have independent relationships with every other unit. So quite literally, if all you wanted to do was make Assault Speeders stronger against Storm Troopers only, Empire at War allowed you to do so. If Generals was coded in such a way, then the concept of armor and damage types would be unnecessary. You could simply directly edit the game such that Gattling Tanks did a certain amount of damage to Crusaders, and a certain amount of damage to Infantry.

Flexibility and granularity of this nature would allow the balance designer to edit specific unit relationships until the cost-effectiveness balance between the two was exactly where he/she wanted it to be. But of course RTS games aren’t that simple. There’s more to cost-effectiveness than damage, so we need more handles…


Handle: Experience Values


A great handle in Generals and other C&C games is experience values. Units in Generals have settings that determine how much experience they require in order to be promoted, as well as how much experience they give off when they are killed. Not only does the game let you determine how much experience they give off when they are killed, but the experience values can be set for each veterancy level the unit is at.

If we look at the Battlemaster from Zero Hour, we can see that it gives off the following experience for each level:
  • Standard: 50XP
  • Veteran: 100XP
  • Elite: 200XP
  • Heroic: 400XP
Those are not the experience levels required to get to those ranks, those are the amount of experience the unit gives off when you kill it. Imagine for a second that rather than having four separate values for each veterancy level, that the game was programmed so that there was only one flat value. Tank General would be nearly impossible to balance without making unwanted compromises. Tank can start with Elite Battlemasters, which are formidable with the Autoloaders upgrade and when enhanced by horde bonus. However, there’s a catch: Elite Battlemasters give off 200XP when you kill them, so you only need to kill 8 in order to obtain your level 3 generals powers. If instead of separate values, there was one flat value, you’d have to find some compromise between the standard value (50XP) and the elite value (200XP), which may not be appropriate for either.

Many units and unit relationships in Generals/Zero Hour can be adjusted simply through experience adjustments. While experience isn’t dynamically governed between specific unit relationships (wouldn’t it be great if Rangers got more experience for killing Gattling Tanks, than Crusaders did, for example?), having an experience system of any kind is an instrumental part of tuning balance in delicate relationships in Generals.


Handle: Energy


In Zero Hour one of the great things about USAF is that it’s one of the few factions capable of opening with a pure air build, instead of relying on Humvees like the other three factions do. However, this opening is very delicately balanced on Tournament Desert (a very small map). Because of how long it takes airfields to build and how long it takes Comanches to build, and the fact that you need to research a lot of upgrades to make them useful, it’s a bit difficult fending off early Gattling Tank/Quad Cannon spam. However, once Comanches are fully upgraded and reach a critical mass, they become overpowered.

The balance is entirely situational. You can’t weaken Comanches when they are critically massed without also crippling their viability as an opening strategy. Moreover, because this balance depends entirely on how long it takes for the first Gattling Tanks and Quads to get across the map, map size has a huge influence on this balance. This is a problem Zero Hour community balance designers have struggled with. Many have attempted to solve the problem by increasing the time it takes for the Comanche to re-stealth after revealing itself (which is a great handle to have, but not quite what we need). The issue is that this also makes them more vulnerable very early on in the game when you need them to have higher survivability. So even though adjusting re-stealth time is useful, it doesn’t allow balance designers to differentiate between Comanches used for defense early game, and critically massed Comanches used offensively mid-late game. Essentially, our hands are tied – we have to make a compromise that isn’t a great solution for either situation.

But what if Zero Hour had been designed with StarCraft’s energy system as a balance handle? In this design, Comanches would have an energy reserve that determines how long they can remain stealthed. The stealth feature would be an ability that can be toggled on or off to conserve energy, and energy slowly replenishes when it’s not being used. Moreover, landing the Comanche at an airfield can recharge its energy. And finally, other abilities like Rocket Pods could also draw from the same energy pool (the rocket pods simply keep firing until you’re out of energy, or consume a chunk of energy up front and last for a fixed amount of time etc).

If energy is implemented with balance handles in mind, we could have a massive number of new ways to balance the effectiveness of the Comanche's stealth ability:
  1. Initial energy level
  2. Max energy capacity
  3. Energy drain rate from using the stealth ability
  4. Minimum stealth activation energy (requires at least X amount of energy to be present before you can activate the ability)
  5. Energy drain rate from using rocket pods (requires at least X amount of energy to be present before you can activate the ability)
  6. Minimum rocket pod activation energy
  7. Passive energy regeneration rate
  8. Passive energy regeneration delay (how long after reaching 0 does it take before it starts to regenerate on its own)
  9. Active energy regeneration rate (from using an airfield to replenish energy)
Using these handles, we can tweak and tune and adjust the effectiveness of both the rocket pods ability, and the stealth ability, in whatever way works best. These handles would actually allow us to limit how long a Comanche can remain stealthed before it is forced to retreat (or before it is exposed to long range anti-air). However, because the Comanche can replenish its energy at an airfield, it will be stronger when used defensively than when used offensively. These extra handles would eliminate what is otherwise an impossibly sensitive and delicate balance problem.


Handle: Object upgrades


Upgrades are another tricky thing to balance. Traditionally, an upgrade is a global purchase: you research it once and it applies to all units thereafter. The trouble with this design is that it becomes difficult to find a comfortable balance between the accessibility of such an upgrade, and its effectiveness.

Let’s go back to our Comanche example. The stealth upgrade for those Comanches is $1500. One could argue that if stealthed Comanches are too effective, that you should simply increase the cost of the upgrade. Sounds logical right? After all it’s the stealth upgrade that is causing the problems, not the Comanches themselves. But in reality, simply making the upgrade cost a higher flat fee doesn’t change the fact that it’s still too good. Sure a higher cost might mean fewer Comanches, but that effect diminishes over time. And if you make the upgrade cost too much, then you could cripple the ability to open with Comanches (at least on Tournament Desert).

But what if instead of a global one-time upgrade, you had to purchase the upgrade on each Comanche individually? What effect would this have? The most significant is that the cost of the upgrade scales with the number of units you equip it to. The second is that you would actually be able to adjust the cost of the Comanches and cost of the upgrade such that the first 2-3 Comanches with stealth upgrade is cheaper overall than if the upgrade had been a single global upgrade. Let’s do some math:

Currently, 3 Comanches + the stealth upgrade costs $5,100, and 10 Comanches + stealth upgrade costs $13,500. Those first three Comanches are crucial to your early game survival. USAF could actually stand to have a those first three stealthed Comanches come a little cheaper and a little faster, but in the current system, that would require making them even more overpowered and even easier to reach a critical mass with - certainly something we want to avoid.

So let’s see what that would look like if the stealth upgrade had to be researched on each Comanche individually. Our goal is to lower the cost of the first three Comanches, while simultaneously increasing the cost of 10 stealthed Comanches. Let’s set our 3-Comanche-cost to $4800. That means in total, each Comanche has to cost $1600. We can then actually keep the cost of each Comanche at $1200, and simply set the cost of the stealth upgrade to $400. So the first three Comanches in this model results in a $300 savings compared to the stealth upgrade being a global one-time purchase (and there is a time savings since the upgrade does not tie up Comanche production!). This helps USAF get on its feet early on. However, 10 Comanches will cost $16,000, quite a bit more than the $13,500 from the old upgrade model.

See? It’s magic. We successfully buffed the Comanches early on when the buff was needed, and nerfed them later on when the nerf was needed, simply by converting a global upgrade system into a per-object upgrade system. The represents an additional handle that you can use to balance out the cost-effectiveness of upgrade – a handle you wouldn’t have with a one-time purchase system.


Summary


The Zero Hour community has made many attempts to polish the game’s balance since the release of 1.04. However, the game does not have sufficient handles to afford balance designers the proper control they need. As such, most unit relationships remain fragile and even polarized due to insufficient compromises.

It is inevitable that Generals 2 will wind up in the same situation nearly a decade from now. However, if it is designed with more balance handles than Zero Hour was, it will be significantly easier for the community to adjust balance with accuracy and precision should the need arise. And of course any official patches from EA/Bioware will also be more accurate and precise, increasing the satisfaction of the community and retaining the player pool for a longer period. Whichever way Generals 2 is designed, it is important that its development team put thought into the granularity of its balance.





Attached highlight
Attached Image

Posts: 39,117

Clan: CrAzY

Game: Generals 2

+
# 2IMZiggy Feb 24 2012, 01:10 AM
Surprised you didn't talk about secondary resource types. I think it's one of the better balance handles as it makes scaling units and upgrades from early to late game much easier. It also gives much more control of the early game assuming developers of victory are competent enough to balance 3min of gameplay.

The matrice example seems really unintuitive although probably the easiest way to quickly make changes. I think it would lead to 'flavour of the month' balance changes if the game does become popular.

Posts: 1,197

Game: StarCraft 2

+
# 3triumph Feb 24 2012, 22:34 PM
To avoid flavor of the month changes the devs would need to have a decent map pool and a well constructed game scale. If something seems OP during the first month then a couple of maps could be rotated in to see if this is more of a map based issue, like a unit combo being too strong on a X distance map or a global balance issue where there isn't a good strategic alternative or counter combo. This would also allow the game to look more competitive and give good reason to give those 2.5-4 months to let the meta game settle without game play becoming unreasonably stale while a certain combo is very popular.

Posts: 8,046

Clan: EPIC

Game: Generals 2

+
# 4AgmLauncher Feb 25 2012, 01:29 AM
QUOTE
I think it would lead to 'flavour of the month' balance changes if the game does become popular.

I don't see how that would be the case anymore than it is now. If anything that would happen less often because developers would have far more control over isolating the exact balance issue, thus they could more easily avoid unintended shifts in the balance.

Posts: 39,117

Clan: CrAzY

Game: Generals 2

+
# 5methuselah Feb 25 2012, 02:09 AM
Enjoyed the read thanks. I love the way UaW handles unit interactions like that, one of the things I hated most about C&C 4 was how unintuitive unit interactions were. I'll never forget the very first time someone spammed a bunch of infantry in a match with me. I built flame tanks. Flame tanks vs infantry right it's a no brainer.

I might as well have taken a pillow to a gun fight.

The power mechanics in SC2 are pretty compelling also. Would like to see both of these ideas implemented into Gens2. Certainly they both make balance a much more attainable prospect.

Posts: 26,014

Clan: GameReplays.org

Game: Generals 2

+
# 6Specovik Feb 25 2012, 22:48 PM
IMHO, this article should be in the zero hour section of hur and not generals 2

Posts: 162

Game: CNC Zero Hour

+
# 7kustodian Mar 1 2012, 22:48 PM
I liked the ideas how could balancing be done much easier happy.gif

I'm just not sure about one thing and that is the talk about types of damage and armor. If you made it that way that every unit has a specified damage against a particular unit, I think it would be much harder to get into the game, since you wouldn't have general rules about damage and armor.

Posts: 30,556

Clan: HotOPS

Game: Heroes of Newerth

+
# 8AgmLauncher Mar 2 2012, 03:15 AM
Well the designers would implement them. You could START with some general rules such as bullets do minimal damage to tanks, or infantry don't do much damage to anti-infantry vehicles. However, if you find that you need to make unit X 7.5391% stronger against unit Y, then the game would allow the balance designer to do that, without also having to worry about how that change will affect other units.

Posts: 39,117

Clan: CrAzY

Game: Generals 2

+
# 9TeeToo Mar 2 2012, 12:43 PM
wow AGM with 37,395
get a life man biggrin.gif

Posts: 894

Game: Command and Conquer 3

+
# 10triumph Mar 2 2012, 17:54 PM
QUOTE(TeeToo @ Mar 2 2012, 05:43 AM) *

wow AGM with 37,395
get a life man biggrin.gif

Hint
I think he has one and it involves running a successful web service.


Another handle is having a solid T1.5 tech structure.
SC has this. Even CnC3 has this.
I like the idea of elongating the use of t1 units or making scouts from a t.5 into a t1.5 unit without cutting the production from your unit generation structures. Allows more freedom to control timing and can give another soft structure to harrass or focus.

Just have to draw the line between something like gen powers, global research, and per unit upgrades. More combos there are the harder it can be to get a feeling for the game when new.

This post has been edited by triumph: Mar 2 2012, 18:01 PM

Posts: 8,046

Clan: EPIC

Game: Generals 2

+
# 11DMraider Mar 7 2012, 12:10 PM
QUOTE(AgmLauncher @ Mar 2 2012, 05:15 AM) *

Well the designers would implement them. You could START with some general rules such as bullets do minimal damage to tanks, or infantry don't do much damage to anti-infantry vehicles. However, if you find that you need to make unit X 7.5391% stronger against unit Y, then the game would allow the balance designer to do that, without also having to worry about how that change will affect other units.


I agree that it needs to be somewhat realistic and logical, not making such crazy balance changes that for example a Helix w/ Gattling Turret does alot different damage than a Gattling Turret against a tank. Or differ much in damage between attacking a Crusader Tank or a Battlemaster Tank.

I agree completely with the Commanche issues.

Posts: 5,764

Game: CNC Zero Hour

+
# 12Kidmidnight Apr 6 2012, 21:38 PM
An easy idea would just to have 3 factions then buy your specialties as you earn points. That way you won't have any weird imbalances right at the start.

Posts: 224

+
# 13Tomber Apr 9 2012, 00:10 AM
To make it very balanced.... only 1 faction
But then it would be boring.
I want 20 factions

Posts: 6,742

Game: None

+
# 14MaDDoX Apr 16 2012, 04:42 AM
A single resource is shallow but it's also key towards simplicity. Having a territory model as a secondary resource (for instance, for per-unit upgrades) would add an interesting yet controllable twist. And an intermediate tech layer like Tri said. I deeply despise those Upkeep systems that punish you mathematically for progressing (a la Warcraft3, and MoW has it from what I've noticed.. pfft), or prize cornered-to-death players with absurd comebacks (Battle Realms). At least Mario Kart does it a tad randomly wink.gif

QUOTE(DMRaider)
I agree that it needs to be somewhat realistic and logical

Yeah, like that +5000% pierce damage bonus against structures for Axe Throwers. So realistic happy.gif Greg is a funny guy..

Posts: 7,580

Clan: EPIC

Game: Command and Conquer 4

+
# 15c9q9md Apr 16 2012, 08:37 AM
i want tier 4

Posts: 3,192

Game: None

+
# 16AgmLauncher Apr 16 2012, 16:20 PM
QUOTE(MaDDoX @ Apr 16 2012, 00:42 AM) *

A single resource is shallow but it's also key towards simplicity. Having a territory model as a secondary resource (for instance, for per-unit upgrades) would add an interesting yet controllable twist. And an intermediate tech layer like Tri said. I deeply despise those Upkeep systems that punish you mathematically for progressing (a la Warcraft3, and MoW has it from what I've noticed.. pfft), or prize cornered-to-death players with absurd comebacks (Battle Realms). At least Mario Kart does it a tad randomly wink.gif
Yeah, like that +5000% pierce damage bonus against structures for Axe Throwers. So realistic happy.gif Greg is a funny guy..


Holywtfshit MaDDoX has posted biggrin.gif biggrin.gif biggrin.gif biggrin.gif

Posts: 39,117

Clan: CrAzY

Game: Generals 2

+
# 17DMraider Apr 24 2012, 19:09 PM
QUOTE
or prize cornered-to-death players with absurd comebacks (Battle Realms).


Lol great game though! smile.gif

Posts: 5,764

Game: CNC Zero Hour

+

1 User(s) are reading this topic (1 Guests and 0 Anonymous Users)