Tales of Middle Earth - History

A brief history of ToME

When Zangband came to its 2.2.0 version I (DarkGod) was an Angband winner and I had been a C programmer for a long time, so I decided to take the sources and to try to code my own variant. At this time I was reading the Pern novels from Anne McCaffrey and I found them *VERY* good, so I've decided to include some elements of them into my variant from which it took the name PernAngband.

One hard thing to decide was on which Angband to base it. Although I didn't like Zangband because of the Zelazny universe, which I found to be not very Tolkienish, I chose it because of all the good things it had (especially the race powers that I wasn't able to code at the time). So I removed much of the Zelazny stuff and replaced it with Tolkien and Pernish stuff. And so the history of PernAngband began with the version 2.9.9a.

At the time of PernAngband 5.x.x, PernAngband was a thriving Angband variant with plenty of unique features. Then came some legal problems with Anne McCaffrey estate and ubisoft and I had to remove the Pern stuff, so the game got renamed to ToME, the Troubles of Middle Earth.

Zangband History and Information

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 (3.*) 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 (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.

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. This person was Robert Ruehlmann, the creator of the graphical Angband versions for DOS and webmaster of "Thangorodrim - The Angband Page" ("http://www.thangorodrim.net").

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, Ben Harrison took over in late 1994 when Charles Swiger left. Initially his intention was simply to clean up what had become, after ten years, a rather unholy mess, but the deeper he delved into the code, the more it became apparent that drastic changes were needed, so, starting with MacAngband 2.6.1, Harrison 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 Ben Harrison, either spontaneously, or, more commonly, as the result of a suggestion or comment by an Angband player.

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, Ben Harrison took over in late 1994 when Charles Swiger left. Initially his intention was simply to clean up what had become, after ten years, a rather unholy mess, but the deeper he delved into the code, the more it became apparent that drastic changes were needed, so, starting with MacAngband 2.6.1, Harrison 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 Ben Harrison, either spontaneously, or, more commonly, as the result of a suggestion or comment by an Angband player.