I am having an issue with the damage bonus for perfection. The only reference I'm finding to the perfection damage bonus is in BaseWeapon.cs, the OnHit method, around ln 2279, there is an if block that I am having some trouble with.

if (attacker is PlayerMobile && !(Core.ML && defender is PlayerMobile))
{
PlayerMobile pmAttacker = (PlayerMobile)attacker;

if (pmAttacker.HonorActive && pmAttacker.InRange(defender, 1))
{
percentageBonus += 25;
}

if (pmAttacker.SentHonorContext != null && pmAttacker.SentHonorContext.Target == defender)
{
percentageBonus += pmAttacker.SentHonorContext.PerfectionDamageBonus;
}
}

When I attempt to step through this, HonorActive is always false, even when I've just honored an opponent. In all of the references I've found for HonorActive, the only one that is setting it to true is in the Honor.ActivateEmbrace method, which doesn't apply for honoring targets. So I'm wondering if I'm misunderstanding how the perfection bonus is working, or if this isn't functioning appropriately.

Thanks.
 
Back