Rework Sif Muna's channeling and piety gain
authorgammafunk <gammafunk@gmail.com>
Sun, 3 Jul 2016 23:46:23 +0000 (18:46 -0500)
committergammafunk <gammafunk@gmail.com>
Mon, 4 Jul 2016 02:38:35 +0000 (21:38 -0500)
commitff1bd0964ec39ab475a87de2779313b4afd0ef25
tree83dc918e192e0dc8e9ad518642de145cea87b92e
parentdac7d08ae87dfb619baccb5a491e2a233ac78476
parent39f9f7471925796ca5d1e5e225fa187c27e45d5c
Rework Sif Muna's channeling and piety gain

Note: Merges the branch 'sifcast'. These commit comments describe the
final state of the changes in the branch. Comments from the initial
branch commits don't reflect the final version of the changes.

Sif Muna's present channel energy ability is very powerful, but requires
many keypresses to use optimally. The player has incentive to use it
repeatedly before resting HP to full, so as to not be caught at low
MP. As a tactical ability, it's excellent when using allies for safety,
but harder to use when casting damaging spells, since players are often
forced to take damage when channeling with monsters nearby.

Additionally Sif's reliance on training magical schools for piety
introduced strange choices at stages of the game where players most
wanted to improve their character's melee or defenses. If the player
wants to receive spell gifts in the near-term, they're forced to
continue training significant amounts of magic when increased spell
power and/or MP is not the aim. Sif also makes little use of piety later
on as gifts became less relevant despite having a piety-costing ability
(Forget Spell).

To address these issues, this commit reworks the previous 1* channel
ability into 3* piety-costed ability, adds a 1* toggled passive to aid
spellcasting at low MP, and changes Sif's piety gain. The 1* passive and
3* ability both allow player movement when taking advantage of them but
MP restoration is no longer relatively free or as abundant. The large
hunger costs associated with heavy use of Sif channel are gone, but even
for characters that used channel repeatedly in combat, there was little
effective strategic or tactical cost in practice.

Sif now gains 1/3 piety from kills (compared to e.g. Vehumet) and 2/3 as
much from training magical schools as before this commit. Hence training
100% magic should be similar to the piety gain as before, but players
can elect to train no or little magical skills and still gain
significant piety given enough time.

For the abilities:

At 1* you gain a Divine Energy toggle.

When the toggle is active, you can cast a spell even if you lack the
full MP for it, but doing so will set a -Cast status for 3 +
random2avg(2 * cost, 2) turns, where cost is the MP you would need to
cast the spell. Hence missing only 1 MP necessary to cast a spell gives
fewer turns of -Cast compared to missing 9MP to cast the highest level
spells. Enabling the toggle adds a +Cast status light, at which point
the behavior happens automatically when the player casts with
insufficient MP.

At 3* you get a "Channel Magic" ability:

Costs piety and hunger, presently costed the same as Trog's Hand. This
gives you 4 + random2avg(2 * INVOCATIONS / 3) turns of a "Channel"
duration that grants ambrosia-levels of MP regen, namely 3-5 MP restored
per turn.

Some preliminary testing with conjurations/summoning characters shows
that piety gain is not too rapid, and I found Divine Energy useful often
with Channel Magic coming into play for fights with larger groups of
enemies. Further adjustments to the Channel Magic active and piety
costs/gain/decay can happen based on play testing.
crawl-ref/source/enum.h
crawl-ref/source/godconduct.cc
crawl-ref/source/player.cc
crawl-ref/source/player.h
crawl-ref/source/spl-cast.cc
crawl-ref/source/tilepick.cc