Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Dispelling movement debuffs #66

Draft
wants to merge 1 commit into
base: server
Choose a base branch
from
Draft

Conversation

Zheneq
Copy link
Owner

@Zheneq Zheneq commented Jul 25, 2024

Situation: Su-Ren casts Spirit Bend with Slow, Helio casts Battleforged with Unstoppable on the same target. If Unstoppable applied first, Spirit Bend just doesn't apply Slow and moves on. If Slow is applied first, Unstoppable dispels the whole Spirit Bend effect as it contains a movement debuff (and when Unstoppable wears off, the target still has Slow status but has full movement as there have been no status changes to trigger an update).

So it's a race condition resolved by actor order.

Solution 1: Allow effects to handle Unstoppable and remove movement debuff they have applied while keeping the effect itself active.
Solution 2: Effect has WillApplyStatus method which is not used in Rogues. Perhaps we can use it in ExecuteResults to resolve the race condition?

https://discord.com/channels/600425662452465701/1241828879618936893

@Zheneq Zheneq marked this pull request as draft July 25, 2024 14:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant