Does target size have to be a whole number? Or could you theoretically use decimal numbers like for infantry? That could help give a wider range for size tuning could it not?
This is an interesting question, and something I didn't realize. Decimal values are used for infantry, so I would think they should work for vehicles. If they do, then nothing needs to be doubled or halved, and it should be a lot easier (although, still a lot of work) to implement.
So a little while ago I made this post. Some people seemed to like it and said to make a thread, so here it is:
Fixing Vehicle Balance with Non-Linear Target Size Scaling – v2.0 NLTSS is easier to say, right?
If you don’t want to read this 5 page / 2,082 word post, skip to “Target Scaling” and “A Much More Intricate Formula – NLTSS v2.0.”
Preface
As pointed out by Sander93 in the other thread, this change would require an incredible effort by the balance team; it involves changing the target sizes of every vehicle, changing the close/mid/far accuracies of every AT-type weapon, as well as extensive testing to ensure nothing is broken.
With that said, I still think its worth at least discussing, if not for a possible implementation into CoH2 (maybe one day?), but possibly for “CoH3”, if that ever happens. Additionally, someone else may figure out an easier way to implement this, and can then propose their idea. Either way, it’s a fun thought experiment.
Overview
Right now, many would say CoH2 has a problem with vehicle balance. I think most players will agree that the current state of vehicles and AT is not conducive to ‘medium tank play’; either due to the current prevalence of TD and Heavy use, due to the power of ATGs and AT infantry, or due to other reasons. From discussions in multiple threads, it seems that the main issue is that AT units are far too generalist; most are simply excellent against all ‘classes’ of vehicles - heavies, mediums, light, etc.
The problem is, balancing a unit so that it excels against heavies and premium mediums, but not against regular mediums is exceedingly challenging. For an AT-unit to excel against heavy tanks it needs high penetration values; which means it will almost certainly penetrate mediums 100% of the time. The AT unit also needs to do significant damage, since heavies have high HP pools; this causes problems since mediums can often only survive 3 shots from these TDs, meaning they are forced to retreat after 2 hits – or one salvo, if there are multiple AT units (as is often the case). Additionally, due to salvos being entirely ‘alpha’ damage (reload isn’t considered), Rate of Fire adjustments won’t necessarily address this issue.
This leaves us with only one stat to play with: accuracy – and that is the topic of this post.
The Problem With Accuracy, Target Sizes, and Value Ranges
As it is currently implemented in the game, accuracy and target sizes are directly connected. The formula is (mostly) as follows:
Target Size x Accuracy = Chance to Hit Due to scatter, moving accuracy, and a few other values, this isn’t the entire formula, but for this discussion, it is accurate enough.
At face value, this formula seems fairly straight forward; if you want something to be easy to hit, make it big – and if you want something to hit things more easily, make its accuracy high. However, this isn’t the full picture; we also need to discuss value ranges.
First, let’s look at target sizes. This number simply describes how “big” a unit is – it (seemingly) does so in whole numbers, and the range is (from my understanding) anywhere from 0 to infinity (there is likely a max value, but I’m unaware of it). Initially, this seems fine; there are an infinite number of whole numbers, so just space out units a lot; a Tiger could have a size of 100, a Kubel a size of 10, and so on. However, this is not the case; in CoH2, vehicles currently range from a size of 14 (Kubel, etc.) to 26 (JT, etc.). This means that are 12 values we can currently assign to vehicles in the game; this is a problem.
Let’s take, for example, the current match-up between an M36 (USF’s ‘heavy’ TD) and the newly adjusted Panzer 4 and Tiger. The M36 has an accuracy of 0.035 at ’60’ range, the Panzer 4 has a target size of 20, and the Tiger has a target size of 26. This gives the M36 a 70% chance to hit the Panzer 4, and a 91% chance to hit the Tiger. This seems fine, but what if we wanted to adjust the M36 to miss against the Panzer 4 more often; for example, a hit rate of 60%? This would mean giving the M36 an accuracy of 0.03; but now it would only hit the Tiger 78% of the time. We could, instead, attempt to lower the Panzer 4’s target size to 17, but this also causes problems. We’ve achieved our 60% chance to hit the Panzer 4 while keeping the chance to hit the Tiger at 91%, but now the Panzer is actually harder to hit than the ‘222’ Scout Car (target size 18).
We’ve run into the issue with value ranges. Having a range of 14-26 leaves us with 12 ‘steps’, and gives us a “middle” target size of 20 (conveniently, the size of most mediums); the biggest unit can only be 30% bigger than a Panzer 4, and the smallest only 30% smaller. This is incredibly restrictive when balancing units, as it means that accuracy and target size can’t really be used to create drastic differences in the chance to hit vehicles of different ‘classes’.
Graph
With the current values, the M36 firing at a Kubel has a 49% chance to hit, firing at a Medium a 70% chance to hit, and at a Heavy a 91% chance to it.
What if we could change that?
Target Size Scaling, and Non-Linear Advantages
This is where the idea of scaling target sizes comes in. If we want more values to work with, we can simply scale the target sizes; for example, if we scaled everything by 2, we now have 24 ‘steps’ to work with, and if we halve the accuracy values of AT units, unit interactions remain the same:
Current Game: 0.035 x 20 = 70% chance to hit
2x Size/Half Acc: 0.0175 x 40 = 70% chance to hit
There is, of course, a problem with that. While the number of values we can work with has doubled, the difference between units hasn’t. A medium tank would now have a size of 40, and a heavy tank would have a size of 52 – which is still only a difference of 30%. This is the core of this idea; scaling unit sizes non-linearly gives us a much larger usable value range to work with.
In my previous post, I suggested scaling units by the following formula:
Size Increase = 2x(old size/26)
What this formula does is scale everything by a non-fixed ratio; for a kubel, with a size of 14, it has its target size increase by only 8%, to a size of 15, for a medium (20) its size increases by 54% to 31, and a heavy (26) is increase by 100% to 52.
If we use our ‘halved’ accuracy value for the M36 (0.0175), we now have new hit chances: A kubel (now size 15) has a 26% chance to be hit, a Medium (now size 31) has a 54% chance to be hit, and a Heavy (now size 52) has a 91% chance to be hit. If we refer back to our ‘live’ values, we have changed our chance to hit by -23%, -16% and 0%.
While we’ve successfully lowered the chance to hit a medium while keeping the chance to hit a heavy the same, we now have the problem (Sander93 pointed out), where very small vehicles are incredibly hard to hit.
This is indeed the biggest problem with this particular scaling formula. However, there are two things we can do to fix this: firstly, we could try scaling accuracy, and secondly, we could use a much more intricate formula.
Accuracy Scaling
With our new target size scaling, we can start to use accuracy values to tune unit performance more finely; this is something I suggested in my original post. Let’s assume we want our chance to hit mediums to be a bit higher than above; for example, 65% - while still using the new unit sizes. To do this, the M36’s accuracy would need to increase to 0.021, from 0.0175.
Graph
We now slightly improved hit chances: A kubel has a 31% chance to be hit, a Medium has a 65% chance to be hit, and a Heavy has a 100% chance to be hit. Compared to the current game, that’s -18%, -5% and +9%.
I believe this is a step in the right direction; Mediums are harder to hit and Heavies are easier to hit; but light vehicles are still a problem – but we can do better.
A Much More Intricate Formula – NLTSS v2.0
While I was happy with the general outcome of the formula above, Sander93’s comment is still accurate:
However, there are several implications (the smallest vehicles becoming very hard to hit for example) and it would require a tremendous amount of work and time to finetune everything.
Smaller vehicles become too hard to hit, and it requires an incredible amount of work to implement – arbitrarily changing 3 accuracy values per unit on top of changing the target sizes on every vehicle.
What we need is a formula to change target sizes in a way that smaller vehicles don’t become harder to hit, mediums do become harder to hit, heavies become easier to hit (or stay the same), and to do it in such a way that accuracy values don’t need to be manually fine-tuned (other than halving them). Essentially, we want to keep that 30% difference between small and medium vehicles, but we want to drastically increase the 30% difference between medium and heavy vehicles. This is my formula:
New Size = 2 x ((Old Size/26)^6) x Old Size) x 0.47 + 28
Now, you might be thinking: What is that?
Graph
With these new target sizes, the M36 at half its current accuracy (0.0175) now has the following hit chances: Firing at Kubel its 49%, firing at a medium its 56%, and firing at a heavy its 91%. Compared to the current ‘live’ values, we have changed our chance to hit by 0%/-14%/0%.
Additionally, the formula is scalable; the central exponent (the 6), can be increased or decreased to create a steeper or more shallow curve without changing the chance to hit the smallest and biggest vehicles. We can also stretch the height of the curve using the multiplier (0.47); this allows us to increase the chance to hit larger vehicles, with little change to mediums, and no changes to small vehicles.
As an example, let’s say we want small vehicles to stay the same as they are now, we want mediums to be 10% harder to hit, and we want heavies to be 5% easier to hit:
New Size = 2 x ((Old Size/26)^4) x Old Size) x 0.53 + 27
Graph
Now an M36 with 0.0175 accuracy has a 49% chance to hit a light vehicle, 60% to hit a medium, and 96% to hit a heavy – precisely what we wanted.
Of course, this also works with other unit matchups; let’s take a half-accuracy Pak40 (0.02 from 0.04), and apply the scaling formula again. The chance to hit a UC goes from 60% to 58%, the chance to hit a medium goes from 80% to 68%, and the chance to hit a heavy remains at 100%.
On paper, at least, this seems to work.
Conclusion
While it would be a fair bit of work to implement, I think that the above changes could solve the problem of Medium tanks being less viable in competitive play. By increasing the range of values we can use for target sizes, and halving the accuracy of all AT weapons, we can use a formula to systemically adjust target sizes to produce the desired hit chances.
Addendum
While writing this, it was pointed out that this would likely cause a lot of issues with SP units. If decimal values are permitted for target sizes (as infantry uses), then the proposed changes could be “halved”; this would allow the accuracies to remain exactly as they are now, and it shouldn’t impact SP too much, while still having the desired changes in MP. However, I don’t know if this is possible.
Isu is better purely because the HE outranges the ATGs
Yea. The ISU's power comes almost entirely from its HE round; that round is quite absurd.
The Ele can be obnoxious, especially on narrow "lane" maps, but it's still only a dedicated AT weapon. If you instead opt to focus on infantry and ATGs, it's not too hard to deal with, since it's a massive 720mp/245f/21pop unit that can do literally nothing to those units.
The ISU, however, doesn't have that downside. If you focus on tanks, like the STUG, Panther, etc. it can still (to some degree) deal with those, thanks to its strong front armor, and decent HP pool, mobility, and AP round. If you focus on infantry/ATGs, the ISU can deal with those exceptionally well, thanks to the HE round's massive AoE and range (it can out-range ATGs, as you said).
This is, of course, only considering the units themselves. As others have pointed out, the ISU docs are incredibly viable in a huge variety of maps, whereas the Ele only excels in the "Jaeger Armor Doc", which focuses almost entirely on AT and Recon, and offers nothing in terms of AI.
Additionally, when looking at docs to counter these vehicles, Sov is simply much better equipped. Ram + Offmap is a much better vehicle "deletion" system than anything OST has to offer. If the Stuka Dive Bomb had the ability to 1-shot the ISU, then things would be a fair bit different (although that would make SDB absurdly overpowered).
I think its been discussed over and over, heavy(-er) tanks should have a size increase, Heavy TDs then can have some accuracy cut, and then the Stug would be able to do budget-Jadgpanzer duty (which it kind of did in real life, a nice bonus).
I was thinking about this the other day; what if we doubled vehicle sizes, but halved accuracy values? On paper, what this does is massively increase the range of target sizes and accuracy values we can play with, while not actually changing performance between specific match-ups (at least, initially). Additionally, what if we scaled units non-linearly? We could really a difference between "big" and "small" units, while keeping interaction between similar units the same.
This is going to seem really strange at first, and it might even have some flaws; but let me explain. If you want to skip ahead, my idea is about halfway down (and in bold).
Let's take, for example, the IS-2, Panther, M36, Cromwell, Puma, and Pak40. I think that's a pretty good spread in terms of AT and vehicle 'classes' (and an ATG for reference). Here are those unit's current stats:
Unit
Size
Acc max range
IS-2
26
0.035
Panther
24
0.035
M36
24
0.035
Cromwell
20
0.025
Puma
18
0.025
Pak40
N/A
0.04
In terms of interaction between units:
The M36 has a 91% chance to hit the IS-2, 84% chance to hit the Panther, and a 63% chance to hit the Puma.
The Cromwell has a 65% chance to hit the IS-2, 60% for the Panther, and 45% for the Puma.
The Pak40 has a 100% chance to hit the IS2, 96% for the M36, 80% for the Cromwell, and 72% for the puma.
Now let's double the Target sizes, and halve the accuracy.
Unit
Size
Acc max range
IS-2
52
0.0175
Panther
48
0.0175
M36
48
0.0175
Cromwell
40
0.0125
Puma
36
0.0125
Pak40
N/A
0.02
In terms of interaction between units, nothing has changed:
The M36 has a 91% chance to hit the IS-2, 84% chance to hit the Panther, and a 63% chance to hit the Puma.
The Cromwell has a 65% chance to hit the IS-2, 60% for the Panther, and 45% for the Puma.
The Pak40 has a 100% chance to hit the IS2, 96% for the M36, 80% for the Cromwell, and 72% for the puma.
Now, here's my idea: we don't linearly scale the unit sizes; we want unit interactions between "heavy TDs" and "heavies" to be the same, but we don't want "heavy TDs" to interact the same with smaller targets. So let's instead scale the unit sizes by 2x(size/26). What this does, is scale the sizes for very large units by 2x (or close to that), but it scales the smaller ones by much less; the IS-2 increases by 2x, the Panther/M36 by 1.85x, the Cromwell by 1.54x, and the Puma by 1.38x.
Our sizes are now:
Unit
Size
Acc max range
IS-2
52
0.0175
Panther
44
0.0175
M36
44
0.0175
Cromwell
31
0.0125
Puma
25
0.0125
Pak40
N/A
0.02
So what does this do? In terms of interaction between units:
The M36 has a 91% chance to hit the IS-2, 77% chance to hit the Panther, and a 44% chance to hit the Puma.
The Cromwell has a 65% chance to hit the IS-2, 55% for the Panther, and 31% for the Puma.
The Pak40 has a 100% chance to hit the IS2, 88% for the M36, 62% for the Cromwell, and 50% for the puma.
Now, you might look at those new values and think; "some of those seem ok, but the Pak40 chance to hit is awful against small targets". Well, that's the fun part; our value ranges are much larger here, and we've scaled sizes non-linearly - we can now do some really interesting changes. Let's say we want to keep the Pak40's chance to hit about the same as it is in the 'live' version (see first set of results); so let's increase the accuracy to 0.027 (from 0.02).
Now the Pak40 has a 100% chance to hit the IS2, 100% for the M36, 84% for the Cromwell, and 68% for the puma. No change/+4%/+4%/-2% compared to the current 'live' version.
Now let's say we want to the M36 to still eat Panthers/Heavies, but be somewhat mediocre against Mediums: so let's increase it's accuracy slightly to 0.019 (from 0.0175).
Now the M36 has a 99% chance to hit the IS-2, 84% chance to hit the Panther, and a 48% chance to hit the Puma. +8%/No change/-15% compared to the current 'live' version; the M36 has actually been buffed against heavies, but it's received a large nerf against mediums.
This is the advantage of a much larger 'range' of values; we can fine-tune stat changes to hit on almost a per-class basis, with very little (or no) changes to other situations. We simply can't get that with the current target sizes; there isn't enough difference between a heavy (26) premium medium (24) and regular medium (22-ish).
To demonstrated the advantages with this larger, non-linearly scaled, range; here's what happens if we take the new values and "compress" them to the current ranges. I've hidden the results:
Thoughts?
TL;DR
Scale the target sizes on everything by 2x(size/26) (non-linear scaling) and halve vehicle accuracy (and then slightly buff/nerf where needed). A larger range of values lets us do some really interesting adjustments, while letting us keep what we want the same (or very similar).
/edit
I just noticed that the formula 2x(size/26) actually causes units to get smaller if they're under a size of '13'. Conveniently, the smallest vehicle is the Kubel at a size of 14, meaning that it increases by 1.07x (so it would just stay at 14).
Imo:
A panther driving straight towards a TD from max range should always loose.
Panthers and TDs should cost the same
Panthers should be given the Sherman’s smoke mortar barrage to allow them to close the gap instead of blitz as it offers more counter play
I agree with most of your points, except the first one. For "A panther driving straight towards a TD from max range should always lose" to work, OST would need a 60-range TD; otherwise they'll have literally no non-doc counter to allied 60-range TDs. STUGs/Panthers are out-ranged by 10, panthers couldn't gap-close, good luck getting shrecks in range, and Pak40s would be countered by arty/Pack-Howies/Scotts/rocket arty by late-game. Every OST game would devolve into heavy TDs.
Before some says "just flank"; consider that maps like Redball and Whiteball exist, and are quite popular.
No like all 3 times it died easily and it had 2 AT guns around it. I just flanked and chased with StuGGs, they barely ever bounced and it couldn't fight back basically. It also didn't do much on the anti infantry department, only like 1 wipe in a 51 min game and like 6 kills.
Not worth it imo.
If you're managing to flank with STUGs, chase, and didn't end up facing a horde of REs with Bazookas, it sounds like you just completely out-played your opponent.
Just fought a guy who built 3 Pershings in a 51 min game. All 3 died to my double StuGGs. I think the unit is UP at the moment. If there is to be a buff I'd like to see more of an anti-armour focus.
It's two dedicated AT vehicles (560mp/180f) fighting a generalist 'premium medium' (600mp/230f); that's generally what's supposed to happen.
I'm more surprised your opponent didn't have time to back away (or just didn't?), considering the STUGs have a 63% chance to pen at max range.
PD: we have a tournament in less than a week. Not sure if we will have a "meta" form by that point. Time will tell if people are gonna swap their precious SU or USF for UKF or not.
While I normally support the "wait for tournament" approach, this strategy seems to get much, much worse when there are multiple players. A single UKF player doing this is rough, but possible to counter. Two UKF players (so 10+ IS) is insane.
IS still have their reduced manpower reinforcement cost that got added like 5 years ago. It's time to realign them with the standard manpower formula.
Really the problem is that it's too cost efficient to just spam out tommies, not so much their raw performance. Sandbags should also not be on any mainline infantry unit, but that's a bit off topic.
Reinforcement cost isn't the problem, it's DPS.
Even if the IS' reinforce cost was increased dramatically (32-34mp or something), it wouldn't matter. IS blobs deal so much damage so quickly that there isn't enough time for them to take that many losses.
DPS needs to be toned down significantly, so that they trade normally with other infantry squads in most situations. Part of that is going to have to be revisiting/removing the cover bonus, so that their performance is (more) consistent throughout the game.
Even if increasing reinforce/build costs slowed down the prevalence of 5+ IS blobs, all it does is exactly that - slow it down. It needs to be fixed, not turned into a game of "don't let UKF hit critical mass".