[Feature] Add Data Bucket support for scaling of Heroic Stats. (#3058)

* [Feature] Add Data Bucket support for scaling of Heroic Stats.

* update

* fixes, still reworking logic

* fixes, still reworking logic

* logic done

* logic done

* fixes

* Cleanup

* Cleanup

* Cleanup naming, verify behaviors

* formatting

* formatting

* fix issue with endurance and mana.

* update rule desc

* cleanup

* DataBucket Struct

* Cleanup data_bucket.cpp and add constants

* cleanup

* changes

* formatting

* fix from merge

* escape keyword `key`

* Add `key` to generator, run repository-generator.pl

* fix for change to key

* cleanup

* formatting

* formatting

* typo
This commit is contained in:
Aeadoin
2023-03-23 21:42:13 -04:00
committed by GitHub
parent abc27ab423
commit 59ad91a140
28 changed files with 433 additions and 243 deletions
+4 -4
View File
@@ -1049,7 +1049,7 @@ int64 Mob::TuneACSum(bool skip_caps, int ac_override, int add_ac)
shield_ac = CalcRecommendedLevelBonus(GetLevel(), inst->GetItemRecommendedLevel(true),inst->GetItemArmorClass(true));
}
}
shield_ac += GetHeroicSTR() * RuleR(Character, HeroicStrengthMultiplier) / 10;
shield_ac += itembonuses.heroic_str_shield_ac;
}
// EQ math
ac = (ac * 4) / 3;
@@ -1353,7 +1353,7 @@ int64 Mob::Tunecompute_defense(int avoidance_override, int add_avoidance)
defense = avoidance_override;
}
else {
defense += GetHeroicAGI() * RuleR(Character, HeroicAgilityMultiplier) / 10;
defense += itembonuses.heroic_agi_avoidance;
}
defense += add_avoidance; //1 pt = 10 heroic agi
}
@@ -1495,10 +1495,10 @@ void Mob::TuneCommonOutgoingHitSuccess(Mob* defender, DamageHitInfo &hit, ExtraA
switch (hit.skill) {
case EQ::skills::SkillThrowing:
case EQ::skills::SkillArchery:
extra = GetHeroicDEX() * RuleR(Character, HeroicDexterityMultiplier) / 10;
extra = itembonuses.heroic_dex_ranged_damage;
break;
default:
extra = GetHeroicSTR() * RuleR(Character, HeroicStrengthMultiplier) / 10;
extra = itembonuses.heroic_str_melee_damage;
break;
}
hit.damage_done += extra;