Controller Skill Queueing Causing Significant Character Freeze

This is likely also an issue on console, as it seems to specifically apply to using a controller on PC, but I’ve only tested on PC.

The issue:

IF you are using a controller (does not occur with keyboard/mouse), when a skill becomes queued to cast, and then between cast queue and cast start you can no longer cast it (either because you’re out of range, out of resource, or the client thought you could cast it but you actually can’t), your character freezes in place and is unable to move (as if rooted) until the cast would have normally finished, even though no skill is cast.

There are a number of different ways to replicate it, but here are the most obvious/reliable ones I’ve found - remember, all these are when using a controller to play:

  1. Easiest replication method, but also doesn’t really showcase how common it is, just good for replication - On a Necromancer that can summon a Golem, put the Golem skill on your skill bar. Then, go to the Book of the Dead and change the type of Golem you have. This should kill your Golem and cause the Golem skill to grey out on your skill bar (until it respawns, at least). During this time, if you try to use the Golem’s skill, the issue will occur for a significant length of time (you will be frozen for about 3 - 4 seconds). I assume the client thinks the skill is still usable in this state and tries to queue/cast it and fails.

  2. The most egregious version, occurs constantly during normal play… Still easy to reproduce, but less obvious - I’ll use a Necromancer as an example again, but this works with any class with most skills. Go to a Necromancer and pick a skill that has an Essence cost (Blood Lance, for instance). Cast the skill while attempting to move and note how long you’re locked into the cast animation for. Now, use all of your Essence. Once you’re out, keep trying to spam cast while moving. As soon as you get enough Essence to cast, you’ll cast, but the recovery time will be about twice as long, freezing you in place for a noticeable amount of time. Again, I believe this is because the skill is queued for cast while you have enough resource, and when it goes to cast, you don’t have enough left (so it does nothing), but it still locks you into the “casting” state.

  3. Harder to replicate, but very significant nonetheless with the way controller targeting works - take any skill that is not a projectile but casts on a target (in my testing case, I used a Necromancer basic skill, Hemorrage). Get into a position where there are enemies (also works with destructible objects) out of your range (off screen, or close to it) but that are “locked on” (as in, you can see their health bar at the top), and then attempt to cast the skill. You’ll notice that even though it doesn’t cast (again, as long as it isn’t a projectile skill), it will lock you into place for the entire cast duration and do nothing. This seems to occur most commonly when the target is at the edge of or just past the corners of the screen (diagonal from you). If they’re straight left/right or up/down, it doesn’t occur as often.

There are a number of other ways to cause it, but these are the most replicatable/egregious examples. This definitely makes playing on controller feel frustrating at times, and a lot of people may not even realize it’s happening and may just feel like their character is crowd controlled.

Hopefully a simple issue, or at least easy to track down - let me know if you need any more details, it’s a pretty significant issue, so getting it fixed would be very welcome.