Make divine wrath contingent on XP gain.
authorSteve Melenchuk <smelenchuk@gmail.com>
Wed, 5 Feb 2014 04:06:16 +0000 (21:06 -0700)
committerSteve Melenchuk <smelenchuk@gmail.com>
Sun, 9 Feb 2014 21:09:06 +0000 (14:09 -0700)
commit57e2a1b88cdfb357ea020a44b7c0f69cdd17ea8a
treea31fc3cf58f19c5a1d484c1db4632d6724c544e4
parentb5a132a165d97a0dc13340c4d589cc167aeeee09
Make divine wrath contingent on XP gain.

For every 1% of an XL you gain, there's a 10% chance of any particular
god angry at you attempting divine retribution on the next "every 20
aut" timer (i.e. 100% chance of *someone* throwing wrath at you if you
have ten angry gods; less for less gods). This translates into ten
wraths per XL, which, on an average of 2 penance lost per wrath, means
20 penance is on average equal to one XL worth of wrath.

For perspective, the following penance values are used on abandonment:
- 25: Cheibriados, Dith, Makhleb, Vehumet, Zin
- 30: Elyvilon, Fedhas, Jiyva, Kiku, Yred, TSO
- 50: Beogh, Dithmengos, Lugonu, Sif Muna, Trog
- 150: Nemelex Xobeh (but only active above 100 penance)

...so for the "normal" wraths (Ashenzari wrath is already special), you
can expect wrath to last either 1.25 XL, 1.5 XL, or 3 XL (or an equivalent
amount of experience).

In practice, because wraths still - at their core - happen on a timer,
you end up with wrath either during or after significant battles, when
the player is depleted - exactly when an angry god would try to kill
you.

These numbers can probably be fudged further; I think this may make
wrath happen too often (even if it's at relevant times), but time will
tell.
crawl-ref/source/enum.h
crawl-ref/source/player.cc
crawl-ref/source/religion.cc
crawl-ref/source/religion.h