Information[edit | edit source]
- Enemies no longer receive flanking bonus when attacking the warrior on the shield-carrying side.
Bugs[edit | edit source]
There is actually a bug in the code where Shield Block is taken into account:
if (!bShieldBlock || fAngle < 180.0 || (bShieldBlock && !bUsingShield) )
fFactor = (fFlankingAngle - fabs( 180.0 - fAngle))/fFlankingAngle;
The conditions check if the target does not have Shield Block, OR has it but is not using a shield, OR if the angle between the target and the attacker is less than 180°. If any of these returns TRUE, then the flanking multiplier fFactor is >= 0 (if all are FALSE then it is just 0 which means backstab won't happen). The angle here is defined to be the angle (in degrees) between the direction the target is facing and the vector from the target to the attacker, measured counterclockwise. So an angle of less than 180° returning TRUE means that the attacker is behind the target and on the left side (shield side) of the target. To sum it up, if the target has Shield Block and is using a Shield (first and third conditions return FALSE), the attacker would actually be able to backstab the target (second condition must return TRUE) if the attacker is on the left side of the target, which is the opposite of what is intended.