DaJAngband History

DaJAngband History

     Angband is a roguelike* game loosely based on the characters and monsters of J.R.R. Tolkien's works. The goal is to get to level 100 and kill Sauron and Morgoth. 100 levels doesn't take as long as it might sound ..unless you make it take longer in which case you'll probably die before level 40, but you'll probably die before then anyway -I usually do. (For those who know Tolkien only by The Lord of the Rings, Morgoth is the main bad guy of the Silmarillion which is a history of Middle Earth. Most of it takes place long before the Lord of the Rings.)

  *Roguelikes are a family of games with mostly ascii graphics, the first of which was called rogue.  Angband was based on Moria which in turn was based on Rogue.  Roguelikes are generally the type of game where you go down in the dungeon, find treasure and equipment and kill monsters (although there are roguelikes with different settings). Angband and several of its variants have simple graphic tiles which may be used in place of the original ascii, but that isn't nessesary because the game is fun enough that it doesn't need fancy stuff to look at.

     I started playing Angband around 2006. About two years later, I noticed an /lib/edit directory in the Angband directory where I could add, delete and change monsters, objects, classes and races as easy as modifying text files without doing any code. That's the kind of thing I have always liked to do with games. (There's an older and completely unrelated game called Duke Nukem which had a level editor, and I used to spend a lot of time making levels there. Before that there was an even older game called BoulderDash which had a level editor which I had fun with. Even when I game a liked didn't have any such editor, I would often design my own modifications to the game even though I couldn't actually make them playable -I did that with Nethack a good bit.)
   Anyway, I eventually came out with my own variant of Angband called DaJAngband. I originally called it a semi-variant because hardly any code was changed in first versions, just a lot of modifications to the text files.  But it has come a long way since then and I left off calling it a 'semi' variant a while back.  After I been editing the text files a while, I thought the changes in the text files needed some tweaks in the code to go with them.  I had dabbled in Basic and Visual Basic, but didn't know any C code at all.  When I looked at the Angband code for the first time, I saw that it was very well commented and I could easily figure out how to do several things.  Using only the comments in the Angband code, Beej's guide to the C language (silly, but good for the basics), and some help from the friendly people on the forums at Angband.oook.cz, I have figured out how to do a lot more than I originally expected to be able to do.  The Angband code is so well organized and commented that it's not very hard to figure out how to do a lot of stuff.
 
some changes from very old versions:
- Monster descriptions are finally finished- there is now at least some description for every monster in the game.
- There is a small (though significant in the very beginning) exp penatly for killing most of the town monsters who don't actually do anything to you.
- The ability to sell to shops is now a birth option (defaults to off). The same option also affects the amount of gold found. If you can sell to shops, you find the normal vanilla amount of gold, if you chose not to be able to sell to shops, then gold drops are significantly increased (as in Eddie's patch -actually the old and only released version of Eddie's patch (so far) has a multiplier of 4 and I changed it to 3 cause I seemed like I was finding quite a lot of gold).
- added a couple new types of monster nests which I won't give away.
- singing happy drunks no longer drop anything. battle-scarred veterans and village witches now drop only items. 
- Redid monster.txt file, adding lots of monsters, taking away several I didn't like, changing some, and renaming a couple.
- Removed unique monsters which I didn't think fit in the game and added others including some Tolkien uniques suggested in an old rgra post by Shawn McHorse.
- Made changes with objects, egos, and artifacts to implement my idea that see invisible shouldn't be available till a bit later. Permanent see invisible is now very rare before L40 unless you want to weild a cursed morgul weapon, and temporary see invisible is a little more common. Also, less monsters are invisible (but you'll need those temporary SI sources for stuff like the greater poltergeist).
- Added some new classes and races.
               major changes that come with Eddie Grove's patch:
(These are only the more major changes copied from his announcement, see the patch-changes.txt file for a list of everything his patch does)
   * Change !selfKnowledge to *IDENTIFY all items wielded
   * Point-based character generation equivalent to best available from autoroller (and always use point-based)
   * New command to restock a store for the cost of all items for sale
   * Show charges on aware wands and staves without identify
   * Give free identify on non-jewelry that pseudos as average
   * Show raw numbers rather than ratings on 'C' page
   * Pseudo of artifact identifies it
   * Stolen gold is carried by thief
   ** Disallow selling items to stores (probably the biggest change -but don't worry, there is no lack of gold because gold drops in the dungeon are increased.)
   * Allow squelching of unaware flavors
   * Notice obvious effects when wielding unidentified objects
   * New pseudo level "Splendid" meaning obvious bonuses when wielded (replaces special pseudo and partially replaces excellent)
   * Allow pseudo on jewelry