Originally posted by
moozooh
Thank you for the response; there are a few things I'd like to address.
Burning is not a "status effect".
The reason I treat it that way is because that feels like the most reasonable way to implement it in the game's logic: instead of scanning through a large list of possible sources of fire damage over time that affect the player at the moment the flask only needs to flip one bit, e.g. "is_burning", from 1 to 0, that constitutes the removal of burning, and that, in its turn, propagates to the sources of fire damage over time. Isn't it how it's implemented? Otherwise you'd have to hardcode any new source of fire damage over time into the flask's (or any other possible source of the same effect) mechanism of action so that it didn't forget to remove it.
Out of curiosity, were debuff-less (hence, invisible) DoT effects planned from the beginning? Because nowadays it feels weird that you'd single-out burning ground with its own debuff but not any other source of ground-based fire damage. The fact that you sometimes cannot ascertain the source or the type of damage you are taking is no less concerning because it feels unfair to the player to leave them without a means to make an informed decision to counteract it. I mean, not everyone reads the wiki or poedb.tw, right?
The reason the flask doesn't remove things which are continuously dealing burning damage, such as things dealing burning damage while you're in a specific area, is that they'd be immediately re-applied anyway
Have you considered making it so that burns deal significantly less damage during a Dousing flask's effect? Because as of right now it is pretty useless against e.g. Scorching Ray (very noticeable in PvP!) whereas a flask of Heat gives full protection from continuous sources of chill. Granted, making a powerful effect against a non-lethal mechanic is easier to balance, but the fact that you can't reasonably counteract a continuous burn the way you can counteract some other sources of damage over time (e.g. poison, bleeding/corrupted blood) is somewhat saddening. Or maybe there should be a flask base that specifically protects against damage-over-time effects—something to consider!
The standard behaviour for all buffs or debuffs in PoE is that you can only be affected by the strongest of each specific type of buff/debuff (i.e. only the strongest ignite is in effect at any time), but buffs/debuffs of different types don't interact or conflict, even if they do similar things.
That's exactly the problem. Like you said, a burn is not a debuff. It's just damage over time, so there is no intuitive argument that leads one to reasonably assume the mechanics of their interaction and end up right. So it's not like a burn is overwritten by the strongest burn—it's more like a burn from a particular source is only overwritten by the strongest burn from that particular source of damage. Which then requires understanding of what a source of damage is—and I'm sure you of all people know how many times you've had to explain this even to those who've had plenty of experience with the game.
On a related note, is there any explanation as to why my character is not being ignited on crit in this case? As you can see I wear both an item that converts a portion of incoming damage to fire (the Redblade helmet) and a ring that specifically gives enemies a chance to ignite (Mokou's Embrace). You can see I'm being crit by the Commandment of Light proccing and the occasional shock from the Lightning Coil but not a single burn despite ignites being damage-agnostic (so with both of those items on I should be ignited almost indefinitely). I have no sources of "cannot be ignited" anywhere on my gear; here's the link to the character (the only thing I swapped out since the recording was Mokou's Embrace).
The reason I treat it that way is because that feels like the most reasonable way to implement it in the game's logic: instead of scanning through a large list of possible sources of fire damage over time that affect the player at the moment the flask only needs to flip one bit, e.g. "is_burning", from 1 to 0, that constitutes the removal of burning, and that, in its turn, propagates to the sources of fire damage over time. Isn't it how it's implemented?
I'm not sure I have a great grasp on the way you think this stuff is structured, but I have enough of one to say it's definitely not like this.
Have you considered making it so that burns deal significantly less damage during a Dousing flask's effect? Because as of right now it is pretty useless against e.g. Scorching Ray (very noticeable in PvP!) whereas a flask of Heat gives full protection from continuous sources of chill.
The flask's main purpose is immunity to ignite - all the flasks are meant for ailment protection rather than general protection from debuffs associated with a type. The removal of other burning effects is an extra bonus that was primarily left in because it was decided that it was cool to be able to use it as a means to turn of Righteous Fire. The flask isn't really meant to work against all forms of burning.
That's exactly the problem. Like you said, a burn is not a debuff. It's just damage over time, so there is no intuitive argument that leads one to reasonably assume the mechanics of their interaction and end up right. So it's not like a burn is overwritten by the strongest burn—it's more like a burn from a particular source is only overwritten by the strongest burn from that particular source of damage.
Ignite is a debuff. If multiple ignites are applied, only the strongest one is having it's effect.
Herald of Ash's burning is a debuff. If multiple of that debuff are applied, only the strongest one is having it's effect.
Ignite and Herald of Ash's burning are entirely unrelated debuffs, so having one doesn't affect the other - if both are present, both have their effect.
These are the standard rules of buffs/debuffs, and they work the same way for these, or any other sources of burning damage, as they do for e.g. Grace and Fortify. If you have multiple of the same type, only the strongest of that type does it's thing. If you have both, both do their thing, because they're different buffs.
"burning" is not a type of debuff, it's a type of damage which is dealt (almost) exclusively by individual buffs/debuffs/other timed effects which all follow this same set of rules, just like all the buffs/debuffs/etc that don't apply burning damage.
On a related note, is there any explanation as to why my character is not being ignited on crit in this case
Ignite does not care about the damage you take from the hit, the enemy calculates it's ignite damge and it's hit damage from the same base damage (by applying different modifiers. This results in a Physical damage hit and 0 ignite damage (and thus no ignite), because the enemy has no damage that can ignite. Then your stat takes the physical damage hit and says "I take some of this as fire damage". This is entirely independant of the ignite damage which was already calculated separately.
Shock is different, because non-damaging ailments are calculated based on the damage you take. Damaging ailments are the enemy's damage, and so are calculated from their base damage.
Damaging ailments used to calculate from damage taken, like non-damaging ailments, but this was changed in 3.0.0 to remove double-dipping, which was unintuitive and made them hard to balance. These images I posted at the time explain the way the damage is calculated in more detail, and the series of manifesto threads which it was posted in the comments of explain the reasoning and effect of the change in much greater depth.