You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
If an NPC casts a DoT on you, dies, and his corpse no longer exists, any residual DoTs should still do damage,
The client is showing this, but since the code inside spell_effects.cpp needs a non-null caster to accurately calculate the damage, the server stops calling Client::Damage().
I really only see this as an issue if an NPC owns the DoT. I think the calculated_effect_value should be calculated once when the spell lands and does the 1st hit, and used for the rest of that spells duration.
This will make the server match client. I can see how this causes the famed, I died, a few seconds later my corpse pops up, as the server didnt apply the damage of a DoT from a no longer existing NPC or it's corpse.
I am ok making these changes if peeps concur. Someone suggested I make this behind a rule, and I will do that.
if (caster && effect_value < 0) {
if (IsDetrimentalSpell(buff.spellid)) {
if (caster->IsClient()) {
if (!caster->CastToClient()->GetFeigned()) {
AddToHateList(caster, -effect_value);
}
} else if (!IsClient()) { // Allow NPC's to generate hate if casted on other NPC's
AddToHateList(caster, -effect_value);
}
}
effect_value = caster->GetActDoTDamage(buff.spellid, effect_value, this);
caster->ResourceTap(-effect_value, buff.spellid);
effect_value = -effect_value;
Damage(caster, effect_value, buff.spellid, spell.skill, false, i, true);
} else if (effect_value > 0) {
The text was updated successfully, but these errors were encountered:
If an NPC casts a DoT on you, dies, and his corpse no longer exists, any residual DoTs should still do damage,
The client is showing this, but since the code inside spell_effects.cpp needs a non-null caster to accurately calculate the damage, the server stops calling Client::Damage().
I really only see this as an issue if an NPC owns the DoT. I think the calculated_effect_value should be calculated once when the spell lands and does the 1st hit, and used for the rest of that spells duration.
This will make the server match client. I can see how this causes the famed, I died, a few seconds later my corpse pops up, as the server didnt apply the damage of a DoT from a no longer existing NPC or it's corpse.
I am ok making these changes if peeps concur. Someone suggested I make this behind a rule, and I will do that.
The text was updated successfully, but these errors were encountered: