Cold Takes/2 - Quant's Rule

From Zero-K
Revision as of 14:38, 29 December 2023 by RandomX (talk | contribs) (Added formatting/images/quotes. I have no intention of correcting anything in the actual text though. That's for the original author to do if he deems it necessary.)
Jump to navigation Jump to search

Cold Take #2 - Quant's Rule

Posted 16 December 2023


Quantum, Lead Developer of Complete Annihilation (CA)

Quantum devised the rule above early in CA history, perhaps as early as 2007, and it is still at the core of Zero-K. I don't know exactly when, or even if, Quantum said the rule in its eventual form (I wasn't there right at the beginning). However I do know that Quantum was the lead developer (he responded to the ticket "Your lead developer is a nub" on the issue tracker). In any case, the rule is responsible for keeping the 100 or so units in Zero-K unique, useful, and interesting.

Quant's Rule is about game balance, and vitally it is an active rule rather than an abstract principle. It tells us what to do when a unit is to be made weaker (nerfed) or made stronger (buffed). It was devised to guard against the concern that a balanced game is a boring game. The validity of this concern is up for debate, but if you play enough RTS you will see both extremes. At one end there are games with many exciting tools which barely feature in viable strategies. At the other end there are games that seem balanced, but at the expense of any interesting unit variation.

Original Total Annihilation was towards the "zany but imbalanced" side of things, with tonnes of units, but few that turned out the be viable. Many games were like this in the late 90s. You might say that viability is only a concern for hardcore competitive players, but we think it matters for anyone who really wants to puzzle out the game. In other words, to strategise. No matter the game mode, it is a bit disappointing when the unit roster effectively shrinks as your understanding grows. Some TA mods tried to address this with balance overhauls, and Complete Annihilation comes from that lineage, so the question of how to balance many units was front of mind. Lance laser example.

Take Lance as an example of Quant's Rule in action. Earlier this year it was identified as a bit too powerful, so needed a nerf. As per Quant's Rule, its weakest aspects were the first candidates for potential changes. We kept those candidates in mind while discussing and reviewing replays, watching for ways to make them worse that would affect its overall performance, without making it feel terrible to use. Other attributes may be nerfed, but not its main strengths, so Lance was extremely unlikely to lose any of its impressive burst damage. In the end Lance was mainly nerfed on cost and reload time, which are both significant weaknesses, with minor nerfs to range and speed.

Stepping back, what even is a strength or a weakness? It seems like a silly question, but consider that units are made of numbers, and no number is objectively "weak". The answer is that strength is relative, based on comparisons to other units, but here is where it gets interesting. Units can be compared within roles, across roles, across factories, or even across the entire game. There is flexibility here, and it is where unit roles and factory identity are taken into account. Were the minor range and speed nerfs for Lance appropriate? On one hand, artillery is slow and and long ranged. But on the other hand, Hovercraft are fast and Lance has below average range for heavy artillery.

Which attributes are sacrosanct varies by unit and role. Consider Bandit, the Shieldbot raider. As a raider, Bandit is one of the fastest units in the game, but within raiders, Bandit is one of the slowest. The interplay of speed between raiders is vital, which causes Bandit's speed to be judged as a weakness. This means Bandit is very unlikely to receive a speed buff, just like how Lance is not going to have its damaged nerfed. As an aside, Bandit is not going to have a speed nerf either due to another rule dating back to CA.

Bandit Rule: Raider speed is at least 90 elmos/second.

There is a subtlety to Quant's Rule that highlights the difference between balance and design. A designer is like an architect, with a high level idea of how units should feel and interact. The balancer is like a builder, implementing the details of a design, finding numbers that make units behave as they should. The same people often do both jobs, but the mindsets are different. Quant's Rule is a guide for those deep in the weeds of balance, where things are made much simpler by not having to simultaneously think like a full designer.

Speed vs Range.

As a design principal, Quant's Rule is about giving units space to be unique. Consider the design space of units, like the plot above, but with many more dimensions for things like health and cost, as well as for fuzzier attributes like firing pattern. Then realise that this is not a static space, for if Ronin were given more range then it would shift to the right. Balance patches bestow the space with concepts of "movement" and "force". Quant's Rule is a force that pushes units away from each other, since buffing strengths and nerfing weaknesses stretches units out along each dimension. This naturally expands the space, makes units more distinct. A more conservative, or directionless, approach to balance risks units gradually drifting towards each other into a black hole of banality. Quantum presumably saw such a drift towards the average as the default, and created a rule to counteract it.

As good as it might sound, remember that Quant's Rule is primarily about balance. You can interpret it as a design goal, but it works best when telling balancers which types of changes to prioritise, and which are off-limits. But sometimes, balance fails. This recently happened to Blastwing, which previously dealt most of its damage via ground fire, but just lost its ground fire and gained significant direct damage. This change would seem to violate Quant's Rule, if not for the fact it is a design change rather than a balance change. The change was a result of the balancer going back the designer, saying "Quant's Rule has been tried for years and Blastwing isn't working", and asking for a new design. It was then time to don designer mindset and teleport Blastwing to a new point in design space, because the balancer should not be expected to make long treks to more fertile designs by themselves. Almost all the units are in a good spot by now though, so these events are pretty rare.

It would be hard to claim that Quant's Rule is entirely unique to Zero-K. The formulation and centrality, perhaps, but similar ideas seem to have made it into other schools of game design. From time to time I come across mechanics or patch notes that have a definite flavour of Quant's Rule, and the games that do this regularly tend to be my favourites. It is also less demanding than I have made it out to be. In the end, it is a guide, and it is invoked less frequently as we improve at holding the balance and design mindsets simultaneously. It is still great for discussion between developers though, but only if we explain it to newcomers. Good thing there is now a 1000 word post on the subject.