summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/effects.cc
diff options
context:
space:
mode:
authorj-p-e-g <j-p-e-g@c06c8d41-db1a-0410-9941-cceddc491573>2009-08-11 20:43:45 +0000
committerj-p-e-g <j-p-e-g@c06c8d41-db1a-0410-9941-cceddc491573>2009-08-11 20:43:45 +0000
commitc0f5bc091066fdae1dea5f3091f813609e968fc1 (patch)
tree851d011cdeb86305aed9fa690981bc47eb1b79ec /crawl-ref/source/effects.cc
parent3a3d0a3e4f7482ecadacc4a915f3c38d3232a1c7 (diff)
downloadcrawl-ref-c0f5bc091066fdae1dea5f3091f813609e968fc1.tar.gz
crawl-ref-c0f5bc091066fdae1dea5f3091f813609e968fc1.zip
Tweak probabilities for wand acquirement.
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@10520 c06c8d41-db1a-0410-9941-cceddc491573
Diffstat (limited to 'crawl-ref/source/effects.cc')
-rw-r--r--crawl-ref/source/effects.cc30
1 files changed, 19 insertions, 11 deletions
diff --git a/crawl-ref/source/effects.cc b/crawl-ref/source/effects.cc
index 4f445579fd..951a37e139 100644
--- a/crawl-ref/source/effects.cc
+++ b/crawl-ref/source/effects.cc
@@ -1430,31 +1430,39 @@ static int _acquirement_wand_subtype()
int w = 0;
// First, weight according to usefulness.
- // (The numbers are approximately percentages.)
switch (type)
{
- case WAND_HASTING:
+ case WAND_HASTING: // each 17.9%, group unknown each 26.3%
case WAND_HEALING:
+ w = 25; break;
+ case WAND_TELEPORTATION: // each 10.7%, group unknown each 17.6%
+ case WAND_INVISIBILITY:
w = 15; break;
- case WAND_TELEPORTATION:
+ case WAND_FIRE: // each 5.7%, group unknown each 9.3%
+ case WAND_COLD:
+ case WAND_LIGHTNING:
+ case WAND_DRAINING:
+ w = 8; break;
+ case WAND_DIGGING: // each 3.6%, group unknown each 6.25%
case WAND_FIREBALL:
- w = 10; break;
- case WAND_INVISIBILITY:
- case WAND_DIGGING:
case WAND_DISINTEGRATION:
case WAND_POLYMORPH_OTHER:
- w = 7; break;
- case WAND_FIRE:
- case WAND_COLD:
- case WAND_LIGHTNING:
w = 5; break;
+ case WAND_FLAME: // each 0.7%, group unknown each 1.4%
+ case WAND_FROST:
+ case WAND_CONFUSION:
+ case WAND_PARALYSIS:
+ case WAND_SLOWING:
+ case WAND_ENSLAVEMENT:
+ case WAND_MAGIC_DARTS:
+ case WAND_RANDOM_EFFECTS:
default:
w = 1; break;
}
// Unknown wands get another huge weight bonus.
if (get_ident_type(OBJ_WANDS, type) == ID_UNKNOWN_TYPE)
- w += 10;
+ w *= 2;
total += w;
if (x_chance_in_y(w, total))