Skip to content

fix(Core/Spells): Slow Fall procs helpful trinkets#25631

Draft
blinkysc wants to merge 1 commit intoazerothcore:masterfrom
blinkysc:fix/9399-slow-fall-helpful-spell-proc
Draft

fix(Core/Spells): Slow Fall procs helpful trinkets#25631
blinkysc wants to merge 1 commit intoazerothcore:masterfrom
blinkysc:fix/9399-slow-fall-helpful-spell-proc

Conversation

@blinkysc
Copy link
Copy Markdown
Contributor

Changes Proposed:

This PR proposes changes to:

  • Core (units, players, creatures, game systems).
  • Scripts (bosses, spell scripts, creature scripts).
  • Database (SAI, creatures, etc).

Patch 3.3.0 explicitly enabled Slow Fall to activate trinkets that can trigger from casting a helpful spell. The AC proc system classifies any spell with no damage and no heal as PROC_SPELL_TYPE_NO_DMG_HEAL, which after the tightening in #25630 (SpellTypeMask = DAMAGE | HEAL on chance-on-helpful-spell trinkets) stops matching those trinkets. Slow Fall (spell 130) should still match — it's the one helpful self-cast retail explicitly opted into the helpful-spell proc category in 3.3.0.

The fix is localised to Unit::ProcSkillsAndAuras where spellTypeMask is computed: when a spell with no damage/heal would otherwise be reported as NO_DMG_HEAL, special-case spell 130 and report HEAL instead. The trinket filter then accepts it (0x2 & 0x3 == 0x2).

Scope:

  • Only affects spell 130 (Mage Slow Fall). Every other helpful self-cast (Conjure Refreshment, Create Healthstone, drink/food, Levitate, etc.) still reports NO_DMG_HEAL and stays blocked.
  • Only the HIT-phase classification changes. CAST-phase events already get MASK_ALL upstream and were never blocked for Slow Fall by the prior PR.

AI-assisted Pull Requests

  • AI tools (e.g. ChatGPT, Claude, or similar) were used entirely or partially in preparing this pull request. Please specify which tools were used, if any.

Tooling: Claude Code with azerothMCP.

Issues Addressed:

SOURCE:

The changes have been validated through:

  • Live research (checked on live servers, e.g Classic WotLK, Retail, etc.)
  • Sniffs (remember to share them with the open source community!)
  • Video evidence, knowledge databases or other public sources (e.g forums, Wowhead, etc.)
  • The changes promoted by this pull request come partially or entirely from another project (cherry-pick).

Patch 3.3.0 notes (Dec 8 2009): "Slow Fall: This spell can now activate trinkets that can trigger from casting a helpful spell."

Tests Performed:

This PR has been:

  • Tested in-game by the author.
  • Tested in-game by other community members/someone else other than the author/has been live on production servers.
  • This pull request requires further testing and may have edge cases to be tested.

How to Test the Changes:

  • This pull request requires further testing. Provide steps to test your changes.
  1. Apply fix(DB/Proc): block on-demand trinket procs #25630 first (this PR depends on the SpellTypeMask tightening to demonstrate the fix is needed).
  2. As a Mage with Dying Curse (40255), Embrace of the Spider (39229), or any other chance-on-helpful-spell trinket equipped, cast Slow Fall (/cast Slow Fall or .cast 130) on yourself or a raid member ~10 times.
  3. Without this PR (after fix(DB/Proc): block on-demand trinket procs #25630): the proc never fires — Slow Fall is rejected as NO_DMG_HEAL.
  4. With this PR: the trinket buff (e.g. Curse of Mending) lands within a few casts, matching retail 3.3.0 behavior.
  5. Sanity: cast Conjure Refreshment (.cast 58660) — the trinket should still NOT fire (only spell 130 is special-cased).

Known Issues and TODO List:

  • [ ]

Patch 3.3.0 explicitly enabled Slow Fall to activate trinkets that can
trigger from casting a helpful spell, but the AC proc system classifies
it as PROC_SPELL_TYPE_NO_DMG_HEAL because it deals no damage or heal.
After the prior chance-on-spell trinket SpellTypeMask tightening
(chromiecraft/chromiecraft#9399), the NO_DMG_HEAL classification stops
matching the trinkets' SpellTypeMask = DAMAGE | HEAL filter.

Special-case spell 130 to report as PROC_SPELL_TYPE_HEAL so the
chance-on-helpful-spell trinkets accept it again, restoring retail
3.3.0 behavior. No other helpful self-cast is affected.

Source: https://www.bluetracker.gg/wow/topic/eu-en/11824414100-33-patch-notes/
@github-actions github-actions Bot added CORE Related to the core file-cpp Used to trigger the matrix build labels Apr 28, 2026
@blinkysc blinkysc added the WIP Work in Progress. label Apr 28, 2026
@blinkysc blinkysc marked this pull request as draft April 28, 2026 01:12
@blinkysc
Copy link
Copy Markdown
Contributor Author

blinkysc commented Apr 28, 2026

So I had as HEAL, but really there is many that can mean "helpful" so this is kind of tough...

@blinkysc
Copy link
Copy Markdown
Contributor Author

This needs deeper research likely... Dang blue post just so vague

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

CORE Related to the core file-cpp Used to trigger the matrix build WIP Work in Progress.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant