summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/mon-flags.h
diff options
context:
space:
mode:
authorMichael Gagno <evilmike@gmail.com>2012-09-01 20:17:02 -0700
committerMichael Gagno <evilmike@gmail.com>2012-09-01 20:35:43 -0700
commit5cea4aff000102919213442d93b72968f8918b97 (patch)
tree582e59f4ca7ab9404ed1e2507d4a50f82e3af921 /crawl-ref/source/mon-flags.h
parent19be3285a86ae5b6a4738b8f795c93d808447aa0 (diff)
downloadcrawl-ref-5cea4aff000102919213442d93b72968f8918b97.tar.gz
crawl-ref-5cea4aff000102919213442d93b72968f8918b97.zip
Heavily restrict which monsters are able to flee at low HP.
This has been discussed in ##crawl-dev and elsewhere, and has so far met no negative feedback (and there has been quite a bit of positive). I think this is worth trying in trunk; if something goes wrong it's easy to revert, or water down. This commit does two things: 1. It replaces the M_NO_FLEE flag with M_FLEES, and gives it to only a select few monsters. 2. It simplifies the logic for fleeing at low HP a bit: instead of checking a bunch of different attributes (intelligence, holiness, etc), it only checks for the M_FLEES flag. As for which monsters get M_FLEES: currently it is only monsters which used to flee under the old system, and also possess ranged attacks (this is because they can decide to stop fleeing and start attacking you at range). This is more interesting than melee-only enemies fleeing, which are unable to do anything but run into a corner. Thus, a fire drake will flee, but a yak will not. I believe the balance concerns here are insignificant, once players learn to adapt to this change. If there is a problem, we could change which monsters get M_FLEES. Nevertheless, this is something we should pay attention to as people play trunk (it may be helpful to compare kill stats, before and after, for monsters like hydras and death yaks). Finally, I should note that this does not change fleeing caused by fear effects, and it does not affect other "emergency" abilities (bears will still berserk at low HP, in other words).
Diffstat (limited to 'crawl-ref/source/mon-flags.h')
-rw-r--r--crawl-ref/source/mon-flags.h4
1 files changed, 2 insertions, 2 deletions
diff --git a/crawl-ref/source/mon-flags.h b/crawl-ref/source/mon-flags.h
index a64b1a92db..c06fe68651 100644
--- a/crawl-ref/source/mon-flags.h
+++ b/crawl-ref/source/mon-flags.h
@@ -134,8 +134,8 @@ const uint64_t M_UNFINISHED = (uint64_t)1<<40;
const uint64_t M_HERD = (uint64_t)1<<41;
-// will not flee
-const uint64_t M_NO_FLEE = (uint64_t)1<<42;
+// can flee at low hp
+const uint64_t M_FLEES = (uint64_t)1<<42;
// can sense vibrations in web traps
const uint64_t M_WEB_SENSE = (uint64_t)1<<43;