diff --git a/Scripts/Items/Weapons/BaseWeapon.cs b/Scripts/Items/Weapons/BaseWeapon.cs index d44bf03..a41ae08 100644 --- a/Scripts/Items/Weapons/BaseWeapon.cs +++ b/Scripts/Items/Weapons/BaseWeapon.cs @@ -999,9 +999,33 @@ namespace Server.Items * : 50.0 = unchanged * : 100.0 = 50% bonus */ - double warriorBonus = ( ( attacker.Skills[SkillName.Swords].Value + attacker.Skills[SkillName.Bludgeoning].Value + attacker.Skills[SkillName.Fencing].Value / 3 ) - 50.0 ) / 100.0; + /*double warriorBonus = ( ( attacker.Skills[SkillName.Swords].Value + attacker.Skills[SkillName.Bludgeoning].Value + attacker.Skills[SkillName.Fencing].Value / 3 ) - 50.0 ) / 100.0; if ( this is BaseRanged ) warriorBonus = 0; + */ + + /* Compute warrior modifier + * : 0.0 = 50% loss + * : 50.0 = unchanged + * : 100.0 = 50% bonus + */ + double primarySkill = attacker.Skills[this.Skill].Value; + double warriorBonus = ( primarySkill - 50.0 ) / 100.0; + if ( this.Skill == SkillName.Swords || this.Skill == SkillName.Bludgeoning || this.Skill == SkillName.Fencing ) + { + double swords = attacker.Skills[SkillName.Swords].Value; + double maces = attacker.Skills[SkillName.Bludgeoning].Value; + double fencing = attacker.Skills[SkillName.Fencing].Value; + + // Subtract the primary skill so we only add the 'other' two + double offSkills = (swords + maces + fencing) - primarySkill; + + // Every 10 points in off-skills gives 1% damage (up to +20% if both are GM) + warriorBonus += (offSkills / 1000.0); + } + + if ( this is BaseRanged ) + warriorBonus = 0; /* Compute strength modifier * : 1% bonus for every 5 strength diff --git a/Scripts/Mobiles/Base/PlayerMobile.cs b/Scripts/Mobiles/Base/PlayerMobile.cs index cb45fd2..f58fb3c 100644 --- a/Scripts/Mobiles/Base/PlayerMobile.cs +++ b/Scripts/Mobiles/Base/PlayerMobile.cs @@ -1859,7 +1859,7 @@ namespace Server.Mobiles m_ShortTermElapse = reader.ReadTimeSpan(); m_GameTime = reader.ReadTimeSpan(); - StatCap = 200; + StatCap = 225; Skills.Cap = 7000; if (m_RecentlyReported == null) @@ -2170,4 +2170,4 @@ namespace Server.Mobiles #endregion } -} \ No newline at end of file +}