Skip to content

Commit

Permalink
revised ascension bonus (trunk only)
Browse files Browse the repository at this point in the history
     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.
  • Loading branch information
nethack.rankin committed Mar 4, 2007
1 parent d70d44b commit 2adc83e
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 1 deletion.
1 change: 1 addition & 0 deletions doc/fixes35.0
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down
10 changes: 9 additions & 1 deletion src/end.c
Original file line number Diff line number Diff line change
Expand Up @@ -753,7 +753,15 @@ int how;
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) {
Expand Down

0 comments on commit 2adc83e

Please sign in to comment.