I commented the 2 lines.
From my understanding the 2.0f corresponds to 100% and with 100% attackspeed the attack animations are played at 2x their original speed.
To give you a proper english translation of my problem:
Quote:
I am trying to remove the upper limit for attackspeeds, but upon reaching a certain attackspeed, attacks won't function properly or at all (for YoYos this is around 200% AtkSpd).
My way to remove the limit was simply commenting these 2 lines
Code:
if( fSpeed > 2.0f )
fSpeed = 2.0f;
in GetAttackspeed(MoverAttack.cpp) and GetVirtualATKSpeed(WndField.cpp)
|
However the code you discovered is only defined in the client and used to detect a hack which seems to resolve around modifying the attackspeed of your weapon in the client.
I allready tried to track this problem some time ago and for ranged attacks (bow/crossbow) it seems to lie somewhere within the function:
CActionMover::ProcessStateAttackRange(ActionMoverS tate.cpp)
To me it seems as if when to attack is determined by a polling algorithm and having high attackspeed leads to the sampling frequency being to small/long and therefore 'jumping' over the point where the attack is supposed to be launched.