PDA

View Full Version : BUG: Mouse click cacheing causing unwanted/unexpected ranged attacks



Mindos
09-06-2015, 02:10 PM
Ever since a few updates ago, I, and others, have noticed an odd tendency for ranged attacks to continuing for 'one more' attack after releasing the mouse button. Typically, ranged attackers would 'hold down' the mouse button and release whenever they wished to stop attacking. However, rarely the game would throw one more dagger, or shoot one more arrow, long after the mouse was released. This would have occasionaly disastrous effects, as the unwanted extra attack would delay any other action from occuring, draw a mobs attention, etc. I believe I have discovered (finally) the cause of the problem, which is also why it was so hard to reproduce.

After spending some time with different toons with different weapons attacking different things at different ranges, it appears that the game is incorrectly at rare times treating a 'held down' mouse button as instead two seperate mouse clicks. This appears to be ENTIRELY on the server side, perhaps something to do with internal lag or proccessing delays.

Hitting the mouse one button per attack, I could never duplicate the extra unwanted attack. Holding down the mouse for two attacks, and releasing during any of the animation cycles, and I could not duplicate the extra attacks. But when holding down the mouse for multiple attacks and then releaseing, sometimes an extra attack would occur. There was no pattern that I could see. Clearly the unwanted behaviour was there, but what was causing it? It wasn't when the mouse was released, I had already run thru the animations. It wasn't how many attacks occured, it seemed to be random. It wasn't client lag related, connections were clear. Then I tried something different: Is it my equipment? Is the mouse itself faulty? Is the mouse software at error? After looking at these things, I saw what was really happening.

The game is holding commands/client actions in a type of buffer. Sometimes the server makes a mistake and sees a continuous mouse press as an additional mouse press. In the past, this would not be a problem since as soon as you released the mouse button, all attack actions would stop. But now, with this queu in place, the erroneous attack command is executed while the mouse button is released.

By very quickly triple clicking the mouse button (if it is bound to attack) while holding a ranged weapon, one can clearly see the stacking of attack commands.


I think this change was made to help combat lag related problems but it seems to have this rare unwanted side effect.

Cleanincubus
09-06-2015, 06:26 PM
My guess is that it is a bug from when they did the repeating crossbow animation change/Rogue pass. I've never used bows other than on a rare basis, so I can't comment on those. But repeating crossbows do it almost every single time for me. Other than just tapping the mouse button, and it fires off 2 rounds of ammo (3-4 bolts each round) every time. Although those extra rounds seem to rarely hit the intended target, if ever. I'll fire at a target, and see that the enemy only needs to be hit one more time, or with one more round of ammo, so I'll let off of the button. The animation shows that the 2nd round of ammo has been fired, and the ammo disappears from my inventory, but they won't hit anything.

Nonesuch2008
09-06-2015, 10:12 PM
This was a bug that manifested what...about 3 updates ago? I think Cleanincubus has it about right on the timing, and it is consistent across both of mine that use repeaters. Nice detective work on the issue though. If true, it would be an example of preemptive logic coming into play, wherein predictive responses are being executed before the actual occurrence is registered. In this case, the server will normally win out over the client since this is basically a microtransaction, and attempt to clean up any missed transactions after the fact. I wish that cleanup included returning fired ammo into quivers in cases like this.