Observer:Profiles:An Interview With Esr

From The Battle for Wesnoth Wiki
Revision as of 01:53, 9 May 2008 by Ddr (talk | contribs) (pasted!)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

1) esr, you have seen a lot of the open-source community - I have heard you are rather famous for it. How does The Battle For Wesnoth fit in to the movement?

As an enjoyable game! Not everything has to have earth-shaking significance in the greater strategic picture, It's kind of relaxing for me to be working on something that's just plain fun.

Yes, I could talk a lot of babble about how Linux needs high-quality games to attract end users. But the truth is that the big market-share numbers are in either MMORPGs or relatively mindless twitch games with glossy 3D graphics; I think Wesnoth attracts a more sophisticated and smaller user base, not the kind of numbers that could make a difference in the operating-system wars.


2) Why do you like Wesnoth? What is your favorite thing about it?

What initially drew me in was the music. I enjoy classical music, and the original high-romantic style music in Wesnoth is really quite good.

I like the tactical-puzzle aspect of the game, both solving them and composing them. I'm mainly interested in campaign play rather than MP. I've just recently added my first campaign, The Hammer of Thursagan to mainline; I don't expect it to be my last.

There are also many attractive aspects in the game's design. It has the one huge negative of being written in C++, which I learned for this project and have come to dislike strongly as a result. But there are lots of other really good things; the amount of stuff that would be code in a less-intelligently-designed game, but is here pushed into WML, is remarkable.


3) How long have you been contributing to the Battle For Wesnoth? How did you first find out about it?

I've been a Wesnoth developer for just shy of a year now. Yep, I just checked; my first commit was April 2007. I originally tripped over Wesnoth in somebody's comparative review of strategy games for Linux, I think.

Sirp gave me dev access himself. Neither of us expected that I would become the project's most prolific committer over the next nine months, but that's what happened so I guess he made a good call there.


4) What do you think of the community that has formed around the game? How does it compare to other communities you have seen?

The Wesnoth community is amazingly healthy and effective. I continue to be impressed by Sirp's success at attracting not just programmers but artists and composers to contribute high-quality work. It's also remarkable that we function so well without much in the way of formal project leadership; Sirp hangs around and says encouraging things occasionally but think I've never seen him make a decision as such. Instead we have a group of senior devs who run forward in parallel and make decisions by consensus, which probably shouldn't work nearly as well as it actually does.

I've found myself reporting to other people the way we weave together all of our communications channels (IRC, email, bug tracker, web forums, svn hook scripts, monitor bots) as an example of good practice for other projects to emulate.


5) Where do you think Wesnoth is going to go in the long term? Do you have any plans for it?

I've already executed most of my big plans for Wesnoth, actually.

When I started, my main goal was to reduce the time and hassle cost of maintaining WML so the devs would be willing to carry more campaigns in mainline. I accomplished that by writing wmlscope and wmllint and wmlindent; nowadays we have thirteen mainline campaigns, more than double the six campaigns when I joined, but the total WML maintenance loud is actually lower than when I joined because I automated out most of the tedium. I expect to continue improving wmllint as the WML maintainers think up more things it can mechanize.

I did all that because I wanted more campaigns in mainline -- so I lifted six from UMC and wrote a seventh. Lifting the best user-maintained campaigns to mainline is something I expect to continue doing; rignt now I'm working on Delfador's Memoirs, and I've got my eye on two other UMC campaigns for later this year.

Somewhere in there I rewrote a significantly large part of the surface UI of the game, especially around dialog and message boxes. The translucent buttonless message windows were mine; I got that idea from a game called Iron Dragon and had to fight a bit of initial resistance to implement them in Wesnoth (happily that resistance melted fast once other devs actually saw the effect I had been aiming for). Also I got rid of a lot of the obnoxious popups and checkboxes at end of scenario in 1.2. My overall goal was to make the interface lighter, less modal, more Macintosh-like. I continue to keep an eye on possible UI improvements but don't have actual plans to do anything major there in the future.

My longest-term dream is to translate this game out of C++ into some language that is non-horrible. I've actually got in my head a design sketch of a rough-cut C++ to Python translator that I might write for this purpose, building on my program ctopy code (http://catb.org/~esr/ctopy/).