revised ascension bonus (trunk only)

Part of the final score is doubled for ascension.  Some players use
helm of opposite alignment in order to offer and ascend at the first astral
altar they reach.  This limits the score doubling to ascending with your
original alignment intact, penalizing (for the subset of players who care
about score) alignment manipulation.  Converting to a second alignment and
then using a helm of opposite alignment to switch back and offer to hero's
original deity yields a smaller bonus (one-and-a-half instead of doubling).
Offering to either of the other deities (either via permanent conversion
or temporarily switching via helm or both) gets no score bonus.
This commit is contained in:
nethack.rankin
2007-03-04 02:18:59 +00:00
parent d70d44b67f
commit 2adc83e145
2 changed files with 10 additions and 1 deletions

View File

@@ -288,6 +288,7 @@ worm teeth and crysknives have become stackable
improved container interface
acid can destroy iron bars
OPTIONS=playmode:normal|explore|debug to choose mode without command-line
score bonus for ascending is reduced or denied for changing alignment
Platform- and/or Interface-Specific New Features

View File

@@ -753,7 +753,15 @@ die:
if (deepest > 20)
tmp += 1000L * (long)((deepest > 30) ? 10 : deepest - 20);
nowrap_add(u.urexp, tmp);
if (how == ASCENDED) nowrap_add(u.urexp, u.urexp);
/* ascension gives a score bonus iff offering to original deity */
if (how == ASCENDED && u.ualign.type == u.ualignbase[A_ORIGINAL]) {
/* retaining original alignment: score *= 2;
converting, then using helm-of-OA to switch back: *= 1.5 */
tmp = (u.ualignbase[A_CURRENT] == u.ualignbase[A_ORIGINAL]) ?
u.urexp : (u.urexp / 2L);
nowrap_add(u.urexp, tmp);
}
}
if (bones_ok) {