wargrimnir wrote:
-Dodge/Disrupt/Parry now takes the opposing stats into consideration in a different way, by adding onto the 'high-end' of the 100 roll used for calculating the chance, with a hard cap of 75% of any of these. The proper formula is now used for calculating parry % from weaponskill/strength (and dodge/disrupt-appropriate stats, respectively, they're all the same), it is identical to the one in the client.
Parry/Dodge/Disrupt chance from tooltip:
double chance = (((defensiveStat) * 100) / ((target.EffectiveLevel * 7.5 + 50) * 7.5));
Contestion based on offensive stat:
double removedDefense = (((offensiveStat) * 100) / (((caster.EffectiveLevel * 7.5) + 50) * 7.5));
Final roll:
Choose random number between 0 and (removedDefense + 100). If random number is less than or equal to our chance to parry, then we parry.
-Block now follows a more live-like formula, similar to the parry formula but on a different weight. Identical to client's block formula. Has no cap.
A few questions regarding the above-
1) What is meant by the 'double' in "double chance" and "double removeddefense"? Are we supposed to multiply or divide those equations by 2 or something? <I have a feeling this is just how code is written and should be ignored?
2)
It appears as if the above equations for 'Parry/Dodge/Disrupt chance from tooltip' and 'Contestion based on offensive stat' are meant to be identical except for swapping defensiveStat with offensiveStat and target.EffectiveLevel with caster.EffectiveLevel. Am I right? For instance, I believe the equations were meant to be written as the following:
Parry/Dodge/Disrupt chance from tooltip:
double chance = (defensiveStat*100)/((target.EffectiveLevel*7.5+50)*7.5);
Contestion based on offensive stat:
double removedDefense = (offensiveStat*100)/((caster.EffectiveLevel*7.5+50)*7.5)
It looks like the original equations had some extra parentheses which altered the resultant answers.
EDIT: After testing the results of the way you wrote the equations vs. how I did them there are apparently no differences in result.
3) Is block check performed first, then, if failed, a parry/disrupt/dodge (whichever is applicable in situation) check performed?
4)
From reading this thread it appears +% dodge/disrupt/parry is added to the tooltip value directly. For instance: LvL 40 with 500 weapon skill would have a 19.1% tooltip chance to parry. Any extra chance to parry granted from dual wielding, armor, renown, etc. of say 10% would raise this to 29.1%, thus a number below 29.1 would have to be rolled for a parry to occur.
HOWEVER- what about the attacker's -%chance to be parried? For instance, if attacker has -15% chance to be parried, would this bring the defender's 29.1 threshold down to 14.1, or would it be added to the high end of the 100 roll used for calculating the chance?
EDIT: looks like this was answered
here:. Dodge/Parry/Disrupt strikethrough (-% chance for it to happen) is subtracted straight away from 'secondary defense'. In other words, if the number that has to be rolled to parry/disrupt/dodge is 14, and the attacker has -10% chance for the defensive event to happen, the number that now needs to be rolled is 4.
5) There was no equation given for how block is calculated now other than 'it is similar to the parry formula but with a different weight'. Could you list it for us please?
Thanks to all the devs that spend their personal time & money in maintaining and improving this project!!