forked from phenom/healer-man
86 lines
4.4 KiB
Markdown
86 lines
4.4 KiB
Markdown
# Ascension stance and Targorr Thrash source audit — 2026-10-06
|
||
|
||
This follow-up checks only the unsupported Ascension Defensive Stance Passive
|
||
7376 DUMMY amount and whether the exact pinned Targorr source supplies a Thrash
|
||
cast cadence. It does not change runtime behavior.
|
||
|
||
## Source pins
|
||
|
||
The active world SQL snapshot is AzerothCore commit
|
||
`4d9d1d4b5723e819c5c390f6ca1177283dbfb8e3`. The four input files used here
|
||
match both `source.lock.json` in the active pipeline workspace and
|
||
`src/game/generated/azerothCoreSourceLock.json` by SHA-256 and row count:
|
||
|
||
| Active table | Rows | SHA-256 |
|
||
| --- | ---: | --- |
|
||
| `creature_template` | 29,947 | `0066e4fd35b809986dd325487515087f5a95f4ffe50ea03846c8d8bf5196870a` |
|
||
| `creature_template_spell` | 9,556 | `faf36f9ad1936470b545383e68db44d58b11fd51191f2fed3237971b12d8e86d` |
|
||
| `smart_scripts` | 52,768 | `622b5865f171b0b7a4dd93ecba55afd673c393c579485c17f827b31cb6e47dd2` |
|
||
| `creature` | 149,879 | `f54ddfe7ee00080b4b0bc970a809d6f947f6fb2627dbcd67e92b402fb34cb701` |
|
||
|
||
The Ascension client source is the pinned `patch-D` `Spell.dbc`, SHA-256
|
||
`2f77f18b91ffbae32a19568e4bc05ec78ee384b6ba8dd2a6e05f0e97abbb2dce`. The
|
||
read-only historical core checkout is at `e822d718322289dd036fb2daf8867ba41283bf9a`.
|
||
That core commit is a behavior reference; it is not the world SQL commit.
|
||
|
||
## Ascension DUMMY +42
|
||
|
||
The client row for spell 7376 has three self-targeted Apply Aura effects. The
|
||
third uses aura type 4 (`DUMMY`), raw `BasePoints=41`, and `DieSides=1`. The
|
||
pinned core's `SpellEffectInfo::CalcValue` turns the one-sided die into +1, so
|
||
the applied amount is exactly +42. Its trigger spell is zero.
|
||
|
||
The core's shapeshift handler links Defensive Stance form to passive 7376 at
|
||
`SpellAuraEffects.cpp:1378-1379`. That establishes why the passive is present,
|
||
but it does not assign meaning to the DUMMY amount. The pinned
|
||
`AuraEffect::HandleAuraDummy` has no `case 7376`; the base
|
||
`spell_script_names.sql` has no 7376 registration. `SpellInfoCorrections.cpp`
|
||
includes 7376 in the warrior-stance group at line 4745, then only adds
|
||
`SPELL_ATTR3_SUPPRESS_CASTER_PROCS` at line 4748. None of these is a +42
|
||
stat/effect consumer.
|
||
|
||
Keep the DUMMY effect as source metadata and leave its behavior gated. Do not
|
||
apply +42 to a stat or invent another mechanic without the custom-server
|
||
consumer that defines it.
|
||
|
||
Private Ascension server patches or data overlays were not available in this
|
||
source set, so any private override of the DUMMY row remains unknown.
|
||
|
||
## Targorr Thrash timing
|
||
|
||
The pinned `creature_template.sql:1485` row names entry 1696 as Targorr the
|
||
Dread and sets `AIName='SmartAI'`. The spell-list rows at
|
||
`creature_template_spell.sql:618-619` list 8599 in slot 0 and 3391 in slot 1.
|
||
They establish spell availability in the template list, not when 3391 is cast.
|
||
|
||
Targorr has exactly three active SmartAI rows at `smart_scripts.sql:5784-5786`:
|
||
|
||
- Row 5784 casts 674 on raw event type 0 with a 1,000 ms initial update; the
|
||
SQL comment calls this out-of-combat, while the pinned SmartScript enum maps
|
||
event 0 to update-in-combat.
|
||
- Row 5785 casts 8599 for the 0–30% health event and links to row 5786.
|
||
- Row 5786 is the linked talk action. No Targorr SmartAI row casts 3391.
|
||
|
||
In the pinned core, `SmartAI::UpdateAI` calls the SmartScript update and then
|
||
melee at `SmartAI.cpp:562`; it has no generic creature-template spell
|
||
scheduler. `CombatAI` is a separate AI path: it loads template spells and
|
||
schedules them through its event map in `CombatAI.cpp:50-100`. Targorr's
|
||
explicit `AIName='SmartAI'` does not establish the CombatAI path or its
|
||
cooldown behavior. No exact Targorr source row supplies a Thrash cadence.
|
||
|
||
Preserve the existing simulator timing policy. Spell 3391's separately
|
||
verified effect remains two queued main-hand attacks when cast; that effect
|
||
contract does not prove a cast time or repeat interval for Targorr. Do not
|
||
borrow another creature's 3391 schedule or apply generic CombatAI timing.
|
||
Any private Targorr script or override not present in the pinned world snapshot
|
||
also remains unknown.
|
||
|
||
## Reproduction
|
||
|
||
Run `node artifacts/enemy-utility-control-2026-10-06/audit-stance-thrash-source.mjs`
|
||
to recheck the pinned world hashes and row counts, extract the Targorr rows,
|
||
and inspect the Ascension DBC effect. It writes
|
||
[`audit-stance-thrash-source.json`](../artifacts/enemy-utility-control-2026-10-06/audit-stance-thrash-source.json).
|
||
The script and JSON are audit artifacts only; no runtime or generated content
|
||
was changed and no build, test suite, or live run was performed.
|