=== History of Hengband ===

Jul. 20th, 2003  hengband 1.5.3 (Development branch) released.

- Improved Warning ability a bit.
- Some English text were corrected. (thanks to an choco)

- Various bug fixes:
  Crash after every auto-save.
  view_unsafe_grids allowed to see trails in the Maze.

- All changes for 1.4.3 is also included in 1.5.3.


Jul. 20th, 2003  hengband 1.4.3 (Stable branch) released.

- Various bug fixes:
  Experience gain for killing monsters was zero.
  When using manual_haggle, selling items didn't work.
  Mana point was not updated correctly after Clear Mind.
  Repeat didn't work correctly for Forcetrainers when blinded.


Jul. 10th, 2003  hengband 1.5.2 (Development branch) released.
- Random artifacts get more 'Construction point' for Android.
- Hunter's office gives items as prize now.
- Probing gives all monster recall infomations.
- Crowns of telepathy get many low ESPs when high one is 'nonliving'.
- Warning ability is more accurate now.
- Some monsters have 'dark light' now.
- The Armageddon trap is less dangerous now.
- Duration check of temporal effects on monsters is changed of timing.
- And stealth of the player will get effected by their speed.
- STUPID monsters try to cast spells in anti-magic cave.
- Score penalty for Amberite Berserkers no longer applied.
- Shapechanger will really change shape on tile graphics mode.
- "Colour out of space" is same letter as terrain type under foot. 
- Parmanent walls at boundaries mimics normal terrains in dungeon.
- Enhanced view_unsafe_grids option; 'x' will be cleared when walked over.
- 'Cure mutation' service will always succeed.
- Special inscription like {@ma} can be used in all commands now.
- [Y/n] check on character generation accept all keys except N and ESC.
- You can set Character history using template file at birth now.
- Character dump now displays Blue-magics.
- Character dump now displays full details of lost fight on Arena.
- Tidyed up Quest list display.
- Added 'Dark elven pit'
- Copy&Paste using mouse on X11 port. (from sCthangband)

- Various bug fixes:
  Strange behaviors after using save command (^S).
  '@' displayed at wrong position when trap door activated.
  Duplicate unique monster while player is dominating one as their pet.
  Inconsistent message about the effect of the jewel.
  Incomplete update for sub-windows.  etc...

- All changes for 1.4.2 is also included in 1.5.2.


Jul. 10th, 2003  hengband 1.4.2 (Stable branch) released.

- Cancelling of Racial/Class power no longer takes energy.
- The algorism for breath shape is changed.

- Various bug fixes:
  Samurai was not able to 'Assume a Posture' when they have pets.
  Buggy behavior of Teleportaion while mounting on a Lord of Change.
  Inven/Equip sub-window displayed gerbages when resized.
  Wrong monster name in playrecord file at the Arena.

  Sorcerer and Red-Mage didn't get cost bonuses from Proficiency.
  'Rush Attack' was able to pass over the Pattern.
  Collected display update for "Fingolfin's Challenge" song.
  Overflaw of item's value in store.
  Songs were not really stopped while global map.
  Date/time went wrong when player race is changed.
  'Rodeo' sometimes failed to fail and behaved as succeed.
  Collected font on WinNT/2000/XP.
  Pets sometimes involved the player in their spell by mistake.
  Wrong value of ego ring of resist time.
  Salt Water didn't have effect on living.
  Two rare bugs on decision for Quest completion.
  Charge overflaw for stack of rods.
  Clones of unique monster sometimes changed to real unique.
  Bug on adding essence on a equippment with negative pval.
  Collected update for monster light.  etc...


  Dec. 24th, 2002  hengband 1.5.1 (Development branch) released.

- Added visual editor in lists of known objects and etc... (Unangband)
- Clairaudience spell of Bard doesn't detect walls with treasure.
- Various bug fixes;
  Monsters on saved floors awake, Error handling while save,
  Monster data is broken while save and then crash,
  Shaft takes you to wrong levels.
- All changes for 1.4.1 is also included in 1.5.1.


  Dec. 24th, 2002  hengband 1.4.1 (Stable branch) released.

- Elvish waybread fully satisfies mortals.  (from OAngband)
- General store sell Elvish waybread.
- Salt water don't effect undead etc...
- Description of weapons/armour from OAngband.
- Added disturb when objects with inscription {!!} is recharged.
- Improved display of tiles at knowledge command, etc., on Bigtile mode

- Various bug fixes;
 Vault with no entrance,  Crash at (a) of info command,
 Arena while Wraithform,  Activation of smith's equip,
 Foods while mimiccing,  Kind of monsters at the Mountain,
 Broken name of the Staff,  Random teleport in monster arena.


  Dec. 9th, 2002  hengband 1.5.0 (Development branch) released.

Implemented 'Saved Floors':
- You can climb back the same stairs to get back to the same floor.
- But different stairs will always take you to different floors.
- All saved floors will be cleared when your reached to the surface.
- Changed effects of Level teleport, trap door and stair creation.
  (Each effect takes you to the floor right above or right under.)
- Remove two options; dungeon_stairs and confirm_stairs
- Add a new option 'confirm_quest' which warns about one-way stairs.
- Increased number of walls with treasure.
- Implemented walls with hidden treasure.
- Removed detect treasure effect from the Detection spell.


  Dec. 9th, 2002  hengband 1.4.0 (Stable branch) released.

- Removed scrolls of satisfy hunger and that class power of Berserkers.
  Androids can quaff flasks of oil.
  Barlogs can sacrifice corpses with symbol 't','p', or 'h' using the Eat command.
  Golems, Zombies, Skeletons, and Spectors can Eat charges of wands and staves.
  Ents can get nutritions from water in any potions.
- Added lists of known monsters/objects from Eyangband.
- Shift + direction keys will move cursor quickly in the look command.
- Tuned interface to list stack of items in the look command with easy_floor.
- Added new service of buildings in town which evaluate effects of your AC.
- Added disturb_high: disturb whenever high-level monster moves
- Added allow_debug_opts: allow use of debug/cheat options
- Changed 'munchkin_death' into a cheat option 'cheat_save'.
- Removed terrain_streams and stupid_monsters.
- Fixed typos and grammar errors on English. (Thanks to John Mikula)
- Fix various bugs:
  Too many items break savefile.  Crash at boundary of wilderness.
  Stop time at forest of global map.  Hidden door at Deep Water.
  A floor mimiccing wall.  Warding True.  Disintegration on runes.
  Absence of new traps.  Confused Blue-mage.  Quickness of Mirror-magic.
  Resurrection of Amberites.  Multiple Chameleon King.
  Buffer-overflow breaks macro.


  Oct. 31st, 2002  hengband 1.3.1 (Development branch) released.

- Added a new menu 'Keep on top' for subwindows of Windows version
- Auto-Inscription-For-Resistances, {%}, will work dynamically.
- Weak pseud-identified inscription for enchanted objects is now
  {uncursed} instead of {good}.
- New trapped rooms: Piranha trap and Armageddon trap.
- Keep background terrain under Rune of Protection and Rune of Explosion.
- Fixed the bug that trapped pit is isolated within walls.
- Removed little boy and fat man.
- New unique; Sheer Heart Attack, the Bomb Hand
- Changed configure.in so that acconfig.h is no longer needed.
- All changes from 1.2.0 to 1.2.2.


  Oct. 31st, 2002  hengband 1.2.2 (Stable branch) released.

- The Cloning Pits now includes Borshin.
- Description of *identified* Light source of darkness now include
  effects on light radius as numerical value.
- Fixed bug that radius of light source couldn't reach to zero however
  many darkness items are equipped, when the player has fiery aura.
- Fixed many bugs(rod of percention, Royal Crypt, etc...)


  Sep. 9th, 2002  hengband 1.2.1 (Stable branch) released.

- Added description about license of Hengband; 'jlicense.txt'.
  (jlicense.txt is Japanese only for now)
- Increased AC of the ego Ring of Protection (Extra Armor) by 7.
- Fixed some bug on monster's AI.
- Fixed bug that cause crash when specific chest trap triggerd.
- Fixed wrong display of the Tower quest in quest information command.
- Fixed bug that fail rates of the imitation differed from the value
  displayed in a spell list.
- Changed the Walken to be drop items.
- Fixed some memory leak and overruns and underruns memory allocation.
- Fixed some other bug.


  Aug. 28th, 2002  hengband 1.3.0 (Development branch) released.

- Added a new room type; trapped monster pit.
- Added object flags of various ESPs. (from Unangband and ToME)
- Every slay flags now have corresponding *slay* flags.
- The 'C' command display ESPs, Slays and 'other' flags on a new page.
- Now Weaponsmiths can attach ESPs and *slay*s on equipments.
- Inserted new-lines after first two paragraphs of monster-recall.
- 'Experience' of Andoroid is now displayed as construction point.
- Counting of play time will stop within the auto-picker editor.
- Wrote quest information in character dump file.
- Apply auto-destroy just after using Psychometry.
- Added new command letter ';' of auto-picker/destroyer which forces
  the game to ask if you want to pick the item up. (Thanks to Kieron)
- The '?' key shows you contextual help while option setting and
  character making.(from Eyangband)


  Aug. 28th, 2002  hengband 1.2.0 (Stable branch) released.

- Fixed many bugs
- Splited version tree into two branch;
   development version: 1.3.x and stable version: 1.2.x.
- Introduced save-file-version which is independent from actual
  version number of the game.
- Placed Thorondor at level 50 of the Mountain dungeon as a master.
- Strengthened all greater eagles very much.
- Added new options: destroy_feeling and destroy_identify which
  control whether auto-destroy will be applied just after pseudo
  identify or identify.
- Moved manual_haggle option into birth option from game option.
- A mirror made by mirror-master will change back to original terrain
  when the mirror is broken.
- Added description of every spells of Magic-eater.
- Area of Darkness spell was changed back to same as 1.1.0RC2.
- You can use '(' and ')' key as first or last item on item selection.
- Changed message text at climbing up to surface level.
- Halved experience of drujs.
- Added more descriptions of personalities on help file and character
  making screen.

Modifications for auto-picker/destroyer editor:
- Added descriptions about function of {%} and {%all}.
- Added search commands '/', 'n', 'N' on the editor.
- New commands '~', '!', ';', '(' which repeatedly add or remove
  corresponding command letter.
- The game no longer creates pickpref-<player's name>.prf when
  pickpref.prf is already exist.
- Do auto-save the game at starting the editor.


  Jun. 15th, 2002  hengband 1.1.0 released.

- Changed behavior of light area.
- Various bug fixes and tuning.


  Jun. 2nd, 2002  hengband 1.1.0 Release Candidate 1 released.

- Splited Life realm into two and new spells added; New 'Life' realm
  and New 'Crusade' realm.
- Speed system modified; multiple-moves got fewer at early stage.
- Vi-like in-game editor(the _ key) of Auto-picker/destroyer
  preference.
- Character background can be edited by player at birth.
- Auto-destoy/Auto-inscription is now performed just after identify
  objects (like auto-squelch).
- Indicators of temporal effects(status bar) are now have variable
  size and position.
- new option view_unsafe_grids from Unangband; Unkown grids that have
  not beed trap detecteted are marked with gray 'x'.
- new option disturb_trap_detect from Oangband; disturbs you when
  player is running out of trap-detected area.
- new option alert_trap_detect; alerts you with message when the
  player is moving out of the trap-detected area.
- Ninja can now throw(v) Iron Spikes in the Arena.
- Known monster level is displayed together with monster name in look
  command.
- The game loads only either pickpref-<name>.prf or pickpref.prf, not
  both.
- Fake inscriptions({cursed} {empty} etc..) are not hidden under real
  inscriptions.
- A stack of more than 23 objects on floor can be listed when
  easy_floor is on; you can scroll the list with the enter key.
- Expanded limit radius of light from player's light source.
- Downstairs don't become 'very long stairs' when ironman_downward is
  on.
- Added Essence of Slay human and Essence of Warning for Weaponsmith.
- Added new monsters.
- Default color of permanent walls is now Light Umber.
- Added a few new tiles.
- Some bugs fixed.


  Apl. 6th, 2002  hengband 1.0.11 released.

- The on-line help files is translated to English
- Warning ability of an object can be canceled by its inscription {$}.
- The terrain feature of brake changed '#' -> ':' 
- Format of the mon-info.spo is revised
- HUMAN flag for monsters and SLAY_HUMAN flag for weapons
- 'Muramasa' and 'Chainsword' are modified and have SLAY_HUMAN now.
- The cause of death is written in character dump.
- Paralyzation status is written in the text of the cause of death.
- Cursed items have various random unpleasant effects.
- Bigtile graphics mode, each tile have double width and become a square.
- Bigscreen from OAngband
- Correct cause of death when hallucination
- Savefile name longer then 8 letters can be used. (For Windows)
- Normal magic items have descriptions when *identified*
- Some bugs fixed.


  Mar. 6th, 2002  hengband 1.0.10 released.

- New artifact, ego-ammo and vault.
- Class power of Red-Mage is more useful.
- Force Trainer becomes more and more powerful in melee when
  they use 'Improve Force'. 
- Monster AI is a bit improved.
- The Serpent of Chaos summons guardians of each dungeons.
- Random artifact names list was expanded.
- Iron Spikes has (dmg per shot/dmg per turn) display.
- Automatically tidy up bundles of ammo to 99 ammo and the rest.
- Interact with visual command takes ^N ^A ^C.
- Support 16x16 tile. Selected by extra option -- -a on X11.
- 8x8 tile supports lighting effects.
- Screen shot is supported in graphics mode.
- Support in MPW environment of Macintosh.

  Jan.30th, 2002  hengband 1.0.9 revision 1 released.

- Fixed one more bug which cause crash (English version only).

  Jan.27th, 2002  hengband 1.0.9 released.

- New character making screen
- New character information 'C' screen
- Range and accuracy of crossbow are changed.
- Rod of Pesticide was changed.
- The score server now holds colored screenshots at dying and winning.
  screenshots will be placed at:
  'http://www.kmc.gr.jp/~habu/local/hengscore-en/screens/'.
  But links on the webpage to the screenshots are not yet available.
- Limited support of 8x8 tile graphics.
- Hengband online help in *Japanese*. 
  (sadly English version of online help is not yet available)
- Rune of explosion no longer has anti-summoning effects.
- Rune of protection no longer has perfect
  anti-summoning effects. Sea of runes are no longer
  perfect. But this change has a good side effect:
  monsters can waste its time to try summoning.
- Identify spell now shows only unidentified items in the list.
- Difficulty to activate random artifact is changed.


  Dec.31th, 2001  hengband 108fix2 revision 1 released.

- 'fix2' is japanese bug fixed version but this bug was 
  not effect on English version.
- The 'interact with knowledge' command changed. 
  You can get display of lines of auto picker/destroyer.


  Dec.31th, 2001  hengband 108fix1 version 3 released.

- Auto macro dump and other auto dump is now 
  more useful. Old dump lines will be deleted 
  before appending new dump.
- A minor typo and a minor bug fixed.

 
  Dec.30th, 2001  hengband 108fix1 version 2 released.

- All remained japanese messages are found and fixed, 
  using a exclusive C program.
- You can now define macros in the 'pickpref.prf'.


  Dec.29th, 2001  hengband 108fix1 released.

- This is a bug fixed japanese version, and almost 
- same as 108eng3, but a few more bugs are fixed.


  Dec.25th, 2001  hengband 108eng2(stable) and 108eng3(test version) released.

-  108eng2: fixed some typo. ']' key now can be used as macro key.
-  108eng3: macro trigger is displayed in more suitable way;
     such that \[F1] or \[control-shift-alt-HOME]. 
     And you can use alt-key plus alphabet-key as macro 
     key on Windows now; \[alt-A] or \[shift-alt-B].


  Dec.24th, 2001  hengband 108eng1: makefile.bcc was not work. now fixed.

  Dec.24th, 2001  hengband 1.0.8 released. This is a new Japanese version. 

The source can be used to compile English version too.
- The address of the world score server is changed.
- Makefiles was changed again.
- New item: Magic Whistle.
- Ninja had been a bit weakened. 
- can study known spells using 'G' command for more proficiency.
- Some minor bugs was fixed.
- Yet another japanese massage was translated.


  Dec.17th, 2001  hengband 1.0.7fix2 english beta4 released.

- Yet another remained japanese messages are now translated.
- Changed some option info texts and names again.
- Inventory lists of Home and Museum in the character dump is fixed.
- Some bugs related groo and Metal Babble is fixed.


  Dec.11th, 2001  hengband 1.0.7fix2 english beta3 released.

- fixed a compile error. English info message of artifacts added.
- changed some info text and name of options.


  Dec. 9th, 2001  hengband 1.0.7fix2 english beta2 released.

- fixed a terrible bug,
- items in the home was not saved when more than 24 items stored.
- Binary for Macintosh (ppc, osX) is now available.


  Dec. 8th, 2001  hengband 1.0.7fix2 english beta released.

- Many mistakes of English messages, and bugs are fixed.


  Dec. 5th, 2001  1.0.7fix2 english alpha2 released.

- fixed some mistakes of archives. 


  Dec. 4th, 2001  hengband 1.0.7fix2 english alpha version released.


=== The main differences of Hengband 1.0.7 from ZAngband2.2.8  ===

- World score server: You can register scores and character dumps.
- Player can write last words when died, which is displayed in the 
  character dump registered to the score server.
- Menu interface: return key activates the main menu which include almost 
  all commands. So beginners don't need to memorize all commands.

- Player can ride on some pet monsters, horses, dragons etc.
- Player can wield two weapons at once or wield a weapon with two-handed.
- Player have proficiency levels of each weapons and spells, like Nethack.
- Player can change second magic realm. All previous realm's spell will 
  be lost. There is a limit in the total of studying spells.

- New classes:
   Tourist : they can poorly cast arcane spells. difficult to survive.
   Imitator : imitate spells or abilities which monsters have just used.
   BeastMaster : dominate or summon monsters and ride on these.
   Sorcerer : cast spells of all magic realms. But physically hopeless.
   Archer : a warrior specialized in missile weapon. can create ammo.
   Magic-Eater : absorb wands, staffs and rods to use it as magic spell.
   Bard : sing songs. like Harper of PernAngband.
   Red-Mage : dual-class, can cast all lower rank spells of all realms.
   Samurai : use Samurai Arts which include various special attack.
   ForceTrainer : use the spiritual Force. prefer to be bare-hand
   Blue-Mage : study monster's spells. use these as his own spell.
   Cavalry : a warrior specialized in riding.
   Berserker : powerful warrior. but cannot use magic items except potions.
   Weaponsmith : extract essences from items. use it to improve equipment.
   Mirror-Master : create magical mirror. use its fantastic power.
   Ninja : act without lights, attack monsters with possible insta kill.

- New races:
   Ent, Archon, Balrog, Dunadan, Shadow-Fairy, Kutar, Android
- Player's Personality:
   At the character making, you can choose Personality, which include 
   Ordinary, Mighty, Shrewd, Pious, Nimble, Fearless, Combat, Lazy, 
   Sexy, Lucky, Patient, and Munchkin.
- New magic realms: Craft magic, Daemon magic
   Other magic realms also exist for new classes' exclusive use.
   Existing realms are modified.
- Class powers: class specific powers, like the racial one.
- Pernangband-like large wilderness map and many different dungeons, 
  including Maze, Volcano, R'lyeh, Anti-magic cave, Anti-melee cave, 
  Chameleon cave, Dark cave, Hell, Heaven, etc.

- The amount of energy which player and monsters take in each turn are 
  randomized, which makes pillar-dancing impossible, and produces 
  danger of possible sudden death.
- Monsters can breath or cast spells to a place adjacent to player.
- A monster which was attacked in the last turn can move and cast spells 
  even if the attacker is not in the line of sight. 
  So a Quylthulg pit is no more an easy source of experience.
- The path shape of bolt spells is same as the path of missile weapons.
- New abilities of monsters
  - Dispel magic spell: dispels all magic of player, including 
    Globe of Invulnerability. And many deeper unique monsters, 
    including Serpent of Chaos, wisely cast dispel magic spell.
  - Psycho spear: beam spell which penetrate Globe of Invulnerability.
  - Stop the Time: A few monsters can cast it...
  - blow with drain mana: some monster cause damage at SP with its blow.
- Higher level monsters can resist genocide.
- Even artifacts will be removed by *destruction*.

- Player can name his pets, and can take pets over to any place.
- Pet monsters will not turn against player when attacked by player.
- Monsters killed by player's pets don't drop items.
- Player and monsters cannot summon monsters of opposite alignment.
- New items:
  - Capture Ball, capture a monster to make pets, or carry a pet.
  - Wizardstaff and Ring of Mana, decrease mana consumption of spells.
  - ring of warning, warn before dangerous move.
    and many other new items...
- Many new artifacts and new monsters.
- Random Quest monster is always unique, and one-time only.
- Ego rings and Ego amulets.
- Names of random artifacts will reflect it's ability.
  A weapon which has fire brand, fire resistance, and fiery aura is 
  more likely named 'Fire Bland' or like that.

- When player level advances, stats increase sometimes. Instead,
  stat gaining potion is much rarer.
- Players start with more HP and more SP, early stage is not very hard.
- Home is expanded to 20 pages. and all 4 Homes in 4 towns is same.
- New building Museum: Give as many items as you like for memorial.
- New building Hunter's office: They offer prize for wanted monsters.

- New casino game Poker : It's real poker.
- New casino game Monster Arena : You bets to one of four monsters. 
    They battle each other and you win when your monster wins.
- Auto picker: write item names on a file named 'pickpref.prf', then 
  these items will be automatically picked up or destroyed and even 
  automatically inscribed.



=== Zangband History and Information ===

Versions 1.0 - 2.1.0c
---------------------

The seeds of Zangband lie in an obsolete and long ago vanished PC
variant (somewhat misleadingly) dubbed Angband--. The variant was
written by a hopeless Angband addict (previously Moria veteran and
winner) who got bored with the standard monsters and wanted to
introduce some new monsters. Angband-- was based on the PC Angband 1.31
sources, and it was set in Roger Zelazny's 'Amber' universe.

Later this individual got a better computer and learned to code, and 
produced the PC Zangband, and most Angband-- monsters survived into
PC Zangband 1.0. PC Zangband 1.0 was the first PC Angband to introduce
(simple, font-based) graphics, which were also used in the graphical
PC Angband 1.40. 

Yet this individual was still not cured of his addiction... his almost
as strong addiction to the Civilization style fantasy strategy game 
'Master of Magic' inspired him to write a new magic system. The current
version of Zangband (2.*) incorporates this magic system, as well as
the best features from Angband-- and PC Zangband 1.0. It is based on
the Angband 2.8.1 sources (by Ben Harrison), and is therefore portable
to other systems (unlike the earlier versions which were for dos-pc's
only).

Incidentally, this person (me, Topi Ylinen) also thought that the 
standard Angband monsters were too easy, which led him to introduce
such monsters as Death swords, Cyberdemons and Great wyrms of power...

Versions 2.1.0d - present
-------------------------

ZAngband 2.1.0c was Topi's last version, he has got a job and and
doesn't have enough time anymore to continue work on ZAngband.
He asked for a new maintainer and I was the one to take over the task.
May I introduce myself, my name is Robert Ruehlmann, I'm the creator
of the graphical Angband versions for DOS and webmaster of
"Thangorodrim - The Angband Page" ("http://www.thangorodrim.net").

Special thanks
--------------

The newer versions of Zangband might not have come into existence
without the significant help from these excellent Angband programmers.

Topi would like to thank:

        Ben Harrison, for obvious reasons.

        Greg Wooledge, who pointed out a bug in the dos compiler,
        which was preventing Topi's progress with the first 2.* version
        of Zangband and for various patches.

        Julian Lighton, who must have sent Topi more ideas, patches,
        and bug reports, than all the others toghether.

        Robert Ruehlmann, whose nice new main-dos.c enables SVGA
        graphics and even windows in ms-dos.

        Paul Sexton, who is responsible for about 50% of the new code
        in 2.1.0.

Robert would also like to thank:

        Heino Vander Sanden, who created the quest-code and
        Dean Anderson, whose patch showed me the quickest way to
        implement the quests.

        Adam Bolt, who created the new ZAngband tiles.

        Scott Bigham, for the S-Lang patch.

        Jeff Duprey for the new mutations.      

        John Duffin and Leigh Silas Hanrihan for the new items.

        Marten Woxberg for many new ideas.

        Ken Wigle for allowing me to include his town and quest code.

        Tim Baker for many patches and bugfixes and for ZAngbandTk.

        Chris Weisiger for many new vault layouts.

        Juergen Neitzel for countless new rumors.

        Topi Ylinen, Mark Howson, Adam Horowitz, Oscar Nelson and
        all the other regular members of the #angband chat channel
        for giving me lots of new ideas and being good friends.

        Benny S. Hofmann, Aram Harrow, Greg Harvey, Keldon Jones,
        Graham Murray, Remco Gerlich, Tim Baker, Oscar Nelson,
        Adam Horowitz, David A. Henry, "Strikes", Chris Hadgis,
        David Howdon, Jenni Henzel, Stephen Lee, Gwidon S. Naskrent,
        Eric Wright, Bob Martin, Jeff Coleburn, Ethan Sicotte,
        Brandon Walker, Kelly Trinh, Brian Graham, James W. Sager III,
        John Holton, Larry Bassel, Markus Linnala, Musus Umbra,
        Mike Hommel, Christopher Stranczek, Werner Baer, Andreas Koch,
        Jon Boehnker, Jason Willoughby, David Paoletti and many others
        for bugreports, patches, bugfixes, and ideas.


=== Brief Version History (of standard Angband) ===

First came "VMS Moria", by Robert Alan Koeneke (1985).

Then came "Umoria" (Unix Moria), by James E. Wilson (1989).

In 1990, Alex Cutler and Andy Astrand, with the help of other students
at the University of Warwick, created Angband 1.0, based on the
existing code for Umoria 5.2.1. They wanted to expand the game, keeping
or even strengthening the grounding in Tolkien lore, while adding more
monsters and items, including unique monsters and artifact items, plus
activation, pseudo-sensing, level feelings, and special dungeon rooms.

Over time, Sean Marsh, Geoff Hill, Charles Teague, and others, worked
on the source, releasing a copy known as "Angband 2.4.frog_knows" at
some point, which ran only on Unix systems, but which was ported by
various people to various other systems.

Then Charles Swiger (cs4w+@andrew.cmu.edu) attempted to clean up the
mess, resulting in several versions, starting sometime around November,
1993, with Angband 2.5.1 (more or less) and leading up to Angband 2.6.2
in late 1994. Several people ported (the primarily Unix/NeXT centered)
Angband 2.6.1 to other platforms, including Keith Randall, who made a
Macintosh port that added support for color usage. Some of the changes
during this period were based on suggestions from the "net", PC Angband
1.40, UMoria 5.5, and some of the Angband "variations", such as
FAngband.

Finally, I (Ben Harrison) took over in late 1994 when Charles Swiger
left. Initially my intention was simply to clean up what had become,
after ten years, a rather unholy mess, but the deeper I delved into the
code, the more it became apparent that drastic changes were needed, so,
starting with MacAngband 2.6.1, I began a more or less total rewrite,
resulting, eventually, in Angband 2.7.0, released around January first,
1995.

Angband 2.7.0 was a very clean (but very buggy) rewrite that, among
other things, allowed extremely simple porting to multiple platforms,
starting with Unix and Macintosh, and by the time most of the bugs were
cleaned up, in Angband 2.7.2, including X11, and various IBM machines.
Angband 2.7.4 was released to the "ftp.cis.ksu.edu" site, and quickly
gained acceptance, perhaps helped by the OS2 and Windows and Amiga and
Linux ports. Angband 2.7.5 and 2.7.6 added important capabilities such
as macros and user pref files, and continued to clean up the source.
Angband 2.7.8 was designed to supply another "stable" version that we
can all give to our friends, with new "help files" and "spoiler files"
for the "online help", plus a variety of minor tweaks and some new
features. Angband 2.7.9 optimized a few things, and tweaked a few other
things, and cleaned up a few other things, and introduced a few minor
semantic changes.

It is very hard to pin down, along the way from 2.6.2 to 2.7.0, and
thence to 2.7.8, exactly what was added exactly when. Most of these
steps involved so many changes as to make "diff files" not very useful,
since often the diff files were as long as the code itself. Most of the
changes, with the notable exception of the creation of the new
"main-xxx.c" files for the various new platforms, and a few other
exceptions generally noted in the source, were written by myself,
either spontaneously, or, more commonly, as the result of a suggestion
or comment by an Angband player. So if you have any problems with
anything that you do not recognize from older versions, you can blame
them on me. And if you like the new features and such, you can send me
a brief little "thank you" email (to benh@phial.com) or something...

The Official Angband Home Page ("http://www.phial.com/")
was created along with Angband 2.7.9 to serve as an up to date
description of any bugs found in various versions, and to list all of
the people whose email addresses I kept having to look up.


=== Some of the changes from Angband 2.6.1 to Angband 2.7.9 ===

The most important modification was a massive "code level cleanup" that
made all of my other modifications much simpler and safer. This cleanup
was so massive that in many places the code is no longer recognizable,
for example, via "diff -r", often because it was rewritten from
scratch.

The second most important modification was the design of a generic
"term.c" package, which allows Angband to be ported to a new machine
with as few as 50 lines of code. Angband 2.7.9 thus runs without
modification on many machines, including Macintosh, PowerMac, Unix/X11,
Unix/Curses, Amiga, Windows, OS2-386, DOS-386, and even DOS-286.

It would be difficult to list all of the changes between Angband 2.6.1
and Angband 2.7.9, because many of them were made in passing during the
massive code level cleanup. Many of the changes are invisible to the
user, but still provide increased simplicity and efficiency, and
decreased code size, or make other more visable changes possible. For
example, the new "project()" code that handles all bolts, beams, and
balls, the new "update_view()" code that simplifies line of sight
computation, or the new "generate()" code that builds new levels in the
dungeon. Many changes have been made to increase efficiency, including
the new "process_monsters()" and "update_monsters()" functions, and
the new "objdes()" and "lite_spot()" routines. The generic "Term"
package yielded efficient screen updates, and enabled the efficient use
of "color".

But anyway, here are a few things that come to mind, in no particular
order, and with very little time or effort. Somehow I managed to put
off updating this file to the very end, and it will just have to do for
now. The recent changes (and bug fixes) can be found at the Official
Angband Home Page.

     color
     macros
     keymaps
     user pref files
     generic feature array, with template file
     generic object array, with template file
     generic artifact array, with template file
     generic ego-item array, with template file
     generic monster array, with template fils
     generic vault array, with template file
     binary image files for the template files
     special stat effect tables
     a special table of spells
     a special table of options
     inventory tagging
     inventory restrictions
     using objects off the floor
     various new runtime options
     the new "destroy" command
     the new "examine" command
     the new "note" command
     the new "dump screen" command
     the new "load screen" command
     the new "un-inscribe" command
     the new "change visuals" command
     the new "change colors" command
     the new "change macros" command
     the new "save game" command
     the new "fire" vs "throw" commands
     rearranged equipment slots
     a standard bow slot
     an extra inventory slot
     an underlying keyset
     refueling torches
     better monster memory
     nicer targeting mode
     object stacking
     the recall window
     the choice window
     the mirror window
     new high score code
     special lighting effects
     intelligent monsters
     new monster flags
     text formatting code
     much cleaner store code
     generic spell projections
     scrolls of *identify*
     maximize mode
     preserve mode
     new inscription code
     new message recall code
     new spell and prayer code
     massive cleanup of effects code
     new object allocation routines
     powerful (but simple) on line help
     robust savefile cheat preventers
     new official cheating options
     new blindness code
     new hallucination code
     optimized object description code
     new keypress input routines
     actual object discounts
     fractional (asymptotic) speed
     postponing updates/redraws
     run-time price determination
     better wizard commands
     the automatic player
     launchers of extra shots
     elemental ignore flags
     new ego-item types
     new player ghost creation
     no more sliding objects
     no more sliding monsters
     new object flags
     new chest trap code
     regularized the artifact code
     regularized the ego-item code
     new monster abilities
     new monster spell attacks
     some new store owners
     run-time skill computation
     player kills vs ancestor kills
     better room illumination code
     better group monster code
     table access through pointers
     more redefinable constants
     slightly new screen layout
     extreme code cleaning
     extreme optimizations


=== A Note from the Maintainer (of standard Angband) ===

Welcome to Angband 2.7.9v6.

My name is Ben Harrison, and I have been the maintainer of Angband
since November, 1994, when the previous maintainer, Charles Swiger
(who developed Angband 2.5.1 through 2.6.2), got a real job. Starting
with Angband 2.7.0, and continuing through the current version (2.7.9),
I have been responsible for a number of major improvements to the basic
Angband game, some of them obvious to the casual user and others hidden
below the surface, but no less significant. The most significant
improvement has been a total rewrite of large portions of the code,
which, after ten years of modifications by various people, had begun to
resemble a rotting death mold. Also significant was the design of a
generic "term.c" package, which has allowed Angband to be easily ported
to Macintosh, Amiga, X11, Windows, and basically every system in
existance (including a beta-version for DOS-286).

In addition, I have added lots of new commands, features, and
functionalities, most of which appear to have been accepted by most
people as a good idea (TM).

It is extremely easy to port Angband 2.7.9 to a new system. If you
cannot find a version that will compile on your machine, you can
usually make one by writing a single file of about one hundred lines of
C code.

Angband 2.7.8 was intended to be a nice, clean, stable version, so we
can all give copies to our friends. Unfortunately, it contained a few
minor bugs. The *enchant* armor/weapon scrolls were "swapped". The game
starts to look funny if too many objects accumulate on the floor. The
"Q" command (commit suicide) does not work. You may not be able to load
older savefiles. Some special dungeon levels may take a long time to
generate. Good drops can include cursed rings of speed. But you can see
that none of these are "fatal", so Angband 2.7.8 remains for now the
most "official" version.

Angband 2.7.9v1 through Angband 2.7.9v6 are intended as "transition"
versions leading up to the release of Angband 2.8.0. Angband 2.8.0 will
include many extensive changes from Angband 2.7.8, see the web page for
more information.

Most of these changes have been completed, and include things like
cleaning up some internal code issues, optimizing the code (again),
extending the functionality of some existing commands (such as target
and look, which now handle directional motion), tweaking various
aspects of the program, most notably in the introduction of new
symbols and colors for various monsters, and in the use of a more
regular set of RGB values for the various color codes, etc. Again, see
the web page for a complete list.

Angband 2.8.0 will introduce a version independent savefile format,
along with a new terrain feature concept, and the ability to allow
multiple objects in the same cave grid. It may or may not separate the
"unique" monsters from the "normal" monsters, perhaps introducing some
new "normal" monsters, such as "skeleton lord" or "giant boar" or
"master mage".

You can email compliments, complaints, bug reports, and presents to
me ("benh@voicenet.com"), and you can post interesting experiences,
general questions, compilation questions and code suggestions to the
newsgroup ("rec.games.roguelike.angband").

You can obtain the latest source and pre-compiled executables from
various places, try "ftp://ftp.cis.ksu.edu/pub/Games/Angband/Angband-2.7.x"
and the developer site at "ftp://export.andrew.cmu.edu/angband". You
will need to enter the appropriate sub-directory, such as "Source" or
"Macintosh".

You should visit "http://www.voicenet.com/~benh/Angband/" (the
Official Angband Home Page) and "http://www.paranoia.com/~jth/angband.html"
(the Unofficial Angband Home Page), for more up to date information.

You may freely distribute the game, and its source, though you are
bound not only by the existing copyright notice from 1984, but also
whatever restrictions may be present on various other pieces of the
code, including the fact that any source written by me is technically
automatically placed under copyright and may thus not be used for
commercial purposes.

The basic help files supplied with this game are more or less up to
date, but when in doubt, the source (or the newsgroup) is the place to
turn for advice. Or attempt to figure it out by experimentation, this
is sometimes the most fun. In particular, see "commands.txt" for
information on the available commands, some of which have been recently
added or changed, and "options.txt", which describe how to customize
several aspects of the game to suit your preferences.

The documentation is very easy to modify and update, so you may want to
check in to the ftp site occasionally to see if there are any new help
files (or spoiler files) for you to acquire. Note that the spoiler
files are not distributed with the source since they are so huge, but
you can obtain them from various places as with the source and
executables. New spoiler files may be placed in the "lib/help" or
"lib/info" directories, to allow access via the "online help" system.

Remember to tell all your friends about how much you like Angband...

Happy adventuring!

+++ Ben +++


=== A Posting from the Original Author ===

From: koeneke@ionet.net (Robert Alan Koeneke)
Newsgroups: rec.games.roguelike.angband,rec.games.roguelike.moria
Subject: Early history of Moria
Date: Wed, 21 Feb 1996 04:20:51 GMT

I had some email show up asking about the origin of Moria, and its
relation to Rogue.  So I thought I would just post some text on the
early days of Moria.

First of all, yes, I really am the Robert Koeneke who wrote the first
Moria.  I had a lot of mail accusing me of pulling their leg and
such.  I just recently connected to Internet (yes, I work for a
company in the dark ages where Internet is concerned) and 
was real surprised to find Moria in the news groups...  Angband was an
even bigger surprise, since I have never seen it.  I probably spoke to
its originator though...  I have given permission to lots of people
through the years to enhance, modify, or whatever as long as they
freely distributed the results.  I have always been a proponent of
sharing games, not selling them.

Anyway...

Around 1980 or 81 I was enrolled in engineering courses at the
University of Oklahoma.  The engineering lab ran on a PDP 1170 under
an early version of UNIX.  I was always good at computers, so it was
natural for me to get to know the system administrators.  They invited
me one night to stay and play some games, an early startrek game, The
Colossal Cave Adventure (later just 'Adventure'), and late one night,
a new dungeon game called 'Rogue'.

So yes, I was exposed to Rogue before Moria was even a gleam in my
eye.  In fact, Rogue was directly responsible for millions of hours of
play time wasted on Moria and its descendents...

Soon after playing Rogue (and man, was I HOOKED), I got a job in a
different department as a student assistant in computers.  I worked on
one of the early VAX 11/780's running VMS, and no games were available
for it at that time.  The engineering lab got a real geek of an
administrator who thought the only purpose of a computer was WORK!
Imagine...  Soooo, no more games, and no more rogue!

This was intolerable!  So I decided to write my own rogue game, Moria
Beta 1.0.  I had three languages available on my VMS system.  Fortran
IV, PASCAL V1.?, and BASIC.  Since most of the game was string
manipulation, I wrote the first attempt at Moria in VMS BASIC, and it
looked a LOT like Rogue, at least what I could remember of it.  Then I
began getting ideas of how to improve it, how it should work
differently, and I pretty much didn't touch it for about a year.

Around 1983, two things happened that caused Moria to be born in its
recognizable form.  I was engaged to be married, and the only cure for
THAT is to work so hard you can't think about it; and I was enrolled
for fall to take an operating systems class in PASCAL.

So, I investigated the new version of VMS PASCAL and found out it had
a new feature.  Variable length strings!  Wow...

That summer I finished Moria 1.0 in VMS PASCAL.  I learned more about
data structures, optimization, and just plain programming that summer
then in all of my years in school.  I soon drew a crowd of devoted
Moria players...  All at OU.

I asked Jimmey Todd, a good friend of mine, to write a better
character generator for the game, and so the skills and history were
born.  Jimmey helped out on many of the functions in the game as well.
This would have been about Moria 2.0

In the following two years, I listened a lot to my players and kept
making enhancements to the game to fix problems, to challenge them,
and to keep them going.  If anyone managed to win, I immediately found
out how, and 'enhanced' the game to make it harder.  I once vowed it
was 'unbeatable', and a week later a friend of mine beat it!  His
character, 'Iggy', was placed into the game as 'The Evil Iggy', and
immortalized...  And of course, I went in and plugged up the trick he
used to win...

Around 1985 I started sending out source to other universities.  Just
before a OU / Texas football clash, I was asked to send a copy to the
University of Texas...  I couldn't resist...  I modified it so that
the begger on the town level was 'An OU football fan' and they moved
at maximum rate.  They also multiplied at maximum rate...  So the
first step you took and woke one up, it crossed the floor increasing
to hundreds of them and pounded you into oblivion...  I soon received
a call and provided instructions on how to 'de-enhance' the game!

Around 1986 - 87 I released Moria 4.7, my last official release.  I
was working on a Moria 5.0 when I left OU to go to work for American
Airlines (and yes, I still work there).  Moria 5.0 was a complete
rewrite, and contained many neat enhancements, features, you name it.
It had water, streams, lakes, pools, with water monsters.  It had
'mysterious orbs' which could be carried like torches for light but
also gave off magical aura's (like protection from fire, or aggravate
monster...).  It had new weapons and treasures...  I left it with the
student assistants at OU to be finished, but I guess it soon died on
the vine.  As far as I know, that source was lost...

I gave permission to anyone who asked to work on the game.  Several
people asked if they could convert it to 'C', and I said fine as long
as a complete credit history was maintained, and that it could NEVER
be sold, only given.  So I guess one or more of them succeeded in
their efforts to rewrite it in 'C'.

I have since received thousands of letters from all over the world
from players telling about their exploits, and from administrators
cursing the day I was born...  I received mail from behind the iron
curtain (while it was still standing) talking about the game on VAX's
(which supposedly couldn't be there due to export laws).  I used to
have a map with pins for every letter I received, but I gave up on
that!

I am very happy to learn my creation keeps on going...  I plan to
download it and Angband and play them...  Maybe something has been
added that will surprise me!  That would be nice...  I never got to
play Moria and be surprised...

Robert Alan Koeneke
koeneke@ionet.net


=== Previous Versions (outdated) ===


                          VMS Moria Version 4.8
Version 0.1  : 03/25/83
Version 1.0  : 05/01/84
Version 2.0  : 07/10/84
Version 3.0  : 11/20/84
Version 4.0  : 01/20/85

Modules :
     V1.0  Dungeon Generator      - RAK
           Character Generator    - RAK & JWT
           Moria Module           - RAK
           Miscellaneous          - RAK & JWT
     V2.0  Town Level & Misc      - RAK
     V3.0  Internal Help & Misc   - RAK
     V4.0  Source Release Version - RAK

Robert Alan Koeneke               Jimmey Wayne Todd Jr.
Student/University of Oklahoma    Student/University of Oklahoma





                        Umoria Version 5.2 (formerly UNIX Moria)
Version 4.83 :  5/14/87
Version 4.85 : 10/26/87
Version 4.87 :  5/27/88
Version 5.0  :  11/2/89
Version 5.2  :   5/9/90

James E. Wilson, U.C. Berkeley
                 wilson@ernie.Berkeley.EDU
                 ...!ucbvax!ucbernie!wilson

Other contributors:
D. G. Kneller         - MSDOS Moria port
Christopher J. Stuart - recall, options, inventory, and running code
Curtis McCauley       - Macintosh Moria port
Stephen A. Jacobs     - Atari ST Moria port
William Setzer        - object naming code
David J. Grabiner     - numerous bug reports, and consistency checking
Dan Bernstein         - UNIX hangup signal fix, many bug fixes
and many others...




Copyright (c) 1989 James E. Wilson, Robert A. Keoneke
  This software may be copied and distributed for educational,
  research, and not for profit purposes provided that this copyright
  and statement are included in all such copies.

Umoria Version 5.2, patch level 1

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

Angband Version 2.4   :  5/09/93

Angband Version 2.5   : 12/05/93 Charles Swiger.

Angband Version 2.6   :  9/04/94

Angband Version 2.7   :  1/1/95  Ben Harrison

--
Original   : (??)
Updated    : (??)
Updated    : Zangband DevTeam
Updated    : Hengband 1.5.3
