6
\$\begingroup\$

I am creating a space-based RTS. So far, we have three units:

Fighters (cost 5 resources)

Interceptors (cost 20)

Rocket Ships (cost 40).

I've designed this game in a Rock-Paper-Scissors format (Fighters beat Interceptors, Interceptors beat Rocket Ships, Rocket Ships beat Fighters), but the game is designed so that classes beat each other at cost (i.e. a single Interceptor will beat a single Fighter, but four Fighters (cost 20) will beat a single Interceptor (cost 20)).

In this case, when I am using the Incomplete Wins technique to calculate the proportions of each ship that I would expect to see, should I calculate interactions using 1v1 interactions or "at cost" interactions? I believe the two will lead to very different results (for example, a single Fighter does 20% of damage to Interceptor before it itself is destroyed, but four Fighters destroy the Interceptor while only losing one ship; the first interaction leads to a 1 resource advantage for the Interceptor player, while the second interaction leads to a 15 resource advantage for the Fighter player). I would think it I should do the latter comparison, but the linked page does a single unit comparison (one Knight vs one Archer, even though Knight costs half that of Archer)

EDIT: This RTS is partially derived from Total Annihilation/Supreme Commander, so no projectiles hit instantly and the scale of the game is intended to be somewhat large. In that case, should I instead perform comparisons between armies that cost the same? For example, instead of comparing one Fighter vs one Interceptor or four Fighters vs one Interceptor, should I instead compare 40 Fighters vs 10 Interceptors? Would that be more accurate and also help reduce randomness of projectile hits?

\$\endgroup\$
5
  • \$\begingroup\$ If you actually intend to have intransitive balance, classes beat each other at cost is impossible since that is by definition a transitive relationship. \$\endgroup\$
    – Jimmy
    Jul 19, 2017 at 18:35
  • \$\begingroup\$ How is the interaction between rockets and fighters? Do 8 fighters kill a rocket? Because if so there's very little reason to build any other unit except maybe supply cap. I feel like true rock paper scissors would play out with all ships costing equal. \$\endgroup\$ Jul 24, 2017 at 18:45
  • \$\begingroup\$ Well, it's kind of hard to say right now. Before I added a ship drifiting mechanic (to simulate real physics), Rockets were generally able to destroy 10+ Fighters before being overwhelmed, and that's even assuming you're not using the Rocket to kite the Fighters with their superior range. Now, Rockets can sometimes be used to take out 8 Fighters, but any Fighter that closes on it can drift around the Rocket to great effect. As soon as I implement linear targeting, though, Rockets should be able to kill more than 8 Fighters easily. I'm trying to make unit counters by a factor of two... \$\endgroup\$ Jul 25, 2017 at 5:17
  • \$\begingroup\$ ...in that 16 Fighters should be able to neutralize one Rocket, but anything less than 16 the Rocket might/probably will win. \$\endgroup\$ Jul 25, 2017 at 5:18
  • \$\begingroup\$ Also, Rockets are kind of a special case in that they have a much longer weapons range than they have sight range, so Rockets perform somewhat abysmally by themselves (because they generally can't see the enemies that they're supposed to shoot until they're too close!), but with other units (like Interceptors) helping to provide vision, they perform much better. I guess this balance is somewhat hard to analyze. I just tried disabling fog of war - Rockets easily crush 8 Fighters if they can fire on the Fighters as soon as they enter weapons range. \$\endgroup\$ Jul 25, 2017 at 5:28

3 Answers 3

4
\$\begingroup\$

(moving my comments to an answer) TL;DR: I think you're using the wrong tool for the job here.

game is designed so that classes beat each other at cost

This is, by definition, not an intransitive system. If each pair of classes has some equilibrium where the equally-costed groups stalemate with each other, then you're merely described a Rock-SmallRock-LargeRock system, not a Rock-Paper-Scissors system, and it would be pretty boring. If the break-even costs are different for each pair, then you can't analyze it with the win value matrix since the values for each row and column describe different things.

should I calculate interactions using 1v1 interactions or "at cost" interactions

The balance matrix system assumes discrete decisions. This means "should I build A or B?". Which means it's not a great model for an RTS unit balance. But if you insist on analyzing your balance this way you will definitely need to normalize by cost. If you don't, then you have a GrainofSand-Paper-Scissors system where Scissors is never in danger of being beaten and thus dominates everything else. As you mentioned in your example, the 4 fighters is more than 4 times as efficient than a single fighter due to how power scales with additional units.

should I instead perform comparisons between armies that cost the same

Scaling up the numbers shouldn't affect the outcome since the values in your matrix are about expected win value.

\$\endgroup\$
2
  • \$\begingroup\$ Wow, I was not even aware that I am not using an intransitive system. Heh, I guess I have a lot to learn. \$\endgroup\$ Jul 20, 2017 at 5:19
  • \$\begingroup\$ If I were to use "at cost" comparisons, would I be able to simulate an intransitive system, though? Also, given that you say that the balance matrix system is not a great model for RTS balancing, do you know of a better model that I could use? Thanks for all your help so far. \$\endgroup\$ Jul 20, 2017 at 5:22
2
\$\begingroup\$

The other answers cover a lot of points I'd make extremely well, so not going to repeat that advice.

I would add that the "maths" is only a starting point for balance in this kind of scenario, playtesting (and especially automated AI vs AI balancing) is always critical in achieving genuine balance.

Basically there's a whole load of factors that are extremely hard to balance just on maths - as you mentioned, one ship type has considerably longer range than the others. Long range often leads to scenarios where unit number scaling becomes unbalanced - e.g. a hundred rockets are waaaay more than 10x more powerful than ten rockets. But this can also depend on the map/level design - for example if it has lots of tight spaces that make it harder to exploit range/swarm firepower. A very open space is the reverse.

I'd look carefully at how your troop types counter each other:

  • Rockets are good against fighters because they have a lot of rapid fire/multi-targeting/area of effect weapons that makes them effective against lots of small, weak ships.

  • Interceptors are good against Rockets because they have a very powerful, slow firing weapon that does lots of damage to single, large targets (like Rockets).

  • Fighters use weight of numbers. This makes them situationally weak against those fast firing rockets, but strong against the slow firing interceptor (which may get a shot or two off but is quickly overwhelmed).

You can also make arcs of fire and turn rate important to this - maybe rockets have a large fire arc (say 180 degrees), but interceptors have a very narrow one (30 degrees).

As a mental exercise - this kind of scenario seems to lend itself to tactics of 'enough rockets to keep any fighters at bay, then more interceptors than they do'. I think maybe AOE weapons on the Rockets make sense, rewarding good micro/splitting of fighters and making them more practical. You might also want to consider "Carriers" for the fighters, which could help get them closer to the target. Fighters should be relatively cheap as you're going to lose a lot of them.

\$\endgroup\$
0
\$\begingroup\$
  1. whether one unit of fighters is 1 fighter or 5 fighters should not significantly change anything about how good fighter is. So normalize by cost.
  2. You should analyze how they work when used correctly. Therefore ignore that rockets needs scouts (if it's feasible for scout to scout for many rocket's for significant time), or in analysis add fraction of cost of fighter to rocket.
  3. You need another analysis for rushing purposes (where 1 fighter can be better than any other unit type, if it destroy their factory before they are built). But in this analysis you don't compare units. You compare player strategies and it depends on map, production model, defense of bases etc.
\$\endgroup\$

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .