Angband Forums

Angband Forums (
-   AAR (
-   -   A horrific noob's commentated 'band adventures (

smbhax November 14, 2022 06:26

Umoria -- NOT having bump to open doors does feel like it fits the pace of Umoria--or at least, doesn't stand out as unduly slow there. But I thought I'd try it--and it is nice and smooth--so:

Bump to open doors:

526 replaced line (closed door warning) w/ "openClosedDoor(coord);"

1240 removed "static" before "void openClosedDoor(Coord_t coord) {"

229 added new line below this one
void openClosedDoor(Coord_t coord);

smbhax November 14, 2022 11:22


- Removed player character gender

welcome.txt (in /data)
removed "a gender" from "you must specify"

267-290 commented out characterSetGender function
300-303 changed "male_" to "char_"
304-309 commented lines
354 changed 5 to 4
461-463 commented out giving F chars 50 extra starting gold 'ppp'
477 commented line

19-22 changed "male_" to "char_"
23-26 commented lines

89, 94, 99, 104, 109, 114, 119, 124 commented last four numbers of each line

28, 29, 95-97 commented "King" winner rank title for male
31, 98 changed now-default winner rank title from "Queen" to "Ruler"

206 commented line
207 changed " Weight%8s %6d", colon," to ""%38s Weight%8s %6d", blank, colon,"

159 commented line
571 commented line

33-35 commented playerIsMale function
37-39 commented playerSetGender function
41-46 commented playerGetGenderLabel function
1660, 1661 commented "King" max rank title for male
1663 changed now default max rank title from "Queen" to "Ruler"

51 commented line
191 commented line
192 commented line

14-19 commented highScoreGenderLabel function
43 replaced "highScoreGenderLabel()" with "'X'"
212 changed "%-19.19s %c %-10.10s" to "%-19.19s %-10.10s"
216 commented line
227 replaced "Sex Race" w/ " Race" (two leading spaces)

468, 477 commented lines
469, 478 changed "5,"s to "4,"s

(That character.cpp thing was


    // She charmed the banker into it! -CJS-
//    if (!playerIsMale()) {
//        new_gold += 50;
//    }


smbhax November 14, 2022 18:50


Spell list auto-open (goes with item list auto-open, post 89 in this thread :

15 changed "%c-%c, *=List, <ESCAPE>" to "%c-%c, <ESCAPE>"
18 commented line
21 added:
23 added:
displaySpellsList(spell_ids, number_of_choices, false, first_spell);
65-71, 86, 88 commented lines

smbhax November 16, 2022 23:47

Quick list of Moria versions and variants sites I've found: - official - pre-2000 vers & variants - 2006 mirror of funet archive - Gmoria - SDLMoria - Umoria Color (C++ port of Colour Umoria) - Unicode Windows port of DOS Umoria 5.6 - Wmoria

smbhax November 19, 2022 00:04


- Any key clears -more- prompts:

271-272, 274 commented line
273 comment "key = ", leaving just "getKeyInput();"

smbhax November 22, 2022 06:22

Going back to the GCU (ASCII) front end of Angband, compiled in Cygwin--but I also wanted sound, so worked out how to do SDL2 sound with ASCII through Cygwin.

The first widely distributed version of Angband, version 2.4.Frog-knows, and specifically the 1.1 version of the PC (DOS) port of that, which I was running here through DOSBox (free from , can be downloaded from the official Angband site's "Releases" section at -- except that the PC version 1.1 link is currently typoed to 1.2 there, so you have to alter it manually to

The HunterZ Windows port of DOS Umoria 5.6 is

The John Harris (rodneylives) article in which he talks about Frog-knows and other past Angband versions is

(And the podcast in which an episode with him was often one of the best is .)

- FORGOT backwardsEric told me (and further FORGOT this discussion took place on the Angband github page for software issue 5542, not the forum) that overriding the ^c suicide key with a blank keymap won't work in the GCU front end

- FORGOT the capitalization fix for CTRL characters (ie the game now showing CTRL plus the "d" key as "^d," not "^D") was a recent fix and so isn't in the downloaded 4.2.4 Windows front end version still available as the latest on, with which I was testing at one point here and confusing myself mightily 'p'

0:00 - messing with tiles (MSYS2 SDL2)
9:39 - GCU block walls (Cygwin)
13:24 - checkerboard walls (2.4.Frog-knows DOS 1.1)
17:09 - my Umoria tweaks (Cygwin)
28:40 - HunterZ Umoria 5.6 DOS to Windows port
42:02 - sound in GCU Angband (Cygwin)
50:08 - monochrome option in DOS Frog-knows
55:25 - GCU ^c death key keymap confusion & save-scumming 'p'
1:23:24 - L37 - giant fire ants
1:42:25 - still confused about GCU ^c and keymaps ; P

After being hopelessly confused about the ^c thing during the recording, I looked up Angband's code on the ^c suicide key, and it is NOT a function of my Cygwin terminal that's killing the character, it's the game, sort of simulating an old-style ^c terminal break function or something. That seems dangerous and pointless to me, at least in Windows where you've got Task Manager to kill processes if you really need to do that, so I've disarmed this bizarre suicide function in my local Angband version by commenting out one line of code.

disarm redundant (in Windows) ^c suicide key:

121 comment line

smbhax November 22, 2022 06:50

Setting up and running Angband version 2.4.Frog-knows, and specifically the 1.1 version of the PC (DOS) port of that, through DOSBox:

0:00 - start
2:05 - DOSBox Options
5:00 - running the game
7:38 - fullresolution option
11:40 - monochrome game option

My DOSBox Options file (*.conf) settings: to get fullscreen (ALT+Enter) Frog-knows scaled up a bit on my 1080p screen and sharp rather than blurry:

scaler=normal2x forced

That leaves it black-bordered from its doubled 480p--to 960p--at my 1080p fullscreen, but sharp, and the checkerboard patterns of those nifty DOS wall blocks intact.

And you can enter your "mount c" command at the bottom of the Options file so you don't have to re-enter it each time you run DOSBox; like

mount c [full path to your dos programs, like c:\mydos or wherever you're putting your stuff]


Once in the game, pressing "=" opens the Options screen, where I turned the "monochrome" option on.

smbhax November 28, 2022 06:53

I'm still a roguelike noob, and also don't really know what I'm talking about. I liked the look of a couple DOS Moria/Angband ports I happened to see, and wanted to find out where it came from.

0:00 - start
2:05 - Rogue
22:50 - "! Supervisor Key (fake DOS)"
29:10 - Koeneke, Wilson, Kneller
59:02 - PC-Moria 4.873
1:13:17 - the checkerboard block (177 - Medium Shade)
1:36:23 - Castle Adventure
1:47:21 - Umoria 5.4c
2:09:26 - Umoria 5.5
2:18:53 - Umoria 5.5.2
2:33:11 - Umoria 5.2.2 386
2:39:35 - Umoria 5.7.15 (Windows terminal)
2:43:11 - Umoria 5.6 msvc3 (Windows terminal)
2:50:51 - Cutler, Astrand, Marsh, Hill, Teague
2:58:40 - Angband 2.4.Frog-knows 1.1
3:19:05 - PC Angband 1.2
3:56:59 - PC Angband 1.31
4:19:35 - PC Angband 1.4
4:42:39 - Angband 2.7.4
5:16:48 - Angband 2.8.0
5:47:38 - Angband 2.9.0
6:10:00 - Angband 3.0.6
6:18:40 - Angband 4.2.4-162x ASCII (Cygwin GCU)
6:22:59 - Angband 4.2.4-162x tiles (MSYS2 SDL2)
6:24:19 - frognose

(Angband 4.2.4-162x built from more recent untagged source code, and with a slightly customized title screen.)


I downloaded the following files from the following places for this:

- DOSBox from

- PC-Moria 4.873 from

- Umoria 5.4, 5.5, and 5.5.2 DOS versions and various source files from (operated by "CSC, the Finnish IT center for science"--Finnish government)

- Moria 5.5.2 386, aka the DJGPP port ("DJGPP is a 32-bit, protected-mode compiler, which means that programs compiled under it require an 80386 or higher to run"), from

- Umoria 5.6 Windows port from

- Various Umoria source files from

- Angband DOS versions and various source files from

- Current Angband from

- The 1984 DOS freeware game Castle Adventure from

^^ Those are free software. This one cost a couple bucks:

- Rogue - 1985 DOS Epyx 1.49 version from



Steam installs Epyx's 1985 DOS Rogue port version 1.49 in a custom DOSBox arrangement; the config settings left it blurry on my display and anyway I wanted to be able to run it from the same DOS prompt as other games, so I collected the various files from where Steam had installed them, and made my own set-up for them. One tricky part is that there's no unified way to start a new game and restore a previously saved game from the same Windows shortcut; you may need to do like Steam partially did and set up separate start and restore shortcuts, using an appropriate Rogue command-line option--probably "/r"--for one of them; here's a Rogue command option list with definitions, from a copy of the old PC manual I found at

rogue - Starts a new game.
rogue /r - Automatically restarts a saved game using the file name rogue.sav on the rogue disk.
rogue /s - Displays the current rankings in the Guildmasters Hall of Fame without having to start a game.
rogue /bw - If you have a color graphics card and are using a black and white monitor, starting a new game of ROGUE with this option will improve the clarity of the screen.
rogue (file name) - Restarts a new game using a game saved in (file name).

"/bw" didn't seem to work on mine.

DOS Rogue's "!" or F10 "Supervisor Key" hides the game with a fake DOS screen; type "rogue" to get back to the game once the boss leaves ; ].

Did the "Supervisor Key" become a bit of a running joke in Moria and PC Angband? "!" in DOS versions of Moria pops up the DOS shell, with "type 'exit' to resume your game" at the top; in PC Angband, it prompts a dry retort: "Sorry, Angband doesn't leave enough free memory for a subshell." ; D

After PC Angband, though, any such joke may have been lost: in Angband 2.7.4, "!" is used to write in-game macros, and in 2.8.0 it does not appear to have its own game function. There could be a hint of a revival from at least 2.9.0 on, but the new, functional DOS-specific game option menu that "!" brings up there is presented with an entirely straight face. : =|



For Moria, I ran I think all the non-variant DOS versions I could find (and a couple related games):

- PC-Moria 4.873 - 1988
DOS port from Wilson's Unix code by Don G. Kneller: no Options menu, no [number][command] repeat input, no auto-rest, no Shift-W; default keyboard config is on non-roguelike setting ("MORIA" rather than "ROGUE"; a later DOS port says "VMS" was the other setting(?)--or is it just anything other than "ROGUE"?); can change char for walls (and floors) in Kneller's MORIA.CNF config file--but doesn't change char for SECRET doors (later versions do), so easy exploit to spot secret doors just by changing rest of walls to something else; ^r redraws screen (somehow this breaks after this for a long time, at least as far as DOSBox is concerned); relatively slow character saving and loading; no [executable] -h command line descriptions (not until Angband Frog-knows)--not sure there are any command line options

- Umoria 5.4 color - 1991
David J. Grabiner takes over as Moria maintainer from James E. Wilson, "making only minor changes"; Justin Martin Anderson adds DOS color, probably after an official monochrome DOS port by Grabiner (the official Mac version had had 8-color support since at least version 5.2.0; the official Amiga version had 4-color support by at least version 5.4.0); 5.4 has the last still-extant DOS support note until support for DOS and other old systems is officially removed in 2016's version 5.7.0; despite saying so in ? command list, ^r does NOT redraw screen like 4.873 did (does not work again until PC Angband 1.3)

- Umoria 5.5 - 1992 (Grabiner)

- Umoria 5.5.2 - 1994
Grabiner's releases ended with 5.5.2 in mid-'94; DOS port by Roland Roberts

- Moria 5.5.2 386 - 1994?
DOS port by Ben Shadwick; Grabiner names this version as "the executable for the PC" in his FAQ; high CPU usage in DOSbox

- UMoria 5.6 msvc3 - 2015
Windows terminal port of 2008 Umoria by Ben Shadwick with "enhancements from the MS-DOS ports," most obviously a Unicode approximation of the DOS checkerboard block; some minor graphical glitches


Robert A. Koeneke enrolled in engineering courses at the University of Oklahoma "around 1980 or 81," and one night while hanging out with some sysadmins in the engineering lab, on a DEC UNIX minicomputer--which despite the name was the size of a very large refrigerator, fronted with four spooled tapes--got hooked on playing the original Rogue. But the DEC minicomputer in the department where he got a job was a VAX running VMS, and "no games were available for it at that time," so he decided to write his own. The developers of Rogue had not released the source code for their game, so Koeneke wrote the best clone he could of what he remembered of it, in BASIC, on the VAX/VMS minicomputer. He named it "Moria" after the deep dwarven mines in novelist J.R.R. Tolkien's "Middle-Earth" fantasy world.

A year later--'83 or so--when he started taking a course on Pascal, its functions gave him more ideas for a Rogue-like game, so he started writing another Moria: not an exact Rogue clone, this time, but his own new game. Other UO students got hooked on HIS game, and he challenged them to beat it, and himself to prevent them from beating it. In '85, he started sending his Pascal VAX/VMS source code to other universities. His last release, 4.7, came "around 1986 - 87": "my last official release"; other UO students continued Moria through v4.8 after Koeneke left for the commercial world.

Koeneke was establishing the development pattern for the Moria & Angband DOS period: students working in a university computer lab release well-received game version, are encouraged to make more; when they leave, repeat with others.

The pattern could jump between schools: James E. Wilson, at the University of California, Berkeley, got the Moria 4.8 source, and ported it to Unix C as "Umoria," numbering the first official release in 1987 version 4.85. Wilson said of why he ported it "I did not have access to a VMS machine, and both the Pascal and Assembler code would not work with Unix because of many uses of VMS extensions. Since C was a more common language for Unix anyways, I decided to just convert the whole thing to C."

Wilson's "history" file included with his versions of the game lauds Don Kneller's "PC-Moria 4.873" DOS port--but not Kneller's slightly earlier PC-Moria 4.83, which Wilson calls "extremely buggy" and "unplayable"; Wilson recommends PC-Moria 4.873 over a perhaps slightly earlier "PC-Moria 4.00+," described as "a port of the Moria 4.8 Pascal sources to the IBM-PC by John W. DeBoskey," which he calls "faithful" but "unfortunately" having "quite a few bugs."

Of how the game spread, Wilson said "I started work on Umoria in February 1987. I somehow acquired play testers in April. I don't recall exactly how, but I was at a university, so maybe they saw me playing it on a public terminal and asked for a copy. The game slowly spread around the Berkeley area. By November, the game was in good enough shape that I could post it to"

I haven't been able to find DeBoskey's version anywhere; interestingly, it's the only Moria branch Wilson lists as not derived from his Unix port. And while his "history" describes various post-Moria-4.8 Unix and VAX/VMS lines, and an Amiga version, Kneller and DeBoskey's are the only two DOS branches mentioned.

Wilson adopted Kneller's DOS port into his own set-up: although no compiled Wilson DOS ports seem to have survived, starting in the next available Umoria source code, 5.2.0, there would be an extensive multi-platform structure in the code base that was not there in 4.87, with explicit support for various platforms: Unix, DOS (present in some form since at least 5.0 in '89, which mentions a save tweak for MSDOS; a change in January 1990's version 5.0.10 may have broken the DOS version; a month later, 5.0.16 notes a change to "get MSDOS version working again," as well as "add files from binary PC-Moria distribution"), Atari ST, Mac, VMS, and by at least 5.4, Amiga; Kneller is credited in many of the DOS-related Umoria 5.2.x+ source files, with 5.x DOS update credit to Wilson; Kneller's DOS .CNF config file and options continue to be used, with some Wilson updates; all later Moria/Angband DOS ports use Kneller's visual template and checkerboard walls--which perhaps not coincidentally were used for passageway graphics in the 1984 and 1985 DOS versions of Rogue.


In 1984, one of the original designers of the 1980 game that had so hooked Koeneke, Rogue, had co-founded Artificial Intelligence Design Systems to sell a commercial, DOS version of Rogue. They struggled to break even, but later that year, game developer/publisher Epyx contacted them, and struck a deal under which Epyx began distributing a repackaged version of their DOS port of Rogue in 1985. The '84 AI Design version--from what I can see in screenshots and YouTube videos, anyway--and the '85 Epyx version--at least, the 1.49 version now available for on Steam--both use for their hallways the same DOS checkerboard block that Kneller would use for Moria's walls in '88.

That checkerboard block is part of what Wikipedia calls "Code page 437," "the character set of the original IBM PC": "The set includes all printable ASCII characters as well as some accented letters (diacritics), Greek letters, icons, and line-drawing symbols. It is sometimes referred to as the 'OEM font' or 'high ASCII', or as 'extended ASCII' (one of many mutually incompatible ASCII extensions)."

Kneller made it easy to change the block character--or "Medium Shade," as Wikipedia's CP437 chart labels it--used for Moria's walls, and the dot character used for open floor spaces, to different characters from the 256-character CP437 set: enter the numeric ID for whichever character you want in the appropriate spot in the moria.cnf DOS config text file (angband.cnf in the early Angband DOS ports). The default config line is

GRAPHICS 177 249

with 177 being the block, 249 the dot. In CP437, character 176 is a more sparse dot pattern, 178 a thicker one, and 219 a solid block, while 250 is a slightly smaller dot. So changing the default GRAPHICS values in the .cnf to for instance

GRAPHICS 178 250

would give you heavier-looking walls and lighter floors. If you remove the "GRAPHICS" line altogether, the game reverts to using standard "#" signs and periods instead. A handy debugging feature: if you type a line incorrectly in the .cnf, the game will flash a warning about it, with the line number, at runtime.

Wikipedia notes that "some APIs will not print some code points, in particular the range 0-31 and the code at 127. Instead, they will interpret them as control characters" and indeed, the few I tested yielded various behaviors:

- In PC Moria, middot 7 and eighth note 14 rendered as "^G" and "^N"
- In Frog-knows, 7 and 14 rendered as nothing and an eighth note, respectively

Tripping through the listing of "adventure" games on, I noticed another game using, like Rogue, one of those DOS checkerboard blocks to represent worked stone structures in 1984, prior to PC Moria: freeware game "Castle Adventure," written by then-14-year-old Kevin Bales, used the block for its titular castle's walls.


Grabiner's Moria FAQ, which he reposted to both Moria newsgroups -- .moria and its successor, .roguelike.moria (remove the spaces) at intervals through 2010, says that versions back through 5.3--the end of Wilson's run, in March 1991--were "essentially identical" to his last release, 5.5.2, which he continued to refer to as "the current version" even in his last posting of the FAQ to the newsgroup in 2010--which was after 5.6.0 was out, with various maintenance fixes and an update to the Umoria sharing license--changes by him and Rene Weber. Umoria has, in effect, been in maintenance mode since Wilson's departure in '91:

Grabiner made two minor updates in '92, none in '93--the year Angband came out--and two in '94; then a gap to some fixes in 2000-01, another gap to 5.6--a 2008 license change--and another gap to 5.7.0 in 2016, a substantial code clean-up, adding support for Windows and macOS, and removing support for old systems, including DOS. Regular maintenance updates have continued in the dungeons-of-moria repository on github since 2017.



Ran all the early Angband DOS ports; after that I skipped between the many available in, so the things I note may have appeared first in versions between the few I looked at:

- Angband 2.4.Frog-knows 1.1 - April 1993
DOS port by Charles Teague; color off toggle (through at least 2.7.4); beginning of Teague's clear WHATS.NEW documentation; "g"et command but doesn't tell you what you're standing on, so less efficient than y/n pickup prompt; if color on, uses colored checkerboard block for mineral seams (through 1.4)--but old % signs if color off; terse angband -h command line descriptions

- PC Angband 1.2 - May 1993
Teague; beginning of his gameplay/balance changes

- PC Angband 1.3 - August 1993
Teague; Precision targeting from Moria 5.5 variant Morgul; after PC-Moria, ^r finally works to redraw screen again!; verbose angband -h command line descriptions

- PC Angband 1.4 - 1994
Teague; finally works out "g"et command first telling you what item you're standing on, so it becomes worthwhile; confusing splitting of messages across multiple lines

- Angband 2.7.4 - 1995
First post-Teague DOS version currently documented/available; the official DOS version of Ben Harrison's (UPenn) "first stable release": he credits features from PC Angband 1.4, Umoria 5.5, and PC Angband 1.31 variant FAngband (by David G. Kahane; per the table, other variants deriving from PC Angband include BAngband and QAngband); vastly expanded in-game option menus, including menu to reassign ASCII chars on the fly--although it can't save them?; bug where map walls are not drawn if using checkerboard blocks rather than "#"; DOS config file changed from angband.cnf to A_IBM.TXT, entirely reformatted from Kneller's MORIA.CNF; macros and apparently user prf pref support--but no manual in-game loading/saving them?; starts player off w/ CLev4 "Whomper" paladin with artifact gear; no readme, minimal documentation--Harrison never much for writing up changelists, claims too many changes to document efficiently; vastly reorganized file structure; torchlight color; like the Umoria 5.5.2 386 port, the versions from here on out have high CPU usage in DOSbox; uses "%" for mineral seams even if color on

- Angband 2.8.0 - 1996
Ben Harrison official DOS version; somewhat glitchy: map checkerboard block drawing problem remains, -more- prompts and monster health bar may still be in color with color turned off in Options--and everything is bright white! ;P; now has "repeat obvious commands" for automatic door-opening etc; other checkerboard block denotes mineral seams, for a smoother look in monochrome than the old %; ibm prf files replace DOS config file

- Angband 2.9.0 - 2000
Robert Rühlmann official DOS version - 2.9.0 was his 1st release; has graphics and a taller screen display with built-in subwindows and multi-res options (can turn off graphics & subwindows with "-mibm" command line option); can randomize character generation options; birth options; ! DOS options menu; ? command list replaced with help doc menu--can't find a concise in-game command list; color toggle option is gone

- Angband 3.0.6 - 2005
Robert Rühlmann - his last release and last Angband DOS release


In 1990, University of Warwick, England students Alex Cutler & Andy Astrand began expanding Umoria 5.2.1's Unix C code. Students Sean Marsh and Geoff Hill, with others, continued the work after Cutler and Astrand graduated. They gave their version, dubbed "Angband," a wide release in April 1993, with a simultaneous DOS port by Charles F. Teague II, who had been working on it at UMass Boston for several months thanks to alpha Unix versions sent by Marsh. Teague's DOS port kept the checkerboard block walls, config file, and probably lots more, DOS-wise, of Kneller's PC-Moria, and added color via code adapted from the color Umoria 5.4 DOS port, with permission from its author Justin Martin Anderson. Nine days later Teague uploaded a self-extracting bugfix DOS version, ang11exe.exe, to his preferred distribution site, the ftp server.

(The KSU FTP had, or would have by December 1993, at least, its own "Archive Manager for Moria and Angband": KSU engineering student Karl S. Hagen. Angband maintainer Ben Harrison would later refer to the KSU FTP as "the 'official' Angband site." Hagen graduated from KSU--or was expecting too--in 1995, but still posted about the "Angband KSU FTP site" in December 1996, calling it "pretty much automated.")

(I haven't run them, but hunting through source code and release notes, it looks like the Unix versions of Angband widely released in 1993 and 1994 did not have color; color based on the color added to DOS Umoria 5.4 was added specifically just to the DOS ports of the first versions of Angband. Release notes for non-DOS versions do not mention screen colors until Angband 2.7.0, in 1995, whose changelist notes: "Macintosh and X11 support (and soon IBM), with colour." The changelist of the next version, 2.7.1, mentions adding color to torch light, without specifying a platform. The next-earliest non-DOS source code still available to examine today, version 2.7.4, contains color support for any platform capable of handling it; as in Teague's earlier DOS versions--possibly not added until his 1.1 bugfix version, as he notes there people on monochrome monitors were having trouble seeing dark gray monsters--and until somewhere between 2.8.0 and 2.9.0, when it was removed, the in-game options include a color on/off toggle, defaulting to color being on.)

Teague started adding his own features, and balance and gameplay changes, to the game with his next release, uploaded as "ang12exe.exe" in May 1993; the print out from its in-game "V" (Version) command calls this line of updates "PC Angband" and gives their numbered ftp file names, but does not assign specific names to his releases. His August 1993 release, a quick bugfix to version 3 of that same month (Angband's site does not have version 3 available), uses the name PC Angband 1.31.

For 8+ months after Frog-knows, DOS, through PC Angband, was the epicenter of Angband development. Besides making more and more balance and game changes of his own, Teague was also incorporating more code from past and present versions of Moria, as well as more key additions from Moria variants: targeting code from Morgul, and the "auto-roller" character generation option from Druid.

With Sean Marsh out of contact after the release of Frog-knows, Charles Swiger at Carnegie Mellon University took up the mantle of Angband Unix development, releasing versions starting with Angband 2.5.0-beta in December 1993. There are no recorded Swiger DOS releases; a 1996 reply by Swiger to a newsgroup post by Koeneke asking about Angband said "I believe that you could build 2.5.x under DOS, but almost all DOS players went with Charles F. Teague's PC Angband 1.4 instead, since it had color and performed better under MS-DOS' memory limitations."

Teague released one more DOS version, PC Angband 1.4, in March 1994, saying "That's all for now, folks"; he added that he intended to continue working on Angband, but his releases would slow until "someone out there invents a 36-hour day." He had been working a day job since at least January. He did not reappear in the newsgroups.

With Teague's departure, there was no further official DOS development until a year later, when Ben Harrison, as Wilson had with Moria, made a vast code overhaul of Angband and established wide multi-platform support. Skimming only lightly across Harrison's numerous DOS version releases left me with an impression of fitful progress, perhaps due to the appearance of some new, possibly DOS-specific visual glitches, and a lack of regular release notes.

After Harrison, maintainer Robert Rühlmann seems to have had an affinity for Windows, DOS, and Mac: those are the three versions of his builds that he compiled and released himself through his (viewable now via, and the first and third screenshots on his screenshots page there are of DOS versions: the first's caption includes "2.8.3 MS-DOS version with my new graphics and terminal code," the fourth is a smaller shot of a Windows version, and the second is a contributed, smaller shot of Amiga ZAngband. The finale of the Angband DOS ports was a tremendous expansion of menu, graphics and sound options under Rühlmann--except for the color toggle, which was removed, making color fully mandatory.


In writing this I used information from,, John Harris' Moria and Angband articles on his blog, Wikipedia's Code page 437, Rogue, Moria, and Angband articles, newsgroup posts on the aforementioned Moria groups and .roguelike.angband (remove the space) by Sean Marsh, David J. Grabiner, Ben Shadwick, Ben Harrison, Karl S. Hagen, Geoff Hill, Robert Alan Koeneke, Charles Swiger*, James E. Wilson, Charles F. Teague II, and David G. Kahane, Ben Shadwick's HunterZ github, Rühlmann's via, the Angband Variants Table by Tangar Igroglaz, mentioned earlier, and from files in the releases I downloaded from the sites listed at the top.

* Swiger also posted as "Chuck Swiger" and "Charles William Swiger."


Notes on running some of these DOS ports now:

- The Moria 5.5.2-386 DOS port and the Angband 2.7.4 through 3.0.6 DOS ports chew up a lot of CPU in DOSBox--at least one of those Angband ports also mentioned being compiled for 386 processors, so maybe whatever that involves just forces a lot more work out of DOSBox
- Renaming the containing directory of PC-Moria 4.873 will prevent it from being able to load a previous save file (but it can run without one)
- The Frog-knows DOS aka PC Angband 1.1 and 1.2 README.PC files say the user should create a subdirectory called "bones" before running the game; this would be for storing dead characters to bring back to attack later characters as Frog-knows' "ghosts": there's a "/lib/bones" in 2.7.4, and the 2.8.0 readme notes dead characters were stored for later haunting purposes in /lib/bone in that version, for instance. I wonder if Teague just forgot to ship an empty "bones" directory with Frog-knows and the 1.1 DOS update...but then why didn't he include one in DOS 1.2? (Or did he, but later recompilations have omitted it?) His PC Angband 1.31 and 1.4 do come with pre-made empty "BONES" directories.

Of the bones files themselves, Teague posted that a player could even write their own, as "bones files are just text files, with 4 lines in them": "Just makeup a name, put it in the 1st line; pick a number of HPs, put it in the 2nd line; pick a race, figure out the number for it, put it in the 3rd/4th line (sorry, I forget); pick a class, figure out the proper number, and put it in the other 4th/3rd line. Then name the file to the dungeon level where this fictional ghost died. (1000' = 20th lv, so filename is '20', 50' = 1st lv, so filename is '1', etc)."

Angband's player ghosts were removed with version 2.7.7 (thanks to John Harris' "Angband version history" article on for pointing that out; the build notes on seemingly redundantly also note ghosts were removed in the next version, 2.7.8, so I hadn't looked back further) as Harrison deemed them "a total hack"; a ghost return under rewritten code was promised for 2.8.0, but did not materialize. As of 4.2.4, player ghosts have not returned.

smbhax November 29, 2022 18:19


smbhax December 4, 2022 23:56

Playing a Dunedain warrior in the DOS port of the first widely distributed version of Angband, 2.4.Frog-knows 1.1, in DOSBox!

0:00 - 50 ft (heading up)
6:48 - town - helm, cloak, gauntlet, boots
26:40 - 50 ft (heading down)
41:06 - 100 ft
54:26 - 150 ft
1:07:55 - town - lantern, shield

Here's that deleted LotR movie clip with that lady telling Aragorn what a "Doo-nuh-dign" is--with pronunciation--while he grins smugly:

The Frog-knows ANGBAND.DOC says this of the Dunedain:


              Dunedain are a race of hardy men from the  west, this  elder
              race surpasses human abilities in  every  field,  especially
              constitution. However being men of the world, very little is
              new to them, and experience is very hard to gain...    They
              can  play  all  classes.  Their  constitution  can  never be

Their stats and skills in Frog-knows:


                      Str  Int  Wis  Dex  Con  Chr  Hit Dice  Rqd % Exp/level

          Human        0    0    0    0    0    0      10          +0
          Half-Elf    -1  +1    0  +1  -1  +1      9        +10
          Elf        -1  +2  +1  +1  -2  +1      8        +20
          Hobbit      -2  +2  +1  +3  +2  +1      7        +10
          Gnome      -1  +2    0  +2  +1  -2      8        +25
          Dwarf      +2  -3  +1  -2  +2  -3      11        +20
          Half-Orc    +2  -1    0    0  +1  -4      10        +10
          Half-Troll  +4  -4  -2  -4  +3  -6      12        +20
          Dunedain    +1  +2  +1  +2  +3  +2      10        +80
          High-Elf    +1  +3  -1  +3  +1  +5      10        +80

          Racial abilities as compared to each other, with 1 the lowest, or
          worst,  and  10 the highest, or best, are listed in the following

                      Disarm Search Stealth Percep Fight Bows Save Infra

          Human        5      5      5      5    5    5    5  None
          Half-Elf      6      7      7      6    4    6    6  20 feet
          Elf          8      9      7      7    3    9    7  30 feet
          Hobbit      10    10    10      10    1    10  10  40 feet
          Gnome        9      7      9      9    2    8    9  40 feet
          Dwarf        6      8      3      5    9    5    8  50 feet
          Half-Orc      3      5      3      2    8    3    3  30 feet
          Half-Troll    1      1      1      1    10    1    1  30 feet
          Dunedain      9      8      7      8    7    8    5  None
          High-Elf      9      8      8      9    7    10    5  40 feet

Apparently in Frog-knows--build notes say this wasn't changed until PC Angband 1.4--the stat maxes for all races and classes are the same, so chugging lots of stat potions will in theory level that side of the playing field eventually, if you play a character long enough.

I tend to play pretty slowly, so uhhh I don't know how exactly that means this will balance out. I'll probably die stupidly at some point, anyway. ''D But for now, make mine Doo-nuh-dign!

Oh, ANGBAND.DOC also says

              Disarming is the  ability  to  remove  traps  (safely),  and
              includes  picking  locks  on  traps and doors.  A successful
              disarming will gain the character some experience.

I'd thought maybe it wasn't but supposedly it is so anyway the idea is good, let's just assume it's working correctly. : D (Because I tried looking up how the EXP change works in the source code and it looks like it's original old Koeneke Moria code and anyhow it's way over my head. ; D)

I learned to sell items to the proper shop in order to make money! : D

Found a bow and some arrows, haven't used 'em yet though. : P In Frog-knows, you just throw ("Throw/Fire" or whatever it's called) the arrows while having the bow equipped. Also you can swap your weapon to an extra Swap slot with X, so I guess I'll use the bow that way. (Alternatively you could use it with say a digging tool...but I wanna use a bow, anyway I seem to be able to do my small amounts of wall $ excavation okay with my sword so eh. ; )

All times are GMT +1. The time now is 07:44.

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2023, vBulletin Solutions Inc.