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

Interrupt condition #648

Closed
JaimeCalderon1 opened this issue Dec 28, 2024 · 3 comments · Fixed by #649
Closed

Interrupt condition #648

JaimeCalderon1 opened this issue Dec 28, 2024 · 3 comments · Fixed by #649
Labels
question Further information is requested

Comments

@JaimeCalderon1
Copy link

"Combat": {
    "Sequence": [
        //...
        {
        "Name": "Lightning bolt",
        "Key": "S",
        "HasCastBar": true,
        "Interrupt": "Clearcasting"
        },
        //...
    ]
}

I expect my shaman to stop midcast lightning bolt when clearcasting is procd, so I can follow up with a free chain lightning. But Its not working as intended. Do I have the idea of interrupt wrong? Thanks.

@JaimeCalderon1 JaimeCalderon1 added the question Further information is requested label Dec 28, 2024
@Xian55
Copy link
Owner

Xian55 commented Dec 28, 2024

Gooday!

Interesting topic, i might have missed this aspect of the Clearcasting and interruption combination.

Do I have the idea of interrupt wrong?

I'm fairly certain that with your Interrupt logic there's nothing wrong about it.

However currently there's no mechanism to actually interrupt a spell during spellcast. Like sending an ESC key to interrupt the cast but just thinking about it it would be a great addition to Castbar/Channeling spells to stop the cast itself.


Technical detail:
The Interrupt logic on the KeyAction in prior only meant to provide a mechanism which allows me early return from the code execution as soon as possible. On the other hand the interruption logic has moved to another thread this way CastingHandler component does not block the bot main thread execution.


I think, will try to come up with a solution for your request, stand by!

@Xian55
Copy link
Owner

Xian55 commented Dec 29, 2024

Since #649, the requested feature is available.

I would like to ask you to take a look at the following materials in the readme and the new added profile:

In the Shaman_60_elemental_interrupt.json profile i would like to bring to your attention the followings:

  • In order for the required feature to work, in the Lightning Bolt you have to enable "AfterCastWaitCastbar": true,. This will ensure that in the CastingHandler a castbar based spell will be awaited until the castbar ends or interrupted by your custom requirements, otherwise the CastingHandler works as fire and forget.
  • On the Lightning Bolt, have to enable "CancelOnInterrupt": true. When the Interrrupt condition is met, this will ensure that the backend sends an ESC key to cancel the spellcast.

I would highly encourage you to do a test drive on Shaman_60_elemental_interrupt.json as if that was the expected behaviour what you looking for.

If you have time to send me a feedback, i would high appreciate it 🙇

Have a gooday!

@JaimeCalderon1
Copy link
Author

Thank you!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
question Further information is requested
Projects
None yet
2 participants