Skip to content

fix(Scripts/OnyxiasLair): Sync the 60_2_1 Onyxia script with core master - #503

Merged
Nyeriah merged 1 commit into
mainfrom
onyxia-60-sync-master
Sep 27, 2026
Merged

Nyeriah merged 1 commit into
mainfrom
onyxia-60-sync-master

Conversation

@Nyeriah

@Nyeriah Nyeriah commented Sep 27, 2026 •

Copy link
Copy Markdown
Member

Changes Proposed

Syncs the 60_2_1 Onyxia copy (boss, instance script, header) with the current core master script. The module copy had drifted a few years behind, so it was missing the boundary leash, despawn on evade, the new rookery whelp and egg hatching behaviour, and Heated Ground after Deep Breath.

The boss body is now a near line-for-line copy of core's boss_onyxia, registered under the core script name through FactoryCreatureScript, so future syncs can be done by diffing against core.

Vanilla differences kept

  • Tail Sweep stays on the vanilla spell 15847 instead of 68867.
  • Onyxia stays immune to taunt.
  • No Onyxian Lair Guards: the engage spawn, the tunnel trigger and the guard AI are left out, since the guards came with the 3.2.2 revamp.
  • Heated Ground is cast like on master, but the module's spell tuning script sets 22191 to 22202 to their 1.12 DBC values (base 412, 175 die sides, so 413 to 587 per tick). With the 3.3.5 values it hits for 4125 to 5875 per tick, which would kill level 60 players in the rookery.
  • The quest 7495 achievement criteria update on kill is kept in the instance script.

Review guide

  • boss_onyxia.cpp: the only real review surface is the removal of the lair guard pieces and the registration at the bottom. Everything else matches core master.
  • instance_onyxias_lair.cpp: master's instance script plus the module's quest criteria and tuning, with the new Heated Ground case.
  • onyxias_lair.h: identical to master apart from the license header.

npc_onyxian_whelp is not duplicated. Core registers it against instance_onyxias_lair, the same instance script name the module uses, so it keeps working in this bracket.

Known gaps

  • The rookery whelp timings come from a retail sniff of the level 80 fight. There is no vanilla data to compare them with, so they are ported as-is.
  • Whether vanilla Onyxia cast Heated Ground at all is not confirmed. The spell exists in the 1.12 DBC with the tuned values, which is why it was kept.

Tests Performed

Not built or tested in game yet.

How to Test the Changes

  1. Enable Bracket_60_2_1 without Bracket_80_3 and pull Onyxia.
  2. Kite her more than about 95 yards from her spawn: she yells, despawns and respawns a minute later.
  3. At 65% she lifts off. Whelps spawn at the back of both rookeries and nearby eggs hatch. No Lair Guards appear.
  4. After each Deep Breath, fire patches ring the rookery and hit for roughly 413 to 587 fire per second.
  5. At 40% she lands, rookery whelps stop respawning, and phase 3 plays as before.
  6. Taunting Onyxia has no effect.

🤖 Generated with Claude Code

Summary by CodeRabbit

  • Gameplay
    • Onyxia’s flight phases now follow health-based transitions, with whelps spawning at set points during flight and returning after a delay until she begins her final phase.
    • Whelps can hatch nearby eggs, with hatches already in progress able to complete after respawning stops.
    • Deep Breath hits are tracked for encounter failure, and Heated Ground damage has been adjusted.

Port the current core Onyxia boss, instance script and header into the
vanilla bracket copy: boundary based leash with evade yell, despawn on
evade, health check phase transitions, sniff based rookery whelps with
egg hatching, and Heated Ground after each Deep Breath.

Vanilla deviations are kept: Tail Sweep 15847, taunt immunity, no Onyxian
Lair Guards. Heated Ground is tuned to its 1.12 value (413 to 587 per
tick) in the module's spell tuning script.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@coderabbitai

coderabbitai Bot commented Sep 27, 2026

Copy link
Copy Markdown

Review in Change Stack →

Navigate logical layers of code changes, visualize relationships, and explore their blast radius.

Note

Currently processing new changes in this PR. This may take a few minutes, please wait...

⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Advanced

Run ID: b0c85cb2-2081-4737-8db3-cdaa31922f8b

📥 Commits

Reviewing files that changed from the base of the PR and between ae6a53c and 5baae0b.

📒 Files selected for processing (3)
  • src/Bracket_60_2_1/scripts/OnyxiasLair/boss_onyxia.cpp
  • src/Bracket_60_2_1/scripts/OnyxiasLair/instance_onyxias_lair.cpp
  • src/Bracket_60_2_1/scripts/OnyxiasLair/onyxias_lair.h
 _____________________________________________________________________________________________________________
< Perfection is achieved, not when there is nothing more to add, but when there is nothing left to take away. >
 -------------------------------------------------------------------------------------------------------------
  \
   \   \
        \ /\
        ( )
      .( o ).
✨ Finishing Touches
📝 Generate docstrings
  • Commit to this branch
  • Create a new PR
🧪 Generate unit tests (beta)
  • Commit to this branch
  • Create a new PR

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@Nyeriah
Nyeriah merged commit 0ef5f13 into main Sep 27, 2026
1 of 2 checks passed
@Nyeriah
Nyeriah deleted the onyxia-60-sync-master branch September 27, 2026 16:10
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.

1 participant