Sunday, July 25, 2010

AngbandBase

So, the Angband Variant Project has taken a bit more shape, with a code repository (edit 5/12/10: now moved here). Anyone interested is welcome to help; just get a github account, and I'll add you as a collaborator.

The idea in brief is to have the code for file-handling, display, UI etc separated out from the code for the game proper (where game can mean Vanilla or a variant). AngbandBase should contain all the code that there would be no reason for a variant maintainer not to want.

As I see it, the two big advantages are easier UI maintenance, and portability to more platforms for everyone; the main disadvantage is just getting it organised and keeping it organised.

There are some tricky issues at the boundaries of what to include and what to exclude (targeting, pathfinding and menus among them).

Some day, I may actually do some work on it instead of talking about it and pasting stuff from the forum into my blog.

Saturday, July 17, 2010

Mortality

I've thought a lot about this, and I can't say I'm a fan.

Saturday, July 3, 2010

Angband Variant Project

A couple of years ago I made an unofficial UI update of Oangband 1.1.0. I have been vaguely planning for a while to do a similar thing for Posband, but it would be more work and I haven't got around to it yet. One of the main reasons against doing this is the issue of now keeping Oangband 110u up to date; every time I fix a UI bug or add a feature to FA, there's pressure (from me, if no-one else) to do the same thing for O110u.

A few years earlier Christer Nyfalt wrote Anglib, a C++ library to do the low-level Angband code, intended for use as a base to build variants on. A couple of variants were basically ported to it, but it never really caught on.

A few years earlier still, Tim Baker had written Omniband, which was a very impressive Tk interface to Angband, Oangband, Zangband and Kamband.

So first there was Angband. Then it was rewritten so that it was easy to write variants, and people did. And variant maintainers, and the Angband maintainer, are constantly borrowing ideas and code from each other. And every now and then, someone will collect some of the features of variants back together. And that's all good.

Some other relevant developments include the involvement of multiple developers in Angband under takkaria's maintainership; and the increasingly continuous development cycle, where many people are playing with the latest code instead of playing the same version for months or years until the next version is released.

I guess I would like to see a less ambitious version of Anglib - a shared low-level/UI codebase, with multiple variants (as FA and O now) having their own code built on top of it. This raises questions:

1. What would the relationship to Vanilla be?
2. How best to package and distribute?
3. What variants?
4. Who would contribute?
5. How do you manage it all?

Answers and opinions welcome.

Thursday, July 1, 2010

Death. Again.

So, another Oangband Shadow Fairy Necromancer bites the dust. As so often, it was just stupidity that killed this one. I was trying to dispel a red dragon pit for the experience and treasure, and let too many of them get too close, and didn't bail out in time, and surely one more breath won't kill me...

Here's the washup. Note the -4HP.

For the most successful bits of the whole epic saga, see here.