Skip to content

Use single-target partybot buffs when it makes more sense.#2590

Merged
ratkosrb merged 3 commits intovmangos:developmentfrom
mserajnik:partybots-fix-arcane-brilliance-buff
Mar 29, 2026
Merged

Use single-target partybot buffs when it makes more sense.#2590
ratkosrb merged 3 commits intovmangos:developmentfrom
mserajnik:partybots-fix-arcane-brilliance-buff

Conversation

@mserajnik
Copy link
Copy Markdown
Contributor

@mserajnik mserajnik commented Apr 19, 2024

🍰 Pullrequest

This fixes Mage partybots not reapplying Arcane Brilliance unless it has expired on themselves.

It also makes it so that partybots now choose either the single target or party-wide variant of the following buffs:

  • Arcane Intellect / Arcane Brilliance
  • Power Word: Fortitude / Prayer of Fortitude
  • Divine Spirit / Prayer of Spirit
  • Shadow Protection / Prayer of Shadow Protection
  • Mark of the Wild / Gift of the Wild

The selection process is:

  • If there is only a single party member missing the respective buff, use the single target version
  • If there is more than one party member missing the buff, use the party-wide version

Of course, this also depends on which spells the partybot actually knows, as well as the party members within buff range.

Proof

  • None

Issues

How2Test

  • Summon a Mage partybot that knows both Arcane Intellect and Arcane Brilliance
  • Wait for it to cast Arcane Brilliance, then remove the buff from yourself
  • Observe the Mage partybot now casting Arcane Intellect on you (once it has enough Mana), because it itself still has the Arcane Brilliance buff (so only one party member needs it -> choose Arcane Intellect)

Video demonstration:

pr-2590.mp4

Todo / Checklist

  • None

@gajet5
Copy link
Copy Markdown
Contributor

gajet5 commented Apr 19, 2024

@mserajnik
Copy link
Copy Markdown
Contributor Author

@gajet5

Sorry, I missed your PR somehow; you should mark that it closes #2400.

@mserajnik mserajnik closed this Apr 19, 2024
@mserajnik mserajnik deleted the partybots-fix-arcane-brilliance-buff branch April 25, 2024 17:06
@mserajnik mserajnik restored the partybots-fix-arcane-brilliance-buff branch November 19, 2024 16:54
@mserajnik
Copy link
Copy Markdown
Contributor Author

I'm reopening this because @gajet5 closed his PR (#2510) and this is a tested fix for #2400.

@mserajnik mserajnik reopened this Nov 19, 2024
@mserajnik mserajnik force-pushed the partybots-fix-arcane-brilliance-buff branch from 19b736b to 02f184d Compare January 31, 2025 15:08
@mserajnik
Copy link
Copy Markdown
Contributor Author

mserajnik commented Jan 31, 2025

No actual code changes in the force-push; I just updated this PR to be based on the latest development commit because when downloading the changes as patch it wasn't possible to git apply it anymore because the patch included the now renamed UNIT_STAT_ROOT in the surrounding lines of code:
image
(previous generated patch on the left, new patch after rebasing on the right)

@mserajnik
Copy link
Copy Markdown
Contributor Author

@ratkosrb Any chances to get this merged since you also dealt with other bot stuff in b530bcb? 😄

@ratkosrb
Copy link
Copy Markdown
Contributor

I don't think mages should cast Arcane Brilliance unless there are multiple targets missing the buff. For a single target they should cast Arcane Intellect.

@mserajnik
Copy link
Copy Markdown
Contributor Author

mserajnik commented Mar 14, 2026

True, that makes more sense.

At the moment, other party-wide buffs like Prayer of Fortitude or Prayer of Spirit behave like that (= they get rebuffed once they drop off a single party member), only Arcane Brilliance behaves differently, so this PR would at least make it so the behavior is unified.

But I can adjust it so it works like you describe. I assume you would want the following spells behave the same?

  • Power Word: Fortitude / Prayer of Fortitude
  • Divine Spirit / Prayer of Spirit
  • Shadow Protection / Prayer of Shadow Protection
  • Mark of the Wild / Gift of the Wild

There is also the various Paladin Blessings bots can cast:

  • Blessing of {Light, Might, Wisdom, Kings,, Sanctuary} / Greater Blessing of { ... }

But I guess we can disregard those since their are more specific (Greater Blessings will only apply to members of the same class as the target).

Did I miss anything else?

@mserajnik mserajnik force-pushed the partybots-fix-arcane-brilliance-buff branch from 220a54b to ebb5078 Compare March 15, 2026 10:59
@mserajnik mserajnik marked this pull request as draft March 15, 2026 11:31
@mserajnik mserajnik changed the title Fix Mage partybots not reapplying Arcane Brilliance. Use single-target partybot buffs when it makes more sense. Mar 15, 2026
@mserajnik
Copy link
Copy Markdown
Contributor Author

I have adjusted the PR and marked it as Draft for now, since it's untested. Once I can confirm it's working as intended for me, I'll remove the Draft status.

Choose the single-target variant when exactly one eligible party member
is missing the buff, and only use the group variant when multiple
members need it.

This applies to:
- Arcane Intellect / Arcane Brilliance
- Power Word: Fortitude / Prayer of Fortitude
- Divine Spirit / Prayer of Spirit
- Shadow Protection / Prayer of Shadow Protection
- Mark of the Wild / Gift of the Wild
@mserajnik mserajnik force-pushed the partybots-fix-arcane-brilliance-buff branch from 07c0173 to 7885466 Compare March 29, 2026 10:38
@mserajnik
Copy link
Copy Markdown
Contributor Author

Tested locally and ready for review. A small video demonstration of a minimal test case I can think of (see How2Test section in the PR message):

pr-2590.mp4

@ShiyoKozuki: Maybe interesting for you if you are still using VMaNGOS.

@mserajnik mserajnik marked this pull request as ready for review March 29, 2026 13:33
@ratkosrb ratkosrb merged commit 2fd0a8f into vmangos:development Mar 29, 2026
3 checks passed
@mserajnik mserajnik deleted the partybots-fix-arcane-brilliance-buff branch March 29, 2026 19:58
ratkosrb pushed a commit that referenced this pull request Apr 2, 2026
Choose the single-target variant when exactly one eligible party member
is missing the buff, and only use the group variant when multiple
members need it.

This applies to:
- Arcane Intellect / Arcane Brilliance
- Power Word: Fortitude / Prayer of Fortitude
- Divine Spirit / Prayer of Spirit
- Shadow Protection / Prayer of Shadow Protection
- Mark of the Wild / Gift of the Wild
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.

🐛 [Bug] Partybots will not reapply Arcane Brilliance to other players unless they have expired on themselves

3 participants