[1.2 BUG] Guard ability reduces defence instead of increasing it

 

Looking at the picture the Guard ability "contributes" to the unit's defence with -3, when in fact it should increase it by +17 (the guarding unit's defence). (May it be that the Guard ability replaces the target unit's own +20 defence bonus (5 defence + 5 shield + 10 ability) with the guarding unit's (+17) for a net effect of -3?)

https://docs.google.com/file/d/0BwWub_tVgp0PMG5uRzR1bG5HYnM/edit?usp=sharing

3,598 views 3 replies
Reply #1 Top

So here is the calculation for the Guard ability 

        <GameModifier>
            <ModType>Unit</ModType>
            <Attribute>AdjustUnitStat</Attribute>
            <StrVal>UnitStat_Defense_Pierce</StrVal>
            <IsForFormattedDescription>1</IsForFormattedDescription>
            <DisplayName>Guarded</DisplayName>
            <Duration>1</Duration>
            <UpdateDurationAtTurnStart>1</UpdateDurationAtTurnStart>
            <Calculate InternalName="Calc" ValueOwner="CastingUnit">
                <Expression><![CDATA[[UnitStat_Defense_Pierce]]]></Expression>
            </Calculate>
            <Calculate InternalName="Value">
                <Expression><![CDATA[[Calc] - [UnitStat_Tactical_Auto_Defense_Boost]]]></Expression>
            </Calculate>
            <Calculate InternalName="ValueForFormattedDescription">
                <Expression><![CDATA[[Calc]]]></Expression>
            </Calculate>
        </GameModifier>

The bold is where your negative comes into play. The tactical auto defense boost is replaced by the other units defense. Thus, if your auto defense boost is larger than the guarding units defense, you yield a penalty instead.

I do not know the intent of the devs with this calculation, but it shouldn't be that the other unit being guarded should yield a penalty, but I do not think that they intended that you gain a super bonus when guarded and the other unit defending for the turn.

If they did intend to just do a simple add to the other unit as per the description, then it should be the following, per the description.

        <GameModifier>
            <ModType>Unit</ModType>
            <Attribute>AdjustUnitStat</Attribute>
            <StrVal>UnitStat_Defense_Pierce</StrVal>
            <IsForFormattedDescription>1</IsForFormattedDescription>
            <DisplayName>Guarded</DisplayName>
            <Duration>1</Duration>
            <UpdateDurationAtTurnStart>1</UpdateDurationAtTurnStart>
            <Calculate InternalName="Calc" ValueOwner="CastingUnit">
                <Expression><![CDATA[[UnitStat_Defense_Pierce]]]></Expression>
            </Calculate>
            <Calculate InternalName="Value">
                <Expression><![CDATA[[Calc]]]></Expression>
            </Calculate>
            <Calculate InternalName="ValueForFormattedDescription">
                <Expression><![CDATA[[Calc]]]></Expression>
            </Calculate>
        </GameModifier>

The problem yields that the defensive bonuses come into play and can make things rather large. Maybe they should just remove the base auto-defense stat to have something like this

        <GameModifier>
            <ModType>Unit</ModType>
            <Attribute>AdjustUnitStat</Attribute>
            <StrVal>UnitStat_Defense_Pierce</StrVal>
            <IsForFormattedDescription>1</IsForFormattedDescription>
            <DisplayName>Guarded</DisplayName>
            <Duration>1</Duration>
            <UpdateDurationAtTurnStart>1</UpdateDurationAtTurnStart>
            <Calculate InternalName="Calc" ValueOwner="CastingUnit">
                <Expression><![CDATA[[UnitStat_Defense_Pierce]]]></Expression>
            </Calculate>
            <Calculate InternalName="Value">
                <Expression><![CDATA[[Calc] - 5]]></Expression>
            </Calculate>
            <Calculate InternalName="ValueForFormattedDescription">
                <Expression><![CDATA[[Calc]]]></Expression>
            </Calculate>
        </GameModifier>

I would be interested to see what folks at Stardock say.

Reply #2 Top

that's an interesting find. so with the current state of that ability, you're better off using it on squishy damage dealing units with low auto-defense and you should actually avoid using it on "tank" units with defensive trait & shield, since it may even reduce their defense (if the defender champ has rather low base defense, i.e. only wearing leather armor or something).

i doubt it's really working as intended. imo, it should do what the description says - put the unit in def stance and add the "guarded" boost (defender's base defense value) on top of it. the boost wears off quickly, anyway (as soon as the guarded unit gets its turn), and i don't think potentially very high defense numbers for a very limited time are really a problem. it's hard enough to use it effectively even without the hidden penalty.

 

 

Reply #3 Top

The way it currently works it's hard, I agree. Surely this cannot be the way it's intended to work. I hope it can be fixed in the next patch.

A flat addition is the intuitive method. But the guarding unit should perhaps not be put in defensive mode. Even though it's pretty effective with that tower shield defender champ behind your main line.

Devs? Comment? Fix?