Oh well, I've been running into a spot of inconsistent constraints when trying to put a cost on AutoHeal AND impose certain (im)balances, so since that solution proves not popular I won't pursue it.
There's one other thing I will suggest, but first a brief explanation of why I said that the cost formula (if we make a few assumptions) will be exponential. Once we see that calculation, I'll give you my proposed alternative. So here goes:
Let there be a large unit, L, and a small unit S, and they have H_l and H_s Hits respectively. To guarantee croaking the large unit, I need k_n small units; I need to guarantee croaking the large unit, or else it will autoheal and the attack rendered useless. I also want the cost of the small units I use to be less or equal to the cost of the large unit. So therefore,
Cost(L) >= k_n*Cost(S).
What's k_n? Well, the large unit actually may have as much as H_l*8/(8-Defense of large unit) hits, while the small units may make as little as 0.5*2*H_s damage. This works out to
k_n = (H_l/H_s)*(8/3).
One more thing. I'd like, say, to impose that this cost inequality be valid as you increase Hits for the large unit by 1. It's easier to see the exponential character this way, because the inequality become
Cost(H_s + 1) >= ((H_s + 1)/H_s)*(8/3)*Cost(H_s).
Notice that I said that the cost of the unit becomes merely a function of its Hits. It's a reasonably safe approximation, if we agree to consider that both Large and Small units are in a way similar- maxed out in Defense and Attack, and of the same Move.
So anyway, the formula above, let's make it an equality. It defines via recursion a function, and that function is
Cost(H) = H*((8/3)^Hits)*Cost(1)
There's now two options. The obvious one is to
Relax a bit the requirement of small-vs.-large efficiency. Maybe a small unit is not that effective against a large unit that has one more Hit than it does, but it may be efficient vs. a large unit that has n more hits. We get the following recursion formula:
Cost(H_s + n) = ((H_s + n)/(H_s))*(8/3)*Cost(H_s)
Which means that the function itself is
Cost(1 + a*n) = (1 + a*n)*((8/3)^a)*Cost(1) for Hits = 1 + a*n (Hits: 1, 1+n, 1+2*n ...),
Cost(2 + a*n) = (2 + a*n)*((8/3)^a)*Cost(2) for Hits = 2 + a*n (Hits: 2, 2+n, 2+2*n ...),
Cost(3 + a*n) = (3 + a*n)*((8/3)^a)*Cost(3) for Hits = 3 + a*n (Hits: 3, 3+n, 3+2*n ...),
Cost(a*n) = (a*n)*((8/3)^a)*Cost(n) for Hits = a*n (Hits: n, 2*n, 3*n ...).
So in other words we limit the exponent a bit for 8/3 to values where it doesn't explode.
Then there's solution number two. The exponential nature was produced by the k_n factor (see the first spoiler), so here's one way to combat that. Increase the Attack Cap, so that
k_n = H_l/H_s.
(For H_s = H, H_l = H + 1) If we have a recursion
Cost(H+1) = ((H+1)/H)*Cost(H),
then solving the recursion yields
Cost(H) = H*Cost(1), which the current formula allows.
Now to actually make it so that k_n = H_l/H_s, we need the damage cap for the small unit to be
(8/3)*(1/(0.5)) or in other words 16/3.
So at the end of that we have a cap for Attack of 16/3 for small units (16/3*Hits, or 12*Hits^(2/3), whichever is lower, to keep the current property of the attack cap that it starts to get worse after 9 Hits).That means a unit can do slightly more than 5 times its Hits in Attack.
Ok, what does that mean? What chances does a larger unit have to survive this attack? For this comparison, let's say we have 1 Small unit with 9Hits and 48Attack, and a large unit of 10 Hits or more. Running once through the calculation for the 10Hits unit:
- first, let's see what are the odds for the small unit to roll x% or worse. The dice roll as (2d6+8)/20 which gives
1 in 36 cases to roll 50%.
3 in 36 cases to roll 55% or worse.
6 in 36 cases to roll 60% or worse.
10 in 36 cases to roll 65% or worse.
15 in 36 cases to roll 70% or worse.
21 in 36 cases to roll 75% or worse.
26 in 36 cases to roll 80% or worse.
30 in 36 cases to roll 85% or worse.
33 in 36 cases to roll 90% or worse.
35 in 36 cases to roll 95% or worse.
36 in 36 cases to roll 100% or worse. Duh.
- next, a unit with X hits may have as many as X*8/3 combat hitpoints. A unit with 10Hits actually has 26.(6) combat hits. From this, we see that if the 9H unit rolls 50%, or even 55%, the 10H unit survives. The 10H unit therefore survives in 3 of 36 cases.
- Moving on, the chances of survival for units with more Hits are:
6 in 36 for 11H
10/36 for 12H
15/36 for 13H
21/36 for 14H (better than fair)
26/36 for 15H
30/36 for 16H
33/36 for 17H
35/36 for 18H
and a unit with 19H will always survive being attacked by one maxed out 9H unit.
So. Yeah. The odds, themselves, seem fairish to me. However, as consequences of that attack cap we have
- all units better have max def, unless they, because of other specials, do not expect to be on the front
- carnage, motherfucking carnage. The piles of bodies will reach the skies, and while Erfworld has autoheal, it kinda has this too somehow.
The whole point of this is lost if you keep it a secret.