#472 Spell resists need to be looked at/implemented

Geschlossen
vor 1 Jahr geöffnet von neatz09 · 2 Kommentare
neatz09 kommentierte vor 1 Jahr
Hier gibt es bis jetzt noch keinen Inhalt.
image kommentierte vor 10 Monaten
Mitarbeiter

so if I recall this was about the way the resistance code worked in the Combat file

the resistances (heat, cold, so on) are all utilized for damage reduction when you are hit and that was the "broken" part I believe per @neatz09

if (victim->IsEntity())
    bonus -= ((Entity*)victim)->GetDamageTypeResistPercentage(damage_type);


Entity* entity_victim = (Entity*)victim;
float chance = 80 + bonus; //80% base chance that the victim will get hit (plus bonus)
sint16 roll_chance = 100;
if(skill)
    roll_chance -= skill->current_val / 25;

we have support for spell avoidance that is "resisting" outright which should work fine:

    skill = entity_victim->GetSkillByName("Spell Avoidance", true);
    if(skill)
        chance -= skill->current_val / 25;
    if(rand()%roll_chance >= chance) {
        return DAMAGE_PACKET_RESULT_RESIST; //successfully resisted 
    }
so if I recall this was about the way the resistance code worked in the Combat file the resistances (heat, cold, so on) are all utilized for damage reduction when you are hit and that was the "broken" part I believe per @neatz09 if (victim->IsEntity()) bonus -= ((Entity*)victim)->GetDamageTypeResistPercentage(damage_type); Entity* entity_victim = (Entity*)victim; float chance = 80 + bonus; //80% base chance that the victim will get hit (plus bonus) sint16 roll_chance = 100; if(skill) roll_chance -= skill->current_val / 25; we have support for spell avoidance that is "resisting" outright which should work fine: skill = entity_victim->GetSkillByName("Spell Avoidance", true); if(skill) chance -= skill->current_val / 25; if(rand()%roll_chance >= chance) { return DAMAGE_PACKET_RESULT_RESIST; //successfully resisted }
image kommentierte vor 1 Monat
Mitarbeiter

for this we need to setup Entity::CalculateDamageAmount to reduce damage for spell based damage. We already reduce melee damage with mitigation.

for this we need to setup Entity::CalculateDamageAmount to reduce damage for spell based damage. We already reduce melee damage with mitigation.
image hat dieses Issue vor 1 Woche aus einem Commit referenziert
image hat vor 1 Woche geschlossen
Anmelden, um an der Diskussion teilzunehmen.
Laden…
Abbrechen
Speichern
Hier gibt es bis jetzt noch keinen Inhalt.