Archive-name: games/angband-faq
Last-modified: 1996/6/30
Posting-Frequency: weekly

==========================================================
ANGBAND FREQUENTLY ASKED QUESTIONS - PART 1 (NON-SPOILERS)
==========================================================

Compiled and maintained by Jason Holtzapple (jth@paranoia.com)
For Angband version 2.7.9 - May be inaccurate with other versions

Based on information provided by:
Jules Bean, Scott Bigham, Matt Craighead, Joseph W. DeVincentis, Ben
Harrison, Randy Hutson, Stephen S. Lee, Rick Lim, Steve Linberg, Ross
Millikan, Adam Schenker, Andrew Schoonmaker, Cliff Stamp, Billy
Tanksley, Charles F. Teague II and Pat Tracy.

(*) in the Table of Contents indicates an item changed since the
    last revision of this FAQ.

=================
TABLE OF CONTENTS
=================

ANGBAND FAQ - PART ONE:

(1) Basic Information
 *  (a) What is Angband?
    (b) Who is Morgoth?
    (c) On what computers can I play?
    (d) What is the latest version?
 *  (e) How do I get the latest version of this FAQ?
    (f) Who's the current maintainer?
    (g) Version History
(2) Downloading Angband and related information
    (a) FTP sites
    (b) WWW sites
(3) Technical Information
    (a) Expanding PKZIP archives
 *  (b) How do I use an old savefile or savefile from another platform?
(4) Creating Characters
    (a) What is maximize mode? (Scott Bigham)
    (b) What is preserve mode?
(5) Gameplay Questions
 *  (a) How do I set game options and what do they mean?
    (b) What effect does turning off haggling have on the price of
        items?
    (c) How does shopkeeper rotation work?
    (d) What is auto-scum?
    (e) How do the cheating options work?
    (f) What are the messages I get upon entering a new level?
    (g) What causes a "special" feeling?
    (h) How do I exchange weapons in newer versions of Angband?
    (i) What do the minuses in the name of a piece of armor mean?
    (j) The game tells me that I must "Study" but I can't learn any
        new spells. What is going on?
    (k) How does the fractional speed system work?
    (l) Introduction to macros
 *  (m) How do I save macros?
(6) Questionable gameplay techniques
    (a) Savefile abuse
    (b) Stair-scumming
    (c) Monster farming
    (d) Perils of Summoning/Polymorphing
(7) About rec.games.roguelike.angband
    (a) General notes
    (b) Glossary of terms
    (c) Questions on r.g.r.a
    (d) Victory posts 
    (e) Stupid Death (or YASD) posts
    (f) Why do so many players seem to dislike or even hate Nethack?
(8) Suggestions for future versions that have been considered
    (a) Let the player store money in his/her home.
    (b) Let creatures who steal items or money drop the goods when slain.
    (c) Increase the player's carrying capacity.
    (d) Let players give or sell their items to other players.
    (e) Allow more than one object per square.
    (f) A "pass through wall" spell.
    (g) I want a real-time multi-player Angband!
(9) Programming Questions
    (a) Where can I obtain the source?
    (b) To what extent can I modify the source and release modified
        versions?
    (c) Is there any easy way for a non-programmer to hack the game?
    (d) Why doesn't wizard mode work in the version that I have?
    (e) What is the borg?  Why doesn't it appear in the version that
        I have?
    (f) How do I use the borg?
    (g) How do I generate auto-spoilers?
(10) About the Angband variants
     (a) Drangband
     (b) Fangband
     (c) Qangband
     (d) Zangband
     (e) Bangband
     (f) Sangband
(11) Old Bugs and Undocumented Features
     (a) The game says that I'm missing a spellbook when I try to
         learn some new spells.  What's the reason for this?
     (b) I'm fighting an invisible monster that I can't kill, and I
         can't see it even with see invisible.  What's going on?
     (c) I'm playing on a PC.  Why can't I use shift+arrow key to run,
         like I could in earlier versions of Angband?
(12) Bugs in 2.7.8
     (a) Savefile parsing
     (b) *Enchant*
(13) Bugs in 2.7.9

ANGBAND FAQ - PART TWO: (Available as a separate file)

(1) Where can I get spoiler files and what are their contents?
(2) SPOILERS

======================
ANGBAND FAQ - PART ONE
======================

(1) BASIC INFORMATION
=====================

(1a) What is Angband?
---------------------

Angband is a single-player, text-based, dungeon simulation derived
from the game Moria, which was in turn based on Rogue. It is
often described as a "roguelike" game because the look and feel of
the game is still quite similar to Rogue.

Angband features many enhancements over Moria: unique foes, artifacts,
monster pits and vaults to name a few. Many of these new creatures
and objects are drawn from the writings of J.R.R Tolkien, although
some of the monsters come straight from classical mythology, Dungeons
& Dragons, Rolemaster, or the minds of the orginal Angband coders.

The ultimate goal of the game is to develop a character strong enough
to defeat Morgoth, who resides on dungeon level 100. Upon doing so,
you will receive the exalted status of "winner" and your character may
retire.

Angband is a reference to Morgoth's "prison of iron."

(1b) Who is Morgoth?
--------------------

Morgoth was 'the Dark Enemy of Middle-Earth' during its First Age. He
was banished by the Valar (offspring of Eru, "god" of J.R.R.
Tolkien's world) at the end of the First Age and thus never appears
in The Lord of the Rings, set during the Third Age. Sauron, who does
figure into those tales, was the most powerful of his servants. Read
Tolkien's 'The Silmarillion' for more on the legends of Middle-Earth.

(1c) On what computers can I play?
----------------------------------

The most recent version of Angband can be played on Unix (including
Linux and X Windows), Acorn, Amiga, Macintosh, Power Macintosh, Windows,
DOS-8088, 286, 386 and OS/2-386 systems. Pre-compiled binaries for most
of these systems are available. With the introduction of version 2.7, it
has become much simpler to port the code to any machine with a decent C
compiler. See the source code for more details.

(1d) What is the latest version of Angband?
-------------------------------------------

The latest non-beta version as of this writing is 2.7.4, although 2.7.8
is regarded as a stable beta and is in widespread use. 2.7.9 is
undergoing beta testing.

(1e) How do I get the latest version of this FAQ?
-------------------------------------------------

This FAQ is archived at rtfm.mit.edu as:
  ftp://rtfm.mit.edu/pub/usenet/news.answers/games/angband-faq

Part Two of the FAQ does not have a permanent home. It is posted to
rec.games.roguelike.angband weekly. Searching old articles for the
string "rec.games.roguelike.angband FAQ Part 2 (weekly posting)" is the
best way to acquire a copy.

(1f) Who's the current maintainer?
----------------------------------

Ben Harrison (benh@voicenet.com). Be nice to him. :)

(1g) Version history
--------------------

This would be incomplete without a short Moria history as well:

The first version of Moria was was written by Robert Alan Koeneke and
Jimmey Wayne Todd Jr in 1983 for VAX machines. It was ported to Unix
in 1987 under the name 'Umoria' and further maintained by
James E. Wilson.

In 1990, Alex Cutler and Andy Astrand, students at the University of
Warwick, England, decided to write a Tolkien-based game based on Umoria
5.2.1 and Angband was born. Their intentions were to keep, or even
strengthen, Moria's firm grounding in Tolkien lore. Their original
changes included greatly expanded monsters and items (including uniques
and artifacts), level feelings, pseudo-ID, activation, monster pits and
vaults. The resulting heavily-customized Moria was not intended for
outside release, but merely as a local version of Moria, to run only on
Warwick's Unix system. Sometime in its development, before it was
released and ported, the existing Unix code got the unlikely version
number 'Angband 2.4.Frog-knows'.

Here is a short version history, culled from the source code.

Version 1.0: 1990 - Alex Cutler and Andy Astrand

Version 2.0: Alex Cutler, Andy Astrand, Sean Marsh, Geoff Hill,
              Charles Teague

Version 2.4: 5/09/93

Version 2.5: 12/05/93 - Charles Swiger

Version 2.6: 9/04/94

Version 2.7: 1/1/95 - Ben Harrison
  Changes include: massive code-level cleanup, generic "Term" package
  for screen updates and color, macros, pref files, redefinable
  attr/char pairs, inventory tagging, new runtime options, the bow
  slot, object stacking, recall/choice windows, parsing of template
  files, special lighting effects, intelligent monsters and the Borg.

(2) DOWNLOADING ANGBAND AND RELATED INFORMATION
===============================================

(2a) FTP sites
--------------
    
The official Angband FTP site is (in URL form):
  ftp://ftp.cis.ksu.edu/pub/Games/Angband/

There is another unofficial development site at:
  ftp://export.andrew.cmu.edu/angband/
  
To learn how to use FTP, read the Roguelike games FAQ, posted every
week to rec.games.roguelike.misc.

(2b) WWW sites
--------------

The official Angband WWW site is:
  http://www.voicenet.com/~benh/Angband

There is another unofficial site at:
  http://www.paranoia.com/~jth/angband.html

Each of these pages contains more links to other useful sites.

(3) TECHNICAL INFORMATION
=========================

(3a) Expanding PKZIP archives
-----------------------------

When using PKUNZIP to expand a distribution archive, be sure to use the
'-d' option to create the 'lib' subdirectories, otherwise they will
have to be created by hand.

(3b) How do I use an old savefile or savefile from another platform?
--------------------------------------------------------------------

Angband 2.7.9 should import savefiles from any version, including
MacAngband 1.0-2.0.3 and PC Angband 1.4. Savefiles from pre-2.7.7 may lose
all or part of the monster memory, and pre-2.7.0 will lose all or part of
the object memory. Also, older ego items may not stack with newer ones.

Savefiles are platform-independent. Be sure to use 'binary' FTP if that
is your method of transfer. On a Macintosh, use the Import... command to
give the savefile the proper type ('SAVE') and creator ('A271').

(4) CREATING CHARACTERS
=======================

(4a) What is maximize mode?
---------------------------

All characters receive stat modifiers based on their race and class
(Half-Trolls get an INT penalty, Priests get a WIS bonus, and so forth).
The "maximize mode" flag determines how these modifiers are applied to
the character's actual stats.  Since this obviously affects character
creation, the value of this flag must be chosen before you create your
character.

As an example of how this works, imagine rolling up a High-Elf Mage.
High-Elf Mages receive a combined racial and class bonus of +6 to INT;
for purposes of illustration, let's say the stat roller rolls a 17 INT
(the highest possible value before modification).

In non-maximize mode, the +6 bonus is applied as though by quaffing six
Potions of Intelligence.  The positive side of this is that your
character can get a starting INT of around 18/70, since each "potion"
can give them more than 10 percentiles once they are past 18.  The
negative side is that this 18/70 is now your character's base INT, and
without stat-boosting items, he/she can only push their base INT up to
18/100.

In maximize mode, the +6 bonus is applied as though the character had
swallowed a Ring of Intelligence (+6).  The negative side of this is
that your character can't get a starting INT above 18/50 (17 plus the +6
"ring" bonus). The positive side is that although the effective INT is
18/50, the *base* INT is only 17; once you've pushed your character's
base INT up to 18/100, the effective INT without stat-boosting items
will be 18/160!

On the flip side, our High-Elf Mage also gets a combined -4 penalty to
STR.  In non-maximize mode, this is treated like quaffing four Potions
of Weakness, but your character's STR can still be increased all the way
up to 18/100. In maximize mode, you've effectively got a Spleen of
Weakness (-4), which means that your character's maximum possible
effective STR, without stat-boosting items, is 18/60 (18/100 base plus
the -4 penalty).

In summary, then:

  * In non-maximize mode, your character will get bettter starting stats,
    and all stats will max out at 18/100.  This typically makes the early
    game easier.

  * In maximize mode, your character's starting stats aren't as good, but
    the primary stat(s) will max out above 18/100, while the "off" stats
    will max out below 18/100.  This typically makes the end game
    easier.

(4b) What is preserve mode?
---------------------------

Characters created in preserve mode receive no "special" level feelings,
but any unidentified artifacts, if missed, may appear again later in the
game and are not lost forever. Anything that would have caused a
"special" feeling contributes to the level feeling that your character
receives instead.

(5) GAMEPLAY QUESTIONS
======================

(5a) How do I set game options and what do they mean?
-----------------------------------------------------

They are set using the "=" command. To see what the various options mean,
access the "List of Options" help menu with the "?" command.

(5b) What effect does turning off haggling have on the price of items?
----------------------------------------------------------------------

Turning off haggling gives you the best price you could have received
for an item plus a 10% "sales tax," so it is still possible to get a
better deal by haggling with a shopkeeper. If you have a good haggling
history for an item, there will be no tax added whether this option is
set or not.

(5c) How does shopkeeper rotation work?
---------------------------------------

The shopkeepers will change, but this can take a long time. Be patient.
When they do change, all items in the shop are marked down to "on sale"
(50% off) and all haggling and insults are reset to zero.

Different shop owners will give different prices for items for several
reasons, and no shop owner will ever pay more for an item then the
amount mentioned in the header of the shop's inventory list.

(5d) What is auto-scum?
-----------------------

With autoscum enabled, Angband will only generate levels that it
considers "good." The deeper in the dungeon your character, the "better"
the level must be. See question (5g) for an explanation of what
contributes to this calculation.

With "Autoscum for good levels (sometimes)" enabled, the game will stop
if a "good" level is not generated in 100 tries.

If your character is not in preserve mode, the game will always stop
on a "special" level.

(5e) How do the cheating options work?
--------------------------------------

Enabling any of the cheating options will mark the current savefile,
and your character will be unable to make the high score list.

Peek into object creation: The game will announce the creation of
  "good" objects or better. Or at least that's how I interpret the
  source code.

Peek into monster creation: The game will announce the presence of out-
  of-depth monsters and uniques when creating a new level.

Peek into dungeon creation: The game will announce the creation of
  pits and vaults when creating a new level.

Peek into something else: The game tells you when the shops in town
  refresh their inventory. It will also announce when the shopkeepers
  change, if you've enabled that option.

Know complete monster info: Your character's monster memory will
  contain the full amount of information on every monster and unique.

Allow player to avoid death: Any time your character is killed, you
  can "cheat death" and your character will remain alive, fully healed
  and be teleported to the town level.
 
(5f) What are the messages I get upon entering a new level?
-----------------------------------------------------------

These are known as "level feelings" and give the general rating of the
level. You will only get them when you enter a level if you've been on
the previous level long enough. Otherwise you will get a "Looks like any
other level" message. "Long enough" is 1000 game turns, adjusted by your
speed. For a normal speed character, this would be 100 player turns. If
you restore a game saved to disk, the count is reset to zero. Many
players say that only "good," "very good," "excellent," "superb," and
"special" levels are worth exploring, but this of course a matter of
opinion.

Valuable objects, artifacts, player ghosts, pits, nests, vaults,
out-of-depth creatures and out-of-depth non-cursed objects all
contribute to the feeling of the level.

(5g) What causes a "special" feeling?
-------------------------------------

Several things can cause a special feeling when a new level is
generated: artifacts, player ghosts, monster pits, nests or vaults. As
your character gets deeper in the dungeon, there is less of a chance
that monster pits, nests and vaults will cause special feelings. See the
spoiler dungeon.spo for more detail. If you are playing in preserve
mode, you will never receive a special feeling.

(5h) How do I exchange weapons in newer versions of Angband?
------------------------------------------------------------

The spare weapon slot was replaced by the bow slot in version 2.7, but
there is a fairly simple way to exchange weapons using a default
macro. Using the "{" command, inscribe both weapons with @0. The X
command will then switch between the two. Additionally, if you have
more than two favorites, inscribe them with @1, @2, @3 and the
command w1 will wield number 1, w2 will wield number 2, etc.

(5i) What do the minuses in the name of a piece of armor mean?
--------------------------------------------------------------

This is a to-hit penalty for wearing heavy or inflexible armor.
Such armor, if not identified, will not show the penalty but it will
still be in effect.

(5j) The game tells me that I must "Study" but I can't learn any new
     spells. What is going on?
--------------------------------------------------------------------
     
Your character is missing one of the more powerful books containing
spells that s/he can learn. See question (11a) for more detail.

(5k) How does the fractional speed system work?
-----------------------------------------------

Pre-2.7.3 versions of Angband used a simple speed system: slow, normal,
fast, very fast and extremely fast. In the current versions speed is
represented by a number: +0 is roughly equivalent to normal, +10 is
fast, +20 is very fast and +30 is extremely fast.

Angband 2.7.3 and later use internal "game turns," different than
what a player perceives as "player turns." Your player gets a certain
amount of energy per game turn based on speed, and when 100 energy is
accumulated the player may move, attack, etc. A normal speed player
receives 10 energy/game turn, while higher speeds yield more energy
(+10 -> 20, +20 -> 30, +30 -> 38, +40 -> 42, +50 -> 45 etc.) As speed
increases, further increases have less and less of an effect on energy
generated per game turn, and thus on total speed. After +30 speed, your
character may find that the increased speed does not compensate for the
increased food consumption. If your character is "Slow (-10)" to "Slow
(-1)" they will receive from 5 to 9 energy/turn.

Speed's most obvious effect is in combat, but it also affects
your character's food consumption and the amount of player turns they
must spend on a level to get a level feeling on the next.

(5l) Introduction to macros
---------------------------

See Angband's online help under "Available Commands" for a good
introduction to macros.

For example, if I am playing a high-elf mage named "Fearless" on a Power
Macintosh, Angband will load these pref files:
 ./lib/user/pref.prf
 ./lib/user/pref-mac.prf
 ./lib/user/Mage.prf
 ./lib/user/Fearless.prf
 
Macros are not saved with your character's savefile. If you quit without
saving your new macros to a separate file, they will be lost.

(5m) How do I save macros?
--------------------------

Use the '%' command. Option 2, "Dump macros," will allow you to save all
the current macros.

(6) QUESTIONABLE GAMEPLAY TECHNIQUES
====================================

(6a) Savefile abuse
-------------------
    
Angband follows the same behavior when a character dies as many of the
other rogue-like games. When a character dies, that's it, game over.
Information on monsters that the character has seen (monster memory)
is retained, but the player must start again. This is in contrast to
most fantasy role-playing computer games that let you restore your
game from a savefile if you die. Angband also differs from most
commercial games in that there is no puzzle solving as such.

This behavior has given rise to backup savefile abuse, which entails
making a copy of the savefile to another part of your disk, and in
the unfortunate event of death, moving it back to its original
location and restoring the game.

Almost everyone uses backup savefiles at the start, but as soon as
your players stop dying with great frequency, you should probably
stop using them. Your play experience will become more rewarding as a
result. You certainly do not have to stop using backups, many players
never do. As long as you enjoy the game, who cares?

Some game maintainers will compile the game with the "VERIFY_SAVEFILE"
option on, which along with other security options, will prevent most,
if not all, savefile abuse.

(6b) Stair-scumming
-------------------
    
Stair scumming is a technique primarily used to generate levels with
artifacts (special weapons and items). It involves loitering around a
stairway for a certain number of turns on a "non-special" level, then
using the stairway to force the game to generate a new level. If the
new level is not "special," the process is repeated.

The technique may also be used to force the storekeepers in town to
refresh their inventory of identify and word of recall scrolls,
restore stat and life-level restore potions, and light sources, since
they restock every 10000 game turns (1000 player turns for a
character at normal speed).

The first type of scumming is a more serious abuse than the second.

There has been much discussion on the newsgroup on how to restrict
this type of gameplay abuse. It will likely remain unresolved because
of the personal decision involved, i.e. you don't *have* to stair
scum.

(6c) Monster farming
--------------------

Involves cloning monsters with good treasure drops in the hopes of
getting good items and gaining experience. Effective with ancient
dragons, wyrms, druj, and many others. Can be dangerous, considering
the power of the monsters. Also used in regards to "worm farming,"
which is an easy (albeit boring) way to quickly gain experience at low
levels.

(6d) Perils of Summoning/Polymorphing
-------------------------------------

Summoning and polymorphing monsters at low experience levels can be
dangerous if the new monster is more than your character can handle.
Summoning deep in the dungeon is perilous for any character,
especially since it is no longer true that dangerous monsters will be
forced to sleep when summoned.

(7) ABOUT REC.GAMES.ROGUELIKE.ANGBAND
=====================================

(7a) General notes
------------------
    
The newsgroup serves a dual-purpose role, supporting both game
development and gameplay discussions. If you write new program code
for the game, don't post it (unless it is really short); upload it to
an ftp site and give a pointer. Also, since Angband is still in
active development, this newsgroup has high traffic.

(7b) Glossary of terms
----------------------

Common Abbreviations:
  DSM   - Dragon Scale Mail (can also have a qualifying letter as in
          PDSM for Power Dragon Scale Mail)
  GoI   - Globe of Invulnerability
  OoD   - Orb of Draining
  Phial - Phial of Galadriel
  RLL   - Potion of Restore Life Levels
  RoS   - Ring of Speed
  WoR   - Word of Recall
  YASD  - Yet Another Stupid Death

Definitions:
Borg - An automatic Angband player. Must be enabled at compile time.
 Precompiled versions of the game do not come with the Borg.
Graveyard - a pit filled with very nasty undead.
Nest - Similar to a pit, but containing an inner room and a random
 assortment of monsters of a given type. Monsters vary by depth, so a
 Nest deep in the dungeon can be very nasty.
Pit - A 19x5 room filled with a certain type of creature.
Vault - A special room that comes in two flavors, lesser and greater.
 They will often contain out-of-depth monsters and good items.
Wizard Mode - Used mainly by Angband coders to debug the game. Allows
 object creation, telepathy, etc. Must be enabled at compile time.
 Precompiled versions of the game come with wizard mode turned off.
Zoo - An animal pit.

(7c) Questions on r.g.r.a
-------------------------

Don't let the amount of technical information discussed deter you from
asking a question, but do browse this FAQ (and the table of contents
of Part Two as well) and read some recent postings before posting
yourself. Questions on strategy, bug reports, suggestions, and
amusing stories related to the game are all welcome.

If you give hints, you should be fairly sure that you have accurate
information (or you may qualify your statements with a comment on
your uncertainty). Also any spoilers as should be marked as SPOILER in
the subject line.

(7d) Victory posts
------------------

Victory posts are where you get to boast of your crowning achievement,
the defeat of Morgoth. A victory post commonly gives the equipment
list and statistic screen for the lucky King or Queen (through the
'C' command), plus a short summary of the game including highlights
such as especially lucky treasure finds or near-death experiences.

With a victory post you should state some facts like which version
of Angband you are playing and whether you used backup files,
cheating options, wizard mode. If you are a die-hard player and win
with a self-imposed restriction (like "no artifacts") mention this as
well so others will shower you with even more glory.

(7e) Stupid Death (or YASD) posts
---------------------------------
 
This is where you post your depressing stories about your poor, late
alter ego. Other people may be able to empathize with you and console
you; others may be able to offer tips so that you won't fall into the
same trap again. Also, you teach others about your experience and
help them avoid the same mistake you made. Posts that are in the form
of a short, amusing tale often provoke a positive response from other
readers of the group and do wonders at relieving stress.

(7f) Why do so many players seem to dislike or even hate Nethack?
-----------------------------------------------------------------

Nethack's atmosphere is less serious than Angband and sometimes just
plain silly. Many people enjoy and play both games, there is just a
different philosophy behind Nethack.

(8) SUGGESTIONS FOR FUTURE VERSIONS THAT HAVE BEEN CONSIDERED
=============================================================

None of these features have been implemented (yet). Some may never be.
Under each rationale for rejection, a pointer to other roguelike games
that do have the feature are listed.

(8a) Let the player store money in his/her home.
------------------------------------------------

This would make the monetary theft attack useless.

Omega features a bank. Nethack allows players to keep money in bags so
it can't be stolen, but this allows the whole bag to be stolen!

(8b) Let creatures who steal items or money drop the goods when slain.
----------------------------------------------------------------------

This would involve major changes to the existing code.

In Ragnarok, Nethack and Omega, creatures have real inventories and
drop stolen items when your character kills them.

(8c) Increase the player's carrying capacity.
---------------------------------------------

This idea involves giving the player more item slots or the creation
of items like "bags of holding."

If the character was allowed to carry a nearly unlimited supply of
items, then there would be no strategy involving careful selection of
equipment and inventory, which is an integral part of the game.

(8d) Let players give or sell their items to other players.
-----------------------------------------------------------
That would make the game trivial for low level players with friends and
make rare items much easier to acquire. The "pawn shop" in town falls
into this category.

In Nethack, players can do this indirectly, because its "bone" files
contain the inventory of the dead player. The roguelike FAQ contains a
list of multi-player roguelike games, where this might be an option.

(8e) Allow more than one object per square.
-------------------------------------------

This is scheduled to be implemented (as an option) in Angband 2.8.0.

Every other major roguelike game (except for Rogue and Moria) can stack
multiple items in a space.

(8f) A "pass through wall" spell.
---------------------------------
Too many problems with line-of-sight computations. If the player was
somehow blinded by being in the wall, then the wall would grant infinite
armor class.

Omega and Ragnarok both have a pass-through-wall spell.

(8g) I want a real-time multi-player Angband!
---------------------------------------------
Go right ahead.  Tell us when you are done. :)

In the meantime, play a MUD. Might, Magic & Mushrooms MUD was supposed
to imitate Angband closely, but they have rewritten it and one of its
maintainers told me that there is no longer much resemblance. Its
homepage is at http://mmm.megabaud.fi/.

(9) PROGRAMMING QUESTIONS
=========================

(9a) Where can I obtain the source?
-----------------------------------
    
The source for the most recent version can be downloaded via
anonymous FTP in this directory:

ftp://export.andrew.cmu.edu/angband/Source/

(9b) To what extent can I modify the source and release modified
     versions?
----------------------------------------------------------------
        
You are free to rewrite sections of the game code and release your own 
version of Angband, provided that you retain copyright notices and proper 
credits, and do not attempt to make a profit in any way.

(9c) Is there any easy way for a non-programmer to hack the game?
-----------------------------------------------------------------

Figure out the format of the files in the /lib/file directory, mainly
*_lib.txt. Edit them, delete the corresponding *.raw versions in
/lib/data, then restart Angband.

An important note from Ben:

     In particular, you should not change monster names (a few of them,
     anyway) or "pit" creation will fail.  You should not change ANY
     monster/object indexes, or old savefiles will crash and new ones
     will be unusable.  You should not add new items unless you know
     what you are doing.  Likewise with new monsters.  Changing the
     monster flags, or monster attacks, will produce incompatible
     savefiles (dangerous, maybe, but only if you want to use a later
     version).  In general, think of the ".txt" files like you think of
     the source.  Most changes are fine, even cute, but *might* have
     unexpected results, or even induce crashes or other nasty errors.
     And *many* such changes will produce "unusable savefiles", if you
     care.

(9d) Why doesn't wizard mode work in the version that I have?
-------------------------------------------------------------

Wizard mode is intended as a debugging tool for Angband programmers.
It is not currently enabled with pre-compiled versions of Angband
because it consumes memory and enlarges the program. There are
currently two ways to get a copy of Angband with wizard mode enabled:
compile it in yourself or get someone to do it for you. Commands are
explained in more detail in the online help. Enabling wizard mode on
a character "marks" it as such and you will be unable to make the
high score list with such a character.

(9e) What is the borg?  Why doesn't it appear in the version that
     I have?
-----------------------------------------------------------------
        
The borg is an automatic Angband player. It is not currently enabled
with pre-compiled versions of Angband because it is quite large.
There are two ways to get a copy of Angband with the borg enabled:
compile it in yourself or get someone to do it for you.

(9f) How do I use the borg?
----------------------------

The borg can be activated by typing control-z z. To stop the borg, press
any key. If this doesn't work, read the source.

(9g) How do I generate auto-spoilers?
-------------------------------------

You must have a version compiled with ALLOW_WIZARD and ALLOW_SPOILERS.
Enter wizard mode, then type control-a and a double quote (").

(10) ABOUT THE ANGBAND VARIANTS
===============================

All these variants reside at the official Angband FTP site.

(10a) Drangband
---------------
    
This version adds 7 new character races: Copper, Gold, Crystal, Bronze
and Pseudo dragons, Yeeks and Pixies. Drangband 2.0 is based on 2.7.8
code and may be the only variant easily compiled on non-DOS platforms.

(10b) Fangband
--------------
    
Another variant of PC Angband 1.4, Fangband adds different terrain
types and delayed level feelings.

(10c) Qangband
--------------

Probably descended from Angband 2.4.Frog-knows. Adds a quiver slot for
wielding ammo.

(10d) Zangband
--------------
    
Though officially Zangband stands for "Zelazny-Amber Angband", it
could just as easily stand for Zany Angband.  It plays like Angband
with some Nethack and Doom thrown in for good measure. This is a
variant for those who want something completely different.

(10e) Bangband
--------------

Adds two new character types, Monk and Dragon. Skills like backstabbing
are also added.

(10f) Sangband
--------------

May be ported from an original Unix version. A descendant of Bangband,
with no character classes, as such. Instead, you spend your
experience to improve various skills such as weaponsmithing,
spellcasting, backstabbing, etc.

(11) OLD BUGS AND UNDOCUMENTED FEATURES
=======================================

(11a) The game says that I'm missing a spellbook when I try to learn
      some new spells.  What's the reason for this?
--------------------------------------------------------------------

You are missing a book containing spells that you can learn. More
often than not, your character needs one of the books that can only
be found in the black market or deep in the dungeon. Only 4 of the 9
mage or priest spellbooks are readily available in town.

(11b) I'm fighting an invisible monster that I can't kill, and I can't
      see it even with see invisible.  What's going on?
----------------------------------------------------------------------

You have encountered the invisible monster bug. Save and exit the game,
then restart. The monster should be gone. Of course, a more permanent
solution would be to get a newer version without the bug.

(11c) I'm playing on a PC.  Why can't I use shift+arrow key to run,
      like I could in earlier versions of Angband?
-------------------------------------------------------------------

In 2.7.X, this has been fixed using macros. Make sure the default
macro files are loading correctly.

(12) BUGS IN 2.7.8
==================

Angband 2.7.8 is technically a beta version but it is very stable. There
are at least two known bugs (and probably some other minor or obscure
ones).

(12a) Savefile parsing
----------------------

Angband 2.7.8 has a bug that introduces potentially fatal errors in
savefiles converted from versions prior to 2.7.0. It is recommended that
you convert older savefiles with version 2.7.7 and use that savefile in
converting to 2.7.8.

(12b) *Enchant*
---------------

Scrolls of *Enchant Weapon* and *Enchant Armor* will have their effects
reversed. There is an easy fix to this bug that requires modifying the
source code and recompiling:

*** effects.c.orig	Mon Sep  4 08:14:00 1995
--- effects.c	Wed Oct  4 07:54:36 1995
***************
*** 1361,1373 ****
              ident = TRUE;
              break;
  
!         case SV_SCROLL_STAR_ENCHANT_ARMOR:
              msg_print("This is a scroll of *enchant* weapon.");
              if (!enchant_spell(randint(3), randint(3), 0)) used_up = FALSE;
              ident = TRUE;
              break;
  
!         case SV_SCROLL_STAR_ENCHANT_WEAPON:
              msg_print("This is a scroll of *enchant* armor.");
              if (!enchant_spell(0, 0, randint(3) + 2)) used_up = FALSE;
              ident = TRUE;
--- 1361,1373 ----
              ident = TRUE;
              break;
  
!         case SV_SCROLL_STAR_ENCHANT_WEAPON:
              msg_print("This is a scroll of *enchant* weapon.");
              if (!enchant_spell(randint(3), randint(3), 0)) used_up = FALSE;
              ident = TRUE;
              break;
  
!         case SV_SCROLL_STAR_ENCHANT_ARMOR:
              msg_print("This is a scroll of *enchant* armor.");
              if (!enchant_spell(0, 0, randint(3) + 2)) used_up = FALSE;
              ident = TRUE;

(13) BUGS IN 2.7.9
==================
