online help: -spellchecking and whatnot, modifications and additions for new features, a clearer explaination of critical hits. *_info files: -A few uniques tweaked. Some monsters changed. Some monsters from Moria added. All the hydras and most of the angels are now gone. -mummified monsters are once again "M"s, but this may not always be so. -Rings of Sustain CON and DEX now work properly. Small jeweled chest added. -30 new interesting rooms added. -several seldom-used weapons deleted, most food items made less common (to compensate for the fact that many now occur in stacks). -player ghost templates added. most player ghosts drop chests. -monster ACs reworked, just as HPs were before. Chars that are poor fighters will find it even more difficult to do much damage to many monsters, but good fighters should be able to land most of their blows. -launchers now have damage dice. See object1.c and xtra1.c for usage. -artifacts launchers revised to take advantage of the new launcher multiplier code. -potions of resist heat and of resist cold changed to resist fire and cold and of resist acid and electricity respectively. Potion of Resistance added. birth.c -assassins now get the right spellbook. -mages now get a scroll of teleport instead of a dagger. cave.c -monsters do not flow in arena levels. This fixes a bug that regularly froze the game. cmd1, cmd2.c -chance to hit a monster in melee or archery reworked. -the melee and archery formulas no longer require floating point. -thrown objects are now more likely to hit something (for realism's sake). cmd1.c -a more easily-understood interface for druid confusion attacks. cmd2.c -doors now open automatically when a player walks into them only when use_easy_open is on. -tweaked the chest generation code slightly. -cmd3.c -character help for 'M' now reads "Mummy". cmd4.c -it is now possible to see the contents of your home through the check knowledge command. cmd5.c -adjusted the damage done by magic bolt and lightning bolt spells. cmd6.c -elemental resistance potion effects changed, potion of resistance added. -made ordinary rings and amulets easier to use for chars with poor magic skills. dungeon.c -message appears every so often when a char is Black Breathed. -all stores now shuffle and the home is no longer assumed to be the last store. defines.h -new ego flag for launchers: EGO_EXTRA_MIGHT2 and revised ego flag EGO_EXTRA_MIGHT to EGO_EXTRA_MIGHT1. -similar changes to the object flag1 "might". -removed extra shots and extra might from the pval-dependant flags list. generate.c -interesting rooms (11x33 vaults that add color but little treasure to the dungeon) added. -fiddled a little with some constants. -fixed vault chests -monster nests and pits are less likely to cause "special" feelings. files.c -display bug that activated when online help was used during char birth fixed. -shapechange and warrior bonuses to resists and abilities now shown on the character screen. generate.c -chance for special feelings altered again. Monster nests and pits now seldom cause special feelings, but greater vaults always do. init1.c -new extra might flags now acquired from *_info files. load2.c -weapons with enhanced damage dice now save and reload properly. -black breath now read from savefiles. -launchers with +2 to might retain their bonus. melee1.c -only undead below 1500' can now inflict the Black Breath. Some other minor tweaks caused by a re-reading of Tolkien. melee2.c -elemental attacks strengthed a little more, again. -monster breaths upgraded considerably to compensate for lower HPs. -no monster can now summon hydras, because they no longer exist. -Demons with a level higher than 45 are better at summoning other demons. object1.c -like in Angband 2.8.2, displayed launcher multipliers are modified by extra might flags. Unlike it, this only happens if the weapon is known. -both extra might flags are described properly. object2.c -made weapons with low plusses a little more valuable again (the formula concerned now yields flatter curves) -objects required to be of a certain general type are now never cursed or broken. -staffs of mass confusion now get charged. -ego-launcher probabilities altered, launchers of extra might divided into extra might1 and extra might2. -worthless objects generated more than 1500' below their normal depth are usually rejected and cheap objects similarly out of depth are sometimes rejected. This not only cuts down on "junk", but also slightly reduces the problem of excessive object kinds leaving no space in the backpack for marginal items. -cheap food and mushrooms are now generated in quantities of 1 to 5. This makes certain objects actually useful. save.c -black breath now written to savefiles. spells2.c -self-knowledge displays extra might flags correctly. store.c -store number 6 no longer buys potions or scrolls. -store owners with low purses put items on sale more frequently. tables.c -rangers now have +0 INT, +1 WIS. -a few class combat modifiers altered slightly; warriors are a little weaker at the beginning. -magic bolt costs tweaked for necros, assassins xtra1.c -increased druid bonus for fighting barehanded to make them as good as paladins (except they can't take advantage of weapon bonuses). -mana calculation fixed. chars no longer have mana displayed when they are too low-level to learn spells. -mana reduction for over-heavy armour changed to a percentage decrease, so high-level spellcasters need to worry about over-heavy armour just as much as they did when first starting out. This should keep spellcasters in line, and keep warriors competitive. -warriors now regenerate intrinsically at level 40. -statistics are now actually effected by shapechanges, other minor changes to shapeshifting-related code. -extra_shot and extra_might no longer use pvals, altered extra_might flags included. xtra2.c -going from full to normal no longer disturbs the player under any circumstances. wizard1.c -shots and might are no longer in the list of flags that can be affected by pval. Wizard2.c, dungeon.c -Wizards also remove Black Breath when fully healing themselves and when resurrected. -fixed an old Angband bug in the set stats and experience command. Now debuggers can easily reduce their level if so desired. Melee2.c, dungeon.c, spells1.c, xtra1.c, cmd1.c, cmd2.c -Revised the implementation of noise, and made it more intuitive. Made it possible for various actions to increase the chance that monsters will be disturbed, and took advantage of this new capacity to make bashing and all major kinds of combat more noisy (Rogues are quieter in melee and assassins are quieter when shooting.). Monsters in LOS are more likely to be disturbed by extra noise. Also, faster players no longer have an effective bonus to stealth. To make up for all this, resting now makes less noise, and the base effectiveness of stealth has been increased. All sorts of files: -removed all remaining player ghost hacks and references (except a broken function in save.c, to avoid possible disaster), to make way for... a new implementation of player ghosts! cmd3.c -player ghosts are not recalled in the monster memory (they vary, and are known fully when seen anyway) cmd4.c -player ghosts are recalled in the list of dead uniques. defines.h -new monster flag2: "RF2_PLAYER_GHOST". All monsters in R_info with this flag are considered player ghosts. For various reasons, this flag should always be used in conjunction with the flag1: "RF1_UNIQUE". files.c -bones files now made again, player sex now added to bones files (replacing mexp). -bones file creator is now less likely to fail. init1.c -added a new flag2 to look for: "PLAYER_GHOST". load2.c -up-to-date savefiles now use the last record in the monster index (there is no longer anything special about it) melee2.c -player ghosts know everything about the player. monster1.c -the player knows everything about visible player ghosts. -new player ghost code (to add special features to the ghost and increase the level rating) written and placed into this file. This code handles newly generated, repeatedly generated, and restored ghosts correctly. -player ghosts start off known whenever generated. monster2.c -player ghosts cannot be summoned (except by wizards summoning a specific monster). -player ghosts generate special messages if cheat_hear is activated. -monster generation now traps for player ghosts. -player ghosts are described properly. -player ghosts are removed from monster memory and the number of the bones file they used is cleared when they are deleted. defines.h, init1.c, monster1.c, monster2.c -changed the unused flag1 DROP_USEFUL to DROP_CHEST, made the game look for it, and made monster descriptions describe the drop. variable.c, save.c, load2.c -created a global variable to save the bones file number that the active player ghost uses, and made savefiles write and read it. When a player ghost is loaded, it is modified just like it would be if it were being generated anew. xtra2.c -when a player ghost dies, the bones file it used is often deleted. -made chests appear when monsters with the drop_chest flag die. ...And a bunch of minor tweaks...