=== Options and Effects (Zangband 2.1.*) ===

Most of the "options" are accessible through the '=' command, which provides
an interface to the various "sets" of options available to the player.

In the decriptions below, each option is listed as the textual summary
which is shown on the "options" screen, plus the internal name of the
option in brackets, followed by a textual description of the option.

Note that the internal name of the option can be used in user pref files
to force the option to a given setting, see "command.txt" for more info.

Various concepts are mentioned in the descriptions below, including "disturb",
(cancel any running, resting, or repeated commands, which are in progress),
"flush" (forget any keypresses waiting in the keypress queue, including any
macros in progress), "fresh" (dump any pending output to the screen).


=== Option Set 1 -- User Interface ===

Rogue-like commands    [rogue_like_commands]
    Selects the "roguelike" command set (see "command.txt" for info).
  
Activate quick messages    [quick_messages]
    Allows the use of any keypress as a response to the "-more-" prompt
    (useful for monster farming).  Allows most keys to mean "no" to any
    "[y/n]" prompt.
    
Prompt for various information    [other_query_flag]
    Forces the game to ask you before taking various actions, such as using
    things which might cause your pack to overflow.  Forces the game to ask
    you which hand to place rings on.
    
Prompt before picking things up    [carry_query_flag]
    Forces the game to ask you if you want to pick something up when you
    do something that would normally cause the item to be picked up.
    
Use old target by default    [use_old_target]
    Forces all commands which normally ask for a "direction" to use the
    current "target" if there is one.  Use of this option can be dangerous
    if you target locations on the ground, unless you clear them when done.
    
Pick things up by default    [always_pickup]
    Tells the game that walking onto an item should attempt to pick it up.
    Otherwise, you must use the "g" command, or the "-" command while walking.
    Combined with "carry_query_flag", allows you to selectively pick up all
    items which you step on.

Repeat obvious commands    [always_repeat]
    Tells the game that when you attempt to "open" a door or chest, "bash"
    a door, "tunnel" through walls, or "disarm" traps or chests, that you
    wish to "repeat" the command 99 times (see "command.txt").

Show dungeon level in feet    [depth_in_feet]
    Display the dungeon depth in "feet" instead of as an actual level.
    This also affects the monster memory display.

Merge inscriptions when stacking    [stack_force_notes]
    Force otherwise identical objects to merge, even if one has an empty
    inscription and the other does not.  The resulting stack keeps the 
    non-empty inscription.

Merge discounts when stacking    [stack_force_costs]
    Force otherwise identical objects to merge, even if they have different
    discounts.  The resulting stack keeps the largest discount.  This option
    may cause you to lose "value", but will give you optimal pack usage.

Show labels in object lists    [show_labels]
    Display the "labels" for objects in the "equipment" list, and in any
    "special" window which is displaying the "equipment".  These labels
    indicate what the player is "using" the object for, such as "wielding"
    or "wearing" (in a given location).  After you have played for a while,
    this information is no longer useful, and can be annoying.
    Note that in Zangband 2.1.0 and later this option no longer controls
    the "plain flavoured object descriptions": a separate option for them
    has been added under "Zangband Options".

Show weights in object lists    [show_weights]
    Display the weights of objects in the "inventory" and "equipment" lists,
    and in "stores", and in any "special" window which is displaying any of
    these lists.

Show choices in certain sub-windows    [show_choices]
    Indicate legal choices in "special" windows which display lists.
    
Show details in certain sub-windows    [show_details]
    Indicate extra details in "special" windows, currently used to activate
    the display of "death counts" and "monster descriptions" when recalling
    details about a monster.

Audible bell (on errors, etc)    [ring_bell]
    Attempt to make a "bell" noise when various "errors" occur.
    
Use color if possible (slow)    [use_color]
    This option enables the software support for "color".  Since this makes
    the game slower, you should always disable this option if you are using
    a machine which is not capable of using color.


=== Option Set 2 -- Disturbance ===

Run past stairs    [find_ignore_stairs]
    Ignore stairs when running.
    
Run through open doors    [find_ignore_doors]
    Ignore open doors when running.
    
Run past known corners    [find_cut]
    Cut sharply around "known" corners when running.  This will result in
    "faster" running, but may cause you to run into a "lurking" monster.

Run into potential corners    [find_examine]
    Fully explore "potential corners" in hallways.
    
Disturb whenever any monster moves    [disturb_move]
    Disturb the player when any monster moves, appears, or disappears.
    This includes monsters which are only visible due to telepathy, so
    you should probably turn this option off if you want to "rest" near
    such monsters.

Disturb whenever viewable monster moves    [disturb_near]
    Disturb the player when any viewable monster moves, whenever any
    monster becomes viewable for the first time, and also whenever any
    viewable monster becomes no longer viewable.  This option ignores
    the existence of "telepathy" for the purpose of determining whether
    a monster is "viewable".  See also the "view_reduce_view" option.

Disturb whenever map panel changes    [disturb_panel]
    This option causes you to be disturbed by the screen "scrolling",
    as it does when you get close to the "edge" of the screen.
    
Disturb whenever player state changes    [disturb_state]
    This option causes you to be disturbed whenever the player state
    changes, including changes in hunger, resistance, confusion, etc.

Disturb whenever boring things happen    [disturb_minor]
    This option causes you to be disturbed by various bring things,
    including monsters bashing down doors, inventory feelings, and
    beginning to run out of fuel.

Alert user to critical hitpoints    [alert_hitpoint]
    Produce a "bell" noise, and flush all pending input, when your hitpoints
    reach the "critical point" chosen elsewhere, preventing stupid deaths.

Alert user to various failures    [alert_failure]
    Produce a "bell" noise, and flush all pending input, when various
    "failures" occur, as described above.


=== Option Set 3 -- Game-play ===

Auto-haggle in stores    [auto_haggle]
    Disable "haggling" in stores, resulting in a ten percent sales tax
    on items which you would have otherwise been forced to haggle for.
    When this option is on, all prices listed in stores will be the
    actual price that you pay for an item, as opposed to the price
    that the shop-keeper will suggest.

Auto-scum for good levels    [auto_scum]
    This is a hack but allows you to force the generation of "good" levels
    in the dungeon.  This option may be extremely slow on some machines,
    especially deep in the dungeon.  The minimum "goodness" of the level
    is based on the dungeon level, so the deeper you go, the better the
    level will be.  A lot of people consider this option to be cheating.
    
Allow weapons and armor to stack    [stack_allow_items]
    Allow identical weapons and armor to be combined into a stack.  This
    also allows unidentified, but identical, ammo to be combined, which
    may result in the auto-identification of some of the ammo, but which
    makes it a lot easier to actually use unidentified ammo.
    
Allow wands/staffs/rods to stack    [stack_allow_wands]
    Allow identical wands/staffs/rods to be combined into a stack.  This
    may force the items to be "unstacked" to use them, which may result
    in "overflow" of the stack.  Also, the entire stack can be recharged
    (and possibly destroyed) at the same time.
    
Expand the power of the look command    [expand_look]
    Expand the "look" command to allow the user to "look" at grids which
    are not actually in view of the player, allowing the examination of
    objects/monsters which have only been detected by spells, or sensed
    via telepathy.

Expand the power of the list commands    [expand_wrap]
    Expand the "listing" commands so that they "wrap" at the "edges" of
    the appropriate list.  This allows the "look" and "target" commands
    to "cycle" through all appropriate grids forever, and the "identify
    symbol" to browse through all of the monsters of a given type.

Map remembers all perma-lit grids    [view_perma_grids]
    Memorize all perma-lit floor grids which are seen by the player.
    This option allows you to keep track of which explored floor grids
    were perma-lit, but does not distinguish between dark floor grids,
    unexplored floor grids, and unknown grids.  Turning off this option
    allows the player to always know which lit floor grids are in line
    of sight, but this is better accomplished by the "view_bright_lite"
    option.  Note that any non-floor grids which is seen by the player
    are always memorized, and "object" which is seen by the player is
    memorized independantly from the memorization of the grid itself.
    
Map remembers all torch-lit grids    [view_torch_grids]
    Memorize all (torch-lit) floor grids which are seen by the player.
    This option not only allows you to keep track of which floor grids
    have been explored, but also which ones are "dark", because the use
    of this option activates a special "color scheme" for the display of
    floor grids, in which "dark" grids are drawn in "dark gray", "lit"
    grids are drawn in "white", and (if the "view_bright_lite" option is
    set) "lit" grids which are also in line of sight are drawn in "orange".
    Note that grids which are currently "torch-lit" are considered to be
    "lit", and are thus drawn in "white", unless the "view_yellow_lite"
    option is set, in which case they are drawn in "yellow".

Generate dungeons with aligned rooms    [dungeon_align]
    Force all rooms to be "aligned" with the "panel" divisions.  This results
    in a much "prettier" dungeon, but may result in fewer greater vaults.

Generate dungeons with connected stairs    [dungeon_stair]
    Always generate a staircase back to the level you came from, if you used
    a staircase to get to the level.  This is more "realistic", and "safer",
    but less of a "challenge" for some people.
    
Monsters chase current location (v.slow)    [flow_by_sound]
    Allow monsters to make paths to the player when they are nearby.  This
    option is extremely slow, but can produce viciously smart monsters.
    
Monsters chase recent locations (v.slow)    [flow_by_smell]
    As above, but also allow monsters to take advantage of "old" trails
    that you may have left in the dungeon.

Monsters follow the player (beta)    [track_follow]
    This option is currently non-functional.
    
Monsters learn from their mistakes    [smart_learn]
    Allow monsters to learn what spell attacks you are resistant to,
    and to use this information to choose the best attacks.
    
Monsters exploit players weaknesses    [smart_cheat]
    Allow monsters to know what spell attacks you are resistant to,
    and to use this information to choose the best attacks.


=== Option Set 4 -- Efficiency ===

Reduce lite-radius when running    [view_reduce_lite]
    Reduce the "radius" of the player's "lite" to that of a "torch"
    when the player is "running", which makes running more "efficient",
    but is extremely annoying.  Certain older versions of Angband used
    this behavior always, so "purists" should turn it on.
    
Reduce view-radius in town    [view_reduce_view]
    Reduce the "radius" of the player's "view" by half when the player
    is in town.  This makes running faster in town, and also allows the
    player to ignore monsters in town which are more than ten grids away,
    which is usually safe, since none have distance attacks.

Avoid checking for user abort    [avoid_abort]
    Avoid checking to see if the user has pressed a key during resting
    or running or repeated commands.  This not only makes the game much
    more efficient (on many systems), but also allows the use of certain
    obscure macro sequences, such as turning this option on, resting until
    done, turning this option off, and casting a spell.  Note that the use
    of this option may be dangerous on certain "graphic" machines.  Resting
    for long periods of time with this option set is dangerous since the
    resting may not stop until the user takes damage from starvation.

Avoid processing special colors    [avoid_other]
    Avoid processing the "multi-hued" or "clear" attributes of monsters.
    This will cause all "multi-hued" monsters to appear "violet" and all
    "clear" monsters to appear "white", and will cause "trappers" and
    "lurkers" to be visible on some machines, but it may greatly increase
    efficiency especially when telepathy is active.  Certain systems may
    choose to set this option if they are unable to support the special
    "color" processing, but if they handle graphics "correctly", by using
    attr/char pairs with the "high bits" set, then not only will the game
    correctly avoid using any "dangerous" color processing, but it will
    allow such processing to occur when it is not dangerous.  So if you
    are using graphics, and you use a "normal" attr/char for the "floor"
    grids, then you can use the "special lighting effects" for floors.

Flush input on various failures    [flush_failure]
    This option forces the game to flush all pending input whenever various
    "failures" occur, such as failure to cast a spell, failure to use a wand,
    etc.  This is very useful if you use macros which include "directional"
    components with commands that can fail, since it will prevent you from
    walking towards monsters when your spells fail.

Flush input whenever disturbed    [flush_disturb]
    This option forces the game to flush all pending input whenever the
    character is "disturbed".  This is useful if you use macros which take
    time, since it will prevent you from continuing your macro while being
    attacked by a monster.
    
Flush input before every command    [flush_command]
    This option forces the game to flush all pending input before every
    command.  This option is silly, unless you are very paranoid.
    
Flush output before every command    [fresh_before]
    This option forces the game to flush all output before every command.
    This will give you maximal information, but may slow down the game
    somewhat.  Note that this option is only useful when using macros,
    resting, running, or repeating commands, since the outout is always
    flushed when the game is waiting for a keypress from the user.
    
Flush output after every command    [fresh_after]
    This option forces the game to flush all output after not only every
    player command, but also after every round of processing monsters and
    objects, which will give you maximal information, but may slow down
    the game a lot, especially on slower machines, and on faster machines
    you normally do not have a chance to see the results anyway.
    
Flush output after every message    [fresh_message]
    This option forces the game to flush all output after every message
    displayed by the game.  This will give you maximal information, but
    may slow down the game somewhat.

Compress messages in savefiles    [compress_savefile]
    Compress the savefile, by only saving the most recent "messages" that
    the player has received.  This can cut the size of the savefile by a
    drastic amount, but will result in the loss of message information.

Hilite the player with the cursor    [hilite_player]
    Place the visible cursor on the player.  This looks fine on some Unix
    machines, but horrible on most graphics machines.  Note that only some
    machines are able to *not* show the cursor, but on those machines, hiding
    the cursor often speeds up the game and looks better.
    
Use special colors for torch-lit grids    [view_yellow_lite]
    This option causes special colors to be used for "torch-lit" grids in
    certain situations (see "view_granite_lite" and "view_special_lite").
    Turning this option off will slightly improve game speed.

Use special colors for 'viewable' grids    [view_bright_lite]
    This option causes special colors to be used for non "viewable" grids
    in certain situations (see "view_granite_lite" and "view_special_lite").
    When this option is set, floor grids which are normally drawn in "white"
    but which are not currently "viewable" by the player are instead drawn
    in "dark gray".  This makes the "viewable" grids to appear "brighter"
    than the others, allowing the player to easily determine which floor
    grids are in "line of sight".  Turning this option off will probably
    increase the speed of the game.

Use special colors for wall grids (slow)    [view_granite_lite]
    This option activates a special color scheme for all "wall" grids which
    are normally drawn in "white" (as walls and rubble normally are).  When
    the player is blind, we use "dark gray", else if the grid is torch-lit,
    we use "yellow" (or "white") depending on the "view_yellow_lite" option,
    else if the "view_bright_lite" option is set, and the grid is not in line
    of sight, or the grid is dark, or the grid is only "partially" lit, then
    we use "gray", otherwise we use the normal "white".  Turning this option
    off will probably increase the speed of the game.

Use special colors for floor grids (slow)    [view_special_lite]
    This option activates a special color scheme for all "floor" grids which
    are normally drawn in "white" (as they normally are).  When the player is
    blind, we use "dark gray", else if the grid is torch-lit, we use "yellow"
    (or "white") depending on the "view_yellow_lite" option, else if the grid
    is "dark", we use "dark gray", else if the "view_bright_lite" option is
    set, and the grid is not in line of sight, we use "gray", otherwise we
    use the normal "white".  Turning this option off will probably increase
    the speed of the game.


=== Zangband Options ===

All features which are typical to Zangband (i.e. which are not in
vanilla Angband) are collected in this menu (except for the Autosave
options).

Disturb whenever random things happen    [disturb_other]
    In Zangband, uncursed teleporting items may teleport you around
    sometimes, asking for your confirmation (and possibly disturbing
    your rest). If you unset this option, they will stop asking you
    and teleporting you randomly. Cursed items will neither ask for
    confirmation nor stop teleporting you even if this option is
    unset.

Get last words when the character dies  [last_words]
    Display a  random line  from  the "death.txt"  file when  your  character 
    dies. If this option is not selected, the "You die." message is displayed
    instead.

Allow shopkeepers and uniques to speak  [speak_unique]
    If this option is in use, shopkeepers may sometimes whisper rumours  to 
    you. Also certain monsters start boasting as they attack you, and, when
    they die, they say their 'last words'. A speaking monster may also  (if
    the option is selected) be wanted by the law, in which case you get the
    reward if you kill it.

Allow unusually small dungeon levels    [small_levels]
    This option enables the creation of levels of varying sizes. Levels 
    that are as small as the town level (i.e. 1 'screen') are possible,
    yet they can be dangerous, especially for a low level character.
    Note that this option has the side effect of enabling / disabling
    'destroyed' levels (they are enabled if small levels are).

Allow empty 'arena' levels      [empty_levels]
    Normal dungeon levels consist mostly of rock. If this option is in
    use, levels which have empty floor instead of solid rock may  also 
    be created (somewhat remniscent of Nethack's "big-room" levels). 
    These levels can be extremely deadly, especially with breathing
    monsters (since there are few obstructions to shield). Arena levels
    may have vaults, nests and pits in them like normal levels. Some
    arena levels are dark when they are created, but most are lit.

Use special symbols for the player char [player_symbols]
    If this option has been compiled in, it allows you to display your
    character using race / class / sex dependent colours and graphical
    symbols. Note that the support for this option may not have been
    compiled in on all platforms.

Display 'equippy' chars     [equippy_chars]
    This option will show you a graphical representation of your worn
    equipment on the main screen.  The 'equippy' chars will use the
    standard symbols of the respective items.

Skip mutations in 'C'haracer Display    [skip_mutations]
    Normally, if your character has gained mutations, they will be
    displayed in an extra 'h' mode window under the 'C'haracter Description
    command. Some players may wish to view mutations only via the knowledge
    command ('~' or '|') and do not want any extra screens in the Character
    Description: they should set this option.

Plain object descriptions    [plain_descriptions]
    In Zangband, this option disables "full" names for identified
    'flavored' objects, in other words, if this option is not in use, an
    identified Potion of Speed could be listed (for example) as a
    Blue Potion of Speed. If you prefer simpler, less verbose
    descriptions, set this option.

Monsters behave stupidly    [stupid_monsters]
    Zangband 2.1.0 incorporates Keldon Jones' improved monster Artificial
    Intelligence patch. While this patch most certainly makes monsters
    behave more realistically, they will also be more deadly with the
    improved AI. If you are a sissy, set this option to get the old,
    really stupid monster AI.
    Note that the new AI is a bit processing power expensive. If you have
    an old computer (386sx) and Zangband is running too slowly, you could
    try turning stupid_monsters on. Or buying that Pentium II so you can
    run Zangband. :-)

No query to destroy known worthless items    [auto_destroy]
    It can sometimes be annoying that the Destroy command asks for confirmation
    when you are attempting to destroy a Broken sword {cursed}. If this option
    is set, no confirmation will be asked if you attempt to destroy an object
    which you know to be worthless. Of course, cursed artifacts cannot be
    destroyed even if this option is set.

Confirm to wear/wield known cursed items    [confirm_wear]
    Some players may occasionally, due to a typing mistake, find themselves
    wearing an item which they knew was cursed. If this option is set, you
    should be safe from such typing mistakes: you will be prompted if you
    attempt to wear or wield an item if your character knows it is cursed.

Prompt before exiting a dungeon level    [confirm_stairs]
    Some players (such as myself) often accidentally press the '<' key
    and exit a Special feeling level. If this option is set, the program
    asks for confirmation before you go up or down the stairs. Others may
    find the prompt annoying, they should of course not set this option. :-)

Disturb when visible pets move    [disturb_pets]
    The player may wish that some of the disturbance options do not apply
    to pets: for example, it can be annoying if your rest is always disturbed
    by a pet dog who pops in every now and then. By default, pets do not
    disturb you even if full monster disturbance options are set. If you
    want your pets to disturb you like normal monsters, set this option.

Randomize midi songs    [shuffle_songs]
    This option is usable only if your version is capable of playing MIDI
    music. When this option is set, the program will -- instead of advancing
    to the next song -- randomize the next song (possibly playing the same
    song again). Note that the opening track is always the same.

No music    [mute_songs]
    If this option is set, no midi music will be played.

No sound effects    [mute_sounds]
    If this option is set, no digital sound effects will be played.


=== Stacking Options ===

In newer official versions of Angband (2.8.2 and higher) items are 'officially'
allowed to stack on floors and monsters are allowed to maintain inventories.
However, the code for both features is already in 2.8.1 (which Zangband uses,
with bug fixes to the stacking code). To enable these features set the
following options:

Allow objects to stack on the floor   [testing_stack]
        Allows a cave grid to hold more than one object (or one kind of
        object).

Allow monsters to carry objects    [testing_carry]
        If this option is set, monsters which "pick up" objects will drop
        the objects they were carrying when you kill them. Note that monsters
        which "crush" objects are not affected by this option.


=== Base Delay Factor ===

The "delay_factor" value, if non-zero, is used to "slow down" the game, which is
useful to allow you to "observe" the temporal effects of bolt, beam, and ball
attacks.  The actual delay is equal to "delay_factor" cubed, in milliseconds.


=== Hitpoint Warning ===

The "hitpoint_warn" value, if non-zero, is the percentage of maximal hitpoints
at which the player is warned that he may die.  It is also used as the cut-off
for using red to display both hitpoints and mana.


=== Autosave Options ===

Ideally, the game should be so stable that these options are not needed
at all. However, even if the game were 100% reliable (which it, to be frank,
probably is not), the user might forget to and his hardware could fail
him. For all of these reasons, you may want to use these options:

Autosave when entering new levels    [autosave_l]
        If this option is set, the program will attempt to save your
        character every time before creating a new dungeon level. Useful
        if you experience hangups in level generation (although these
        should have been eliminated in 2.1.0).

Timed autosave    [autosave_t]
        If this option is set, the program will attempt to save your
        character every n game turns, where n is the "frequency".
        To set frequency press n: it will increase the frequency
        to the next category (and from 25000 to 0), the categories
        being every 50, 100, 250, 500, 1000, 2500, 5000, 10000 and
        25000 turns. Note that the frequency must be higher than 0
        and the "Timed autosave" set to "yes" for timed autosaves
        to take place.


=== Window Flags ===

Selects what kind of information is displayed in which window.


=== Cheating Options ===

Peek into object creation    [cheat_peek]
    Cheaters never win.  But they can peek at object creation.

Peek into monster creation    [cheat_hear]
    Cheaters never win.  But they can peek at monster creation.

Peek into dungeon creation    [cheat_room]
    Cheaters never win.  But they can peek at room creation.

Peek into something else    [cheat_xtra]
    Cheaters never win.  But they can see debugging messages.

Know complete monster info    [cheat_know]
    Cheaters never win.  But they can know all about monsters.

Allow player to avoid death    [cheat_live]
    Cheaters never win.  But they can cheat death.


=== Left Over Information ===

The "preserve" flag, if set when the character was created, cancels all level
feelings of the "special" variety, but allows "missed" artifacts to be "saved"
by wandering monsters and found again at a later time.  This only works for
non-identified artifacts.

The "maximize" flag, if set when the character was created, causes the "race"
and "class" stat bonuses to be applied as "equipment" bonuses.  This usually
makes the character harder at the beginning of the game, but easier later on,
since the stats are no longer limited to a "natural" value of "18/100".

+++ Ben +++ (Updated by Topi Ylinen for Zangband 2.1.*)
