Roguelike News

From time to time, the original post,
email or web pages news provides more
information that can be added to the
news sections.

Main | News | Development | Archives | Articles
Links | FAQs | Contact : rogue@skoardy.demon.co.uk
Ben Harrison's thoughts on maintaining Angband.
Posted to rec.games.roguelike.angband by Ben Harrison.

There has been much talk of creating a Dev Team, or picking a
new maintainer, to continue active Angband development, and
of what the key issues are for the next version of Angband.
So I might as well talk a little about some relevant issues.

First of all, I would like to point out that most people seem
to think that Angband is basically where it should be, that is,
a clean, stable platform from which variants can be developed
(except for a few bugs and such).  In particular, many people
do not want to be forced to solve quests, kill new monsters,
learn a new spell system, etc, just because somebody thinks
that it might make a neat change.

Secondly, it is important that Vanilla Angband continue to be
the "simplest" Angband, that is, one which will work on any
system (even a 286, last I checked), and for which any major
extensions are clearly "optional" (graphics, sound, etc), and
one from which it is easy to create personalized variants.

Thirdly, personally, I think that the most important things to
add to Vanilla Angband are actually things to make it easier to
create variants, either at compile time, or better yet, with a
compile time option to create variants at run time, by selecting
appropriate configuration options like which spell system to use,
which monster set to use, etc.  To satisfy the second goal above,
it should always be possible to compile a version of Angband with
a pre-defined set of options corresponding to the standard game
as people have become accustomed to seeing it.  I would love to
get to the point where the "guts" of the major variants could be
(cleanly) folded back into the standard source.

Finally, the hardest part about being the maintainer of Angband
(and I admit that the maintaining part has not been very active
recently) is resisting the temptation to stick in things as they
come around, like random artifacts, and bizarre terrain features,
and new spell systems, and such, just because they seem like they
might be cool.  Especially when by doing so people are likely to
become more interested in the variants and less in the basic game.

If somebody wants to take over active maintenance of Angband, they
can always do so by simply choosing what they think is the will of
the people, coding that up into a working system, and releasing a
new version of Angband (presumably called Angband 2.9.0 if it has
any significant improvements, or Angband 3.0.0 if it is a massive
rewrite), and hoping that people accept it as the "right thing".

If enough people accept your release, you could presumably become
the new maintainer by default, as was the case in 1995 when I took
over from Charles Swiger.  Back then, of course, it was not really
possible to make variants, because the code was still pretty messy.
Also, a lot of people seem to want me to continue as the maintainer
simply because they basically trust my judgement, and they fear that
a new maintainer might change the game in the future in ways that
they might dislike.  So perhaps the "coup" method is not really a
valid technique any more.

If anyone has a lot of spare time, and wants to take a pass through
the code to add player ghosts, fix some bugs, clean up the code, etc,
but does not want to shoulder the responsibility of taking over the
active maintenance, they can always just submit the changes to me as
a whole and hope that I feel comfortable blessing the changes as a
new (incremental) release.  Presumably, any changes which just fixed
bugs, or which had no user visible effects, or which were optional
based on compilation/runtime options, and which were clean code in
the same standard as the existing code, would be accepted without
question.  I would rather have one large chunk of changes made by
one person than a collection of small changes made by many people,
because then the quality of the changes tends to be uniform, though
I have occasionally dropped in smaller self-contained changes.

It is interesting, by the way, that nobody has tried to code up a
clean implementation of player ghosts or random artifacts with the
intent of having it adopted as an (optional) extension, perhaps
people were afraid that I would not accept it, or something.

As always, people are free to make variants, and the successful
variants tend to acquire a following of their own, without needing
to "replace" Vanilla Angband.  In fact, I know many people who use
Vanilla Angband to teach people the "interface" and "concept" of
Angband, and then introduce them to Zangband so they can focus on
the stuff which is actually "different".

Anyway, in closing, whatever happens, I would hope that if anybody
decides that they just *have* to have a new version, even if it means
taking matters into their own hands and trying to take over as a new
maintainer, that they would at least keep me in the loop, so I know
what is going on.  :-)

--- Ben ---
© Copyright 1999 Darren Hebden.