Skip to content

Commit

Permalink
Reduce Wucad Mu's channeling effectiveness (atomjack)
Browse files Browse the repository at this point in the history
The new formulae resulted in Wucad Mu scaling much more strongly than
intended, up to approximately a 99% chance to make spellcasting free at 27
Evocations skill. Ideally the formulae will be reworked in the longer term
to also make the effect scale better for regular orbs of energy at lower
skill, but in the meantime reduce the ceiling by counting Wucad Mu as 1.5
sources of channeling instead of 2, and removing the stacking effect of
multiple sources on the backfire rate.
  • Loading branch information
semitonal committed Feb 2, 2022
1 parent 3f3a666 commit b207118
Showing 1 changed file with 8 additions and 12 deletions.
20 changes: 8 additions & 12 deletions crawl-ref/source/spl-cast.cc
Expand Up @@ -682,24 +682,20 @@ static void _handle_channeling(int cost)
if (you.has_mutation(MUT_HP_CASTING))
return;

const int sources = 2 * player_equip_unrand(UNRAND_WUCAD_MU)
+ you.wearing_ego(EQ_ALL_ARMOUR, SPARM_ENERGY);
const int sources = 3 * player_equip_unrand(UNRAND_WUCAD_MU)
+ 2 * you.wearing_ego(EQ_ALL_ARMOUR, SPARM_ENERGY);

if (!x_chance_in_y(sources * you.skill(SK_EVOCATIONS), 54))
if (!x_chance_in_y(sources * you.skill(SK_EVOCATIONS), 108))
return;

did_god_conduct(DID_WIZARDLY_ITEM, 10);

// The chance of backfiring goes down with evo skill and up with cost
// and is greatly reduced by more sources of channeling
for (int i = 0; i < sources; ++i)
// The chance of backfiring goes down with evo skill and up with cost.
if (!one_chance_in(max(you.skill(SK_EVOCATIONS) - cost, 1)))
{
if (!one_chance_in(max(you.skill(SK_EVOCATIONS) - cost, 1)))
{
mpr("Magical energy flows into your mind!");
inc_mp(cost, true);
return;
}
mpr("Magical energy flows into your mind!");
inc_mp(cost, true);
return;
}

mpr(random_choose("Weird images run through your mind.",
Expand Down

0 comments on commit b207118

Please sign in to comment.