Before I get into further discussion of these points, I'm going to put something else on the table.
Here are my rules that I have been using for PURE. They're the only things that aren't flexible- anything else can be done.
1. Every unit must be "distinctly different" from every other unit. Distinctly different is defined as: more than one major balance stat is very different than other units of a given cost tier, or that they have a very different weapon system than other units of that cost tier.
2. No units that have no niche uses will be included. A "niche use" is a nonstandard case, where a unit can perform tasks that might be novel or unexpected. For example, I have a unit that is most efficient when the battlefield is covered in Features, and when dead converts to a Feature that is an effective obstacle to most other units of the same combat power.
Most niche uses must be discovered and then improved upon, rather than by design. Call it, "improving on happy accidents", if you want, but I always do stuff like this.
3. No units that do not specifically counter at least one other unit will be included.
That's it. If a unit fits all 3 definitions, it might be a good choice- after that, it's all down to what I want, what I think will be fun, what the artists come up with. Simple, really. It doesn't cover "need to have" units- things that are in place to provide strategic-level gameplay- but it works for everything else.
Now, onto DPS.
Basically, you're all saying that, despite giving you a concrete and easily-tested method to demonstrate that DPS isn't a reliable figure, you want me to say, "hey, but it's useful, if you have a bunch of units that are remarkably similar in function".
If it will make you happier- fine, point granted.
Got a lot of tanks that are basically just tanks? Fine, use DPS.
Except, what about armor values, hitpoints, top velocity, acceleration, brakerate, turret rotation speeds, weapon velocity, range? Terrain? Gravity?
DPS is just ROF * Damage (which damage? do we use multiple Armor values?) * FlankingBonus... it doesn't even take into account area-effect, relative velocity of projectiles, guidance, or even relative percentile chances of a hit
Even compared to rough calculations done in a typical tabletop wargame, DPS is not likely to lead to statistically-accurate results. While I may not be being as polite as you might like, and I'll go ahead and grant "pompous" if it makes you feel better, I'm being accurate.
It'd be one thing, if Spring was a 2D, flat-world RTS, like StarCraft. Then we're just talking about relative DPS in a very small context- I don't think that, except for a few exceptions like the Yamato Beam, that Starcraft's weapons even took character's angles into consideration before firing calculations.
It's another thing in Spring. DPS isn't very useful as a yardstick- the game engine is too complex, if you're using all of the bells and whistles. It's just that simple.
Instead of just tearing down your arguments, though, which leaves nothing positive in its wake, let's talk about practical alternatives.
The first, and probably best alternative is for somebody to make a map designed just for testing units out with, under different conditions, but in a scientific way.
So, maybe we should just open up a discussion about making a map to run the "random enemies" script on, to do balance testing with, including areas like chokepoints of several sizes, positive and negative slopes, broken ground with heavy cover, forest, and a water area with a shoreline that is passable by almost anything that can go in the water. It should be easy to design something like that, with a player start on the bottom and a single start for the AI up at the top, where the AI is forced to go through lots of terrain types to get to the player... heck, if the resources were balanced well, it might even be fun for MP- one player gets resources, but has serious terrain disadvantages, whilst the other player gets fewer resources, but is in a much better defensive position...
That'd be a pretty good starting-place, and would provide a better experimental setting to evaluate things with, and test assumptions.
For another thing, you can simply assign units a generic "effectiveness" rating. That's what I've done in PURE. It's not a "real number". It's just a concept. But, combined with the rules I started with, it's been a fairly effective strategy, thus far.
I've done it very simply, via cost. Units that cost 4X more than another unit should be 4X more "effective". What does "effective" mean, though?
Well, that's a toughie, in a game that doesn't include a lot of similar units, which is one of the unit design goals I think that most games should have. The way that I do it is that I decide what each unit's job is- what it should be good at- and then I do some playtesting, and see how well it works, doing its specific job. Whatever that is. If it's a scout, I scout with it. If it's an artillery piece, I use it as artillery. Then I keep tweaking values until it feels like it's worth using, in that specific role. I'm not gonna apologize for the "squishy" sounding words, either- "feels like" is what I want to achieve, because, as I've stated before, game balance is perceptual, not necessarily actual. I want to know that if I was a player, using the unit correctly, that it does the job. I assume that players aren't stupid, basically.
Sometimes, that's all that I need to do. Sometimes, it's more difficult than that, because the specific role was either too-narrowly defined, and makes the unit useless within a larger mix of things, or was too-broadly defined, and I've come dangerously close to making something that's omni-purpose, and can be used for anything. When that happens, I redefine its role in some way.
For example, let's go look at the OTA Panther (a unit that has a close family resemblance with a unit in PURE, btw).
The OTA Panther was a unit that exemplifies the pitfalls and dangers inherent in looking at DPS values. Against ground units, the Panther is a fairly fast tank, that can deal two types of damage, at varying time intervals. One of the hidden factors in a unit with more than one weapon system that can fire at any target, btw, is how many fewer shots get wasted, in actual combat- the lightning weapon may have already killed that pesky AK, no need to waste a rocket. So, it's pretty dangerous to just look at DPS because of that factor alone.
However, it gets worse. The rocket is somewhat effective (in OTA, mind ye) against aircraft, putting this unit into a somewhat unique category, along with the Jethro and a few other dual-purpose units in OTA. Therefore, when you consider its real costs, you're basically getting a fairly fast tank that's moderately effective against most units, and can kill aircraft besides. It's not as cost-effective as units that just do one thing, but it can do many things.
Now, was it OP? No, I don't think it was. I think it was UP. Why? Range problems, a big corpse and footprint, and not quite fast enough to be really dangerous as a flanker. Many things were more effective for their costs, even in the dual-use roles. I'll take a huge stack of Jethros (IIRC, it was something like 5-6:1, on costs) for a Panther any day of the week. But, enough about that.
I have a unit like that, in PURE. In fact, I have three- but two of them were relatively easy balancing issues, because they aren't really multi-function- they do one job far better than they do the other, so it's obvious what they're for.
One of them, however, has proven to be one of what I think of as "fulcrum" points in the game design- if I don't balance it appropriately, then I might break the entire game. So, every time I've made major changes that effect game balance overall, like introducing all of the lovely FlankingBonus code into PURE... I have to rebal that unit pretty aggressively, along with the other fulcrum points... then adjust the other points until things are right again. I don't just adjust one thing at a time- every element in a game like PURE depends on every other element. But some are more important than others.
Identifying "fulcrums" in your game design is hard but necessary work. That's something that's individual to a game design, and they aren't always obvious. Don't assume, for example, that since Unit A is supposed to be a bread-and-butter unit, that it's a fulcrum... because in fact, it may be that the real balance depends on how well Unit X, which is one of the counters to Unit A, is working in that context. When I design a unit, I very specifically set out what role I'd like to see it in, mess with it until it seems to fit that role, then observe what happens when I take it out of that role. If a unit is supposed to counter another one, I look at that, then I look at what other things it is countering, and how well, and try to see it within the totality. It's not a perfect system, but it's fairly effective.
There are other methods, of course. One is to limit complexity, so that you can keep strict control over what balance means. I reject that approach, because, as people have pointed out in this thread, it means that you're providing players with a straightjacket, forcing them to wear it, and then asking, "hey, are you comfortable"? Not a good plan, imo. However, it's always an option, and in small doses, it's an effective tool.
Another is to just do whatever you think looks cool, or fits into a storyline or a given universe, and let balance sort itself out purely by what playtesters have to say about it. That's OK, except that you end up with tons of things that are probably going to be "obsoleted" by each other, to steal
Storm's phrase (
DRB and I used to laugh, both with him, and at him, depending on what we read- I'll never forget his hilarious put-downs, though, they were massively entertaining, even if his understanding of balance was sometimes dubious).
To solve that problem, you can either just ignore it and accept that it's going to happen, which is probably bad game design, but might make your fans happiest, or you can aggressively target the worst cases and remove them from the game in the interest of gameplay, then just don't talk about it in your hype and refuse to answer questions like, "hi, one of the novels about the Space Ninjas described how the Boolean Monsters had like, this huge army that was able to clone itself, and if they're not in the game, you obviously suck"
Please, resist the urge to make Boolean Monsters
