Skip to content

Twin Emperors: tighten ranged, bug, and pet control around Vek'lor #5

Description

@RovxBot

Objective

Tighten Twin Emperors ranged, bug, and pet control so Vek’lor safe-radius rules, bug priority, and role-specific DPS assignments are enforced proactively instead of only after Blizzard / Arcane Burst fallout appears in the logs.

Why this exists

The supplied combat log shows repeated ranged-stack and pet leakage into Vek’lor danger space, and the full encounter strategy is more role-specific than the current issue text made explicit.

Observed locally:

  • WoWCombatLog.txt shows 210 Blizzard events and 19 Arcane Burst events in the run.
  • First mass Blizzard wave starts immediately:
16:59:37.939 SPELL_CAST_SUCCESS Emperor Vek'lor "Blizzard"
16:59:37.985-16:59:38.336 Blizzard aura applied to Danderanor, Chumme, Roviden, Okrooteth, Gicho, Agravaine, Zhanzu, Sathos, Mohy, Parhean, Rovflash, Bukin, Cedurdath, Erwyn, Kateranie, Rovice, Rov, Ahgir, and others
  • Arcane Burst is hitting non-tank players and pets:
17:00:15.153 Arcane Burst hits Mumkew, Krovilzurl, Rovshot, Rovfury, and Wolf
17:00:56.309 Arcane Burst hits Roviden, Ahgir, and Rov
  • Unique Arcane Burst damage targets in the run: 9, including pets.
  • Current local target logic already trends toward:
    • hunters on Vek'nilash
    • caster ranged on Vek'lor
    • all ranged/hunters on threatening bugs first
      but this priority contract needs to be made explicit and validated.

Current code hotspots

  • src/Ai/Raid/Aq40/Action/RaidAq40Actions_TwinEmperors.cpp
    • Aq40TwinEmperorsChooseTargetAction
    • Aq40TwinEmperorsDodgeBlizzardAction
    • Aq40TwinEmperorsAvoidVeklorAction
    • StopTwinPetAttackOnTarget
    • GetTwinCentralWaitAnchor
  • src/Ai/Raid/Aq40/Util/RaidAq40Helpers.cpp
    • FindTwinMarkedBug
    • FindTwinHostileBug
  • src/Ai/Raid/Aq40/Multiplier/RaidAq40Multipliers.cpp
    • Twin post-swap / recovery suppression
    • global pet attack suppression behavior

Required implementation

Role-specific DPS contract

Make the target contract explicit so the implementing agent does not have to infer it from mixed target-selection branches.

  • Melee DPS:
    • primary boss damage should be on Vek'nilash
    • they should not be solving bug control unless an explicit separate recovery state requires it
  • Hunters:
    • primary boss target should be Vek'nilash
    • hunters should still respect bug priority only when the bug is a valid threatening Twin bug target
  • Caster ranged DPS:
    • primary bug target is threatening / mutated / exploding Twin bugs
    • if no valid hostile bug exists, fallback target is Vek'lor from a safe central cast position
    • do not overaggro Vek'lor, especially immediately after teleport / threat reset windows

Ranged Vek'lor positioning

  • Make ranged Vek’lor positioning proactive.
    • caster ranged should adopt and maintain a deterministic central Vek'lor cast anchor
    • do not wait for Blizzard or Arcane Burst damage to prove the position was wrong
  • Keep bug priority intact, but add strict carve-outs:
    • caster ranged and hunters may break their normal boss/anchor behavior only for valid bug handling
    • they must return to the correct anchor immediately after the bug state clears
    • they must not chase bugs into Vek’lor unsafe radius

Teleport / threat-reset safety

  • Whenever teleport goes out, non-tank damage dealers must not be near the emperors.
  • Add stricter hold behavior so ranged and pets do not become the nearest valid unit after a swap.
  • Any pre-teleport melee re-staging must still respect the rule that damage dealers should not steal nearest-player pickup from tanks.

Pet policy

  • Add explicit pet state transitions for Twin Emperors:
    • passive / stop during TeleportWindow
    • passive / stop during PickupRecovery
    • passive / stop during EmergencySplitRecovery
    • passive / stop whenever a target would drag the pet into Vek’lor danger range
    • safe restore when the state clears
  • Expand existing StopTwinPetAttackOnTarget behavior into a full encounter-local pet policy instead of a one-off stop helper.
  • Keep ranged movement compatible with strict encounter movement ownership so generic AI does not re-spread or re-chase.

Reference patterns

Validation

  • Supported comp test with hunters and active pets.
  • Success criteria:
    • stable states do not produce Arcane Burst on non-tank players or pets
    • caster ranged still prioritize mutate / explode / threatening bugs when safe
    • hunters remain on Vek'nilash unless a valid bug-priority exception applies
    • caster ranged fall back to Vek'lor from the central safe position when bugs are not active
    • Blizzard does not repeatedly blanket the main ranged pack after the first repositioning correction
    • pets do not re-engage unsafe targets during hold or recovery phases

Related

  • Depends on #2 for stable phase data.
  • Coordinate with #6 so hazard scripts can trigger ranged interrupts and pet state transitions immediately.
  • Coordinate with #8 for opener layout and pre-teleport melee movement.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions