fix several monster difficulty ratings

Fix most of the things pointed out by #wizmondiff.

Weakening of placeholder 'elf' is due to recent removal of M2_STRONG
for it as part of the "orc strongmonst" changes.

I assume that the discrepancies for multiple quest leaders came about
as part of the change that allows killing the leader as an alternate
way to gain access to the lower levels of the quest, but didn't check.

I don't know what's up with 'piranha' but just changed it to match
generated value.

'{freezing,flaming,shocking} sphere' still show up as discrepancies
with hardcoded (mons[].difficulty) value higher than generated value.
They got harder when their explosion was beefed up, so the formula to
calculate difficulty ought to be updated to account for that.
This commit is contained in:
PatR
2022-10-15 12:28:54 -04:00
committed by nhmall
parent b7d46980ce
commit e135046497
+11 -11
View File
@@ -2248,7 +2248,7 @@
SIZ(WT_ELF, 350, MS_HUMANOID, MZ_HUMAN), MR_SLEEP, MR_SLEEP, SIZ(WT_ELF, 350, MS_HUMANOID, MZ_HUMAN), MR_SLEEP, MR_SLEEP,
M1_HUMANOID | M1_OMNIVORE | M1_SEE_INVIS, M1_HUMANOID | M1_OMNIVORE | M1_SEE_INVIS,
M2_NOPOLY | M2_ELF | M2_COLLECT, M2_NOPOLY | M2_ELF | M2_COLLECT,
M3_INFRAVISION | M3_INFRAVISIBLE, 2, HI_DOMESTIC, ELF), M3_INFRAVISION | M3_INFRAVISIBLE, 1, HI_DOMESTIC, ELF),
MON("Woodland-elf", S_HUMAN, LVL(4, 12, 10, 10, -5), MON("Woodland-elf", S_HUMAN, LVL(4, 12, 10, 10, -5),
(G_GENO | G_SGROUP | 2), (G_GENO | G_SGROUP | 2),
A(ATTK(AT_WEAP, AD_PHYS, 2, 4), NO_ATTK, A(ATTK(AT_WEAP, AD_PHYS, 2, 4), NO_ATTK,
@@ -2735,7 +2735,7 @@
SIZ(60, 30, MS_SILENT, MZ_SMALL), 0, 0, SIZ(60, 30, MS_SILENT, MZ_SMALL), 0, 0,
M1_SWIM | M1_AMPHIBIOUS | M1_ANIMAL | M1_SLITHY | M1_NOLIMBS M1_SWIM | M1_AMPHIBIOUS | M1_ANIMAL | M1_SLITHY | M1_NOLIMBS
| M1_CARNIVORE | M1_OVIPAROUS | M1_NOTAKE, | M1_CARNIVORE | M1_OVIPAROUS | M1_NOTAKE,
M2_HOSTILE, 0, 6, CLR_RED, PIRANHA), M2_HOSTILE, 0, 7, CLR_RED, PIRANHA),
MON("shark", S_EEL, LVL(7, 12, 2, 0, 0), (G_GENO | G_NOGEN), MON("shark", S_EEL, LVL(7, 12, 2, 0, 0), (G_GENO | G_NOGEN),
A(ATTK(AT_BITE, AD_PHYS, 5, 6), NO_ATTK, NO_ATTK, NO_ATTK, NO_ATTK, A(ATTK(AT_BITE, AD_PHYS, 5, 6), NO_ATTK, NO_ATTK, NO_ATTK, NO_ATTK,
NO_ATTK), NO_ATTK),
@@ -2948,7 +2948,7 @@
M1_TUNNEL | M1_NEEDPICK | M1_HUMANOID | M1_OMNIVORE, M1_TUNNEL | M1_NEEDPICK | M1_HUMANOID | M1_OMNIVORE,
M2_NOPOLY | M2_HUMAN | M2_PNAME | M2_PEACEFUL | M2_STRONG | M2_MALE M2_NOPOLY | M2_HUMAN | M2_PNAME | M2_PEACEFUL | M2_STRONG | M2_MALE
| M2_COLLECT | M2_MAGIC, | M2_COLLECT | M2_MAGIC,
M3_CLOSE | M3_INFRAVISIBLE, 22, HI_LORD, LORD_CARNARVON), M3_CLOSE | M3_INFRAVISIBLE, 24, HI_LORD, LORD_CARNARVON),
MON("Pelias", S_HUMAN, LVL(20, 15, 0, 90, 0), (G_NOGEN | G_UNIQ), MON("Pelias", S_HUMAN, LVL(20, 15, 0, 90, 0), (G_NOGEN | G_UNIQ),
A(ATTK(AT_WEAP, AD_PHYS, 4, 10), ATTK(AT_WEAP, AD_PHYS, 4, 10), A(ATTK(AT_WEAP, AD_PHYS, 4, 10), ATTK(AT_WEAP, AD_PHYS, 4, 10),
NO_ATTK, NO_ATTK, NO_ATTK, NO_ATTK), NO_ATTK, NO_ATTK, NO_ATTK, NO_ATTK),
@@ -2956,7 +2956,7 @@
M1_HUMANOID | M1_OMNIVORE, M1_HUMANOID | M1_OMNIVORE,
M2_NOPOLY | M2_HUMAN | M2_PNAME | M2_PEACEFUL | M2_STRONG | M2_MALE M2_NOPOLY | M2_HUMAN | M2_PNAME | M2_PEACEFUL | M2_STRONG | M2_MALE
| M2_COLLECT | M2_MAGIC, | M2_COLLECT | M2_MAGIC,
M3_CLOSE | M3_INFRAVISIBLE, 22, HI_LORD, PELIAS), M3_CLOSE | M3_INFRAVISIBLE, 24, HI_LORD, PELIAS),
MON("Shaman Karnov", S_HUMAN, LVL(20, 15, 0, 90, 20), (G_NOGEN | G_UNIQ), MON("Shaman Karnov", S_HUMAN, LVL(20, 15, 0, 90, 20), (G_NOGEN | G_UNIQ),
A(ATTK(AT_WEAP, AD_PHYS, 4, 10), ATTK(AT_MAGC, AD_CLRC, 2, 8), A(ATTK(AT_WEAP, AD_PHYS, 4, 10), ATTK(AT_MAGC, AD_CLRC, 2, 8),
NO_ATTK, NO_ATTK, NO_ATTK, NO_ATTK), NO_ATTK, NO_ATTK, NO_ATTK, NO_ATTK),
@@ -2964,7 +2964,7 @@
M1_HUMANOID | M1_OMNIVORE, M1_HUMANOID | M1_OMNIVORE,
M2_NOPOLY | M2_HUMAN | M2_PNAME | M2_PEACEFUL | M2_STRONG | M2_MALE M2_NOPOLY | M2_HUMAN | M2_PNAME | M2_PEACEFUL | M2_STRONG | M2_MALE
| M2_COLLECT | M2_MAGIC, | M2_COLLECT | M2_MAGIC,
M3_CLOSE | M3_INFRAVISIBLE, 22, HI_LORD, SHAMAN_KARNOV), M3_CLOSE | M3_INFRAVISIBLE, 24, HI_LORD, SHAMAN_KARNOV),
#if 0 /* OBSOLETE -- leaders for 3.1.x/3.2.x elf quest when elf was a role */ #if 0 /* OBSOLETE -- leaders for 3.1.x/3.2.x elf quest when elf was a role */
/* Two for elves - one of each sex. /* Two for elves - one of each sex.
*/ */
@@ -2996,7 +2996,7 @@
M1_HUMANOID | M1_OMNIVORE, M1_HUMANOID | M1_OMNIVORE,
M2_NOPOLY | M2_HUMAN | M2_PNAME | M2_PEACEFUL | M2_STRONG | M2_MALE M2_NOPOLY | M2_HUMAN | M2_PNAME | M2_PEACEFUL | M2_STRONG | M2_MALE
| M2_COLLECT | M2_MAGIC, | M2_COLLECT | M2_MAGIC,
M3_CLOSE | M3_INFRAVISIBLE, 22, HI_LORD, HIPPOCRATES), M3_CLOSE | M3_INFRAVISIBLE, 26, HI_LORD, HIPPOCRATES),
MON("King Arthur", S_HUMAN, LVL(20, 15, 0, 90, 20), (G_NOGEN | G_UNIQ), MON("King Arthur", S_HUMAN, LVL(20, 15, 0, 90, 20), (G_NOGEN | G_UNIQ),
A(ATTK(AT_WEAP, AD_PHYS, 4, 10), ATTK(AT_WEAP, AD_PHYS, 4, 10), A(ATTK(AT_WEAP, AD_PHYS, 4, 10), ATTK(AT_WEAP, AD_PHYS, 4, 10),
NO_ATTK, NO_ATTK, NO_ATTK, NO_ATTK), NO_ATTK, NO_ATTK, NO_ATTK, NO_ATTK),
@@ -3004,7 +3004,7 @@
M1_HUMANOID | M1_OMNIVORE, M1_HUMANOID | M1_OMNIVORE,
M2_NOPOLY | M2_HUMAN | M2_PNAME | M2_PEACEFUL | M2_STRONG | M2_MALE M2_NOPOLY | M2_HUMAN | M2_PNAME | M2_PEACEFUL | M2_STRONG | M2_MALE
| M2_COLLECT | M2_MAGIC, | M2_COLLECT | M2_MAGIC,
M3_CLOSE | M3_INFRAVISIBLE, 23, HI_LORD, KING_ARTHUR), M3_CLOSE | M3_INFRAVISIBLE, 24, HI_LORD, KING_ARTHUR),
MON("Grand Master", S_HUMAN, LVL(25, 15, 0, 90, 0), (G_NOGEN | G_UNIQ), MON("Grand Master", S_HUMAN, LVL(25, 15, 0, 90, 0), (G_NOGEN | G_UNIQ),
A(ATTK(AT_CLAW, AD_PHYS, 4, 10), ATTK(AT_KICK, AD_PHYS, 2, 8), A(ATTK(AT_CLAW, AD_PHYS, 4, 10), ATTK(AT_KICK, AD_PHYS, 2, 8),
ATTK(AT_MAGC, AD_CLRC, 2, 8), ATTK(AT_MAGC, AD_CLRC, 2, 8), NO_ATTK, ATTK(AT_MAGC, AD_CLRC, 2, 8), ATTK(AT_MAGC, AD_CLRC, 2, 8), NO_ATTK,
@@ -3032,7 +3032,7 @@
M1_HUMANOID | M1_OMNIVORE | M1_SEE_INVIS | M1_SWIM | M1_AMPHIBIOUS, M1_HUMANOID | M1_OMNIVORE | M1_SEE_INVIS | M1_SWIM | M1_AMPHIBIOUS,
M2_NOPOLY | M2_HUMAN | M2_PNAME | M2_PEACEFUL | M2_STRONG | M2_MALE M2_NOPOLY | M2_HUMAN | M2_PNAME | M2_PEACEFUL | M2_STRONG | M2_MALE
| M2_COLLECT | M2_MAGIC, | M2_COLLECT | M2_MAGIC,
M3_CLOSE | M3_INFRAVISION | M3_INFRAVISIBLE, 22, HI_LORD, ORION), M3_CLOSE | M3_INFRAVISION | M3_INFRAVISIBLE, 24, HI_LORD, ORION),
/* Note: Master of Thieves is also the Tourist's nemesis. /* Note: Master of Thieves is also the Tourist's nemesis.
*/ */
MON("Master of Thieves", S_HUMAN, LVL(20, 15, 0, 90, -20), MON("Master of Thieves", S_HUMAN, LVL(20, 15, 0, 90, -20),
@@ -3051,7 +3051,7 @@
M1_HUMANOID | M1_OMNIVORE, M1_HUMANOID | M1_OMNIVORE,
M2_NOPOLY | M2_HUMAN | M2_PNAME | M2_PEACEFUL | M2_STRONG | M2_MALE M2_NOPOLY | M2_HUMAN | M2_PNAME | M2_PEACEFUL | M2_STRONG | M2_MALE
| M2_COLLECT | M2_MAGIC, | M2_COLLECT | M2_MAGIC,
M3_CLOSE | M3_INFRAVISIBLE, 23, HI_LORD, LORD_SATO), M3_CLOSE | M3_INFRAVISIBLE, 24, HI_LORD, LORD_SATO),
MON("Twoflower", S_HUMAN, LVL(20, 15, 10, 90, 0), (G_NOGEN | G_UNIQ), MON("Twoflower", S_HUMAN, LVL(20, 15, 10, 90, 0), (G_NOGEN | G_UNIQ),
A(ATTK(AT_WEAP, AD_PHYS, 4, 10), NO_ATTK, NO_ATTK, A(ATTK(AT_WEAP, AD_PHYS, 4, 10), NO_ATTK, NO_ATTK,
NO_ATTK, NO_ATTK, NO_ATTK), NO_ATTK, NO_ATTK, NO_ATTK),
@@ -3069,7 +3069,7 @@
M1_HUMANOID | M1_OMNIVORE, M1_HUMANOID | M1_OMNIVORE,
M2_NOPOLY | M2_HUMAN | M2_PEACEFUL | M2_STRONG | M2_FEMALE M2_NOPOLY | M2_HUMAN | M2_PEACEFUL | M2_STRONG | M2_FEMALE
| M2_COLLECT | M2_MAGIC, | M2_COLLECT | M2_MAGIC,
M3_CLOSE | M3_INFRAVISIBLE, 23, HI_LORD, NORN), M3_CLOSE | M3_INFRAVISIBLE, 24, HI_LORD, NORN),
MON("Neferet the Green", S_HUMAN, LVL(20, 15, 0, 90, 0), MON("Neferet the Green", S_HUMAN, LVL(20, 15, 0, 90, 0),
(G_NOGEN | G_UNIQ), (G_NOGEN | G_UNIQ),
A(ATTK(AT_WEAP, AD_PHYS, 4, 10), ATTK(AT_MAGC, AD_SPEL, 2, 8), A(ATTK(AT_WEAP, AD_PHYS, 4, 10), ATTK(AT_MAGC, AD_SPEL, 2, 8),
@@ -3078,7 +3078,7 @@
M1_HUMANOID | M1_OMNIVORE, M1_HUMANOID | M1_OMNIVORE,
M2_NOPOLY | M2_HUMAN | M2_FEMALE | M2_PNAME | M2_PEACEFUL | M2_STRONG M2_NOPOLY | M2_HUMAN | M2_FEMALE | M2_PNAME | M2_PEACEFUL | M2_STRONG
| M2_COLLECT | M2_MAGIC, | M2_COLLECT | M2_MAGIC,
M3_CLOSE | M3_INFRAVISIBLE, 23, CLR_GREEN, NEFERET_THE_GREEN), M3_CLOSE | M3_INFRAVISIBLE, 25, CLR_GREEN, NEFERET_THE_GREEN),
/* /*
* quest nemeses * quest nemeses
*/ */