ValveSoftware / Dota2-Gameplay

Public Bug Tracker for Dota2
1.49k stars 87 forks source link

Windranger Focus Fire not resuming attack on target after losing vision #21

Closed zetsupetsu closed 2 years ago

zetsupetsu commented 2 years ago

Windranger's Focus Fire behaviour used to have her resume attacking the target once she regains vision of the focus fired target. Currently, she stops attacking the target once she loses sight even for just a short time (juking in trees, invi, etc)

She used to be a good counter for PL/Manta as she always attacks the real one once Focus FIre has been locked, but in the recent patches this behaviour isnt there anymore and she just stands there or walks not attacking even if Focus FIre is active.

judge2020 commented 2 years ago

I think this is what you mean:

https://user-images.githubusercontent.com/8601934/171735923-c1d8266b-a5fc-4ebd-b578-88d95ff81b1f.mp4

It seems to only start attacking again once you issue a move command with the target in range.

Smelsert commented 2 years ago

https://streamable.com/3o3ze6 (disappearing)

https://streamable.com/wo5wpi (losing vision)

When the target under Windranger's Focus Fire disappears and appears again, or Windranger loses vision of the Focus Fired target, Windranger seems to stop Focus Firing until any (new non-attack-something-else) command is issued. This used to not happen and wasn't put in any change logs as far as I can tell.

With Manta Style, it seems to be inconsistent (sometimes she Focus Fires immediately, sometimes she does not).

If you look carefully at Windranger's animation while she's in this "stuck" state, it seems she's trying to attack, but can't. Compare her animation here before and after she loses the Focus Fire buff.

jeffhill commented 2 years ago

This will be fixed in the next hotfix. Thank you for the bug report!

Aluerie commented 2 years ago

@jeffhill thanks for the fix

I'm sorry for hijacking but just want to ask while track is "hot".

Can you look at #1102 - It got broken after you started work on this issue so I suspect it might be related to this fix. It is still broken on just updated client.

Even tho these are cosmetic issues so they are probably related to new Immortal effect system but what if it is not a total coincidence

jeffhill commented 2 years ago

Sorry, super unlikely to be related to this fix. I grabbed the ticket, then got busy with bugs from the update, and only actually did typing on this today.

Aluerie commented 2 years ago

@jeffhill I'm sorry again, but it seems like the something is still wrong in WR versus PL and even vision mini-game https://youtu.be/tjAgYURShQg

1) PL uses W - WR attacks the closest Illusion even though real "marked with focus fire" PL is still in attack range/vision 2) with standard auto-attack on - she starts turning on attacking closest dummy targets which is debatable if it is correct behavior (most likely it is) but maybe it is weird 3) same example but with vision

Even though technically WR just needs to move to avoid this bug/interaction but it still can cost some seconds of damage :D

jeffhill commented 2 years ago

The patch with the fix only went live at 4:46pm local time (1:15 ago), so after your post. Can you confirm it's not working with the current build?

zetsupetsu commented 2 years ago

The patch with the fix only went live at 4:46pm local time (1:15 ago), so after your post. Can you confirm it's not working with the current build?

Hi Jeff! Thanks for addressing the issue.

But unfortunately the fix is still not behaving like how it used to be before. When Windranger uses Focus Fîre, she still doesnt automatically attack the focus fired unit, unless you issue an attack move command.

The expected behaviour should be: focus fire target > If WR loses vision of target (fog, invi, manta, PL juxtapose) she stops attacking > when she regains vision, resume attacking as long as target is in range.

Current behaviour: focus fire target > If WR loses vision of target (fog, invi, manta, PL juxtapose) she stops attacking > when she regains vision she won't do anything > press attack move to issue command > she resumes attacking the target.

In demo mode the additional step to issue command may not be significant, but in actual games there will be more than one hero, so attack move will make WR aggro to the other heroes instead of moving to find the target when they are juking in the trees, for example.

Old focus fire used to be reliable in that even if the enemy is trying to juke in the trees, everytime the target appears even for just a millisecond, the focus fire auto attack triggers. Current one makes her behave like this only IF you have issued an attack command, which wont be helpful if theres more than one enemy.

Aluerie commented 2 years ago

@jeffhill I can confirm, my comment still stands.

Showcasing 1) again (but a bit better) https://youtu.be/dS6eg6KdNTE - in my initial video it could seem like somewhat edge of attack range. Points 2) and 3) still stand.

However, I should admit - I am not sure if my points should be considered as a "bug".

PL uses W - then illusions come out "first" in some "server queue of actions" -> WR with standard auto-attack starts attacking them as viable target > does not switch to Real PL because have automated standard attack order still on -> Real PL gets ignored. Same logic can be said about 2) and 3).

So WR needs to move to get around this Standard auto-attack logic getting in the way. I don't know, it just looks weird, It works fine with manta, for example.

It is kinda same problem of getting around fundamental game mechanics with other things like level 25 invisibility on Windrun talent: there is an annoying aspect that she stops Focus Firing because invis gives cancel auto-attack order in its nature -> WR player needs to press A again after E to continue R. So as I said I might be overthinking and this is not a bug - just clunky interaction with auto-attack behavior.

By the way, I thought the fix was live because fog vision part of the issue seemed to work correctly

jeffhill commented 2 years ago

Thank you so much for your diligence here! Yes, this was my misunderstanding. I only changed the behavior when WR is idle, not when she's acquired a different attack target, while still being "active" on the focus fire target. I'll fix this now, I should be able to get it in for the hotfix today. I'll update the ticket again when I know more.

Honestly, can't thank you enough for taking the time to clearly explain the problem here!

jeffhill commented 2 years ago

Ok, I've got another iteration on this - it'll ship in a hotfix in a few hours (this afternoon). I'm going to leave this issue open for now, in case more changes are needed.

LokeLok commented 2 years ago

strike Are you aware of this one? #1102 the Arcana icon is missing after recent update. Might want to include that one, while you at Focus Fire.

Turmfalke2 commented 2 years ago

scroll up a bit he said this is super unlikely to be related and I agree with that assessment. One is a broken cosmetic and one is actual game behavior. The aim here is to have one ticket per issue, not one ticket per hero or ability.

LokeLok commented 2 years ago

Im not sure how i missed the comment above, that's on me!

Aluerie commented 2 years ago

JeffHill, another suspicious/debatable interaction https://youtu.be/MIwhyLSdvPU

WR uses Focus Fire on AM -> WR herself leaves AM in a fog of war -> orders some Move commands while not seeing the target -> comes back to high-ground, sees AM but does not continue focus-firing unless extra Attack order was given

Same with PL W - if there is Move order while PL is gone -> she does not continue focus firing unless extra attack order was given https://youtu.be/ai2xchU2LeE

VodkasRidge commented 2 years ago

Hi Jeff! Thanks again for adressing this bug! I have tested this issue extensively, and as you suspected there seems to be an issue acquiring the focus fire target again after losing vision while a move command or attack command on another target is active. To reproduce: Focus fire enemy target > move into Fog of war > move into a position with vision of the target and continue issuing move commands > WR will not attack the target until a move command is completed or until an attack command is issued.

The same issue seems to occur with other ways of losing vision for instance phantom lancers doppelganger. As long as new move commands are issued but not completed WR will not attack the Focus Fire target. This can be especially annoyning when trying to run next to an enemy (therefore constantly issuing new move commands) because WR will not attack at all in that case.

Thank you so much for looking into these bugs!

jeffhill commented 2 years ago

Thank you, that repro case is super helpful! The transition from "move order" to "attack focusfire target" is connected now (it'll ship in a hotfix this afternoon), so the case you describe of having to wait for the move order to complete should be fixed.

Once again, I'll keep the ticket open for a bit in case anything else is discovered after the hotfix.

jeffhill commented 2 years ago

This hotfix is now live.

LokeLok commented 2 years ago

You can attack Roshan while being outside the pit, after the changes you shipped earlier today, shoutout to this thread: https://old.reddit.com/r/DotA2/comments/vdzp5n/windranger_bug/

https://user-images.githubusercontent.com/106764092/174207511-09bd7d9f-9226-4dad-852f-17c435ec8960.mp4

VodkasRidge commented 2 years ago

Dear Jeff!

First off all, thank you so much for fixing this issue! All the previous ult interactions with losing vision seem to be working fine now, however I have noticed a few new issues with movement when losing vision of a focus fire target. (And focus firing at a target in general) Again, thank you so much for all the hard work, and I hope this doesn't discourage you, as it seems hard to stamp out all these pesky bugs! I will list the issues in order of my perceived importance as a longtime WR spammer.

Issue 1

Description: When losing and regaining vision of a focus fire target anywhere on the map, Windranger will immediately move to attack them. This will cancel any ongoing move commands, running to attack the focus fire target instead.

To reproduce: Equip enemy hero with manta style > focus fire enemy hero > issue move command past the enemy hero > enemy uses manta style while WR is moving > WR will immediately stop moving, will instead attack-move onto the enemy

This issue might seem small, however the same thing happens when losing vision in other ways. The issue seems to only occur if WR loses vision of the enemy and then regains vision.

To reproduce: Position enemy hero close to tree > focus fire enemy hero > issue a move command that makes WR move past the tree so she loses vision of the enemy and then regains it > as soon as WR regains vision of the enemy the move command is canceled and WR moves to attack the enemy instead

This issue seems to occur regardless of the enemy being in attack range or not, and regardless if WR is moving or standing still, for instance a Focus Fire target moving in and out of range of a ward on the other side of the map will make WR run to attack them immediately.

To reproduce: Place Observer Ward > position enemy hero close to the edge of ward vision > Focus Fire enemy hero > Teleport WR to another lane/move WR far away > Move enemy out of and back into Ward vision > WR will move to attack enemy across the map

The main problem with this issue is that it makes running away while focus firing an enemy through the trees or similar almost completely impossible as WR will turn around everytime she loses and regains vision of the enemy resulting in you spinning on the spot.

Issue 2

Description: Casting a spell or using any item will cause WR to immediately run to attack her Focus Fire target afterwards

To reproduce: Focus Fire enemy > blink away from the enemy (while keeping vision of the enemy) > WR will run to attack the enemy immediately after blink.

The same occurs when casting a spell such as powershot. The issue occurs regardless of distance on the map, for instance TP-ing to another lane and casting powershot there will still cause WR to run across the map to attack the Focus Fire target, provided she has vision of them. The issue occurs even if auto attack is set to "never".

I think these 2 issues mainly stem from the fact that Focus Firing at a target somehow issues attack-move commands on WR's Focus Fire target. In fact however, Focus Fire should never result in attack-move commands being issued, since WR shouldn't move to attack the enemy she should only attack the enemy while it's in range.

I don't know if there is a specific attack command for Focus Fire that only attacks without moving, but I think most if not all of these issues would be fixed if Focus Fire instead issued some kind of attack command that does not cause WR to move/turn, or even an attack command and a move command to WR's current position immediately afterwards.

Issue 3

Description: While Focus Fire is active WR will not execute any shift-queue commands.

To reproduce: Focus Fire enemy target > issue shift-queue move commands, blink, etc. > WR will simply stand still, not executing any queued commands.

Also, any Shift-queue including a Focus Fire command will only work until the Focus Fire command is issued, any further queued commands will not work and the queue will stop in the same way as when trying to shift-queue commands while Focus Fire is already active.

Issue 4 (low-prio, cosmetic only)

Description: While Focus Fire is active, WR will constantly play her running animation, even when not in range of the enemy hero.

To reproduce: Focus Fire enemy target > move out of attack range > WR will run on the spot

Expected interaction: WR should only play her running animation while standing still if she is in range of her Focus Fire target.

Again, thank you so much for your hard work fixing these and sorry for the long post. I will update if I find any more of these, if you need any more info/testing let us know.

VodkasRidge commented 2 years ago

Actually after further testing Issue 1 will still occur if vision of the Focus Fire target is lost without being regained as long as any enemy is in range.

To reproduce: Position enemy A and B next to each other > purchase Shadow Blade on enemy A > Focus Fire enemy A > issue a move command past enemy A and B > use Shadow Blade on enemy A > WR will stop moving immediately and attack enemy B

VodkasRidge commented 2 years ago

All the issues with exception of number 4 seem to have been fixed with the patch just now! Thank you whoever did this!

VodkasRidge commented 2 years ago

I have found some new (small) bugs that shipped with the last patch. I will list them in order of (my perceived) priority.

(New) Issue 1

Description: Using certain items or ground target attack while Focus Firing at a target will put Windranger in an incorrect attacking state that does not allow her to move and attack at the same time.

To reproduce: Purchase Blink Dagger on Windranger > Focus Fire an enemy target > blink within Focus Fire attack range of the enemy target > WR can now only attack while standing still until a new attack command is issued directly on the enemy (ground target attack command will not work).

The same will occur when using Shadow blade and using a ground target attack command to resume attacking your Focus Fire target.

To reproduce: Purchase Shadow Blade on Windranger > Focus Fire an enemy target > Use Shadow Blade > issue a ground target attack command while in attack range of the Focus Fire target > WR can now only attack while standing still until a new attack command is issued directly on the enemy (ground target attack command will not work).

The same issue occurs after stopping focus fire and then resuming attack either via casting a spell (while auto attack is set to "standard") or issuing a ground target attack command.

To reproduce: Focus Fire an enemy target > issue a stop command > issue a ground target attack command while in attack range of the Focus Fire target or cast Powershot (this will only work if Autoattack is set to "standard") > WR can now only attack while standing still until a new attack command is issued directly on the enemy (ground target attack command will not work).

I think these new issues are caused by attack commands, especially when issued on the ground, not working the same as right click attack commands issued directly on the enemy. Similar to the ground target attack command, there seems to be the same issue with attack commands issued by the autoattack function, that triggers after certain item effects and spell casts (if set to "standard"). It seems that Focus Fire only works correctly with the type of attack command that is issued by right clicking an enemy, but not with the other types.

Note: if auto attack is set to "always" simply issuing a stop command while in range of the Focus Fire target will put WR in the described state of only being able to attack while standing still.

(New) (minor) Issue 2

Description: Using a TP scroll or Blink Dagger to move out of range of a Focus Fire target will cause WR to not attack the Focus Fire target when moving back into range.

To reproduce: Purchase Blink Dagger on Windranger > Focus Fire an enemy target > blink outside of Focus Fire attack range of the enemy target > move back into attack range > WR will not attack the target unless a new attack command is issued directly on the enemy (issuing a ground target attack command will put WR in the state described in Issue 1)

Expected interaction: I'm not 100% sure if this is intended, but it seems WR should start Focus Firing the target immediately upon re-entering attack range, only a stop command or going invisible should stop WR from attacking.

(New) (minor) Issue 3

Description: After completing a move command inside attack range of a Focus Fire target WR will always turn towards the target.

To reproduce: Spawn enemy hero Medusa > Focus Fire Medusa > Medusa casts Stone Gaze > issue a move command for WR away from Medusa while staying in attack range> WR will not get petrified while moving, however after completing her movement WR will turn towards Medusa and get petrified.

For clarification I am not talking about WR's model, everything works fine with that although there is some kind of glitchy/choppy animation that occurs while WR is "turning" after completing her movement.

Expected interaction: WR keeps her orientation in the direction she moved after completing the move command. Again, not 100% sure if this is intended, but before it was possible to stand still facing away from Medusa while still attacking her during Stone Gaze. Also the turning messes with items such as Force Staff, causing you to Force yourself at an angle or even toward the enemy if a move command away from the enemy is completed before you use the item.

Thanks for the hard work fixing these bugs!

jeffhill commented 2 years ago

Once again, thank you for all the repro cases and detailed steps! I should share a little of the backstory to the move while shooting stuff to explain why it's so temperamental.

The interaction of focus fire (and static link) with the state machine of the unit (the tiny AI that executes your orders) is very subtle, because units were never intended to do this sort of "shoot while moving" behavior. There's a "I am a unit and I am shooting" state, and a "I am a unit and I am moving over there" state and a "I am a unit and I am moving towards a target to shoot it" state, but these are all different things. We sort of repurposed the "moving towards a target to shoot it" state to also be the "I am moving and shooting at the same time" state as well.. but of course the relationships between states like "I am a unit and I am idle... oh look, it's my focus fire target, now I should shoot it but I should not chase it, I should continue to stand here"... these interactions are where the challenges are. Having the repro cases laid out precisely as you've been doing allows me to get into exactly the same state, repro the behavior, and discover what state transition is wrong in that case.

The good news is that there's only about 20 or so states total, so as we sort out the expected behavior in each of these interactions, the pool of potentially broken transitions only gets smaller.

I've just checked in another iteration of the focus fire state stuff, which should address everything except the "running while focus firing" behavior. That's an interaction of the state machine and the animation system I'd like to sort out, but only once all the gameplay behavior is finally "in the tin". I feel like having WR "run in place" is a small visual bug (she does look goofy though), while having her not shoot her focus fire target when they come into vision is a bug that might make a player quite grouchy.

Continuing to keep this open - because I bet there's going to be another weird interaction to discover. It wouldn't be Dota if there weren't just one more weird interaction. ;)

jeffhill commented 2 years ago

This hotfix is now live.

opomuc commented 2 years ago

It wouldn't be Dota if there weren't just one more weird interaction.

and here goes Rubick with Focus Fire... :)

Aluerie commented 2 years ago

hey @jeffhill ; some issues mentioned by VodkasRidge are still there. Since I cannot know if they gonna check bugtracker today - I will repost these problems myself.

1) VodkasRidge's comment Issue 2 - my video: https://youtu.be/iWwHaw_VjuI

WR runs back to FF target after using spells/items with Standard AutoAttack option on.

I use FF on PL > then blink, and cast spells/items on Naga and you can see that WR after each ability start running towards PL even in last showcase where I was attacking Naga for some time.

It's probably hard conceptionally to solve because how is Dota supposed to know I want to mess with Naga and not PL ? but again, it looks super strange. Maybe add some radius-restriction to this behavior (attack_range + move_speed + collision) ? idk

2) VodkasRidge's comment Issue 1 - my video: https://youtu.be/toLL4eUFYkY

WR forgets about move orders if FF target disappears (or any other attack-prevent stuff like uses hallberd). I ordered WR to move to the ladder but WR just starts stationary attacking Dusa after her manta usage.


Following problems might be out of the scope of this github issue cause it is not directly about Focus Fire and target vision tricks but definitely worth mentioning for you guys to get philosophy of mechanic "move+hit" right.

3) VodkasRidge's comment Issue 3 - my video: https://youtu.be/It3wq59HjKo

Shift Queuing actions just does not work while WR is focus firing. Would be handy for some move commands/items.

4) VodkasRidge's comment (New) (minor) Issue 3 - my video: https://youtu.be/QG-QREZmwsM

Animation does not properly show where hero is turned to. WR animation is faced to dusa but she is not turned to stone because she is running back and thus probably in reality is facing away.

WR should be 1) considered to be turned to Dusa all the time or 2) there should be an animation of WR/Razor running back and firing backwards in a cool style where she doesn't even look at Dusa

VodkasRidge commented 2 years ago

Hey Jeff, first of all i wanted to say thank you for the detailed explanation of Windrangers Focus Fire movement, I absolutely love this hero and this game and Windranger in particular has brought me so much joy over the years that I am just really, really happy to be able to do a small thing to help fix her bugs :)

On this note, it seems like Windrangers behavior was essentially rolled back to how it was in my first post, while new issue 1 and 2 seem to be fixed, the original issues 1, 2 and 3 all seem to occur exactly in the same way as described in my first post. I'll just copypaste the relevant sections here:

Issue 1

Description: When losing and regaining vision of a focus fire target anywhere on the map, Windranger will immediately move to attack them. This will cancel any ongoing move commands, running to attack the focus fire target instead.

To reproduce: Equip enemy hero with manta style > focus fire enemy hero > issue move command past the enemy hero > enemy uses manta style while WR is moving > WR will immediately stop moving, will instead attack-move onto the enemy

The same thing happens when losing vision in other ways. The issue seems to only occur if WR loses vision of the enemy and then regains vision.

To reproduce: Position enemy hero close to tree > focus fire enemy hero > issue a move command that makes WR move past the tree so she loses vision of the enemy and then regains it > as soon as WR regains vision of the enemy the move command is canceled and WR moves to attack the enemy instead

This issue seems to occur regardless of the enemy being in attack range or not, and regardless if WR is moving or standing still, for instance a Focus Fire target moving in and out of range of a ward on the other side of the map will make WR run to attack them immediately.

To reproduce: Place Observer Ward > position enemy hero close to the edge of ward vision > Focus Fire enemy hero > Teleport WR to another lane/move WR far away > Move enemy out of and back into Ward vision > WR will move to attack enemy across the map

Issue 2

Description: Casting a spell or using any item will cause WR to immediately run to attack her Focus Fire target afterwards

To reproduce: Focus Fire enemy > blink away from the enemy (while keeping vision of the enemy) > WR will run to attack the enemy immediately after blink.

The same occurs when casting a spell such as powershot. The issue occurs regardless of distance on the map, for instance TP-ing to another lane and casting powershot there will still cause WR to run across the map to attack the Focus Fire target, provided she has vision of them. The issue occurs even if auto attack is set to "never".

To reproduce: Focus Fire enemy > move out of attack range of the enemy (while keeping vision of the enemy) > use power shot > WR will run to attack the enemy immediately after completing the channel.

I think these 2 issues mainly stem from the fact that Focus Firing at a target somehow issues attack-move commands on WR's Focus Fire target. In fact however, Focus Fire should never result in attack-move commands being issued, since WR shouldn't move to attack the enemy she should only attack the enemy while it's in range.

Issue 3

Description: While Focus Fire is active WR will not execute any shift-queue commands.

To reproduce: Focus Fire enemy target > issue shift-queue move commands, blink, etc. > WR will simply stand still, not executing any queued commands.

Also, any Shift-queue including a Focus Fire command will only work until the Focus Fire command is issued, any further queued commands will not work and the queue will stop in the same way as when trying to shift-queue commands while Focus Fire is already active.

Aside from these already described bugs, I could not find any new ones. Thank you so much for your time and attention :)

jeffhill commented 2 years ago

The hotfix today will have what I believe are fixes for all these behaviors, except changing the animation for WR (that's a bigger content conversation). The interactions with auto-attack are subtle because it matters if you've clicked to attack the target or if you've clicked to move past the target (is this an "attack order" or a "move order" - in both cases you're shooting while moving...)

Thanks again for all your help with this!

jeffhill commented 2 years ago

This hotfix is now live.

Aluerie commented 2 years ago
  1. WR still forgets about Move commands if she gets "confused" - disarmed or shadow realm mid-walking point. https://youtu.be/Djpz7OfnH4w

FocusFire > WR clicks Move > Enemies disarm her > WR stops for disarm duration > continues FocusFiring from stop point.

Expectation: do not stop walking. Similar thing was fixed for PL W/Manta/etc but it still exists for Halberd/Book of shadows/Shadow Realm/maybe more

  1. FF does not properly handle Taunts https://youtu.be/h4dlYcmz6ak

FocusFire PL > Axe uses Q on WR > WR stays still and does not attack anybody at all

Expectation: WR starts attacking Axe. NOTE: LC gets E procs without WR actually attacking her. even more it looks so fast that I suspect it considers FF attack speed

  1. The issue about going back to FF target is still here but in a very weird form. some logic is not perfect https://youtu.be/d0_AgiFrbeo

I only press blink here, nothing else and WR wants to go somewhere after some blink points (not everywhere I blink to causes this behavior) - seems minor, but who knows...

jeffhill commented 2 years ago

FF vs. disarm fix checked in, and FF vs. taunt fix checked in - these will ship in the next hotfix (likely a little later today).

The FF target blink thing doesn't actually seem to be a FF thing, from what I can tell. I can repro it without using focus fire, just attacking the target. It might be a bug, but given that it's not FF-related, I'm really hesitant to touch it as part of this (since that code is hit by every single unit, all the time, FF or not). If it's problematic, submit a different issue and we can look at it systemically - is that fair? I'd like to actually be able to close this issue someday. ;)

As always keeping the ticket open for now, because Dota.

bclaw524 commented 2 years ago

I had a match as WR where I used ult on an enemy Tiny that managed to disengage from me, however, my movement command became wonky and slow, like my hero was trying to stutter step the whole time.

I lost and gained vision a few times but Tiny was already outside of my attack range. Whether I was trying to chase or move away from the target, my movement became slowed and WR kept "turning" to face Tiny.

Match ID: 6627449479, around 12:45~13:10 in the mid lane near Tier 1 Radiant

jeffhill commented 2 years ago

Thanks for the replay! It looks like you Focus Fired the Tiny but weren't in range - then got a stray shot in on the tower, and somehow your hero kept turning back to the tower when you lost vision of Tiny, despite clicking move orders off to the West. What do you have your autoattack setting set to?

I'll take a look and see if I can get a repro. Thanks!

Aluerie commented 2 years ago

hey, JeffHill ! I'm really sorry to terrorize you with this issue... Maybe, this issue should indeed be closed and moved on :c Even though this replay from bclaw524 is very interesting 🤔


Anyway, other bugs/inconsistencies to this issue:

  1. FocusFire does not work if WR gives Move-Follow order on allies: https://youtu.be/HqZfcIwJIis

Repro: FF PL -> WR orders Move on Pudge -> WR stops FFing PL

Expectation: WR should continue attacking PL.

  1. Fear interaction is different when there is Move order present and might lose some DPS for WR: https://youtu.be/i6xIPWgfNuE

Repro: FocusFire PA -> WR orders Move somewhere -> Gets Feared -> She does not continue attacking PA after Fear

Expectation: She should continue attacking PA. It works fine pretty much in all other scenarios, normal/weird/exotic (we discussed many above), including if WR stands still while FFing and then gets Feared.

  1. Revealing Invisible Target with placing sentries/picking up gem confuses WR: https://youtu.be/pRlsgURyG8E

Repro: FocusFire PA -> PA presses SilverEdge -> WR uses Sentry/picks up Gem -> WR does not continue attacking PA

Expectation: continue attacking PA. This might be debatable but again, it works fine for other cases, such as ally using sentry/gem (WR player can even give move orders just fine while target is invis). WR using Dust herself also works fine. Target going in and out of sentry range. Etc.

  1. I found 3 spells that confuse WR as well, this might be not even related to FF but anyway: https://youtu.be/ltaVW1nNpYo

Repro: WR FocusFires DW -> WR orders Move command somewhere -> and now either of a) b) c): a) DW uses W while being FF'ed b) Ally Pudge eats WR with the Shard. c) Ally/Enemy Kunkka uses X Mark The Spot on WR. Edit: Sorry, it seems there is a Stop/Cancel order coded into X Mark so it's actually intended most likely -> WR gets confused and does not continue attacking the FF target automatically (like in all other cases we discussed above and that were fixed)

Expectation: WR continues attacking.


1, 2 and 4 (maybe 3 as well) have a common factor of WR having Move order on her mind. So maybe, again, some logic is not perfect, but either way thanks a lot, Jeff. And I really really feel bad and sorry for all of it :x

jeffhill commented 2 years ago

The "follow while FF" issue was tricky - I ended up solving it by making "follow friendly unit" orders turn into "move to position" orders during focus fire attacking. If you're actively shooting at your focus fire target and you right click on a friendly, it's just going to assume you meant "move here" rather than "follow this NPC", because there's no state for the unit to follow an NPC and be focus firing something else. It didn't seem worthwhile to take on the added risk and complexity of adding a new unit state for that, since it didn't sound particularly desirable? It feels like the most common case of clicking on an ally during FF is when you accidentally click on them while moving around, so this will just do "what you meant to do."

I didn't touch the fear thing, specifically, though the fix for 3 might fix it now that I'm typing this. It seems fine to me if fear breaks focus fire targeting and you need to click on your target again post-fear? It also seems fine if it doesn't work that way either... it's hard to feel too strongly about the behavior in that case since fear is so disruptive overall to your hero, there are so many reasonable outcomes for what to do once fear is over, and realistically the player's going to be issuing orders the whole time anyhow.

Focus fire vs. revealed target was just the idle state not respecting that the FF target has become available, so that's fixed.

I couldn't repro focus fire losing tracking vs. Dark Willow's Shadow Realm, so either it's fixed with these other changes or maybe I've missed the repro steps somehow? That seems maybe worthwhile to fix if it's still happening after the hotfix. The pudge vs. WR interaction seems even more niche than the fear interaction and it's hard to feel that it's really wrong or broken in that case?

These fixes will be in the hotfix later today. It's been a long road on this issue, but I'm feeling good about this hotfix - it's possible today's the day we get to close this issue. fingers crossed Thanks for the feedback on the changes, it's all really good stuff that's getting fixed here!

Aluerie commented 2 years ago

All your remarks are fair! Hotfix is live so... thanks for fixing 1 (this fix idea is perfect!) and 3. Both Pudge/Kunkka cases from 4 are fixed. And weirdly enough, Fear inconsistency from 2 is actually fixed right now. Now Fearing both moving and stationary WR with FF on behaves in a same way - great ! So in the end everything except DW was addressed.


DW case is still a bit inconsistent with everything from above but can be considered fixed ! Maybe it is niche enough to call it a "feature" and close the issue :D

Hopefully very last Repro: https://youtu.be/Ie2U0Wt7Qdo FocusFire DW -> (!) WR orders Move somewhere -> either a) or b) while WR is still in Move+Attack state a) DW uses W b) New discovery: Bane uses Sleep on DW ->WR stops at place -> Shadow Realm/Sleep is over -> WR continues attacking

Question: Should WR continue moving after DW W/Sleep usage ? WR continues to move for other cases of "confusion" like disarm/ghost/astral. Note: Bane interaction sometimes behaves correctly and sometimes does not, I can't figure out why.

zeroclona commented 2 years ago

I

@jeffhill I'm sorry again, but it seems like the something is still wrong in WR versus PL and even vision mini-game https://youtu.be/tjAgYURShQg

1. PL uses W - WR attacks the closest Illusion even though real "marked with focus fire" PL is still in attack range/vision

2. with standard auto-attack on - she starts turning on attacking closest dummy targets which is debatable if it is correct behavior (most likely it is) but maybe it is weird

3. same example but with vision

Even though technically WR just needs to move to avoid this bug/interaction but it still can cost some seconds of damage :D

Cmon, its intended to juke with doppel or manta or mirror image or etc enemies. WR should not find real PL instantly after casted doppel. Obviously its ok if player himself click the right one. After these hotfixes its impossible to play on PL vs WR A long time ago it worked like now. And this bug was fixed in PL's favor

jeffhill commented 2 years ago

So it has been the case for a while that WR with focus fire could A-click the ground and would attack the focus fired target. Since illusions don't duplicate or purge the focus fire debuff, this meant you could pretty easily start shooting the "real" PL again. We've just changed the gameplay code around illusion creation to be considered similar to a stop command, for the purposes of Focus Fire. We've also change the focus fire resume behavior to resume when WR starts an attack on the FF'ed target, rather than based on an attack or attack-move order being issued.

The net result of this is much more consistent behavior. If you focus fire a target, then hit S, then attack a different target using any of the attack methods, WR will consistently attack that other target (rather than snapping to the FF'ed target). Similarly, if you are attacking a FF target who then mantas, the completely normal attack target selection logic from every other hero applies to Windranger - and she only resumes the new fire on the move behavior when she actually attacks the FF target.

This change will ship in the next hotfix and will hopefully finally close this issue.

jeffhill commented 2 years ago

This is now live. I'm going to close this one now, but if there's more to be done here, please post and we can re-open it.

Aluerie commented 2 years ago

hey @jeffhill I will make two comments, in this one I will try to explain why this change feels like a huge QoL downgrade and in the second I will list bugs I found.

  1. This is the most abstract point - this is why zero. But nevertheless, the concept of WR FF - Usual scenario: she finds a target, uses Focus Fire on it, unloads all her arsenal (Shackleshot, Hex, Nullifier, Orchid, etc) and then just controls precisely her fast Windrun movement with Move-click and then hovers back to target to stun-chain her disables (Shackle+hex). It worked great before-fix. WR player would need to think about precise movement and click around far from target to keep up proper movement/distance - possibly at the edges of the screen. But this update makes WR player worry about losing the target and reacquiring them again, now mouse clicks are all over the screen -> kinda ruining philosophy of the spell itself.

  2. Attack Move has no meaning anymore - huge QoL downgrade.

    a) It just does not work on other targets.

    YT Repro WR uses FF on PL -> WR orders attack move anywhere on the map -> WR just moves here and does not attack anything

    Expectation: WR should listen to attack move orders outside of FF target acquisition range.

    I understand that the intention here is so WR player should press S and then do whatever they want but it is not intuitive. Moreover it is not mentioned in patch notes or ability tooltip and I must admit - it is a very confusing behavior.

    b) It creates situations of confusion which contradict idea of FF being quick/windy/slippery spell and removes QoL aspect which before-fix WR had in her kit.

    YT Repro Naga stands close to WR, PL stands further -> WR uses FF on PL -> WR uses Powershot -> either of I or II I WR waits the whole channeling bar -> WR continues to attack PL II WR cancels it early with S command and then as a matter of habit presses A at the same ground-point to resume focus fire -> WR starts attacking Naga as new logic suggests.

    If I'm focus firing - I probably want to hit that guy until they're dead but If I want to cancel my powershot somewhere early due to enough damage or just for vision and I press A asap - before it would continue FFing the target and now such QoL is removed - I need to specifically target the enemy hero again which is not so windy.

    c) It hinders situations where Standard autoattack should work but it does not anymore.

    People usually have Standard autoattack setting on because it squeezes an extra attack after using a spell such as Powershot without me ordering Attack (or faster than me doing that) but now it just does not without doing S key thing or acquiring an attack target (which is again not obvious/not intuitive - suddenly WR player needs to know all these small interactions and honestly it sounds a lot more buggier than how FF was behaving from January till May before this issue )

    YT Repro WR uses FF on PL -> WR moves close to Naga -> WR uses Q W or items -> WR does not autoattack Naga despite Standard setting being on

    Expectation: she should attack Naga. It is just an extra argument that this new logic is not intuitive. PS. even animation is bugged here. WR is stuck in attacking Naga animation but she just keeps down-swinging the bow.

  3. It is not intuitive with itself - acquiring a new attack target without S does not cancel FF snapping

    It is just not an intuitive thing to learn in new logic terms.

    YT Repro WR uses FF on PL -> orders attack on enemies/allies/wards/creeps/deny/etc -> WR orders move -> WR continues to attack FF target;

    Expectation. according to new logic - it would be intuitive not to continue FF with other Attack orders preceding move command. It is debatable and probably should just stay as byproduct of whatever is chosen to be main behavior but still, I just want to point out that with this update there are many small details which WR player need to figure out in demo mode or suffer with confusion in real game. Old FF: WR attacks target if she can (and my previous reproductions were made in this assumption) -> now it is not that simple at all, I am afraid.

  4. It is a straight big nerf and I am not sure if it is a deserved one.

    Gameplay wise - isn't WR player supposed to be rewarded for finding/catching real PL with FF (similarly like BS players get rewarded for hitting real PL with Rupture) and thus continue Focus Firing ? Spell name is literally FocusFire. This is all controversial, opinion-based and upsetting so I guess I hope you could ask gameplay design guys about this small interaction because for 10 years it was rewarding WR players and now it doesn't which is weird.

    While I am obviously biased towards WR in this case - I really don't know if she deserved the nerf. There are many less powerful spells that track real PL (such as Razor W - (!)same behavior spell btw but not ultimate, Ursa E stacks and many more) after exiting Doppelganger and suddenly an ultimate ability cannot do that anymore. Idk, without all these small QoL things Focus Fire is actually way less powerful than many basic spells which is weird.

    It makes WR vs PL into quite funky match-up - now WR player gonna click around all illusions (like Rubick with R) to check them all which gonna involve a lot more luck than before.

    "And this bug was fixed in PL's favor" from zeroclona - the point is that PL favor was the result of the bug, not the other way around, in fact, the bug itself is/was "WR not being able to continue FFing PL" - is the very first comment in this thread which people massively upvoted (160+).

  5. Now it is really inconsistent with spells that have stop order in them - for example that kunkka X mark or many more that are supposed to give stop order to WR player but it doesn't. So now some spells are inconsistent.

Conclusion from biased WR player: please, revert this 28/06 update :D

Aluerie commented 2 years ago

Now second comment - list of bugs.

  1. Cannot deny runes/items while FF is on

    YT Repro WR uses FF on PL -> tries to attack Rune/dropped item -> WR gets stuck in place

    Expectation. WR should attack these objects

  2. Idle state still finds real PL

    YT Repro WR uses FF on PL -> WR does not move while PL uses W -> WR continues attacking real PL

    Expectation: if we really keep this iteration of FF behavior then she shouldn't find the real PL.

  3. niche/debatable WR can confuse herself with issuing attack and then move on allies

    YT Repro WR uses FF on PL -> WR issues Attack Order on ally BS -> WR issues Move Order on ally BS -> WR stops focus firing

    Expectation: After Failing Attack on BS she should do move+attack in her Move command and thus continue FocusFiring.

  4. 1632

PS, feel free to ask me to shut the... Maybe, I'm violating the whole concept of "bugtracker" with stalling progress in other no less important issues.

jeffhill commented 2 years ago

The goal of these changes all throughout this issue has been to get consistent behavior out of a weird case in the Dota unit behavior code (attack while moving). Not to change balance, not even to change gameplay in any meaningful way - just to get the "broken" cases with WR working. Dropping aggro on the real hero during illusion creation is an unintended balance change and will be changed back to the previous behavior (similar to Razor's Static Link) in the hotfix later today.

The actual problem case we were hoping to fix is the case where WR casts FocusFire on a target who then blade mails. So WR hits S to stop. Now she right clicks directly on a different enemy - it sure seems like in that case she should start attacking the enemy she right clicked on, not the original focus fire target. That's still fixed as of the hotfix later today, it's just done in a different way.

Finally, rune denying being broken was a bad interaction in reacquiring the focus fire target during an attack - attacking a rune / item didn't count as having a target correctly in this case. That's been addressed.

Please @Aluerie don't feel bad when providing useful feedback on these changes! The whole point of the bug tracker is to collect issues that matter and then make sure they're addressed. The making sure they're addressed part is what we're doing now, and you're amazing. Thank you!

Hopefully this is the round of changes where we can call the move while attacking behavior "fixed".

VodkasRidge commented 2 years ago

First off, i wanted to second Aluerie on Issue 0 and add to it, secondly i found a bug.

  1. To add to Aluerie (as a fellow WR spammer): Windrangers Focus Fire ability does not really seem to be designed around the player being easily able to tell whether it is on or not. While this issue is lessened when equipping an arcana the base WR set doesn't even have an animation for Focus Fire attacking vs normal attacking. To my understanding this is the case because the entire ability is designed around being constantly turned on after casting it on a target once. There is no need for the player to be able to check whether they are currently Focus Firing on a target because there simply shouldn't be anything that stops FF aside from the player conciously interrupting the ability. After casting Focus Fire the player should not have to worry about whether they are attacking or not, instead being able to focus solely on movement, and maintaing proper spacing to the target aswell as casting WRs other spells. I realize that this might not be the thread for this discussion, but i still feel that it fits here because this is what the original issue was about, WR randomly stopping Focus Fire (and why it caused so much grief).

If this is not the intended design for this ability then it should be A: very easy for the player to tell whether they are currently focus firing or not and B: very clear exactly which interactions aside from pressing "s" stop Focus Fire.

Bug: While having the "Compass of the Rising Gale" Arcana equipped cosmetic arrows from Focus Fire will remain in the target even after they use manta style or a similar ability, allowing the player to distinguish the FF target from the illusions.

To reproduce: Equip Arcana on WR --> WR uses FF on PL and hits him a couple of times --> PL uses Doppelganger --> the real PL will have arrows stuck on his model.

Edit: I see that it was not an intended balance change and my first point was already adressed. Thanks again for the hard work!

Aluerie commented 2 years ago

I can't even find any words to express my infinite gratitude for attention you give to this issue and my comments, thanks a lot for the fix, it really means a lot :smile:


Everything I said in both comments except two things was fixed/cleared up, thus, I want to ask about these untouched points again with a bit better reproduction steps.

  1. Ground AttackMove does not work outside of FF acquisition range

YT Repro: PL and Naga stay far away from each other -> WR uses FF on PL -> WR runs towards Naga with Move/ground AttackMove -> WR orders ground AttackMove around Naga -> WR does not attack Naga

Expectation: WR should attack Naga

It seems like currently ground Attack-Move outside of FF range behaves the same way as Move order. I hope it is not a necessary sacrifice to get all other cases right in Dota unit behavior code. I hope fix to this problem won't create any problem at just outside of FF acquisition range and fixed 1b (Powershot>S>A small QoL) or anything else... To add extra, even pressing S for Stop order does not help with ground AttackMove. The only way to attack Naga is to actually hover over Naga and press A on her model.

  1. [niche] MoveFollow: Adding extra steps can break intended move+attack behavior

YT Repro A: WR uses FF on PL -> WR orders MoveFollow on ally Pudge -> WR blinks away -> WR orders Move-Follow on ally Pudge again -> WR does not keep FFing PL

YT Repro B: WR uses FF on PL -> WR orders Attack on full-hp ally Pudge -> WR orders Move-Follow on that Pudge -> WR does not keep FFing PL

Expectation: WR still should keep FFing PL in both cases.

Just casual MoveFollow on ally Pudge works fine as intended by your fix last week but as you can see adding extra steps can ruin such behavior. It's quite niche interaction bcs WR player probably spams move command anyway however it might signal to some logic issues.


Edit: what I want to say with 1. is that currently it seems like everything works fine with Focus Fire and I really do not want new fixes to change anything about any other million interactions ; So let's say if I am FocusFiring somebody and I press ground attack move on somebody outside of FF acquisition range - I probably still want to shoot my FF target until I m completely out of reach for them.

And once again, these two problems are really not a big deal. For example, Dark Willow has same problem - Ground AttackMove just does not work for Shadow Realm - Issue about it has only 2 upvotes.

jeffhill commented 2 years ago

I understand how these behaviors are happening and I don't think they indicate any deeper issues, though I agree they're minor bugs. For now, I'd like to just leave that code alone for a little bit and see if any problems come to light - but thank you for reporting this! The next time we're iteration on the unit behavior code, I'll see about cleaning these corner cases up.

Lyralei27 commented 1 year ago

The bug is back with the aghs only