Jump to content
  • 0

Defenses and afflictions don't stack properly


kmbogd

Question

I started a new play-through in version 1.03 and I'm double checking every battle. I've observed a weird behavior regarding deflection stacking which seems to be a bug (in the main section I asked, and people that replied agreed that it seems to be a bug). Please look at the reflex deflection of my character below (32 base + 5 from Fulvano's Glove):

 

initial%20reflex%20deflection_zpsfsgslof

 

During a fight, the following status effects were active on Eder:

 

in-battle%20status%20effects_zpsiyva1jwj

 

Notice the +10 reflex deflection from "Blessed was Wengridth..." chant. I would expect Eder to have 32+5+10=47 reflex deflection since the sources are different: +5 from item, +10 from chant. But the resulting reflex deflection is only 32+10=42:

 

non-stacking%20deflection%20from%20diffe

 

I am aware that deflections from the same source do not stack: +5 from one item and + 7 from another item gives only +7 total deflection. However, the sources of bonus deflection are different in the situation above: one comes from an item, while the other comes from a chant. This should be stacking.

 

Here is the save just before the fight.

  • Like 3
Link to comment
Share on other sites

15 answers to this question

Recommended Posts

  • 0

We have a forest troll which starts with the following defenses: deflection 31, resolve 66, reflex 26 and will 13. We hit him hard and the following afflictions are applied in parallel: dazed, frightened, flanked and prone (see image below). forrest%20troll%20afflictions%20and%20de

 

As you can see from above, its defenses have become 8(def), 66 (for), 9 (ref) and 5 (will). However this is not correct, they should be 7(def),66(for),4(ref) and 5(will). We will identify where points have been lost by seeing how defenses are modified once these afflictions disappear one by one.  The first that is over is the prone affliction. Theoretically, its effects are the following: -10 def, -10 ref, -2 dexterity => -4 ref. There is ambiguity in the description since we don't know if only the -10 ref is applied or also the additional -4 ref (that results from -2 dexterity) is applied as well. In-battle result is the following when prone is over:

 

thretened%20dazed%20flanked_zpsoo7whpjs.

 

We see that after prone is over, deflection has increased by 10 and reflex has increased also by 10. This should clarify the fact that -2 dexterity from prone affliction has no additional impact on reflexes. The description of this affliction should be changed to be more clear: one suggestion would be to use -6 additional reflex reduction, which added to the -4 reflex reduction from dexterity will result in an overall -10 reflex reduction.

 

Next dazed is over.  Dazed should theoretically have the following impacts: -2 dexterity=>-4 ref; -2 perception=>-2 def, -4 ref; -2 intellect=>-4 will. So, overall is should have: -8 ref, -2 def, -4 will. The in-battle result is the following:

 

frightened%20flanked_zps3jmm3icm.jpg

 

We see that after dazed is over, deflection has increased by 2, reflex has increased by 4 and will has increased by 4. This means that only half of the expected reflex reduction was applied: 4 instead of 8.

 

Next frightened is over.  Frightened should have the following impact: -2 dexterity => -4 ref; -2 resolve => -2 def, -4 will. The in-battle result is the following:

 

flanked_zpsxubmi2dj.jpg

 

We see that after frightened is over, deflection has increased by 1, reflex has increased by 3 and will has increased by 4. This means that there is a difference of 1 def and 1 ref from the expected result. From the image above we can also conclude that flanked works properly since there is only a 10 def deviation from the standard forest troll defenses.

 

To sum up, all the above conclusions:

  • prone description is ambiguous with respect to reflex defense impact: -10 overall or -10 + (-4) (from -2 dexterity); the in-battle implementation is -10 overall
  • dazed reduces with 4 instead of 8 the reflex defenses
  • frightened reduces deflection with 1 instead of 2; reduces reflex defenses with 3 instead of 4
  • Like 3
Link to comment
Share on other sites

  • 0

I've tested some more and actually there is no rule to what the miscalculations are. I've added stunned to the list of afflictions that have weird results: for example once it removed 31 reflex defense, other time it removed 42 reflex defense (I can provide examples like above if it is required). Normally it should remove 46: -30, -8 from dexterity reduction, -8 from perception reduction. I believe that developers should look very carefully on how they stack afflictions because right now there are extremely weird results. Only flanked seems to be working properly.

  • Like 3
Link to comment
Share on other sites

  • 0

@kmbogd, thanks for interesting bug reports. Just for to be sure, when concluding that afflictions doesn't work properly, do you take into account another bug which may interfere in some of your situations -- when negative defence modifiers from low attributes aren't properly lowered?

 

In case people aren't aware of that, short version:
When defence modifier from sum of corresponding attributes of a character is negative, then the resulting defence number is one point higher that it should be after application of the said modifier (regardless of it's negative value).

 

I checked that this bug is still present in the final game. For further details see thread on BB bugs forum:
http://forums.obsidian.net/topic/70457-435-defences-are-not-properly-lowered-from-low-attribute-scores/

 

A side note: In that thread Sensuki has revealed part of the old version of the source code. There was accidentally added 0.5 to the modifier and used int function for the rounding. I'm not aware of any thoughts from devs on this, so it's just a theory that this causes the bug.

 

 

-------------------
I mention this because of the chosen Forest Troll situation:

 

Forest Troll has base defences (checked in IEmod object viewer):
Defl 25, Fort 20, Refl 20, Will 20

 

This is lvl 3 enemy.

 

And his joint Attribute Bonus modifiers are:
Per 11 & Res  9 --> + 0 Defl
Mig 18 & Con 22 --> +40 Fort
Dex  9 & Per 11 --> + 0 Refl
Int  4 & Res  9 --> -14 Will

 

So then he should have defences:
Defl 31, Fort 66, Refl 26, Will 12

 

But due to the bug his Will defence is actually one point higher:
Defl 31, Fort 66, Refl 26, Will 13

 

Used afflictions by you are those:
Dazed: -2 Dex, -2 Per, -2 Int
Frightened: -2 Res, -2 Dex
Flanked: -10 Defl
Prone: -2 Dex, -10 Defl, -10 Refl

 

The creature has zero attribute modifier for Deflection and Reflex. Which means when there is any affliction lowering any of Per/Res/Dex attributes, then the negative modifier bug can be also triggered on Deflection (Dazed, Frightened) or Reflex (Dazed, Prone, Frightened) defences. Will defence is already bugged, so there will not be any more odd behavior visible.

Now I'm not completely sure on the stacking rule in final game. I though it should work that only one biggest debuff from active afflictions is used, with the exception of Flanked, which is special.

 

-------------------

So taking into account the mentioned bug and reverse applying afflictions with the stacking rule on mind:

 

Base:
Defl 31, Fort 66, Refl 26, Will 13

 

Applying Flanked:
Defl 21, Fort 66, Refl 26, Will 13
Note: there is no bug on Defl yet because Flanked influences it directly.

 

Applying Flanked + Frightened:
Defl 20, Fort 66, Refl 23, Will 9
Note: Defl & Reflex are bugged now due to low attributes bug.

 

Applying Flanked + Frightened + Dazed
Defl 18, Fort 66, Refl 19, Will 5
Note: only one -2 Dex debuff is used.

 

Applying Flanked + Frightened + Dazed + Prone:
Defl 8, Fort 66, Refl 9, Will 5
Note: only one -2 Dex debuff is used.

-------------------

 

Hm. Now from my perspective it seems that except the low attributes modifier bug the afflictions themselves work as intended. But it's definitely possible that used assumptions on the stacking rule are wrong. I will try to go through your course ones more time later. But any comment/correction would be useful.

Edited by ushas
  • Like 1
Link to comment
Share on other sites

  • 0

Thank you ushas for your very detailed explanation. Makes sense what you say, the source being the same, affliction/debuff, only the worst attribute penalty should be taken into account. The only note is, like you mentioned yourself, there is indeed a bug with the negative defense attribute that makes it higher by 1 than the expected value. One other note that is important for the mechanics is that afflictions that have also a direct impact on particular defense (for example stunned -30 ref ) will make use of both the direct defense penalty and the indirect defense penalty (via attribute penalty: - 4 dex => - 8 ref) if the attribute penalty is the highest among the penalties for that particular attribute.

 

Still, with respect to buffs, I don't understand why they are not stacking, especially when they are direct defense buffs and with different sources. Direct defense afflictions/debuffs are stacking even if they come from the same source: -10 def from flanking and -30 def from stunned give -40 def overall.

Edited by kmbogd
Link to comment
Share on other sites

  • 0

For better visibility the low attributes bug is opened in the unofficial community bugtracker:

https://github.com/PoE-unofficial/Pillars-of-Eternity-bugtracker/issues/12

 

 

Still, with respect to buffs, I don't understand why they are not stacking, especially when they are direct defense buffs and with different sources. Direct defense afflictions/debuffs are stacking even if they come from the same source: -10 def from flanking and -30 def from stunned give -40 def overall.

 

The flanking affliction is an exception and it stacks with everything. However, according to the same sources not stacking rule all the other afflictions shouldn't stack the same direct defense debuff. At least I think it still works like this. If you happen to find other combination of afflictions which stack (not the flanking one), it's possibly a bug. 

Edited by ushas
Link to comment
Share on other sites

  • 0
I can't tell you what the stacking rules ARE but I can tell you what they are SUPPOSED to be. Links below are to crossposts I've made on this forum, original source is Josh Sawyer on SA forum.
 
 
 
There's a glossary entry for Stacking, but the essential information is that there are four broad categories of bonuses: passive, active/modal, equipment, and weapons/shields.
 
Passive almost always comes from things like Abilities and Talents that you don't need to activate.  All passive bonuses stack.
 
Active/modal abilities come from spells, Abilities, Talents, consumable items (potions, food), and resting bonuses that are activated and/or have a duration to them.  The highest bonus from this group is applied.  All others are suppressed.
 
Equipment is everything you don't put in your hand slots.  Armor, hats, gloves, belts, books, cloaks/amulets, etc.  The highest bonus from this group is applied.  All others are suppressed.
 
Weapons/shields are just weapons and shields.  All of these bonuses stack.
 
Food and inn bonuses are useful for long-term Attribute checks and Rite scrolls can be used for long-term Skill bonuses

 

 

 

 
 
 
 
The stacking rules should apply in all cases, so if you have two active effects, one granting +1 and one granting +2, the latter will apply and the former will be suppressed. In the case of negatives, it takes the lowest rather than the highest.  So if you have the following modifiers to, let's say Might:
 
* Active/Modal: +1, +2, -1, -1, -3
* Weapon: +1
* Equipment: +1, +2, -1
* Passive: +1
 
You would have: +2, -3, +1, +2,  -1, +1 = +2
 
 
 
 
 
 
So if you're stacking Afflictions like Frightened, Confused, Paralyzed, etc., you're generally only going to get the largest debuff from any one condition, because generally they're all gonna be active/modal. Note that this means some abilities are a lot less useful than they seem on paper. The one exception to these stacking rules seems to be Flanked, which for some reason seems to stack with everything regardless (possibly because it counts as "passive" rather than "active/modal").
Edited by Dr. Hieronymous Alloy
  • Like 1
Link to comment
Share on other sites

  • 0

Identical bonus stats don't stack, regardless of their sources. I believe the same goes for debuffs.

 

Equipment and defense buffs are always suppose to stack, and do expect in this case apparently.  Hence it's a bug.

 

For instance, ring of deflection + any number of wizard of deflection spells stack.  This is the same thing.

Link to comment
Share on other sites

  • 0

In version 1.04Beta4, the defense stacking from multiple sources is still not working:

 

Defense%20stacking%20issue%20from%20diff

 

As you can see from the picture above: +10 Will/Fortitude due to the active chant (active source) does not stack with the +5 Will/Fortitude from cloak (item source). The latter being suppressed.

 

I believe that this is quite an important bug, not game-breaking but not minor either. 

Link to comment
Share on other sites

  • 0

For buffs they don't and they should. For debuffs they do, but the stacking calculation is not really ok.

 

A buff from an active/modal ability should stack with a buff from a wearable item.

 

From the in-game Cyclopedia:

 

U5KWC3u.png

 

 

  • Like 1

"Some ideas are so stupid that only an intellectual could believe them." -- attributed to George Orwell

Link to comment
Share on other sites

  • 0

Thanks Ineth. Dr. Hieronymous Alloy also made it quite clear. There are definitely bugs with respect to stacking buffs from different sources.  Afflictions are also affected by the bug that makes a particular defense modifier increased by 1 when the sum of corresponding attributes of a character is negative.

 
Link to comment
Share on other sites

  • 0

 

 

Afflictions are also affected by the bug that makes a particular defense modifier increased by 1 when the sum of corresponding attributes of a character is negative.

This is a rounding bug: You can convert to integer positive float values after adding 0.5 to them, and it will in effect be a fast rounding operation. For negative float values though, you need to subtract 0.5 before the integer conversion.

 

As long as the game does this erroneous rounding once for all afflictions, rather than once for each individual affliction, this bug is pretty much meaningless :) (It's still rather minor even if it occurs for each individual afflictions)

 

 

 

 

There are definitely bugs with respect to stacking buffs from different sources.

This one is a little more concerning if it confirms.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...