summaryrefslogtreecommitdiffstats
path: root/stone_soup/crawl-ref/docs/changes.400
diff options
context:
space:
mode:
Diffstat (limited to 'stone_soup/crawl-ref/docs/changes.400')
-rw-r--r--stone_soup/crawl-ref/docs/changes.4003278
1 files changed, 0 insertions, 3278 deletions
diff --git a/stone_soup/crawl-ref/docs/changes.400 b/stone_soup/crawl-ref/docs/changes.400
deleted file mode 100644
index e5d853b1f0..0000000000
--- a/stone_soup/crawl-ref/docs/changes.400
+++ /dev/null
@@ -1,3278 +0,0 @@
-9 August 2001, Michal Valvoda
- * Gordon's destroy_item() fix included
- * Complete clean-up of dungeon.cc::give_item() + few changes
- for example
- - Until now was a lot of items colored twice (by give_item()
- and by item_colour()) and sometimes differently
- - every item goes to right MSLOT-no more MISCELLANY in MSLOT_POTION
- - magical items (wands, scrolls, potions) distribution
- * repel undead is working again (in turn_undead() was missing call for
- behavior_event())
- * added messages for rotting chunks/corpses in player's inventory
- * message when Corona wears out + few other new messages
- * fixed some (I hope that all) problems with "polymorph other".
- As side effect of some solutions
- - MONS_HUMAN and MONS_ELF are now valid and fully functional
- polymorph targets
- - useless MONS_ANOTHER_LAVA_THING was changed to
- MONS_SALAMANDER (in case of problem switch it off in dungeon.cc,
- yes, there because water and lava monsters are generated differently)
- * Renamed MSLOT_UNASIGNED_I to MSLOT_MISCELLANY, added NUM_MISCELLANY
- * rewrote misc. object generation to use NUM_MISCELLANY.
- Not important for now but I have many new misc. objects I want to include
- after release and it will help later. Also new code is much more readable
- and easier to modificate.
- * inteligent monsters now pick up gold
- * added some new unrand artifacts
- (ring of Shadows is getting a bit tired :)
- * added underground rivers and lakes,
- improved water generation
- * 3 new compile options
- #define USE_NEW_UNRANDS - switches new unrands on
- #define USE_RIVERS - switches new underground rivers and lakes on
- #define MISSILE_TRAILS_OFF - turns misile trails off.
- - not optimal, but works well on
- many computers
- - defaultly unset
- * other minor fixes and updates
- * changes.400 updated
-
- Notes:
- ! generation of water and lava monsters isn't very nice, an it would be
- fine to change it one day
- ! spells in WIZARD mode probably should be cast with some power
-
-
-
-
-
-
-
-BUGLIST:
-
-
-LEGEND
-** outstanding bug; reproduced or definitely needs fixing
-xx outstanding bug report; unreproducable, currently unfixable,
- or not a candidate for 4.0.0 release
-== fixed and released in some form (alpha, beta, etc - see version.h)
--- fixed bug, not yet released
-
-
-
-
-** Various XXX and FIXME comments throughout code from Brent.
-
-== 1. Casting "Corona" at self shows message "The 0 hits you !" and
-hurts you (same for Hibernation, maybe also other spells.)
-
->> fixed Corona and Hibernation. Possible that other spells still
->> allow this goofy behavior.
-
-== 2. Dwarven hunters starts with CYAN leather armor (maybe also
-others). It should be BROWN.
-
-== 3. Missing space in message "You feel verybuoyant !" (same problem
-with "You feel morebuoyant !")
-
-== 4. No message when you quaff potion of restore abilities and nothing
-happens.
-
-> fixed by Brent?
-
-== 5. Maybe there should be some message when you cast "Static
-Discharge" and no monster around.
-
-== 6. Inscription on "Innate abilities, Weirdness & Mutations" screen
-should be centered (my fault).
-
-== 7. Polymorph and unpolymorph messages are really odd -
-e.g. I polymorphed kobold and I got message
- "The stone giantThe kobold evaporates and reforms as a stone giant."
-
-== 8. Empty ebony casket should be DARKGREY and not BLACK.
-
-== 9. Rare weapons (quick blade, double/triple sword etc.) aren't as
-rare as they should be.
-
-> line 2006 in dungeon.cc should be 1+random(10) <= rarity
-
-== 11. Missing space in "Elyvilondemands penance!". Of course, same
-problem with other gods.
-
-== 12. 2 messages when wearing crystal armor about that it's too
-cumbersome
-
-== 13. map under DOS is working bad - each next line is shifted by one
-character
-LRH - At line 1810 of view.cc, in the map function, there is a
-for loop involved in printing the map. At present it's
-for (i = 0; i < 79; i ++);. To work under DOS, the 79 should
-be 80, otherwise the map is skewed to the left and looks
-very ugly.
-
-== 14. stoneskin isn't working - if you look at cast_stoneskin() zou
-will see it does nothing with AC
-
-> I have a fix for this - basically remove the 'else' before the
-> transformation-AC-adjustment switch in player.cc::{player}_AC().
-
-> There's another "bug" there, too, which is that the corresponding
-> 'if' ought to include '|| you.attr[ATTR_TRANSFORMATION] =
-TRAN_BLADE_HANDS'.
-
-== 15. Saw "a buggy helmet"
- "a buggy orange potion"
- "a buggy red potion"
-
-== 16. Buggy targeting - can't hit monsters in LOS. Could fix.. both
- for throwing and beaming?
-
-== 17. A hill Orc Chaos Knight (Zom) started with 14/15 hit points. !?
-
-== 20.One more thing that needs cleaning: the new invisible monster code.
- You don't get a message when your missile hits a monster, but you
- *do* get a message when your missile *misses* an invisible monster.
- IMO if we do make invisible monsters harder to detect than they
- were, we ought to make these (absent) messages exactly opposite:
- no message for miss, yes message for hit.
-
-
-xx 21. wearing Troll Hide, read unknown scroll, ASSERT(index < SIZE) in
- FixVec fails, abortion, core.
-
-== 22. Amulet of Rage isn't auto-identified when put on, but ability is
- visible in 'A' menu.
-
-== 23. torment_monsters in spells4.cc asserts like crazy. It should have a line
-like:
- if (mon != NON_MONSTER) {
-
-> fixed again; player wasn't getting hit. Not adding magic resist.
-
-
-== 24. In dungeon.cc there's a huge function called builder() with some code at
- the bottom that looks like this:
-
- if ( you.where_are_you == BRANCH_HALL_OF_BLADES )
- {
- for (bi = 1; bi < GXM; bj++)
- for (bj = 1; bj < GYM; bi++)
- if ( grd[bi][bj] >= DNGN_STONE_STAIRS_DOWN_I && grd[bi][bj]
-<= DNGN_ROCK_STAIRS_UP )
- grd[bi][bj] = DNGN_FLOOR;
- }
-
- The increment in the for loops should be swapped.
-
-== 25. A backtrace does indeed reveal the problem. From line 2432 of
- monstuff.cc:
-
- for (count_x = 0; count_x < 3; count_x++)
- for (count_y = 0; count_y < 3; count_y++)
- {
- good_move[count_x][count_y] = true;
-
-...
-
- if ( grd[monster->x + count_x - 1][monster->y + count_y - 1] < okmove )
- {
- good_move[count_x][count_y] = false;
- continue;
- }
-
- There's a monster at (39, 69), the above loop references (38,70).
-
-== 26. This line
-
- unsigned char grik = grd[monster->x + mmov_x][monster->y + mmov_y];
-
- from monstuff.cc around line 2730 is also causing an ASSERT failure.
-
- GDL: in fact, there are a bunch of places in monstuff.cc where fleeing
- or confused monsters can try to "run off the map", apart from the
- 'good move' checking in bug 25 above.
-
-
-== 27. monsters equipped with missile weapons
- commonly associated with launchers who
- insist on tossing the missiles by hand.
-
-== 28.About line 909 of monstuff.cc is
-
- if ( show[monster->x - you.x_pos + 6][monster->y - you.y_pos + 6] )
-
- The electric eel is at (48,36), I'm at (55,32), so we're indexing (-1,10).
- The array show is 19x19, and I'm thinking the +6 should be +9.
-
- There's a similar construct for lava snakes a little further up.
-
-== 29. An indexing error in item_use.cc, line 3092 or so, after reading a scroll
- of enchant armour while not wearing body armour.
-
- you.inv_type[you.equip[EQ_BODY_ARMOUR]] is inspected even though
- you.equip[EQ_BODY_ARMOUR] is -1.
-
-
- do
- {
- affected = 1 + random2(6);
- }
- while ( you.equip[affected] == -1 );
-
- // NOTE: It is assumed that armour which changes in this way
- // does not change
- // into a form of armour with a different evasion modifier.
-
- if ( you.inv_type[you.equip[EQ_BODY_ARMOUR]] == ARM_DRAGON_HIDE
- || you.inv_type[you.equip[EQ_BODY_ARMOUR]] == ARM_ICE_DRAGON_HIDE
- .
- .
- .
- )
-
-== 31. I just disarmed a blade trap, and the game seemed to hang.
-
-Since TRAP_BLADE are of type DNGN_TRAP_MECHANICAL, this code in misc.cc,
-line 1492 or so, tries to make a stack of trap items:
-
- if ( trap_category(env.trap_type[i]) == DNGN_TRAP_MECHANICAL )
- {
- for (j = 0; j < 20; j++)
- {
- itrap(&beam[0], i); // places items (eg darts), which will automatically stack
-
- if ( j > 10 && one_chance_in(3) )
- break;
- }
- }
-
-But misc::itrap() doesn't create these blades, and instead:
-
- default:
- getch();
- break;
-
-waits for input. It seems like a very strange default. Ultimately,
-you can wait it out by moving back and forth. Then you find a few
-questionable item where the trap was.
-
-== 32. Banishing self to Abyss when you are at Abyss does really
- strange effects
- ("The 0 hits you !" - I really don't understand why)
- Propably it's connected with 0-beams problem -
- some spells shows message "The 0 hits you !" when cast at player
- I suggest some kind of check whenever is 0-beam casted (e.g. if
- its targeted at player then shows message "It's not good idea."
- or so)
-
-== 33. I don't know how it happened but I've found 2 off-screen corridors.
- (Btw. I hopped it was fixed)
-- Finally, what you've all been waiting for: a fix for the
-infamous "corridor off the screen bug" (or at least one of its
-aspects). In dungeon.cc in vault_grid(...), add the line
-(vgrid == '\0') ? DNGN_ROCK_WALL :
-amongst all of the other ones. The problem was that the
-vault code was null-terminating some of the lines of the map,
-causing the default of DNGN_FLOOR to be put in place of all
-the '\0's.
-
-== 34. Potions, scrolls & wands are not updated when wielded and used.
-
-== 35. I've already reported this one but I remind that -
- When zapping some bolt towards the top of the screen and
- gaining level during it the rest of the bolt is drawn at the
- bottom of the screen (at message lines)
-
-== 36. Missing space in message "<Servant>is recalled."
- e.g. "Mummyis recalled."
-
-== 37. Redundant space in message "You are diseased."
-
-== 38. Why is "demon whip of flaming" white ? I've found such one.
->> demon weapons are always given random colours.
->> MV: Should not be fixed now.
-
-== 39. "Summon Daeva" spell summons Angel.
- Why ? "Daeva" exists and it's possible
- to summon it during summon_ice_beast_etc()
-
-== 40. At fight.cc::monster_die() is line
- ( you.religion == GOD_VEHUMET
- && (!player_under_penance()
- && random2(you.piety) >= 20) )
- There should be 30 and not 20, because piety equal to 30 is limit
- for this ability (see religion.cc).
-
-== 41. It was mentioned already but -
- Descriptive messages like
- "It's lightly enchanted to do more damage."
- can never appear because of badly placed brackets - {}
- in describe.cc::describe_weapon()
- Program gets on line
- if ( item_dam >= NWPN_SINGING_SWORD )
- and if this fails the programs continues on the line
- int spec_ench = item_dam % 30;
- and it means it can't get to messages about enchantment.
-
- Or am I missing something ?
-
-== 42.In monstuff.cc::mons_speaks() is few times used sprintf() insteed
- of strcat(), e.g.
-
- sprintf(info, " %s \"Help!\"",
- coinflip() ? "yells" : "wails");
-
- Problem is that in the begining _info_ contains name of the monster
- but sprintf() deletes it. It means that output is
- e.g. " yells "Help!"" instead of "Sigmund yells "Help!""
-
-== 43. Which compile time options will be made standard? What are the the
- appropriate defaults for the config file (set in initfile.cc)? These
- have to be laid out before the release.
-
-SEPARATE_SELECTION_SCREENS_FOR_SUBSPECIES I vote no on this one. Could be made into an initfile or command
- line option if people really want it, but there just aren't enough
- subspecies to justify it.
-ALLOW_DRACONIAN_TYPE_SELECTION This one is typically considered "cheating". Part of the fun of
- being draconian is finding out what you actually are.
-USE_ELVISH_GLAMOUR_ABILITY Haven't really tried out glamour. The grey elf or two I've played
- that has had it has never really successfully used it.
-USE_BETTER_MINOR_MAGIC_BOOKS These should be okay now.
-USE_NEW_CLOUD_CODE This code is pretty cool, I sometimes wonder about potential
- twinkiness at high levels with this in a corridor (where it
- could fill quite a stretch reaching more than a half dozen
- squares from the center of the effect in a single turn).
- Maybe a safeguard should be added to keep the effect within
- a certain radius from the target?
-USE_SILENCE_CODE I've never been overly fond of silence. I don't like the
- way it cancels enemy priests and spellcasters.
-USE_HARDER_AC_RULES Things are more sane with is option, unless scaled demonspawn
- transformers turn into scaly spiders.
-USE_NEW_ALTAR_CODE I liked things a bit more random. I once had orcish mines with
- three Ely altars (which I thought was pretty interesting).
- Modifying this code so there's at least a chance of an outside
- altar would be nice.
-USE_NEW_MINIVAULTS These are probably okay.
-
-USE_GOD_COLOURS We do much worse than this right now with all the channels on.
-// > USE_GOD_COLOURS
-// Yes. Actually, this option should probably be either removed or replaced with
-a USE_MESSAGE_CHANNEL_COLOURS option or some such (gods are just part of
-this system now). Brings back to mind the possibility of specifying
-non-colour-based highlighting options like "stars", "capitalized",
-"indented", and such. Would have to switch from an enum to a bitfield,
-and the initfile parser would have to be adjusted, but other than that
-it would be simple to do.
-
-USE_OPTIONAL_WIZARD_DEATH Test option, don't need this.
-USE_LIGHTER_MAGIC_ITEMS These are reasonable.
-USE_NEW_TORMENT_CODE This is good.
-USE_SEMI_CONTROLLED_BLINK It's powerful, but as long as it needs the blink spell and
- a separate form of teleport control it's probably okay.
- As an all in one spell it's over powered (but that's only
- in the code for wizard mode testing right now).
-USE_NEW_COMBAT_STATS Not sure these really have much of an effect on anyone's
- game. Could be left out.
-USE_SPELLCASTER_AND_RANGER_WANDERER_TEMPLATES Not sure about the wanderers. The ranger and spellcaster templates
- might just be encouraging people to try and re-roll for twinkiness.
- Might be best with just the basic warrior wander type.
-USE_SKILL_POOL_DRAIN This one is pretty silly. There's no real reason to punish people
- who get a large pool (mostly from killing a large monster or two).
- To increase the cost because of that doesn't make much sense, and
- the skill cost doesn't need to be made any tighter (it might even
- be due for a bit of loosening).
-USE_NEW_RANDOM Should be default, the suggestion to reverse it into USE_OLD_RANDOM
- is probably good.
-
-From Michal:
-> SEPARATE_SELECTION_SCREENS_FOR_SUBSPECIES
-No.
-> ALLOW_DRACONIAN_TYPE_SELECTION
-No.
-> USE_ELVISH_GLAMOUR_ABILITY
-Yes. Works fine.
-> USE_BETTER_MINOR_MAGIC_BOOKS
-Yes.
-> USE_NEW_CLOUD_CODE
-Yes.
-> USE_SILENCE_CODE
-> I've never been overly fond of silence. I don't like the
-> way it cancels enemy priests and spellcasters.
-I don't think so.I vote for this.
-
-> USE_HARDER_AC_RULES
-Yes.
-> USE_NEW_ALTAR_CODE
-> I liked things a bit more random. I once had orcish mines with
-> three Ely altars (which I thought was pretty interesting).
-> Modifying this code so there's at least a chance of an outside
-> altar would be nice.
-Agree
-> USE_NEW_MINIVAULTS
-Yes.
-> USE_GOD_COLOURS
-Yes.
-> USE_OPTIONAL_WIZARD_DEATH
-> Test option, don't need this.
-Of course no.
-> USE_LIGHTER_MAGIC_ITEMS
-Yes.
-> USE_NEW_TORMENT_CODE
-Yes.
-> USE_SEMI_CONTROLLED_BLINK
-Yes.
-> USE_NEW_COMBAT_STATS
-> Not sure these really have much of an effect on anyone's
-> game. Could be left out.
-I think this one is OK, I vote for.
-
-> USE_SPELLCASTER_AND_RANGER_WANDERER_TEMPLATES
-Yes.
-> USE_SKILL_POOL_DRAIN
-No.
-
-xx 44. might want to branch off a version of the source for the next release,
- with the unused spells and code cut out (along with some of the
- unimporant comments). The full code would naturally still be used
- as the development code.
-
-** 45. documentation (crawl.txt, crawl.6 will probably need some changes)
-
-== 46. bow messages on skill screen might take up too much real estate
- (things are already tight for people on 24 line terminals once they
- get all the skills)
-
-== 47. very noisy gcc --Wall compile (it was bad before, I'm afraid I've
- made it worse, it's hard to tell I get a lot of warnings from
- curses that have to do with some unimportant system conflicts).
-
-Oh, in makefile.sol... one of the $(INCLUDES) is spelled INCLUDE
-
-== 48. giant spores sometimes seg fault when exploding (I added a simple check
- for NULL, but that's probably not the problem)
-
- ugly, ugly, ugly, ugly. But fixed. the problem was that spores
- were kind of cleaned up before exploding (so that the death message
- wouldn't come twice), but then they fell through to the "handle
- special ability" case the next time through the "monster action" loop
- and all hell broke loose.
-
-== 50. look into why you.equip[EQ_WEAPON] (aka weapon) is used in
- fight.cc::monster_fight() and monster_attack() (ie. when the
- player isn't even involved!)
-
- > no effect in monster_attack()
- > bizarre use in monster_fight() - the
- attacking monster gets several attributes of the player's
- weapon!!! This is clearly wrong.
- > MSLOT_WEAPON was also used in a couple places where hand_use
- was required.
-
-== 51. BUG: no "scores" file == segfault.
-
-> some pretty nasty bugs in the score file stuff. Cleaned up segfault
-> and some ranking bugs. Scores file is now proper text; Crawl can
-> still read old scores files. Scores of 0 no longer printed. No more
-> segfault on non-existent file.
-
-xx 52. 'X' (view map) causes core dumps on terminals larger than 64 lines?
-
-> could not repro on Win32. Tried 65 line terminal, 'X' look no problem.
-
-== 53. Anyway, up on onelist.com (or egroups.com, whatever)
-is an updated mon-spll.h file including the enums for
-MST_foo and a couple MS_foo that Brent had missed
-in the file ... note that the comments before these lines
-in mon-util.cc:
-
-static unsigned char mspell_list[][7] = {
-#include "mon-spll.h"
-};
-
-are duplicitous of those in mon-spll.h, and can probably
-be struck (or vice versa?) ... I had also thought that there
-was a MS_foo matching value 100 (the beastly equivalent
-of SPELL_NO_SPELL) ... maybe Gordon can add it in?
-clear application to mon-spll.h and monstuff::handle_spell().
-
-
-of course, one could go whole hog and add enum constants
-for the "slots" in the template (actually the position *less one*
-would be enummed, see handle_spell() and mons_spell_list()
-for details) ...
-
-
-these lines in monstuff::handle_spell() can be enummed
-with the appropriate MST_foo enum constants:
-
-int msecc = ((monster->type == MONS_HELLION) ? 30 :
- (monster->type == MONS_PANDEMONIUM_DEMON) ? 119
- : monster->number);
-
-[[ 30 == MST_BURNING_DEVIL, 119 == MST_GHOST ]]
-
-that 119 value also turns up in mon-until::mons_spell_list() ... but
-this gets into "overlap land" because these values are stored in the
-sec field of the monster struct, which stores a number of values
-unrelated to spell-casting (though I guess applying the template
-enum throughout the codebase is one way of sifting out when sec
-values are used for one purpose instead of another ...) *ANYWAY*
-
-== 54.In enum.h --
-
-/* these are for the player spell struct, we'll see what's what later
-*/
-
-#define SPELL_FOOD(x) (x)
-#define SPELL_MANA(x) (x)
-#define SPELL_LEVEL(x) (x)
-
-
-All of the above can be killed, as the macros are no longer used.
-
-The SPELL_EXCLUSION enumeration (right below the macro
-definitions) can also be killed, as I never implemented it, and in
-hindsight, if it is ever to be stuck back into the player spell
-data structures, there is a much better way of doing it. So, please
-yank these out, before someone gets hurt :P
-
-So, this bit in spl-util.cc can also be axed:
-
-/* //jmf: commented out; add field `restriction' to spell struct if desired
- // (and if anyone finds a use for such a thing)
- int spell_restriction( int which_spell, int which_restriction )
- {
- int this_restriction = (int) seekspell(which_spell)->restriction;
- return ( this_restriction == which_restriction );
- } // end spell_restriction()
-
- */
-
-
-== 55. Minor typo:
-
-MST_RAKSHAKA
-
-should be
-
-MST_RAKSHASA
-
-so that it matches up with the monster's actual
-name throughout the codebase. Nothing major,
-but it will require fixing (present in enum.h and
-the enummed mon-spll.h I just uploaded).
-
-== 56. "* * * LOW HITPOINT WARNING * * *
- You die..."
-
- At that point, it's really too late. The warning perhaps
- ought to occur at the beginning of the player's turn as
- opposed to when the character takes damage.
-
- I've also seen two warnings in one combat turn ... can't
- remember if death accounted for one of them.
-
-> The problem is that the check is you.hp... it should be (you.hp > 0)...
-> I quick-fixed that one while I was trying to get the code out the
-> door and missed.
-
-== 57. Hunger messages don't seem to appear, even if their color is set.
-
-> Gave general cleanup of food.cc; merged hunger_warning and food_change.
-> removed unnecessary modification of hunger status from level save/load,
-> fixed up some logic problems.
-
-
-== 59. Lot's of the enums in enum.h have trailing commas, eg
- enum CONFIRM_LEVEL
- {
- CONFIRM_NONE_EASY,
- CONFIRM_SAFE_EASY,
- CONFIRM_ALL_EASY,
- };
-I don't think this is legal in ANSI C.
-
-> Borland C++ didn't complain with Wall, so it's not a problem.
-
-== 61. In libmac.cc there's a function called FlashButton. The line that calls
-HiliteControl should look like this:
- HiliteControl(control, kControlEntireControl);
-
-== 62. In message.cc mpr's definition includes default arguments. This isn't
-legal C++ (only the declaration can have default arguments). The same
-applies to random_near_space and simple_monster_message in monstuff.cc,
-apply_random_around_player in spells4.cc, and yesno in stuff.cc.
-
-== 63. monspeak.cc needs to include monspeak.h at the top of the file, not
-monstuff.h.
-
-== 64. overmap.cc includes curses.h, this should be wrapped in #if !macintosh.
-
-> Acutally it should be wrapped if USE_CURSES is not defined. Which it is now.
-
-== 65. spl-util.cc should include the standard limits.h instead of the
-non-standard values.h and should use INT_MAX instead of MAXINT.
-
-== 66. The MacStuff directory should be deleted.
-
-== 67. Very Old Buglet:
- Spider Form spell turns one into a black 's', which corresponds
- in monsterland to a scorpion, while giving one all the features
- of the noble wolf spider, represented by a brown 's'.
-
-== 68. It's really not that bad. Worse is the fact that I noticed that
-breathe fire gives a bonus if the player is transformed (doesn't
-matter what: Ice Beast, Blade Hands, or Dragon)... that's a bug.
-
-== 69. player.cc - If you look at line 2312 you'll see that
- redraw_screen () is called. But it's problem under
- DOS because redraw_screen() is defined only under
- PLAIN_TERM.
- See stuff.cc - there is
- #ifdef PLAIN_TERM
- void redraw_screen( void );
-
-> got rid of all of the plain_term() wrappers around redraw_screen.
-> instead, redraw_screen() becomes a no-op for non-plain term systems.
-> I hate seeing #defines all over (supposedly) non-system dependent code!!!
-
-== 70. view.cc - at two place there is
-
- #ifdef DOS_TERM
- puttext(2, 1, 34, 17, buffy);
- #endif
-
- Probably it's possible to compile that with some compilers
- but not all and corretly it should be
-
- #ifdef DOS_TERM
- puttext(2, 1, 34, 17, buffy.buffer());
- #endif
-
-== 71. When you cast "Twist" spell and choose direction you'll always get
-message
-"There is no monster there!"
-even if it's not true. If you want to hit monster you have to target
-monster by using "*" or "+". At least this spell shouldn't ask for
-direction but for target.
-
-xx 72. After battle with guardian naga character is told he is not carrying anything.
-
-> don't see how this could happen.. g. nagas can't affect player inventory.
-> must have hit a key that tried to use an inv type you didn't have, or num_inv_items
-> got out of whack.
-
-xx 73. Some initial prompts not prompt colour. I'll have to document which.
-
-== 74. Throwing anything left seems to cause a segfault and core file ... hmmm ...
- item_use.cc, line 1294: DUMB BAD CODE! Throwing anything while weilding
- nothing results in a crash. Clearly someone plays neither Transmuters nor
- Monks. Clearly we need some function to safely get the current weapon.
-
-== 75. Throwing stuff while weak: I'm of the opinion that things thrown ought
- to land at least next to the player, while currently, large things end
- up at the player's feet. This annoys me - "I didn't say (d)rop, I said
- (t)hrow!".
-
-> it's a playability issue, especially with large amounts of items and
-> autopickup. All thrown objects will go at least 1 square - we'll
-> consider a 'throw' of a very heavy object equivalent to 'shove' it. :)
-
-== 77. line 234 of mon-util.cc ought to be:
- "if (mc == MONS_PLAYER_GHOST || mc == MONS_PANDEMONIUM_DEMON)"
- but instead it's:
- ""
-
- This will fix the elemental damage problem I was complaining about --
- clearly Linux does not automagically give clean pages.
-
-== 78. Remove trailing commas in enum.h
-
-== 79. Stores are still trying to sell me gold pieces, and at extortionary rates.
-
-== 81. + spells4.cc::418 assert failed: ASSERT( targs[i].x != 0 && targs[i].y != 0 );
- should this be ( targs[i].x || targs[i].y ) ? (YES)
-
-== 82. if (mons_flag(monster->type, M_SPEAKS) && one_chance_in(21)
- && !silenced(monster->x, monster->y))
-{
- mons_speaks(monster); // mv: removed silence check
-}
-
-That check for silence shouldn't be there, because mons_speaks()
-handles silence by itself - see monspeak.cc (Btw. I've already removed
-this check when I wrote mons_speak(), but somebody have returned
-it back *grin* ).
-
-== 83. However, in a couple places in acr.cc, there is code like this:
-
- if (grd[you.x_pos][you.y_pos] == DNGN_LAVA
- || grd[you.x_pos][you.y_pos] == DNGN_DEEP_WATER)
- {
- if (you.species == SP_MERFOLK)
- {
- mpr("You dive into the water and return to your normal form.");
- merfolk_start_swimming();
- }
-
- fall_into_a_pool(true, grd[you.x_pos][you.y_pos]);
- }
-
-== 84. // From: Daniel Ligon <makmorn@qis.net>
-[easy_butcher]
-// When I see it happen, I have no weapon in hand and no weapon in the
-// "a" slot. After hitting "D" to Dissect, I am prompted for a weapon.
-// I can choose a cursed weapon of either known or unknown status and will
-// receive a message that the weapon sticks to my hand. In both cases,
-// I return to unarmed after butchering - and the weapon is now identified
-// as being cursed.
-
-Okay, then the problem isn't with the original check... all that
-needs to be done is make sure that is the target weapon (after the
-call to wield_weapon which does all the validating and prompting)
-isn't removed if it's cursed. Should be a fairly simple check,
-although it has to validate if a weapon is wield first (of course).
-
-== 85. This seems to be a new bug (can't see an obvious cause)...
- Brain Worms seem to have a sticky flame attack now.
-
-> SOMETHING was(is?) setting mon->number to be equal to mon_type. This
-> was setting butterflies (MONS_BUTTERFLY == 66) to have a colour
-> of 66, and brain worms (MONS_BRAIN_WORM == 69) to have the
-> spell type of MST_MOTTLED_DRAGON (69). Why?? I don't know yet.
-
->> turned out to be define_zombie. Random zombies were not getting
->> zombified due to some parameters getting passed incorrectly from mons_place().
->> all quasi-zombies were getting correct mons->number set but then mon->type
->> was not being set.
-
-== 86. This appears in player.cc::player_hunger_rate()
-
- // jmf: hunger isn't fair while you can't eat
- // Actually, it is since you can detransform any time you like - bwr
- if (you.attribute[ATTR_TRANSFORMATION] == TRAN_AIR)
- return 0;
-
-Some testing reveals that in fact one cannot untransform ("You're too
-hungry.") nor even turn visible. If hunger was not meant to preclude
-these reversions, there's a bug in the ability code.
-
- - Josh
-I would guess that there is a bug in the ability code wrt
-untransform - I have not looked at the code for this in a
-while, but the "untransform" ability is likely lumped with
-all other abilities in terms of forcing a check of one's
-current hunger level before proceeding further into checks
-and then (finally) triggering the ability.
-
-Trivial fix, that is where the bug is: the ability code (98%
-certain) - it does not make sense to attach a hunger cost
-to detransformation, unless you wanted to curse players
-first learning how to transform with costs on both ends
-(it takes effort to change shape, effort to change back).
-
-The latter model of double-ended costs associated with
-transformations make sense, but I do not believe this was
-the intended model in Crawl.
-
-xx 87. PS: I was looking through player.cc because a white imp "chilled" my
- mummy assassin. Still looking for how that could happen.
-
-> everything seems to be WAD:
-> could have been wearing two rings of fire, or dragon armour, or had a
-> randart with cold susceptability. Mummy only gives resist, not immune.
-
-== 88. PPS: White imps seem to pick up darts & stuff, while red imps don't.
- IMHO that's exactly backwards. White imps are have a much better
- range attack than darts provide, while a dart-throwing red imp
- would be a major pain.
-
-> actually the issue is gmon_use (the last parameter in mon-data.h)
-> - red imps have 1 (opens doors) while white imps have 3 (doors,
-> weapons & armour). sorry not explicit enough.
-
->> No, make white_imp.gmon_res=1; red_imp.gmon_res=3. Current values
->> but reversed.
-
-== 89. PPPS: Noticed punctuation creep: "You can't weild a two handed weapon
- *AND* a shield at the same time." Patriots should conserve stars.
-
-== 90. The eat chunks on the ground prompt is uncoloured.
-Following prompts are coloured.
-
-== 91. Prompt & crashes: try doing an x-look while you
-can't see any monsters, then press '+'. You will
-get a nice, shiny new core file in your directory.
-
-The x-look prompt also claims to allow you to go
-to the current target using 'p', but does not. 'P'
-does nothing.
-
-== 92. Elves in their Halls seem to wear a lot of Orcish armour.
-
-== 93. > And finally to end on a good note...
-> I've love what has been done with the coloring, the autopickup and
-> the automatic door opening. This is *very* useful and as a user I
-> truly do appreciate the effort here. (It would still be nice to be
-> able to pick up gold when your slots are full but I'm not going to
-> complain.)
-
-Argh. I haven't checked the latest dev source (but I will
-this weekend), but is this still the case? If so, can Gordon
-please put it in the bug queue as something to fix for the
-upcoming release of 3.*cough* ???
-
-== 94.
-> I was descending through the Elven Halls, and reached level 6. On this
-> level were three stairwells down to level 7, and an entrance to the
-> Labyrinth.
->
-> It is my habit to descend/ascend each stairwell as I find them, since
-> the dungeon areas of crawl are sometimes disconnected. So I believe
-> the three stairwells on this level actually did lead to level 7.
->
-> After filling my gut on fresh elven meat, I descended in the Labyrinth,
-> spiraled in to the Minotaur, slew it, grabbed its stash, and ascended
-> back to the Elven Halls, appearing at one of the stairwells down.
->
-> But now all three of the down stairwells on this level lead to the
-> Labyrinth rather than level 7, and the Labyrinth is being mapped.
-
-I can verify that I had visited Elven Halls level 7 (I had saved a
-copy of my player files before entering the Labyrinth). As it happens,
-level 7 was the bottom of the Elven Halls with the Vault.
-
-I cleaned out the Vault, then returned to the Labyrinth. Once again
-returning from the Labyrinth caused all the stairwells on level 6 to
-lead to a mappable Labyrinth.
-
->> Fixed. up_stairs() was not correctly setting was_a_labyrinth in
->> the call to load(), and so the labyrinth level would get saved
->> _over_ the n+1 th 'real' level. REALLY BAD. Yuck. Bleah!
-
-== 95. Auto-butcher + Staff of Power + dagger in off slot.
-Every time a corpse is butchered max SP is reduced...
-
-This probably has to do with the fact that staves of power are one of
-the few things that are toggled on wield/unwield (a lot of the other
-properties are calculated as required).
-
-== 97. The routine mon-util::seekmonster() needs to check that
->
-> mon_entry[(*p_monsterid)]
->
-> is not -1 before returning
->
-> &mondata[mon_entry[(*p_monsterid)]]
->
-
-== 98. In my current game, I found an entrance to the Hall of Blades on
-> level 4 of the Vaults. I entered, killed a few weapons, and returned.
-> Upon returning, the game crashed. When I restarted, I was on level 1
-> of the Crypt. I exited the Crypt was back at the entrance I had found
-> on level 3 of the Vaults.
->
-
-- Fix for the Hall of Blades staircase bug... Although the
-staircases leading out of the HoB are called staircases "back
-to the crypt", and although the enum for them describes them
-as returning to the crypt, and although climbing one of them
-sends you to the crypt, they are in fact supposed to lead back
-to the vaults, and the level range of the HoB has been set
-accordingly. To fix:
- - Change the name of the enum DNGN_RETURN_CRYPT_II to
- DNGN_RETURN_VAULTS_II (may need to be _II or _III)
- - Change in direct.cc, in look_around(...), "A staircase
- leading back to the crypt" to "A staircase leading back to
- the vaults"
- - Do the same in item.cc in item_check(), where it tells you
- what you're standing on
- - And, finally, in up_stairs() in misc.cc, the case for
- DNGN_RETURN_VAULTS_II (or whatever it's changed to) needs to set
- you.where_are_you to BRANCH_VAULTS.
-
->> this code needs a complete overhaul to be more comprehensible,
->> but I don't know if I'm up to it at the moment. :\
-
-== 99. There was lava in the Crypt. I don't object to it, but it seems a
-> little out of character, much like Josh's observation that elves wear
-> a lot of orcish armour.
-
-== 100. Characters who might go berserk while fighting, say from the mutation
-> or wielding a randart, can have go_berserk() called on them while they're
-> already berserk.
-
->> which is fine. Fixed up berserk messages for all possible situations -
->> no more double messages, or inappropriate ones.
-
-== 101. I've run across a couple Borises in my current game. It must be a
-> popular name among Liches.
-
->> fixed. Bad range check in dungeon.cc.
-
-== 102. If a monster tries to mutate you and fails due to your resistance
-> to such, you get a message from mutate() - "You feel rather odd for a
-> moment." and from direct_effect() - "You feel very weird for a moment."
-
->> fixed all manner of mutation messages.
-
-== 103. Removing a ring of strength causes these messages:
->
-> You are being crushed by all of your possessions.
-> You possessions no longer seem quite so burdensome.
->
-> since this happens in item_use::remove_ring():
->
-> case RING_STRENGTH:
-> decrease_stats(STAT_STRENGTH, (you.inv_plus[ring_wear_2] % 100), true);
-> increase_stats(STAT_STRENGTH, 50, true);
-> break;
->
-> The suppress_msg flag of decrease_stats and increase_stats does not get
-> passed to player::burden_change(), which has no arguments.
->
-> It is interesting to compare that code with similar code to remove the
-> strength one gets from a randart ring. From it_use2::unuse_randart():
->
-> const int str_plus = inv_randart_wpn_properties( unw, 0, RAP_STRENGTH );
-> if (str_plus != 0)
-> {
-> you.strength -= str_plus;
-> you.max_strength -= str_plus;
-> you.redraw_strength = 1;
-> }
->
-
-== 104. There is a monster named "another lava thing". Not a bad name, but
-> it leads to "You kill the another lava thing!" messages. Perhaps a name
-> change to "mother of all lava things" or "lava thing's cousin".
-
-> "another lava thing" has no stats in mon-data.h, so it was
-> obviously a dummy placeholder and has been removed from possible
-> generation lists.
-
-== 105. Assorted typos:
->
-> You possessions no longer seem quite so burdensome.
-> You heara loud "Zot"!
->
-> File name: Minh.txt
-> File name: Minh.txted successfully.
-
-== 106. Something causes misformatting of the descriptions for
-> SPELL_APPORTATION and RING_TELEPORT_CONTROL;
-
-== 107. After I picked something up, I could drop one thing, but nothing after
-// that. I think we ought to have periodic checks that num_inv_items is
-// correct - recounting once per turn is not a significant calculation.
-
-Ah! There's the problem... that variable was deprecated a while back
-and replaced with explicit code in the standard places (because it
-was impossible to keep it up to date). If someone is actually making
-use of it again then of course the entire system is going to break
-down.
-
->> really deprecated this time.
-
-== 108. Fixed apply_area_within_radius(). Makes far fewer unnecessary calculations
- now.
-
-== 109. Fixed rendering slowdown on windows console.
-
-== 110. Scorefile reading doesn't pick up special characters like a-umlaut or e-ague
-
-== 111. I was in the Tomb, slaying mummies with style and grace, so naturally
-a fair amount of cursing of my stuff took place.
-
-The Ring of Shadows now has an inv_plus of 100, I assume since
-monstuff::curse_an_item() adds 100 to inv_plus. I can't remove it,
-since inv_plus > 80. It is not labeled as cursed and scrolls of remove
-curse are ineffective since inv_plus < 130. I suggest that, for now,
-curse_an_item() should leave randarts alone.
-
-As an aside, is "artefact" a valid variant spelling of "artifact"?
-
-
-== 112. Another result of the great Mummy slaying was that my flesh would
-rot away. I think display_char_status() should list this.
-
-
-xx 113. I came a across a butterfly which had color 66. I could not
-determine why (N.B. 66 is MONS_BUTTERFLY.. what's going on?!)
-
-> me neither. All calls to create butterflies should go through
-> define_monster(), which sets m->number to 0..15. See #85.
-
-== 114. in view.cc, inside the #ifdef DOS_TERM things there are some
-bad things happening to the puttext calls. buffer.buffer()
-should be replaced with buffer, and buffer2.buffer() (or is it
-buffer.buffer2()? I forget) should be replaced with buffer2.
-Otherwise it refuses to compile (this may be an incompatibility
-between borland C++ and djgpp, Gordon)
-
-MV: Buffer.buffer() should be only buffer. Problem is with _buffy_ which
-needs to be _buffy.buffer()_.
-
-== 115. Also in view.cc in noisy() at 1304 the distance function is
-being used wrongly. Change if (dist <= distance(... to
-if (dist >= distance(.... This problem caused most monsters on
-a level to wake up as soon as a noise was made, and was why
-characters were getting mobbed.
-
-== 116. the init file is broken, at least under DOS. It is reading
-in the player's name okay and is finding the other options,
-but when read_bool() tries to work out whether an option is
-followed by "true"/"1" or "false"/"0" it fails to detect
-anything and just goes with the default. I don't know how any
-of the weird code in initfile.cc works (what was wrong with
-the stdlib string functions?) but, at a guess, this might
-have to do with the way DOS writes End Of Line in its text
-files - if a line is concluded by something other than
-'\0' the string code might fail. But that's just a guess.
-
->> made a couple changes and it seems to work fine on win32..
->> but this is highly dependent on the compiler's implementation
->> of the standard string template (grrr!)
-
-== 117. A blank/empty scorefile will not be updated; scores of 0 not kept.
-
-> both fixed.
-
-== 118. If you aren't carrying anything except money, you can't drop it (money)
-
-> can now specify quantity of money to drop. Accepts any value.
-
-== 119. My character entered the Tomb, arriving in the upper left hand corner,
-at position (9,7). I tried to target, and failed the ASSERT for the
-mgrd array. This took place around line 1227 of direct.cc in the
-mons_find() routine. const int targ_x = you.x_pos + temp_xps - 17;
- const int targ_y = you.y_pos + temp_yps - 9;
- const int targ_mon = mgrd[ targ_x ][ targ_y ];
-
-In this case, you.y_pos is 7, temp_yps is 1, and so targ_y is -1.
-
-== 120. The Amulet of Cekugob does not stop one from teleporting when one
- has the teleport mutation.
-
-== 121. I entered Hell from level 22. When I exited Hell I was placed on
- dungeon level 27.
-
-BWR:I believe this was the better alternative of earlier problems dealing
-with returning to the main dungeon... used to be you could end up on
-level zero, or on a semi-random level inside solid rock. After those
-problems were fixed the portals seemed to work as above.
-
-== 122. When I returned to Hell, I was placed on one of the down stairwells.
-
-== 123. Remove which piece of jewellery?
- That isn't a piece of jewellry.
-
-Webster has jewelry, jeweled. Changed all occurances.
-
-
-== 124. Oops, that ring feels deathly cold.
- B - a cursed amulet of the gourmand (around neck)
-
-xx 126. I hit a giant spore with a bolt of poison flame, and the critter
-> didn't explode. It just disappeared.
-
-LRH writes:
-Not sure exactly, but I'm pretty sure that if you do enough
-damage to a spore with a single attack it will fail to explode.
-The relevant code should be in monster_die().
-
-== 127. A fire giant hit my Spriggan (AC: 5, EV: 13) with several fire balls
-> over a few turns, but none hurt much. I didn't get any messages about
-> resisting the effects. Is this the odd fire resistance problem?
-
->> monster fireball damage wasn't being set correctly.
-
-== 128. The Spriggan has strength 10 and dexterity 21. When he wields a bow
-> or crossbow, I get the message:
->
-> Your relatively low strength is limiting your use of this weapon.
->
-> I don't think strength has any effect with crossbow, and probably doesn't
-> effect bows.
-
-BWR: As a side note, is the low Throwing skill message still on the skills
-screen? Has anybody tested it with all the skills yet (there is a
-lack of room, and the screen should fit in 24 lines). Maybe that
-message would be better as a message when wielding the bow itself,
-although I'm not sure how much the mechanic is required (I typically
-upped Throwing skill along with Bows because it's a cheaper and faster
-way to up accuracy and damage than raising Bows alone).
-
-== 129. The file makefile.obj seems to be missing... this is a problem
- for most of the other makefiles which include it.
-
-== 130. The APPNAME in makefile.sol should probably be changed back to crawl.
-
-== 132. In spells0.cc should be also included stdio.h under DOS
-because sprintf() is used.
-
-xx 133. > Are you going to do the player-ghost/demonlord "structure" as well?
-//
- Um, dare I ask, why? I've never looked at this part of the code.
-BWR:
-It's currently an array of chars. It would probably be easier to
-understand as a struct with fields for AC, max HP, spells, resistances
-and such.
-
-== 134. When I cast Static Discharge, I get occasional fails of the ASSERT
-on line 419 of spells4.cc: for (int i = 0; i < targs_found; i++)
- {
- ASSERT( targs[i].x && targs[i].y );
- func( targs[i].x, targs[i].y, divided_power, 0 );
- }
-
-> Fixed. Brent's algorithm is sound, but his coding wasn't. :P
-
-== 135. When I use the Sif Muna granted ability of Selective Amnesia, I hit
-an array bounds assert in seekspell() - which is exactly:
-
-return &spelldata[plyrspell_list[spell]];
-
-The value of spell is 210 (SPELL_NO_SPELL), and so plyrspell_list[]
-goes out of bounds (it is not protected by the Fix[Ary|Vec] stuff)
-which then triggers spelldata[] going out of bounds.
-
->> plyrspell_list[xx] being set to SPELL_NO_SPELL _before_ call
->> to spell_power. stupid logic error.
-
-== 136. I swung my Staff of Air:
-
-You miss the imp.
-You miss the imp.the imp is jolted.
-You are wielding a staff of air.
-
-== 137. I'm wearing an amulet of the gourmand, but I never seem to get labelled
-as being Full (or Engorged).
-
->> is this a problem? Gourmand allows you to eat rotten/contaminated flesh,
->> how could this be related?
-
-== 138. Trolls can eat huge amount of chunks of flesh without becoming full
-
-> oops. Nobody could ever get full. Stupid logic error.
-
-== 139. Name in INI file causes crash unless all caps.
-
-xx 140. Non-Beams displayed one cell at a time (thanks to Michal)
-
-== 141. M_SPELLCASTER removed from ball lightning.
-
-== 142. All beams/missiles leave a visible trail now (at least until window
- redraw). Was too hard to get right w.r.t. killed creatures and cloud
- trails, and most liked it the other way anyways.
-
-== 143. Some enchantment beam behavior fixed.
-
-== 144. Update & examine command-line switches & options
-
-// - update & verify behavior of command line switches & options
-Monochrome isn't connected to anything. The "no colour" option could
-be handled by imposing a set of colour macros (if they were made widely
-available)... most monochrome systems can do bold/standout, although
-that typically ends up backwards or ugly (if it's done via reverse).
-Could possibly just be removed rather than bother with it.
-The "-nb" (no black) option is obsolete with colour macroing.
-Basic options to consider:
-- list scores (param for top X)
-- select race/class
-- character name (for loading and starting new character)
-- pointer to game directory (ala crawl_dir option)
-- pointer to initfile (ala CRAWL_RC environment variable)
-Later things can get fancy, but we should at least have those.
-
-xx 145. I'm playing the latest win32 binary pre-release (January 11).
-The first problem is that I can't get to the religion screen. To produce
-'^' with my keyboard I have to press <Shift> + <the button with ^>
-followed by a space. However, in Crawl this doesn't work (it used to work
-with earlier versions before this series of win32 binary pre-releases).
-All I get is 'Unknown command'.
-
-== 146. When zapping a wand of Draining at a line of Kobolds and Big Kobolds,
-: the game froze if something was killed. The game was recoverable, and
-: the bug repeated itself. Killing these by hand caused no problems.
-: Using this wand on other creatures caused no problems.
-
->> probably related to double-whammy monsters were suffering from poison/
->> draining. Hit dice might have gone below zero, etc.
-
-== 147. Any ranged attack that hits you has a chance of destroying
-: your scrolls, not just fire-based ones, and they all give the message
-: that your scroll has burst into flames. Confused the heck outta me
-: the first time it happened. "The puff of frost hits you! One of your
-: scrolls bursts into flames!"
-
-== 148.
-: 1 other thing I just thought of. When targetting in version 3.43
-: you could use the dot on the keypad to select the target. Now, to
-: use that dot, I have to use the shift button with it.
-
-xx 149. Also it seems like mummies have lost some of their cold resistance... I
-had trouble with an ice dragon that should probably have been real easy...
-on the other hand fire damage does not seem to be all that nasty to them
-anymore (I dunno about the mummy monster but this seems to be the case for
-mummy player chars, none of my equipment provided fire resistance).
-
-== 150. Fixed new description() problem. Oops.
-
-== 151. Changed some messages for burning and chilling monster attacks.
- note that mummies _could_ be chilled by melee attacks - "chilled" in fact
- means that the player resists cold. New messages are tied to actual
- extra damage from fire/cold.
-
-== 152. Fixed "always poison/drain" on beams/bolts that didn't actually
- hit (problem with side effects in check_mons_resists() ->
- mons_adjust_flavoured())
-
-xx 153. The level files for my characters don't seem to get deleted, even after
-the character dies. I'm assuming that they're meant to be deleted, as
-they used to be... or is there some reason that the game now keeps them?
-
-> can't repro - works fine on 2000.
-
-== 154. I found one of those checkerboard-like rooms with alternating wall and
-floor squares (you know what I mean? The ones where you can only move
-diagonally, sort of like the Hive, but occuring in the regular
-dungeon?)... it was made of metal walls, and had a small open area in the
-middle. There were some items which seem like they should have been
-placed inside the open area, but were inside the walls instead, and
-therefore inaccessible. I can't figure out how to get Crawl to dump a
-screenshot, but I'll recreate it here, using X to represent a wall.
-.X.XXXX
-X.X.[.X
-.X.X@)X
-X.XX!.X
-.X..XXX
-X...X.X
-.X.X'X.
-All three of the items around my character are inside walls; examining
-them says:
-You see a [item name] here.
-A metal wall.
-You can't move on to them or anything. Note that if you shifted them all
-three squares down and two to the left, they'd fit nicely in that little
-open area, which leads me to suspect that possibly that's where they were
-meant to be.
-
->> several places in dungeon.cc where this could happen. Think I've squished
->> them.
-
-== 155. I'd suggest killing /unused, but only after moving oldmaps.txt
-into /misc. Within /misc, scoretab.cc should probably be updated
-to the new scorefile format (or killed) and untab.pl should be
-killed, as it is an unreliable detab script - rh.bat seems
-near useless.
-
-In /Docs (why is this uppercase?), NEW.txt is empty, buglist.txt
-should be updated to the current status (about which, Gordon only
-knows), I need to migrate messlog into changes.340, changes.340
-needs to be renamed changes.400, the remaining files need to be
-updated.
-
-The old LOS code can die, I think I lost my fascination with it.
-I don't believe anyone else was defending its existence.
-
-== 156. On this topic, I get tons of warnings about FixVec.h and FixAry.h
-not having a final newline.   Could you add one to these?
-
-== 157. The compiler also noted a problem in dungeon.cc:
- if (you.where_are_you == BRANCH_CRYPT || you.where_are_you == BRANCH_TOMB)
- {
- if (type_floor == DNGN_LAVA)
- type_floor = DNGN_SHALLOW_WATER;
- if (type_2 == DNGN_LAVA)
- type_2 == DNGN_SHALLOW_WATER;
- }
-The last statement should probably be an assignment.
-
-== 158. Finally, I can't compile dungeon.cc at all:
-dungeon.cc: In function `void link_items ()':
-dungeon.cc:6395: warning: comparison between signed and unsigned integer expressions
-FixVec.h: In method `FixedVector<TYPE, SIZE>::FixedVector (TYPE, TYPE, ...)
-[with TYPE = char, int SIZE = 7]':
-dungeon.cc:7998:   instantiated from here FixVec.h:125: `char' is promoted to `int'
-when passed through `...' FixVec.h:125: (so you should pass `int' not `char' to `va_arg')
-
-This also affects spells4.cc (instantiated from line 729).
-
-== 159. Problems with print_description() under DOS?
-Stupid, stupid, stupid.. good god. used .data() instead of .c_str()
-
-== 160. Make Boris back into a non-Unique and give him appropriate mons_speak()
-
-== 161. More portable savefile format.
-
-== 162. Well, played with the new pre release, speed is the same (drat) and the
-ghoul food bug still exists... the one where they have to eat a meat
-ration to cure the 'hungry' status. Haven't hit on any other bugs yet but
-I've only run 3 characters who all had very short lives.
-
-== 164. Direct-effect monster castings (smiting, etc) would crash the
-game (forgot to set beam_source for non-beam type attacks).
-
-== 165. The warning messages given for wielding objects should also be given
-at the start of the game (if applicable).
-
-== 166. Anyways, I'm starting to
-think that the margin should be a little smaller, the 79 colomn one is
-just too wide to read comfortably... a 70 column one should be fine.
-
-== 167.
-// > All staves work like this - the special power can activate even if
-// > you miss your foe by a mile.
-// >
-// > Is this desired behavior?
-//
-// I would think not.
-
-** 168. Enable loading of 3.30/1.x chars & level files.
-
-== 169. When casting Corona and hitting somebody I'm allways getting
-additional message "Nothing appears to happen.".
-eg. The goblin is outlined in light.
- Nothing appears to happen.
-
- (silly logic problem)
-
-== 170. In ouch.cc is under DOS missing #include <file.h>
-
-== 171. There is still small problem with new print_description().
- Description window for DOS is (25,1,80,25) - see for example
- describe_spell(). It means that lineWidth in print_description()
- can't be 70 under DOS_TERM and should be 54 or so (of course
- those windows can be changed but it's much more work).
- DOS term and shoul be 54.
-
-== 172. I started a grey elf wizard and it begins play with an orcish robe, not an
-elven one. (flimsy coding)
-
-== 173.
-"You miss the ice beast.
-The ice beast hits you!
-The ice beastchills you.
-Ouch! That really hurt!"
-
-== 174. tag.h and monstuff.cc need final newlines
-
-== 175. tags.cc and files.cc include mem.h, but gcc doesn't come with one.
- The routine memcpy is declared in string.h, which is already included
- in these files, so commenting out worked for me.
-
-== 176. spells3.cc has the same problem with FixVec.h that dungeon.cc had
- in pr6.
-
-I guess around line 729 or so. :) g++ -Wall -DLINUX -g -DDEBUG -c spells3.cc
-FixVec.h: In method `FixedVector<TYPE, SIZE>::FixedVector (TYPE, TYPE, ...)
-[with TYPE = unsigned char, int SIZE = 7]':
-spells3.cc:729: instantiated from here
-FixVec.h:125: `unsigned char' is promoted to `int' when passed through `...'
-FixVec.h:125: (so you should pass `int' not `unsigned char' to `va_arg')
-
-== 177. Was just looking at that code, and noticed the comment about the
-"other five gods" (the one's the player cannot start the game
-worshipping). Anyways, that comment was added there before the
-always_greet option, which does meet the requirement for filling
-in the extra gods (since the real purpose of always_greet is to
-remind the player of some non-obvious details about their character
-in case they haven't been playing in a while (ie. race, class, deity,
-weapon penalty).
-
-== 178. Could you please put the string "-O2 -fno-strength-reduce" in your makefiles
-dealing with GCC? It'll speed up the game by a *huge* amount. (The
--fno-strength-reduce is to get around a bug in many versions of GCC.)
-Because of the exceeding slowness in the released versions, I compiled my own
-version, which leads to point
-
-== 179. Why in the name of Cthulu did you remove "#include <files.h>" from ouch.cc?
-To misquote Rufus Wainwright, "Cause all I get is instant errors/Instant errors
-Instant errors".
-
-== 180. Update scorefile format to a delimited ACSII numeric representation.
- (hmmm - will take some thought)
-
-xx 181. I am not sure if its a bug or not, but using pr7 on NT4, every now and
-again when I die, Crawl causes a general protection fault (or whatever its
-called in NT) and the game crashes. The good side to this is I don't lose
-my character and can go back to my last save and keep playing.
-
-> When I'm having a good character going ("good" being
-> 1000+ points or so), the game tends to crash when the character dies.
-
-== 182. I just got the mutation "you can exhale a cloud of poison" but I recieved
-no special ability to activate it. At the time of the mutation, I was
-wearing a ring of shadows that gave me the ability to turn invisible.
-Perhaps the ring interfered with it? Hope this helps.
-
-> data error in mutation.cc. Fixed. Nagas now get breathe poison
-> sometimes if they _would_ have got the spit poison mutation.
-
-jmf> That mutation ought only occur for Nagas. A non-Naga getting
-jmf> the mutation is a bug.
-
-xx 183. Move rand(), random(), srand(), srandom() to libxxx
-
-> behavior is too complicated..
-
-
-
-== 184. Files are not cleaned up in DOS - see end_game() in ouch.cc
-
-== 185. Fixed more monster spell crashing-if-kills-player problems.
-
-== 186. Quokkas have no mass, hence they never leave corpses.
-
-> That was there original stat, should probably be set to 200.
-
-== 187. I found lots of bug while using 'recall undead slave' skill.
-
-I noticed this bug as well. Seems the recall spell places your servants in
-spaces next to you, regardless if there is already something there or not.
-In effect, monsters which are stacked seem unable to move, including
-hostile monsters. When the top monster leaves the space the game places a
-"floor" tile there.
-
-> really, really dumb logic error - corrupted mgrd as a side effect!!
-
-== 188. Several piles of gold on the same spot should merge
-
->> so should other things. Fixed item_place() and drop_gold() appropriately.
-
-== 189. Merfolk hunters not available, NEWGAME.CC suggests they should
-
-== 190. Weld potion drank should dissappear from the screen
-
-== 191. First the bug: While in the Abyss, I came across an orange 8. Hit x and positioned
-the cursor over it to see what it was (thinking it was probably a type
-of golem I'd never seen or something) and it said:
-
->> There was a tiny bit of overlap between the area which got nuked and
->> the area that got transferred. Probably left pointers to invalid
->> items lying around, which would produce exactly this:
-
-!questionable item (c100, +0, p50, p(2)50, d0:q0)
-
-== 192. Now the complaint: Because you can use the letter keys to move around,
-the numeric pad
-has obviously been modified so that the numbers map on to the letter
-keys... but there is a problem with this, namely that 7 maps on to y,
-and can therefore be used to answer in the affirmative to a question.
-I now realize why easy_confirm exists, since some people no doubt use
-the letter keys to move and may accidentally say yes to something they
-didn't intend to... but for those of us who use the numeric pad, the
-option doesn't seem to make much sense, since your finger doesn't come
-near the 'y' key all that often, so I just had it set to all. Then I
-was in a situation with one of my best characters ever where there was
-lava directly north of me and I wanted to move northwest, but my
-finger hit directly between the two keys, basically hitting 8 then 7
-in rapid succession, plunging me into the lava and killing me. I
-suggest one of two things; either make the numeric pad work the same
-way as the letters ONLY for movement, since the only time other than
-movement when you're going to receive input from the numeric pad is
-when it's accidental, or at least put a warning in the init.txt where
-it talks about easy_confirm saying something like "WARNING TO KEYPAD
-USERS: The number 7 is mapped on to the letter 'y,' which can result
-in accidentally answering yes to questions; it is suggested that you
-leave easy_confirm off."
-
-== 193. > An orc priest who hellfired him.
-
->> fixed in general non-tracer spell cleanup. Oops.
-
-== 194. Scrolls of immolation don't do anything. The big fireball
-: appears on the screen, centred on you, but it doesn't damage you or
-: any of the creatures surrounding you, and doesn't have any other
-: effects. I'm assuming that this is a bug.
-
-> Good catch. Direct explosions were being treated as tracers. :P
-
-== 195. A more minor bug: if you read a scroll of teleportation, then
-: start butchering a corpse, you'll continue to butcher the corpse even
-: after you've teleported, successfully chopping it to pieces, even
-: though it hasn't come with you.
-
-== 196. Well, the title says it all, but, when I reach level 27 of the dungeon the game
-crashes (not a windows page fault, a 'dos page fault'). The character has not
-retrieved any of the runes of zot yet, so I figure I'll try again after getting
-one (or if that don't cure it 3 just in case). I'm on a windows 98 computer
-running the DOS compilation of pre release 7. I also had a few times on level
-26 where I couldn't move (alt tabbing out and forcing the game closed worked
-but I was set back a ways... so I made it a point to level level 26 hehe). One
-other thing I noticed was the dungeon clean up never happened (on level 25 but
-I had no problems on that level even after the floor was full). New monsters
-seemed to get weapons and armor but no more corpses once the floor was full.
-
-Something else I've always wondered about was the slime pits, are you supposed
-to get a rune of zot out of there or does the royal jelly 'eat' it or
-something, I've never gotten anything from there but it seems like it's the
-kind of place that would have one (specially with a monster that is no where
-else in the game sitting in a pre-fab dungeon).
-
- ...and then this follow-up on Feb 9th...
- I mention the runes because it was level 27 I was trying to enter when it
-crashed on me, I wasn't actually entering zot, just the level with all the
-gateways to zot. Was just trying to go down there to get a little more exp
-before I went to get the runes necessary to get into zot (the advantage of
-being a mummy... you can go do things in squirly order according to whim hehe
-
-mannix writes:
-
-Just confirmed it, lvl 27 is definitely a gaurenteed crash, even with 3
-(well, 4... got two in pandemonium... should that have been possible?) I
-still crashed when I tried to enter lvl 27. On the other hand I've found
-some fairly nifty places to explore for exp :). Another problem I found
-was that in a lot of areas the dungeon clean up is not nearly aggressive
-enough, I'd go so far as to say that when it happens all non-quest items
-should probably be removed, in some areas after spending a bit of time
-repeatedly killing random monsters (the joys of playing a mummy hehe) item
-drops would show up something like 'item 923589237 has dropped' (and
-that's a sure sign of impending doom, or at least a lock up on exit). I
-worked around the problem on one level by using my own clean up method...
-summoning imps/demons... some of them will pick up weapons (and in places
-like hall of blades that's all you'll normally see) and when they
-dissappear those items are gone for good.
-
-== 197. : Using a spell staff of smiting in melee combat reveals the following message:
-: You're wielding some sort of staff I've never heard of. (fight.cc)
-
-== 198. Trying to cast Apportation on a pile of gold crashes the game
- (division by zero)
-
-== 199. Draconian Hunters start with a club instead of a bow.
-
-> It's a little bit worse than that... The bow is clobbered into being
-> a club instead of the leather armour being turned into a robe (draconians
-> shouldn't being wearing leather armour since it doesn't fit).
-
-== 200. Need more aggressive item cleanup.
-
->> perhaps trigger this on item creation, if a spot can't be found.. go
->> through the item list destroying less valuable items or small piles of
->> gold.
-
-== 201. Teleporting a fish (by hitting it with weapon of distortion) might
-cause misc. problems - e.g. fish is teleported again and again
-(because it lands on the floor)
-
-> won't happen; checked & rewrote bits of monster_teleport() to be
-> more readable, but the code was fine.
-
-== 202. I was getting mutations after wielding/unwielding weapon of
-distortion
-
-> yes, it's in the code. Nice eh?
-
-== 203.Darts of bugginess found in shop
-
-> dumb logic in dungeon.cc::items()
-
-xx 204. Electric eels sometimes shoots lightning to strange (probably
-random) places and not at player.
-
-> don't see how.
-
-== 205. Put in a fix for scorefile lines longer than 80 chars (will break)
-
-== 206. a new score at the bottom of the list would not be added.
-
-== 207. Misc documentation changes from Don
-
-== 208. Won't get "Sorry, you can't target what you can't see." when you're
-just looking around.(with 'x')
-
-== 209. Improved 'C' command (gives XP left to go)
-
-== 210. Far strike & twist could not target with direction keys (they are
-pseudo-direct effects, which screwed stuff up. Argh!). Changed mode
-for those spells to DIR_TARGET, which means hitting a direction key will
-take player into targetting mode. No doubt will be hearing gripes about
-this too.
-
-== 211. Patched up multiuser compile.
-
-== 212. Quokkas don't generate corpses now. Someone else wants to revamp
-the corpse system, go for it.
-
-== 213. Easy butcher defaults to false now.
-
-== 214. Options for Race & Class added to init file
-
-== 215. Replace mutate() calls for miscast effects with addition to mutagenic
-radiation; perhaps all miscasts (may) add to this, and high level miscasts
-changed to give_bad_mutation?
-
->> done. all spell miscasts give small mutagens; high level spell miscasts
->> can get pretty nasty too, but still only small chances of mutation unless
->> you're also invisible/hasted/wielding nasty artifact.
->> missing a couple high level spells badly in quick succession can be really
->> nasty. I'll leave it as an easter egg. :)
-
-== 216. Monsters won't throw stuff if they can melee.
-
-== 218. Misc stylistic & code fixes from Jesse
-
-== 219. Charmed monsters will no longer be described as 'friendly'.
-
-== 220. Brave attempt made to use correct pronouns (introduced mons_pronoun)
-
-== 221. Shop names more visible when looking around & moving
-
-== 222. Can now pickup auto-combine items even with full pack
-
-== 223. scrolls of fear won't auto-identify if nobody is scared by them.
-
-== 224. "Killed by giant ant" when smitten from afar by Orc priest?
-
-> very subtle. Death_source can be zero, since it is an index into
-> the monster array. But I didn't think it could be - if killed by
-> monster#0, scores like this would be generated:
-:4:0:89:Methea:0:6:3::3:14:3:0:0:0::2:0:0:0:0:
-> which would be translated to "killed by a giant ant"
-
-== 225. Don't generate monsters in LOS?
-
-== 226. Get name after race & class (pretty easy now)
-
-== 227. Fixed up some job titles.
-
-xx 228. Game crash on character death; after equip list, but before hiscore list
-
-== 229. Massive speedup on win95/98. Fixed all cursor dance and buffering
-problems. Fullscreen is still pokey on most machines, but it's finally
-playable.
-
-== 230. No staircases to Zot on level 27 (dlevel == 26). It looks like a
- piece of code in dungeon.cc::builder() may be changing stairways to Zot
- to dungeon floors, regardless of level (occurs after place_branch_
- entrances())
-
-== 231. crawl -plain now actually uses non-gfx character set
-
-== 232. All female uniques are now properly gendered (missing break statement)
-
-== 233. Divine resistance messaged a bit better (w.r.t. Xom, Makhleb)
-
-== 234. messaging for vampiric attacks fixed up.
-
-== 235. Monsters generated on teleport traps will have unobtainable loot!
- > shouldn't generate them on tport traps any more.
-
-== 236. Fixed DOS include of <files.h>
-
-== 237. Fixed overly long string in '?' screen
-
-== 238. More multiuser fixups. Changed default makefile to linux.
-
-== 239. Moved god favor messages more in line with prayer messages (too confusing
- otherwise). Fixed a couple grammatical errors.
-
-== 240. Can't hit some monsters in LOS (rounding problem?)
- Need to rewrite for integer math. :P
-
-== 241. Crash on long player names (duh!)
-
-== 242. Miscellaneous spelling/grammatical errors
-
-== 243. Do something about this: probably remove from compile options. But leave
- bow/throwing warning in, as it is a _very_ important penalty.
-
- : One odd thing, though. I chose a Human Fighter with a short sword and when
- : I began the game I get "Your relatively low dexterity is limiting your use
- : of your weapon." Other than the three occurrences of "your" in this
- : sentence, I find it odd that 10 dexterity is too low to wield a short
- : sword. Or is this a bug?
-
- "Your relatively low <foo> is limiting use of your <weapon name>."
-
- Would be a slight alteration to kill one "your" and actually
- designate the weapon being affected (I know it is pretty clear
- that the only weapon affected is the one wielded, but I like
- some things spelled out).
-
- To avoid those excessively long weapon names with all the plusses
- and things, the weapon name string should probably be just the base
- weapon type (e.g., "short sword" instead of "+1, +2 short sword of
- orc-slaying and back-scratching"). As the str/dex modifiers are
- based on the base type and not all that other goodness, this seems
- an ok thing to do.
-
- Anyway ... I still think that this check ought to be performed
- prior to weapon selection by a player at start-up, so that he
- or she knows his/her character will be handicapped by the choice
- of one weapon type or another. I think that thread was raised
- briefly last week or so.
-
-== 244. The game crashes when I start a monk.
-
- In skills2::wield_warning(), these two statements need to be swapped:
-
- int wepType = you.inv_type[you.equip[EQ_WEAPON]];
-
- // early out - no weapon
- if (you.equip[EQ_WEAPON] == -1)
- return;
-
-
-== 246. Rewrote monster behavior routines.
-
-== 247. Cleaned up some function prototypes in dungeon.cc
-
-== 249. Put gendering into monspeak.cc
-
->> couldn't find anything.. wonder what Michal meant?
-
-== 250. More typos
-
-== 251. remove caps from filenames
-
-== 252. Summoned critter problems:
-From: "Ben Goetter" <goetter@m...>
-Sent: Thursday, March 15, 2001 9:45 PM
-Subject: Crawl 4.0pr10z 13 Mar report Bug report: summoned creatures are
-appearing in the same space as the
-caster. (Cast spell, summoned creature not visible; move one space,
-creature appears in space vacated by caster.)
-<FIXED>
-Date: Fri, 16 Mar 2001 09:00:41 PST
-From: tgord <clubs-mail@y...>
-Subject: Re: Crawl 4.00 pr10zf [Yahoo! Clubs: Linley's Dungeon Crawl]
-I've noticed that summoned monsters sometimes appear on the other sides of
-walls now. ^^^^^^^^^^^
-<FIXED, for player summons>
-
-== 253. Change messages for weidling awkward weps to show up only at
- values <= -4 (for real problems) and change message to "not taking
- full advantage of the weapon" or somesuch. More flavour, too..
- maybe messages like "you're too clumsy" for dex<10; others for
- high (but unbalanced) stats: "You'd be (a lot) better with
- that weapon if you were (stronger/more dextrous)"
-
-xx 254. Give Earth Elementalists a few stones (say 10-15) to help them
- get started?
-
->> addressed with the new, 'easier to run away from' monster AI?
-
-== 255. I thought someone had added the MST_* enum usage to mon-data.h,
-
-== 256. Would be nice if the wizard patch I put up in the files directory
- made it into the code.
-
-== 257.PS Oh, using crawl -scores leaves the terminal in a bad mode...
- stty sane is required to sort things out (either curses shouldn't be brought
- up with this option, or it should be shut down properly).
-
-Just change the exit() call to a stuff::end() call.
-// check for highscore list - must be done BEFORE libw32c init
- if (Options.sc_entries > 0)
- {
- cprintf(" Best Crawlers -"EOL);
- hiscores_print_list();
- end(0);
- } The argument to end() is the exit value. That should probably be 0,
-rather than 1, since there's no error here.
-
-== 258. This bug ( if it is a bug ) has been around for a while... it seems
-: that sometimes when you poison a monster and it dies from the poison,
-: it gives you exp, and other times it doesn't. Is there some logic
-: behind this? A low level character of mine just barely managed to
-: kill an OOD hippogriff using poison, and got gypped of the exp. =(
-
->> Very old problem in beam code; poison_monster was being called
->> incorrectly.
-
-xx 259. I once got a corpse from a summoned snake - I hadn't been
-able to reproduce it, but it's corroboration.
-
-== 260. Give monsters large bonus while target is MHITYOU and behavior is
- BEH_WANDER, during player stealth checks - monsters will still be on
- the lookout for the player.
-
- Give a small chance each clock tick of deleting the MHITYOU; i.e. monster
- 'forgets' about the player. Stupid monsters forget faster..
-
-== 261.
-I was playing a transmuter, and noted that I was getting "You
-punch the <foo>" messages while fighting in spider form. I'm not
-getting the unarmed punch attack, so I think the verb comes from
-fight::weapon_type_modify(), which doesn't take transformations into
-account:
-
-static int weapon_type_modify(int weapnum, char *noise, char *noise2,
- int damage)
-{
- int weap_type = WPN_UNKNOWN; if (damage >= HIT_WEAK)
- {
- if (weapnum == -1)
- weap_type = WPN_UNARMED;
- else
- {
- if (you.inv_class[weapnum] == OBJ_STAVES)
- weap_type = WPN_QUARTERSTAFF;
- else if (you.inv_class[weapnum] == OBJ_WEAPONS)
- weap_type = you.inv_type[weapnum];
- }
- } strcpy(noise2, ""); switch (weap_type)
- { ... case WPN_UNARMED:
- if (you.species == SP_TROLL || you.mutation[MUT_CLAWS])
- {
- if (damage < HIT_MED)
- strcpy(noise, "claw");
- else if (damage < HIT_STRONG)
- strcpy(noise, "mangle");
- else
- strcpy(noise, "eviscerate");
- }
- else
- {
- if (damage < HIT_MED)
- strcpy(noise, "punch");
- else
- strcpy(noise, "pummel");
- }
- return damage; ... }
-}
-
-xx 262.
-
-from Win32 precompiled pr10 on Windows 2000:
-
-You see here a white potion.
-B - a white potion
-Drink which item? (I choose B)
-You feel much better.
-Eat which item?
-That banana was delicious!
-B - a white potion
-You finish eating.
-
->> Must have had autopickup off, but I cannot reproduce.. think it
->> might have been fixed by fixes to message.cc
-
-== 263. When i name a character 'con' or 'Con' it freezes the game.
-
-== 264. Generate wandering monsters on/near stairs about 10% of the time,
- regardless of player position, but disallow banding and generate a
- message ("A %d enters from above/below!") if player is around.
-
-== 265. Has anyone else noticed that after a draconian dies, every high-score on the
- screen is listed as having been a draconian? When a non-draconian dies, the
- draconian is listed as having come from race "Yr".
-
-== 266. Cleaned up monster blinking.
-
-== 267. Monsters following up the stairs if they are "not aware" of the player (odd!)
-
-== 268. Some problems with monsters not following player position correctly, or
- just plain waggling back and forth when they should be beating on the player.
- Sigh.. gotta look closer at those movement routines. :P Not ready for
- prime time yet.
-
-== 269. Simple fix to handle_behavior()
-
-== 270. After a while, crawl again went of bounds, this time with this
- backtrace:
-
- #6 0x80e9119 in seekmonster (p_monsterid=0xbffff1e0) at mon-util.cc:816
- #7 0x80e91bc in mons_intel (mc=-1) at mon-util.cc:837
- #8 0x80db2a7 in behavior_event (mon=0x8247e90, event=1, param=0)
- at monstuff.cc:394
- #9 0x81339c7 in noisy (loudness=8 '\b', nois_x=45 '-', nois_y=34 '"')
- at view.cc:1249
- #10 0x8132927 in monster_grid (do_updates=true) at view.cc:941
- #11 0x8131bca in viewwindow2 (draw_it=0 '\000', do_updates=true) at view.cc:574
- #12 0x8052f76 in input () at acr.cc:2020
-
- The bad thing here is that line #7 has mc=-1, and seekmonster() will use
- that as an index.
-
-== 271. Could we tie this to smartitude? Killer Bees and other insects can
- forget that I exist when they can't see me while Liches ought to
- cast 'detect exact player loaction' and Dig or teleport their way
- to me, for a LOOOOOOOONG time after I damage one.
-
-== 272. Cleaned up abyss generation; there was a monster leak and some very strange
- code.
-
-== 273. Fixed minor screen redraw problem (screen should have updated before monsters'
- turn, but it wasn't. Caused some odd SFX artifacts, like beams/missiles going
- through walls)
-
-== 274. Fixed nasty bug with cornered monsters which had them looping from flee->
- cornered->seek->flee->...
-
-== 275. Fixed small logic error with perma-mutations
-
-== 276. I was invisible and an orc spotted me, shouted, and then came at me.
-
-== 277. gotta clean up monster target aquisition and release. Make more 'sensible'
->> Add 'persist' variable; which is # of turns a monster will go towards their
->> CURRENT target even if it is not in LOS anymore.
-
-== 278. Fixed type usage problem with quadrant_blink()
-
-== 279. Made monsters move a little more unpredictably along oblique paths
-
-== 280. Fixed up all cases I could find of friendly monsters frying players
- (NOTE: they might still do so as part of calculated plans to help the player
- out - some collateral damage is acceptable!)
-
-== 281. "The your cursed +1 robe is stuck to your body."
- "You are a elf wizard."
-
-== 282. Can't pick a target with Apportation spell.
-
->> works fine for me. Added a helpful message.
-
-== 283. It seems that sometimes monsters are not interested at you even if
- you shout ("!") at them. Or is it feature ?
-
->> nope, bug. Any noise coming from the player's position should alert
->> hostiles within range depending on the volume of the noise.
-
-== 284. Sometimes monsters (rats, bats and probably others) attacks you,
- but they are still described as "not interested".
-
->> fixed in direct.cc.
-
-== 285. I have also
- made some changes to the file attributes when it is compiled with MULTIUSER
- option turned on, since I think the player's save and level files should NOT
- be group writeable :), but the score file should be.
-
->> .sav and level files are private (600). Ghost and score files are not (664)
-
-== 286. There seems to be a more serious bug with summoning monsters in Crawl pr11:
-: I`ve found that summoned creatures aren`t giving any experience to your
-: character when they kill things any more, which makes summoners a bit crap.
-:
-: Also, when my Chaos Knight summoned a demon ( yquxy whatsit) it kept trying
-: to eat my intelligence and mutate me, which has never happened before.
-: Demons killing monsters didn`t give me any message from Makhleb either.
-
-Both fixed. #1 is logic problem, #2 is generic friendly fire problem.
-
-== 287.
- I'm playing pr11, DOS version. My merfolk healer was in a situation like
- this:
-
- ................. (water squares...
- ..;;.............
- .................
- .................
- .................
- .................
- .................
- ......;.......... water squares end)
- ......@.......... this is solid ground
-
- The placing of the symbols is not accurate.
- Now none of the eels could hit me with their blasts. The eel right next to
- my character kept shooting straight upwards and the two eels farther away
- kept missing me by my right side. At least one of them also hit the eel
- right next to me. I killed the nearest eel, after which the other two just
- kept missing me. My character was not invisible.
-
-: Also, it's not just electric eels. Storm dragons also tend to shoot in
-: the exact opposite direction to the character. Looks to me like it might
-: be a sign problem...
-
->> ugh. bad side effect from tracer explosions. Fixed.
-
-== 288. Fixed whopper of a bug with generation of fast monsters which often hung
- the game (especially in areas with lots of fast monsters, like the hive).
-
-== 289. Brent's balance patches
-
->> applied all, reduced missile damages by 1 to compensate. Gave daggers
->> and spears better chances to hit.
-
-== 290. The "temporarily insulated" message is weak... it's kind of
- confuing and looks a bit like a bug. Better would be a "god
- protected you" message after the explosion... that would tell
- both the source and the reason for the insulation.
-
->> agreed. Changed to post-divine blast message.
-
-== 291. Hate to follow up to myself, but a small thing was brought to
- my attention. Now that the dice for damage are one based, this
- means that Magic Dart is now really the best first level spell,
- this being because it uses the 3dX notation (ie dam > 100), so
- it does a minimum of three damage (which isn't bad) and always
- hits (which makes this too good for a spell which is very common).
-
- So I'm suggesting that the damage for Magic Dart be converted to:
-
- damage = 1 + (power / 2) (this is in it_use2.cc).
-
->> changed to 1+pow/4.
-
-== 292. The third ability gained by followers of Zin is pestilence. This summons
- a variety of bugs that hopefully will helpfully kill off whatever happens
- to be bugging you.
-
- Trouble is, every time my character uses it at least one my little
- chitinous friends gets killed. Zin doesn't like that, so my character
- feels guilty.
-
- The same thing happens with the fifth ability, Summon Guardian, but
- it's not so bad there. The summoned Angel (or Daeva, for fans of the
- TSO) can generally take care of itself, although I did lose a Daeva to
- a dragon once. Luckily it left behind a long sword of holy wrath to
- assuage my guilt.
-
->> add a flag to god-summoned critters so that their death doesn't cause
->> piety loss. Summoned friendlies will still give piety loss; the 'good'
->> gods don't appreciate you summoning beings as cannon fodder!
-
->> tried to apply the god_gift flag wherever it made sense; Zin Pestilence
->> was the only place I could find.
-
-== 293. Finally found and fixed 'critters summoned out of LOS' bug.
-
-== 294. Fixed logic problem in quadrant_blink()
-
-== 295. Fixed buffer overflow in acr.cc during char dumps.
-
-== 296. Fixed minor display problem in backlight_monsters()
-
-== 297. Added Guus' -plain and doc patches
-
-== 298. CHMOD_PUBLIC now uses 664 instead of 666.
-
-xx 299. Actually, there was at least the comment from the newsgroup
-about elven conjurors starting with the Ice/Air book (because
-they're better at Air than Earth and equal in Fire and Ice).
-The actual spells tend to lean a bit more to the Fire/Ice
-side so I really don't see why they shouldn't have the choice
-(or rather why anyone should have this auto-picked). Adding a
-selection screen and an initfile option wouldn't be that hard.
-
-== 300. Change magic dart damage to 2+power/4
-
-== 301.
->I'm wearing a ring of Shadows. When I try to take it off, it says
-: >that it's stuck to me. When I 'v'iew it, it says that it has a curse
-: >placed upon it. But it doesn't show up as cursed in my inventory
-: >list, and scrolls of remove curse don't work.
-:
-: Oh... and if it helps at all: I killed a mummy at a certain point,
-: with no apparent curse effect. This may be how the ring got cursed
-
->> the check for randart rings was looking for 200, but the actual
->> inv_dam value for randart rings is 201. "Pluses2" of 100 is not
->> well defined in the code... :(
-
-== 302. Abyss go to shits after abyss_teleport()
->> wasn't setting terrain to DNGN_UNSEEN. Was using old (stupid)
->> value of 30 (white triangle!)
-
-== 303. In fact, they seem able to sneak right up to alert monsters and still
-deliver the first blow. I think that such a blow should sometimes count
-as a stabbing attack, just as blows delivered to fleeing or confused
-monsters currently are. Currently such attacks have a
-
-random2(200) <= you.skills[SK_STABBING] + you.dex
-
-chance of being stabs.
-
->>Gave chance if monster isn't paying attention to you (foe != MHITYOU), but
->>stab bonus is much lower (3) than stabbing a sleeping/fleeing monster.
-
-== 304. Not sure if you saw my big report on roguelike.misc, since it hasn't
-: been fixed and doesn't seem to appear on the 'to do' list. The spell
-: 'Lee's Rapid Deconstruction' doesn't do any damage at present. It
-: occasionally destroys the wall which is targetted, but I detonated 20
-: walls next to a rat and didn't scratch it. This leaves Earth Mages
-: without an area-effect damage spell, which is rather detrimental to
-: their health :(.
-
->> Fixed. Needed subtle wrinkle in explosion map, as well as some
->> fixes to the spell itself.
-
-== 305. Currently, if you skip the first naming screen but use the second
-you can overwrite a previous game. Although this is unusual
-behaviour, it's not very desirable, it should at least warn
-about this and potentially give an option to load the old game.
-
->> fixed. good catch.
-
-== 306. Wielding a bunch of stones and trying to throw one of them,
-results in all of the stones being thrown (and potentially disappearing
-as well).
-
->> Very, very subtle bug in beam.cc inherited from original codebase.
->> Fixed.
-
-== 307. monster_move(monster);
- // reevaluate behavior, since the monster's
- // surroundings have changed (it moved)
- handle_behavior(monster);
-
- Some monsters are getting killed on their move, and then the
- code in handle_behavior() will fail an ASSERT since monster->type
- will be -1.
-
-== 308. After one hit with a poison dart, "the goblin looks rather
-more sickly". The non-"...more..." message is (repeatably)
-never shown. - Josh PS: Could we consolidate the poison-effect-namespace to either
-"ill" + "rather more ill" or "sickly" + "rather more sickly"?
-I favor the former.
-
->> oops. simple messaging problem. Similar prob. in sticky flame.
-
-== 309. Only one bug found - in newgame.cc (line 2222) should be used
-strnicmp() instead of strncmpi(), because the second one isn't
-existing function :)
-
-From BWR:
->Actually, we should probably avoid both, I don't think they're
->very stardard (BSDish systems will use "case" over "i").
->strncmp() is POSIX (among others) so it's okay, but the case
->insensitive compare almost always causes problems (if we're going
->to use it, we should probably have it defined somewhere, so it
->can be adjusted or handled by autoconf (should we go that route)).
-
->> correct - neither are POSIX. However it is being used in a DOS/win32
->> section only, and strnicmp() is the proper call as Michael pointed out.
-
-== 310. I've looked at monster pronouns and IMO (supported by dictionary)
- Erica and Frances should be female and Francis should be male.
-
- Probably also description of uniques could be slightly changed
-according their gender, for example
-Jessica - "An evil apprentice sorceress."
-
->> done.
-
-== 311.
-In either event, to get crawl to compile, the str<foo>cmp(x,y) == NULL
-in initfile.cc needs to be changed to "...== 0". The line is near 520.
-
-== 312. Change shops back to old [0][5+i] item location. Leave items
- carried (ie not on grid) at 0,0. Make sure to modify link_items();
- keep compatibility with old saved games.
-
-== 313. I think giving Ogre and Troll Fighters Dodging 2 is probably in order.
-
-== 314. Fleeing monsters were not taking advantage of the flexible movement
- code (Guus)
-
-== 315. Gave monsters a little better chance of sniffing out foes (stealthy
- players will fare better). After arriving at target x,y, will do a check
- for continuing on via ESP/noise/whatever.
-
-== 316. Removed ability of monsters to see through walls. :)
-
-== 317. : Just tried casting Tukima's dance while wielding an artifact weapon.
- : I get the message "You hear a popping sound." and although my artifact
- : stays in my hand, something that looks like a Shadow appears. Its
- : name: 36317738 iron wands. If you 'x' it and hit '?' it says "A
- : dancing weapon floating in the air." just as if the spell had worked
- : right. The thing even moves and attacks like a summoned monster, and
- : seems to have combat stats of some sort, since it can kill things.
- : When the spell expires, it says "The weapon drops from the air." as
- : normal, but the monster just ceases to exist; it doesn't leave a copy
- : of the weapon behind or anything. You can even summon several of
- : these "36317738 iron wands."
-
->> ugh, two separate logic problems in dancing_weapon(). Fixed.
-
-xx 318. I could be wrong, but I think that the Orcish Mines had no scrolls,
- potions, wands, rings, or amulets. Very odd. But since Gordon just
- rewrote dungeon.cc, we should wait for reports about pr13.
-
->> this is working exactly as designed, if I read the original code correctly.
-
-== 319. But I failed in my casting too often, and the
- buildup of mutagenic energy had some unfortunate effects. Even after I
- gained some levels in Divination, and my Success chance was up to Fair,
- I failed to successfully cast the spell sufficiently often that I mutated.
- So be wary of casting even second level spells.
-
- from BWR:
- We've have people getting mutations here from level one spells.
- I'm thinking that at the very least we need to lower the baseline
- for noticing that you're accumulating radiation... and possibly
- put in some warning messages so people know that they're getting
- a bit "hot" and that they need to take it easy for a while.
-
->> messaging much better. toned down nastiness from low level spell failure.
->> made my easter egg much less abusable.
-
-== 321. I do wonder that Zin wasn't upset when I zapped the Angel initially.
-
->> Zin is stupid and can't differentiate between a hurtful and helpful
->> spell. Perhaps a small subset could be classed as obviously harmful,
->> so that if you e.g. healed or hasted the daeve it wouldn't get pissed.
->> have to be done in beam.cc, I think... any non-enchantment would be
->> classified as harmful, I think. (?) Other enchantments would have to
->> go in a big if/switch.
-
->> this will also help to NOT piss monsters off if you're trying to help
->> them.
-
-== 322. 2) Item clean-up in the dungeon seems far more
- aggressive than before. I've dropped items,
- popped down a staircase and right back up,
- only to find everything I dropped gone, gone,
- gone! This would be on "cleared" levels where
- the likelihood of item overload is almost nil.
- Is this a change in gameplay that I missed? In
- pr13, I am finding myself holding onto *everything*
- because I *know* that if I drop it and leave the
- level it will simply disappear ... a PITA situation
- for low-strength characters wanting to stash some
- extra stuff for later.
-
->> oops. Somehow broke item save/reload for any item dropped by player
->> or monster. Took closer look, cleaned up horrible hacky code. :P
-
-== 324. Make random zombie generation reflect the actual level; it is currently
- random.
-
->> no more horribly OOD zombies.
-
-== 325. Monsters with OFFENSIVE spells in mspell[2] will still use them
- on the player (sigh..)
-
->> fixed all cases in mon-spell.h
-
-== 326. Accidentally doubled the number of monsters created w/ level.
-
-== 327. : Scrolls of fear appear to be bugged. Read one, got messages saying
- : that the monsters were frightened (ie, not "The blah resists."), but
- : they kept moving towards me and attacking me.
-
-== 328. In pr12, my Troll could see an unseen horror. He was not wearing any
- devices that could lend him see invisible, and orcish wizards were
- turning invisible earlier in the game.
-
->> oops. logic problem in mons_del_ench()
-
-== 329. Sigmund and other uniques appearing multiple times
-
->> logic error in dungeon.cc
-
-== 330. Magical staves are described using the old style (speed)
-
-== 332. Monsters walk into clouds, except for intelligent ones?? Check code:
-mannix writes:
-Now here's an idea to which I can warm: stupid animals
- thinking "where there's smoke, there's fire", and more
- intelligent critters in possession of the ability to
- discern betwen the two.
-
-== 333. Monster Placement: is there a place where, if you can't find a sensible
- location for a monster in a group, you just put that one anywyere?
- I think that's part of what makes monsters appear in LOS ... I just
- got a gnoll and two orcs.
-
->> stupid error in monplace.cc. Forgot that distance() function returns squared
->> values.
-
-== 334. Shapeshifters: one turned into a Swamp Worm. This ought not happen,
- as those are water-only monsters, despite their worm designation.
-
->> fixed. Won't let monster poly into water-based monster on land.
-
-== 335. dungeon.cc::pick_an_altar(): needs to have a case added, near line 5988:
- case BRANCH_SLIME_PITS:
- case BRANCH_ECUMENICAL_TEMPLE: //jmf: ADD THIS LINE
- altar_type = DNGN_FLOOR;
- break;
-
- ... to prevent "bonus" altars in the Temple. This was probably the
- original author's bug (i.e.: mine).
-
-== 336. So the city-like dungeon code has some sort of an off-by-one error.
- The "buildings" (squares with doors) once were separated by at least
- one space of floor; no longer! Furthermore, they once didn't overlap.
-
- The changes provide much more interesting cities, however the door
- generation hasn't quite caught up. I've seen things like:
-
- #########
- ####+...#
- #####...#
- #####...#
- #########
-
- ... where it's fairly obvious what went wrong. (I discovered these
- types of things when playing a gnome.)
-
- The quick fix would be to restore the 'air' around buildings, but
- IMHO that would be a loss. The new cities are so much cooler.
-
- A more complex fix would be in two steps:
-
- 1) make sure there's a passageway around the border of the level.
- A single sweep setting all those squares to floor would be fine.
-
->> tightened up door placement in box_room(); since both city_level()
->> and plan_4() use it, stuff works better now.
-
-== 337.
- Sticky Flame puts monsters in the player's thrall
-
- This last one is really bizarre, because it doesn't happen
- in the wizard mode compile (although I can take that character
- over to the normal version and have it happen there).
-
- It's intestesting to note that these monsters end up with
- enchantment number 30, which is one less than the sticky
- flame enchantments... in the wizard mode they seem to get
- enchantment number 60 (which is one less than the other
- set of monster sticky flame enchantments... also known
- as POISON_IV). I'm wondering if anyone else can verify
- this.
-
- I suspect that there's some problems in the enchantment system, which
- could be responsible for both of these. Looking at sticky flame today
- it seems that my sticky flame ends up as ENCH_POISON_III or _IV
- (59 or 60) regardless of playing crawl or wizcrawl. The in-thrall
- thing seems to not be happening right now. It occurs to me that I
- never actually got "burn" messages in pr12 when I was using napalm
- (I hit an Ice Dragon about six times with it and it never seemed
- to take any damage after the initial hit)... looking at the code now,
- I'm pretty sure I should have been (and that any appearance of working
- in the recent past might have in fact been delayed poisoning).
-
->> Fixed. sticky_flame_monster() was badly broken. gawd I bunged that up.
-
-== 338. As a side note, I now backstab bats quick often (I take it that
-this is a side effect of the new backstabing situtation). I'm
-not really sure I should be able to do that (or more to the point,
-does this mean I can expect regular backstabbing of ball lightning
-and spatial vortices which might be a bigger problem).
-
-== 339. In Win32 pr13, if you set class = C in init.txt, your character will be a
-priest ('c') instead of a wanderer ('C'). This happens regardless of if
-your race allows wanderers.
-
->> bug in initfile.cc
-
-== 340. Basically, nowdays if you turn a bat into an undead slave,
-it suddenly comes to it's senses and becomes an inadvertant
-killing machine (well against monsters that can't easily kill
-it in one hit), as it walks straight up to them and hits them
-3 or 4 times a round. Undead bats should still flutter around
-(that's what keeps them in check considering their amazing speed).
-
-== 341. I've run into some surprisingly powerful ghosts in pr13.
-They are only overly powerful in non-wizard compiles; the
-two times I switched to a wizard-compile they acted normal. One
-was casting MS_ENERGY_BOLT instead of either magic
-dart or throw flame (the two spells that character knew).
-
->> very bad indexing bug in ghost loading. Who knows what else
->> this was screwing up.. :P
-
-== 342. Some attempts to animate a skeleton result in a puff of smoke in addition
-(I think) to a new slave.
-
-== 343. We've had several reports here about necromancers zombies and skeletons
-actually getting poisoned from time to time by monsters. As far as
-I can tell this really shouldn't be happening.
-
->> probably a side-effect of messed up enchantment code.
-
-xx 344. If you start a game with -plain, Save, then continue the game without -plain,
-then the displayed map for remembered locations uses the -plain characters.
-
-If you start a game without -plain, Save, then continue the game with -plain,
-then the displayed map for remembered locations uses the extended characters.
-
-== 345. I haven't heard this one mentioned, but when wielding an ego item you
-typically get this:
-
-d - an elven short sword (weapon in hand)
-Wielding this short sword is a little awkward.
-It softly glows with a divine radiance!
-
-The elven short sword should be id'd as "holy wrath" in the first line...
-it was unid'd when I did this, so it looks like a simple case of moving
-the identify code to a place before the printing.
-
-xx 346. Breathing fire via the mutation prints this unnecessary line:
-" .\n"
-
-xx 347. I got a segfault when entering the abyss; wasn't playing under
-gdb, for some reason, so didn't get a stackdump. Sorry.
-
-== 348. Brent's XP patches
-
-== 349. Josh's sludge elf, etc patches
-
-== 350. In mon_util.c::define_monsters(), there are some mystical values
- assigned to m2_sec, some of which can be made more apparent by
- using the appropriate MST_* values.
-
-== 351. Actually, a thought just occured to me that the new stabbing
- code that gives occasional backstabs against flutterers, is
- probably very annoying to Paladins. We might need at least an
- additional check to prevent some of the excusable backstabs from
- being naughty... perhaps it's just as simple as only making
- attacks on fleeing, sleeping, and confused monsters call naughty
- (in which case, it might be reasonable to remove the random
- chance for TSO applying penance).
-
- One of the problems with confusion based stabbing is that some
- monsters are created with it, and most of those probably shouldn't
- be backstabable (various voritices, ball lightning, vapours). So
- maybe we might need some way of distinguishing if the stab is
- appropriate (or if not that, we should probably leave them off the
- above list for naughtiness).
-
->> new code to void backstabbing against flutterers (solely because
->> they are flutterers) and perma-confused critters (solely because
->> of confusion).
-
-== 352. in check_mons_magres(), the return value for the special "< 6"
- bonus is backwards. I'm probably to blame for not noticing that
- the function is logically backwards, I probably got confused by
- one of the cases in spells4.cc which use this function backwards
- (a few of which are my own).
-
-== 353. I added a "gotoxy( 18, 9 )" to the top of our direction function,
- which nicely solved the porblem where the cursor was left at the
- end of a prompt (ie for conjure flame).
-
-xx 354. We've had a report of skeletons picking up skeletons.
-
-xx 355. I've had several people reporting some oddness when returning
- to a level via a straight up and down... things like monsters
- completely disappearing and traps being created.
-
-== 356. pets seem to try and track the target monster even when they're
- on the wrong level. Basically, if you go down stairs and tell
- your pets to attack something and the go upstairs to try and
- bring more pets down, the upstairs pets will be running around
- wildly... going downstairs and killing the target made the
- upstairs pets return to the master homing behaviour.
-
->> simple fix. Set pet_target to MHITNOT on level change.
-
-== 357. The lastest in the bizarre happenings around here was a friendly
- player ghost... wonderful entertainment as it would should out
- things like "Run, I'll cover you" and such.
-
->> always a possible problem; some fields were left uninitialized from
->> monster_cleanup(), and never initialized in the ghost code!!
-
-== 358. Removed digging ability from Disrupt()
-
-== 359. Added 'random' beam that affects each cell as one of { fire,
- cold, magic, electricity, poison, negative energy, acid }. Only
- used in my easter egg so far.
-
-== 360. Maybe we should instead be considering shifting the greater
-vaults down to level 10+, and the lesser vaults to 7+ (there
-are many more mini-vaults (and better quality these days, and
-this does have the advantage removing dlev 4 guardian naga
-encounters... we've had several).
-
-== 361. Okay, compiled it up and the only problem was that link_items() is
-declared both static and extern (removed the static prototype).
-
-== 362. One other little problem: The magic resistance check for monsters
-is now correct, but there are some inappropriate calls to it over
-in spells4.cc (in particular Twist is currently unusable).
-
->> reversed the logic.. this was just too non-intuitive and backwards.
-
-== 363. Move the Crawl.mcp file out of the source folder.
-
-== 364. Add "#define ESCAPE 0x1B" to defines.h
-
-== 365. In eat_food() in food.cc add some code before the "You don't have
- any such object." case:
- if (keyin == ESCAPE)
- return;
-
-== 366. lava_spaces and water_spaces in builder_monsters() in dungeon.cc
-aren't inited. (This looks like a nasty bug).
-6) In quadrant_blink() in spells4.cc there's a line that reads "while
-(!done && random2(100) < pow--);". Please move the semi-colon to its
-own line.
-
-== 367. Snakes now flutter like bats did. They also display the "not interested
-in you" message when e'x'amined.
-
- Josh:
- I've had a batty frog and batty snake. Both had the old
- 'not interested in you' inspection message. Most frogs
- and snakes were not batty.
-
->> oops. Monster->flags was not being set to 0 at monster creation.
-
-== 368. in monstuff.cc::handle_spell(), the CONFUSION && !vapour
- should probably be changed to use M_CONFUSION to be generic.
-
-== 369. the contamination messages should probably be in the warning channel
-
-== 370. wizard's hats say they give AC, but they don't
-
-xx 371.Fireballs are rather larger than I remember.
-Mana explosions from magic accumulation are the same size (very big).
-I'm pretty sure the former is unintentional; is the latter?
-
-== 372. There's an illiterate "it's" in the description of Silence. The word
-ought to be "its". (This is a peeve of mine. "We hate's them, ye's
-presciou's!")
-
-beam.cc::2753
-- hearMsg = "You hear a gentle \'poof\'";
-+ hearMsg = "You hear a gentle \'poof\'.";
-
-== 373. I haven't seen any miscast effects except for the irradiation one.
-I think this is due to a loop in spell.cc which tries to figure out
-which school of miscast-effects applies to a given spell. The loop is
-a bit past line 300 and seems to ignore the new 'bitmap' representation
-of spell-schools. I know that miscast_effects is getting bogus sptyps.
-
-Full, real fix:
-unsigned int sptype = 0;
-do {
- sptype = 1 << (random2(SPTYP_LAST_EXPONENT+1));
-} while (!spell_typematch(spc2, sptype));
-
-== 374.
-newgame.cc::3410 + if (you.species == SP_HILL_DWARF ||
-+ you.species == SP_MOUNTAIN_DWARF)
-+ you.skills[SK_MACES_FLAILS] = 1;
-+ else
- you.skills[SK_SHORT_BLADES] = 1;
-
-== 375. Later in newgame.cc: Now that Sludge Elves suck at enchantments
-and conjurations, we could remove the options for them to be Conjurers,
-Reavers, Enchanters and Crusaders.
-
-** 376. Something is still deleting the ABJ_xx enchantment for summoned
-monsters. Don't know what though.
-
-== 377. Fixed magic resistance of normal & small snakes.
-
-== 378. case CLOUD_POISON:
- case CLOUD_POISON_MON:
- if (mons_res_poison(monster->type) > 0)
- continue;
- if (monster->hit_points >= random2avg(37, 4))
- continue;
- break;
-
-THIS IS WRONG VVV
-
- // dumb monsters can be fooled by smoke
- if (mons_intel(monster->type) > I_ANIMAL || coinflip())
- continue;
-
- // this isn't harmful, but dumb critters might think so.
- case CLOUD_GREY_SMOKE:
- case CLOUD_GREY_SMOKE_MON:
- if (mons_res_fire(monster->type) > 0
- || (monster->inv[MSLOT_ARMOUR] != NON_ITEM
- && mitm.special[monster->inv[MSLOT_ARMOUR]] % 30
- == SPARM_FIRE_RESISTANCE))
- {
- continue;
- }
-
-== 379. Brent's 'friend-brand' patch
-
-== 380. Undead should *not* have morale failures, nor should the dumber ones avoid
- flaming clouds of death (brown & white 'z's & 'Z's). Skeletal warriors
- might avoid FCoD since they do make one other intelligent decision (wrt/
- casting their spell), but they ought never run away.
-
->> who says running away is due to morale failure?
->> REALLY dumb (I_PLANT) creatures will now walk through harmful clouds.
->> this includes most of the shambling (mindless) undead
-
-== 381. quadrant_blink() from Brent
-Brent Ross <bwross@c...>
-
- In this method, what we're going to try for is the best match, and
- allow the number of choices to be based on power. The basic hope
- is that while even high power characters have to put up with some
- randomness, the diameter of the cone decreases making it more
- reliable.
-
- let line = line segment extending out from player in the chosen dir
- let best = NO_SQUARE
-
- for i = 1 to f(power)
- targ = random nearby square
- if (dist( targ, line ) < dist( best, line)) then
- best = targ
- else if (dist( targ, line ) == dist( best, line )) then
- // Not really sure we want this part, maybe we should throw in
- // a random to keep the distance sane.
- if (dist( targ, player ) > dist( best, player )) then
- best = targ
- endif
- endif
- endfor
-
- if (best == NO_SQUARE)
- mpr( "teleport control screwed up" )
- random_blink
- else
- player = best
- endif
-
-== 382. De-twink wanderers
-
->> undefined USE_SPELLCASTER_AND_RANGER_WANDERER_TEMPLATES until we have
->> "hedge" magic.
-
-== 383. Check that all spell books are listed for generation.. at least war chants
- is missing.
-
-== 384. Add "Blowgun" (launcher) and "needle" (ammo)
-: basically, go through all code looking for BOW, add blowgun
-: go through all code looking for ARROW, add needle
-: assassins now start w/ blowgun & needles
- except for deep elves; they get hand xbows since they tend to
- suck at HTH and will rely more on ranged damage.
-: some chance for needles of Foo? (dungeon.cc) just poisoned
-: some chance for blowguns of Foo? (dungeon.cc) of venom
-: must remember to add in to item generation tables. :)
-: change throw_it() so that blowguns and thrown darts are
- very quiet; all others make a noise - check fight.cc for
- a good noise value. Note that alert() is simply not called.
-: give a couple monsters blowguns & needles to start
-: needles get damaged far less often (but make them rarer;
- maybe only carried by assassinish-monsters.
-: Needle trap at higher levels; could be a source of needles?
-
-TODO: dungeon.cc::give_item() . which monsters have bguns/needles?
-other files not searched for WPN_BOW and MI_ARROW (our template for
-this stuff):
-
-== 385. fixed logic problem in cast_sandblast()
-
-== 386. If I cast a fire spell at something in the water, it leaves a trail of
-steam behind it. A fireball should have the same effect (but of course
-over a larger area)
-
-== 387. Josh' new diff (mostly Xom acts)
-
-== 388. A Skeletal Warrior just drank a potion of healing. This strikes me as
-wrong, from both pseudo-physiological and gameplay perspectives.
-
-== 389. I saw hellwing which polymorphed jackal to lava fish. Probably
-this is not bug but we should consider this.
-
-== 390. We've had
-someone complain here about his Ogre not being able to wear one.
-I thought we had decided that caps and wizard hats were wearable
-by all characters, regardless of headsize or horns.
-Anyone remember?
-
->> there's a comment in item_use about caps & wiz hats being
->> wearable by anyone "unless their head is too big (ogres, etc)"
-
-== 391. I've found a number of eggplants in pr15, err, 4.1.15
- (these were supposed to be MI_NEEDLE.. what happened!?)
-
-== 392.
-I made it to the Abyss... Now I'm stuck in this loop in
-dungeon::define_zombie(): while(true)
- {
- // this limit can be updated if mons->number goes >8 bits..
- test = random2(182); // not guaranteed to be valid, so..
- cls = mons_charclass(test);
- if (cls == MONS_PROGRAM_BUG || mons_rarity(cls) == 0)
- continue;
-
->> VERY tricky to fix correctly.. no wonder it was never done.
-
-(which monsters to allow as zombies in the abyss?)
-
-BWR:
-Or perhaps just picks with the base level set as high as
-possible... which will allow for Zombie Titans (which are high
-enough level that they're never "naturally" generated, I believ
-
-Well simulacrums are out right away. They don't appear naturally
-anywhere, due to the fact they sublimate away. On a similar note,
-ball lightning shouldn't be generated anywhere, but I believe I
-accidentally put them in the Realm of Zot... short lived creatures
-should have to be summoned in. As for zombie/skeletons or even spectres (which I don't believe
-are generated anywhere.... Spectral Warriors are generated,
-but they're like Skeletal Dragons in that they're completely
-different... don't think I've ever seen a Spectral "Thing"
-in any dungeon, at least not one I didn't create myself) are
-probably okay in the abyss... there are things like abominations,
-necrophages, skeletal dragons/warriors there already. Spectres
-might also be interesting in the Realm of Zot.
-
-== 393. Oh, dear. I think I might have left in a debugging bit that changes _all_
-generated traps to needle traps - they're supposed to be fairly rare, and only
-seen below level 3!
-
-== 394. It looks like the logic in poison_monster() needs adjusting, too, if you're
-getting credit for monsters done in by the poison from needle traps. Ah well.
-
-== 395. // * fixed: magical staves now described with new speed
-
-Actually, there's still one problem here. The '%' needs to be doubled,
-since the description string will eventually be fired through cprintf()...
-it currently gets dropped in both cases (weapon and stave).
-
-xx 396. An eloquent method of handling this would be to 'queue' shouting messages
-between character actions and conflating multiple shouts into a single
-message ("Several <foo>s shout" or whatever), possibly conflating by
-monster type ("Several <foo>s shout out! A <bar> yelps!") so that the
-player can be alerted to unique shouts and/or get the *flavor* of all
-the various bellowing beasties.
-
-== 397. Make zombie monsters appear a few levels (3-4?) earlier than their non-zombie
-counterparts
-
-== 398.
-> I was blowing needles at an orc wizard, and he very politely gathered
-> all the needles up for me. I appreciated him doing that rather than
-> casting those nasty spells at me. :)
-
-Now, I thought that logic had been fixed (at least, in the case
-of darts) such that monsters with potent HTH or spell attacks would
-not lower themselves to gather scattered items for characters :P
-
->> fixed better. Monsters won't pick up if there's not much there, they're
->> not wandering, and they already have ammo. Fleeing monsters never stop
->> to pick up ammo.
-
-== 399. Needle traps will poison the player even if he or she resists poison.
-
-xx 400. Some first level spells won't allow the player to target him- or herself.
-This means that a player can't use those spells to see if he or she
-resists their damage type. Knowing if one resists a damage type is useful
-when trying on mysterious rings.
-
->> need some restructuring to do this; burn_freeze() isn't set up to
->> actually affect the player. :P
-
-== 401. Personally,
-I think Ijyb should probably get an XP modifier of 5 (and even
-then is still worth 40 xp)
-
-== 403.
-I think some kind of notice should be given, when body wich is carried
-becomes rottens. And ghouls should definetly be able to see when
-chunks of meat become rotten. As should everyone else, I think.
-
->>mv: added appropriate messages
-
-
-== 404. My Draconian monk (not so difficult as you might think) got mangled
-by a goblin with seemingly limitless ammount of scrolls of summoning.
-He summoned like 5-7 abdominations before my monk got killed. And
-this was at level 2. Extremely bad luck or bug?
-
-== 405. Crash in pr14
-This occurred in the Realm of Zot, while attacking an Orb of Fire, which had
-just exploded.
-
->> very nasty. Fleeing monsters with "emergency" spells requiring tracers
->> would crash the game.
-
-xx 406.
-When using Stone Skin with Dragonian it says "Your skin feels harder"
-and "Your skin feels tender" instead of "Your scales feel harder" and
-"You scales feel softer".
-
->> These guys still have skin underneath all those scales..
-
-== 407. Fix quadrant blink again:
-Which gives us the one-step formula:
-
- dist = abs( (y - you.y_pos) * (tx - you.x_pos)
- - (x - you.x_pos) * (ty - you.y_pos) ) / s
-
- where (x,y) is the player's targeted square/vector,
- (tx,ty) is the spell's targeted square,
- (you.x_pos, you.y_pos) is the player's position,
-
- and s is the distance between (x,y) and (you.x_pos, you.y_pos).
-
-
- The important thing to notice here is that s is constant for all
- of the trials (one or root-2), and since we don't care about
- an accurate measurement (only a relative one between trials),
- we can reduce it to one
-
-== 408. Although, 'f' does fire needles correctly, the ')' command doesn't
- actually show that this is the case (see command.cc::list_weapons()).
-
-== 409. Poisoned needle gives messages in bad order. Patch from Guus.
-
-== 410. > I just noticed that my character has a Dex of 63. I've chosen every
- > ability increase to be in dex, and he occasionally wields an artefact
- > dagger that is +3 to dex. I don't think it relates to save files,
- > as I haven't saved the game in three days.
-
- The stat growth is caused by autobutchering when the butchering weapon
- has a stat bonus. I get the stat bonus when I wield the weapon, but do
- not relinquish the bonus when I unwield it.
-
->> ewww. this was ugly.
-
-xx 411. I was playing a Spriggan Transmuter when i entered the mines. I was
- overwhelmed by +10 Orcs so i went back up. One orc followed me. I
- then started running away until i was several spaces away, turned and
- cast disrupt killing the orc. As the orc died the stairs to the
- mines disappeared.
-
->> can't reproduce.
-
-== 412. I've been trying out Chaos Knights and the critters that Xom summons
- for you have this annoying habit of polymorphing the bad guys to
- *way* OOD monsters. For example, my last knight was level 3 and is
- listed at -19/28 HPs in the morgue file. This was one spell and he
- was at full health when it happened. Although this was before the
- latest patch so perhaps it's related to the other OOD problems.
-
-== 413. >I've seen that disorder message a few times too. The first time the
- >game hung when I tried to go back up to that level. After that I
- >avoided loading those levels again. :-) There really needs to be
- >better sanity checking here. It's not right that a bad level can be
- >generated and only found when the player stumbles across a bad pile
- >of items.
-
- From what I can remember, this kind of thing is almost
- certainly the result of bugs in either the monster inventory
- code or the code responsible for placing monster corpses on
- death. The behaviour where the player picks up an item and
- it doesn't get listed in the inventory tended to be caused
- by the existence of a link to an item with a quantity of 0
- (this also causes "a scrolls labelled SDFKLSFD" - when the
- quantity is zero it puts an 's' on 'scroll' but leaves the 'a'
- in front).
-
-== 414. Characters cannot exercise fighting, weapon, or unarmed combat skills
- against plants/fungi, so perhaps they shouldn't exercise stabbing.
- And plants/fungi should probably always appear disinterested.
-
- This assassin has also been paralyzing monsters, but can't seem to stab
- one afterwards.
-
-== 415. My assassin carefully approached his victim:
-
- Move the cursor around to observe a square.
- Press '?' for a monster description.
- A plant.
- It doesn't appear to be interested in you.
- Floor.
-
->> obviously need some kind of data-driven thingie here for stabbing / paying
->> attention.
-
-== 416. I fire a "Disrupt" at a worm just off screen (as I'm running away):
-
- You kill the worm!
- Nothing appears to happen.
-
-== 417. He was standing on a down stairwell. He had full view of each of the
- adjacent squares, but not all of distance 2 squares. He was at a little
- over half his hp, and I hit '5' to rest and recover.
-
- Suddenly there was a bellow, and a hydra was beside him. The hydra
- proceeded to lay the smack down, slaying the poor assassin. I guess
- it's poetic justice, since the assassin slew quite a few monsters
- by suddenly appearing beside them, fiery blade in hand.
-
->> almost definitely a result of the new 'near stairs' code. Needs some
->> refinement, I suppose. (evil grin)
-
-
-== 418. Elyvilon got upset when a needle trap killed a monster just after
- I had prayed. :)
-
-
-== 419. Over the course of the game I obtained around a dozen blowguns and only
- one crossbow, so they may be too numerous.
-
- (most blowguns came from the ground)
-
-== 420. Two minor quibbles on spell descriptions.
-
- a) Unlike the other brand weapon spell dscriptionss, the Poison Weapon
- spell description does not mention that the spell won't work on
- branded weapons.
-
- b) The description of the Disrupt spell says that the spell "disrupts the
- matter of another creature's body", but the spell also affects
- creatures with non-material bodies.
-
-== 421. Fixed formatting problem with randart descriptions
-
-== 422. Changed slaying to be a little less powerful.
-
-== 423. Butchering with bare hands and a short blade in slot a doesn't
-switch back to bare hands. (Naturally, I'm using the experimental
-auto switch when butchering -setting.)
-
-== 424. mons_speed() should be extern, remove static declaration from mon-util.
-
-** 425. I have a ring of Baldness that somehow got cursed and now I am
-stuck with it. Scrolls of remove curse have no effect.
-Its not bad ring, but the increased metabolism isn't nice.
-
-== 426. More inventory problems:
-while playing 4.0.0b16 I found two bugs:
-1) when picking up items from the floor, after picking them up - it says "no
-more items" (but it picks up the item). This bug is strange it happens only
-at the very beginning of the game. For some reason after descending to Level
-2 it has stopped from happening.
-
-2) picking up items from the same type: when you have say 2-chokos and there
-is on the floor another one then when you stand on top of it - it says
-3-chokos(it takes into account the ones you have in your inventory). Or the
-other solution is that when you pickit up from the floor it replaces your
-previous chokos with the last amount of that type picked up. (Because I had
-2 chokos and after picking 3 chokos = I got 3, so it could be either
-problem...dunno)
-
-== 427. Fix descrip. for rings of slaying.
-
-== 428. I met monsters with infinite potions. I hope it's also fixed.
-
-== 429.
- in monstuff.cc::handle_nearby_ability() should be also handled
- monsters behaviour - BEH_WANDER and BEH_SEEK, beacuse monsters speak
- even if they don't know about player. Also it looks that Giant
- eyeball can stare at player even if he isn't noticed (or if he is
- invisible, but it's probably feature)
-
-== 430. Michal's patch (new unrands?)
- >> mv: now included - not only unrands but mainly clean-ups and minor upgrades
-
-== 431. In view.cc:viewwindow2() was buffy changed from unsigned char to
- unsigned short (I'm talking about
- FixedVector <unsigned char, BUFFER_SIZE> buffy).
- But at least with my compiler it doesn't work and viewwindow2()
- doesn't show anything (only black screen). When I changed buffy back
- to unsigned char it started to work again.
-
-== 432. Giant eyeballs no longer stare at friends.
-
-== 433. You throw a dart.
- You throw a dart.
- You throw a poisoned orcish dart.
- You shoot a poisoned needle.
- You shoot a poisoned needle.
- You hear a grinding noise.
-
- ... with a dex 18 / darts 7 / throwing 4 player!
- This is repeatable, and at times, I managed to
- clear a rock wall with just two needles!!! Couple
- this with the durability of needles, and players
- have a poor-man's dig spell at their disposal.
-
-== 434.
-I think I will change this condition so that a
- monster with no ammo won't bother picking any up,
- unless their melee attack really sucks.
-
-== 435.
- You destroy the shapeshifter zombie!
-
- I sneak up on a defenseless cockroach and crush it with
- my quarterstaff, only to be messaged that my character's
- stabbing skill has increased. Is is just me, or does the
- idea of stabbing with a quarterstaff seem a bit off? I
- weakly suggest changing the name of the skill to something
- less tied to impaling weapon types. "Ambush" skill or
- "Bushwhack" skill or something similar.
-
->> no more shapeshifter zombies. Improved messaging for stabbing.
-
-** 436.
-
-
- Hi,
-
- Could you add a description of the / and * keys to the help screen? Keypad is
- not always useable, especially not with ctrl and shift keys, this might help
- some people. Patch attached.
-
-
-== 437.
- Note the extra space before the period:
-
- Methea's ghost stares at you . You feel cold.
-
-
- This is a common construction used (I presume)
- in mon_speak() [or whatever]. There should be
- a comma placed after the verb ['begs' in this
- case] for grammar's sake:
-
- Methea's ghost begs "Please don't hurt me!"
-
-== 439.
- Package: crawl
- Version: 1:4.0.0beta16-1
- Severity: minor
-
- Another small upstream gameplay issue. In the context of a rat I had
- summoned attacking a kobold which was wielding a poisoned dagger:
-
- The rat hits the kobold.
- The rat hits the kobold!
- The kobold hits the rat with a runed dagger!
- The rat looks ill.
- You kill the rat!
- That felt strangely unrewarding.
- The rat's corpse disappears in a puff of smoke!
-
- The rat was killed by the kobold (via poison), not by me, but the messages
- seem to indicate I killed it.
-
- This may be very tricky to reproduce, unfortunately :(
-
-== 440.
-> * removed: no more spellcasting wanderers, until such time as we
-> have some reasonable "hedge magic", which I will not add before
-> release.
-
- A healthy percentage of my wanderers still start out with magic
- skills.
-
- >> but not spells.
-
-
-== 442. Repel undead doesn't seem to actually repel the undead.
-
- >> mv: fixed
-
-== 443. The enslaved stay enslaved even when you attack them.
-
-== 444. Change 'points' to 'point' if points needed == 1 in 'C' message
-
-== 445.
-This is me and a summoned zombie vs. a goblin:
-
- You miss the goblin.
- The goblin hits you with a club!
- The giant cockroach zombie misses the goblin.
- The goblin fails to defend itself.
- You kill the goblin!
-
->> very possible. Goblin was concentrating on the cockroach (lucky
-you!)
-
-== 446. Add ???'s patch for FreeBSD support
-
-== 447. Zombie generation hangs in the various hells, the crypt, and probably
- slime pits, ecu. temple, and others.
-
- >> think I got all cases of levels with no zombifiable native life.
-
-== 448. Monster polymorph can hang in HoB:
- >> only valid monster for poly in HoB is Dancing weapon, which is EXPLICITLY
- NOT a valid poly target. So it hangs. Duh!
-
-== 449. Shapeshifters no longer gain the extra abilities (spells, specials)
- of their forms (they used to - I considered this a bug).
-
-== 450. Incredibly, monster enchantments were not being reset when a new level
- was generated. This is an absolute showstopper and has probably corrupted all
- games in progess. Most notable with permanent enchantments like shapeshifter -
- this is what caused the "shapeshifter" dancing weapons that Josh (indirectly)
- reported.
-
-** 451. As you read the scroll, it crumbles to dust.
-Your club glows black for a moment.
-Drop which item?
-You drop a +0 dwarven hand axe.
-You are empty-handed.
-
--- 452.
-I hit an assert failure after reading a scroll of curse armour. From the
-traceback, we see an immediate problem at the call to itemname::in_name()
-at line 3358 of item_use.cc. The object to be named is -1.
-#6 0x80b1797 in in_name (inn=-1, des=4 '\004',
- str_pass=0x825b9a0 "a +1,+0 elven long sword") at itemname.cc:69
-#7 0x80b125b in read_scroll () at item_use.cc:3358
-#8 0x8050e2d in input () at acr.cc:880
-
-Doing a quick compare between the pr16 & pr17 code, I think this line:
- ok_to_curse[i] == (you.equip[i] != -1
- && you.inv_plus[you.equip[i]] < 130);
-
-should be:
- ok_to_curse[i] = (you.equip[i] != -1
- && you.inv_plus[you.equip[i]] <= 130);
-
-** 453.
-DOS, 486sx
-4.1.16 Floating above a (dart) trap discovers it but gives no message.
-
- I'd like to see a message when Coronas wear out.
-
- >> mv: added
-
-4.1.17 Loading the game; Okawaru says: Welcome, disciple.
-
-A monster called "a human" was displayed as a darker (non-visible)
- floor tile.
-
- >> mv: fixed
-
-
-** 454 .Goblins and orcs still get infinite potions of healing??
-
-** 455. I'm playing Crawl pr17 (I double-checked this time) under Solaris, and I just
-got the "Too many items" bug with a minotaur monk. It had to do with a
-cursed runed leather armor that I was carrying. I had a bunch of stuff in
-my inventory, and read a scroll of detect curse (this is how I discovered
-that the armor was cursed). So I dropped the armor and moved to another
-spot. There I dropped some weapons that I wasn't interested in. I stepped
-back to this spot later, there's a cursed runed leather armor. There's also
-a cursed runed leather armor on the spot where I actually dropped it. I
-picked one up and dropped in on the other, looked, and "Too many items." The
-game hung when I tried to save. :^/
-
-** 456. I was playing the same minotaur monk (I was able to salvage the game) when I
-saw what I thought was a statue (an '8'). When I looked at it, I saw:
-
-You see 26 !questionable item (c100,t0,p0,p(2)0,d0:q26)s here.
-
-** 457.
-I was wandering along when I met a hobgoblin. I kill him and decide to pick
-up his weapon to see if it's good. I then get "do you want to pick up
-hobgoblin corpse (y/n/a/q)"(or something like that). I type no. "do you
-want to pick up hobgoblin corpse" No. "do you want... " no ad nauseum. I
-give up and press q the game crashes. I restart and load the autosave.
-Same thing happens. I this time press a and get
-x - a hobgoblin corpse
-x - a hobgoblin corpse
-x - a hobgoblin corpse etc
-It won't stop doing that
-
-Yours
-
-William Hull
-
-Another one:
-at another time there was this situation:
-
-###
-@g! the potion is yellow
-###
-
-###
-@!! after killing the goblin,a second yellow potion appeared
-###
-
-but walking over both just gave me the msg "m - a yellow potion" twice.
-afterwards i had just one yellow potion in my pack.
-
-(more)
-
-The item bug (duplicate items and potential lockup) seems to happen whenever
-a monster picks something up off the floor. The most recent incident is
-typical (at least in my games).
-
-
- #'####
- #!
- # ###
- #K#
- #
- <@ ###
-
-Near the door is an emulsified red potion. After I kill the kobold (who had
-previously been wandering around, i.e. he wasn't asleep), I find that he was
-carrying an emulsifed red potion. Coincidence? I think not. In this
-instance, I left the potion where it was sitting and checked out the potion
-near the door. Underneath the potion is a kobold corpse. I go up the stairs
-to the previous level, then return; the corpse and potion near the door are
-gone. From previous experience, I know that picking up both potions/corpses
-would have left me with just one potion/corpse in my inventory (assuming I
-didn't have any before), and picking up one potion/corpse and dropping it
-on top of the other potion/corpse will create the "Too many items" bug, and
-cause the game to hang when saving the level.
-
-(more)
-
-Sorry to follow up on my own post, but I was browsing through the sources and
-I noticed that in pickup() in items.cc, relink_cells() is called after the
-player successfully picks up an item off of the floor. No such function is
-called in handle_pickup() in monstuff.cc. Perhaps handle_pickup() should
-call relink_cells() (which we know works) instead of trying to update the
-igrd array itself.
-
-
--- 458. My char with some stabbing skill stabbed a mimic wich was nerly dead
-after many rounds of battle. I know there is bonus when attacking a
-fleeing moster, but mimics cannot flee.
-
->> fixed. Immobile monsters cannot flee.
-
-** 459. An artifact weapon of holy wrath does allow a demonspawn to wield it, wich
-is bug or maybe not.
-
-** 460. ..to Sif Muna, so I went back to the Temple and converted. Little did I know
-that Vehumet would hold a grudge. I survived a blue demon, an abomination,
-and several magical blasts, but Vehumet eventually blasted me when I was low
-on HP and did me in. *sigh*
-
-Anyway, here's the buglet: the high score list claims that my character was
-killed by bad targeting.
-
--- 461. There is another one in monstuff.cc in handle_scroll when checking for
-negative numbers of scrolls...
-And yes it would be cool if they removed all the warnings (or at least
-most of them). Removing unused variables would be a first step.
-
->>
-
-** 462. In the dos binary of Crawl 17, when running the game with "crawl -plain"
-option, the game screen is totally black. I still get the player statistics
-and messages, but the map display that you normally see is blacked out.
-
-This is bad because the normal crawl display (without -plain) is a bit buggy
-for me. (no cursor under the character). I also kinda prefer the #
-character for walls (got used to ADOM) :)
-
-xx 463. Beam tracers: tweak to take into account what might happen if they _miss_.
-
-** 464. Level draining can cause -1/-1 -magic when used against ogre (or maybe
-troll) character.
-
-== 465. Automatic weapon change when dissectiong gives a litle funny messages when
-berserk:
-Switching to your swap slot weapon.
-You are too berserk!
-Maybe you should try using a sharper implement.
-Switching back to a - the uncursed great mace "Res".
-
- >> mv: fixed
-
-xx 466. My deep elf summoner cast summon demon from a staff of summoning (A
-great item for a starting summoner.), and received an orange demon,
-which proceded to attack me. None of the other demons had attacked. Is
-this a bug, or is there some way to make demons hostile?
-
->> 1 in 4 chance of hostile demon.
-
--- 467. Ettins have no description. I just met an elf and I think those should only
-appear as corpses. It had description "A monster whose description has yet
-to be written.".
-
-
-== 468. Invalid polymorph targets (this has been reported several times).
- There are several generic monster types which are _not_ valid poly.
- targets: 'human' and 'elf' being two of the more common results when
- polymorphing stuff. And yet, 'human' should probably be given some
- generic statistics and then allowed as a target (it makes sense, after
- all).
-
->> mv: fixed now