[1.00] Fixing Growth, Shrink, Giantform and all those other spells that affect size

Yes, I suck at formatting. Deal with it.

 

 

The problem is essentially this: These spells take the total attack value of targets, then provide an absolute Attack_Boost. Casting Shrink or Shrink_Ability on targets with existing multipliers will devastate their attacks. A perfect example of this is when a player casts Shrink on a Juggernaut or Escaped Juggernaut.Their attack is reduced to 0, making it a free kill.

But let's start at the beginning.

In FE, multipliers are additive. That means if I have two effects that grant me +50%, then the result is that I get +100% (50+50=100).

Shrink, for example, fetches the final attack value from its target, then reduces its attack value by half that. But the Juggernaut has a multiplier in effect already.

Juggernaut base attack: 10
Juggernaut final attack: 10 + 200% = 30 <- Game fetches this value for Shrink

Shrink then takes that value and divides it by half, and gets 15. This is "half the Juggernaut's attack value". It then removes that value from the Juggernaut.

Juggernaut's Shrunk attack: 10 - (30/2) = 0
Juggernaut final attack: 0 + 200% = 0

This problem does not only affect Juggernauts. Let's take a Champion instead. This champion is a bit of a nutter and has amassed the traits Swordsman, Swordsman 2, Swordsman 3 providing it with (10%+15%+20% = 45%) multiplier to its value.

Swordsman's base attack: 20
Swordsman's final attack: 20 + 45% = 29 <- Value fetched by Shrink
Swordsman's Shrunk base attack: 20 - (29/2) = 5.5
Swordsman's final attack: 5.5 + 45% = ~8

 

These problems applies to Growth spell and GiantForm spell as well, but in reverse (there, instead, you gain additional bonuses for casting it on such units instead of suffering penalties).

 

The Fix

The fix is simple. Instead of applying absolute attack_boost values that are calculated using a formula, apply the modifiers as multipliers instead. This way, the spells will work as modifiers of the base value instead of the multiplied value.

Swordsman's base attack: 20 <- Value fetched by Shrink
Swordsman's final attack: 20 + 45% = 29
Swordsman's Shrunk base attack: 20 = 20
Swordsman's final attack: 20 (+45%-50%) = 20 * 0.95 = 19

 

 

 

8,544 views 12 replies
Reply #1 Top

Assuming it's this straight forward, it looks like an easy fix. Hopefully this gets included in the upcoming patch.

Reply #2 Top

Quoting Heavenfall, reply 1
Yes, I suck at formatting. Deal with it.
End of Heavenfall's quote

But you're really darn good at providing solutions for the bugs where as I'd be lucky to catch it. 

Reply #3 Top

This is definitely something that needs to be fixed. Interestingly, while currently base value increases are always better than equivalent +% modifiers (since the base increase is subject to modifiers itself), with your suggested fix base value increases gain a penalty: vulnerability to shrink and other negative %modifier spells.

A +10 base increase on 10 attack will get completely wiped out by shrink, while +100% modifier on 10 attack is much more resistant to shrinkage: 10 + 100% - 50% = 15. The situation is of course reversed for positive modifiers like growth; base increase is still preferred in those case.

I don't think it is necessarily a bad thing, just pointing out that a +20 attack sword behaves differently to a +10 attack/+100% physical attack sword. The former is preferred most of the time as it makes much better use of your other multipliers, while the latter is a specialty weapon that grants an implicit resistance to shrink. Juggernaughts become pretty much immune to shrink, and the assassin's critical strikes are also mostly unaffected; both are interesting changes from RP perspective.

Reply #4 Top

Yeah, this isn't a "great" solution, but I think it's better than what we have now where you can take out an escaped juggernaut as soon as you get Life3.

Also, one of the factions in Stormworld - the Frost Giants - depends almost completely on multipliers for their units (all their trained units only have 1 member). So whether or not the devs think the fix is an acceptable solution, I'm putting these changes in the next version of Stormworld. Otherwise you have a single spell that can take out an entire faction's army units and militia, which I obviously cannot allow.

Also, multipliers is far preferable from an RP standpoint because with multipliers you actually multiply the correct damage. The attack_boost just inserts itself to the strongest physical force you have.

In other words, if you use the Heart of the Glacier (21 cutting, 21 cold attack) and cast Giantform on that, you'll end up with a sword dealing 63 Cutting, 21 Cold, whereas it should be dealing 41 cutting, 41 cold.

Reply #5 Top

The more I think about it, the more I like it from an RP perspective.

Juggernaughts and giants should be resistant to shrink; a smaller giant is still pretty damn big. Same goes for critical strikes: size doesn't matter nearly as much for an assassin capable of slicing your throat. Proper damage types are also a plus, as you point out.

Reply #6 Top

Bump.

Sincerely
~ Cpn-Bump

Reply #8 Top

IMHO the fix would be better if we just applied Shrink/Grow as a separate multiplier ...

i.e.

Final Attack = [Base Attack] * [Shrink/Grow-Multiplier] * [All other Multipliers]

 

This way we would get exactly the thing that is advertized, i.e. halving the doubling/attack value of the targetted unit:

In case of the Swordsman example:

[Attack Final] = 20 * 0,5 * 1,45 = 14.5 -> 15 (after rounding up)

In case of the Juggernauts:

[Attack Final] = 10 * 0,5 * 3 = 15

Reply #9 Top

I'm weak at maths, but it seems that something should be done with them

 

Reply #10 Top

Fixed, thanks.

Reply #11 Top

Quoting Derek, reply 11
Fixed, thanks.
End of Derek's quote

Thanks!

~ K

Reply #12 Top

Make sure the description reflects that it's reducing/increasing the base value instead of the overall attack.