Skip to content

[Mage] Arcane 12.1 changes + set bonus#11527

Open
Lucasmingus wants to merge 6 commits into
simulationcraft:midnightfrom
Lucasmingus:arcane-set-implementation
Open

[Mage] Arcane 12.1 changes + set bonus#11527
Lucasmingus wants to merge 6 commits into
simulationcraft:midnightfrom
Lucasmingus:arcane-set-implementation

Conversation

@Lucasmingus

Copy link
Copy Markdown
Contributor

Arcane Pulse changes, Prismatic Bolt and 12.1 set bonus.
Added game version checks on everything related to Arcane Pulse changes.

@Lucasmingus Lucasmingus changed the title [Mage] 12.1 changes + set bonus [Mage] Arcane 12.1 changes + set bonus Jun 25, 2026

// Row 8
player_talent_t touch_of_the_archmage_1;
player_talent_t prismatic_bolt_1;

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Add a TODO somewhere on TotA so that we don't forget to remove it in 12.1.

Comment thread engine/class_modules/sc_mage.cpp Outdated
{
background = true;
aoe = -1;
radius = 8;

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This should be automatically picked up from spell data

// TODO: Remove check when 12.1 goes live -- in 12.1, pulse generates charges per enemy hit in impact() instead.
if ( p()->dbc->wowv() < wowv_t{ 12, 1, 0 } )
{
p()->trigger_arcane_charge( as<int>( data().effectN( 2 ).base_value() ) );

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Better to generate the AC here with num_targets_hit (which is set after execute()). Saves some time by not having to do it one by one. Also, the Pulse echo behaves differently which isn't implemented here.

Comment thread engine/class_modules/sc_mage.cpp Outdated
// 12.1: Arcane Pulse now generates 1 arcane charge per enemy hit
// TODO: Remove check when 12.1 goes live
if ( p()->dbc->wowv() >= wowv_t{ 12, 1, 0 } && result_is_hit( s->result ) )
p()->trigger_arcane_charge( 1 );

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

See above

Comment thread engine/class_modules/sc_mage.cpp Outdated
}

// TODO: Remove check when 12.1 goes live
if ( p()->dbc->wowv() >= wowv_t{ 12, 1, 0 } )

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This check seems a bit meaningless? You're not getting cumulative power without already using 12.1 spell data

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

right, maybe i went a bit overboard with the version checks

Comment thread engine/class_modules/sc_mage.cpp Outdated
{
custom_state_spell_t::execute();

if ( p()->sets->has_set_bonus( MAGE_ARCANE, MID2, B4 ) )

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No need to check for this again if the buff is disabled (trigger chance == 0) without the tier set

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.

2 participants