Interview with PCTechTalk

Discussion among members of the development team.

Moderator: Forum Moderators

Dacyn
Posts: 1855
Joined: May 1st, 2004, 9:34 am
Location: Texas

Re: I thin k

Post by Dacyn »

Ayin wrote:nobody wants to reply to this seriously...
If we do that, our answers will all be the same :wink:
autolycus
Posts: 481
Joined: July 5th, 2004, 2:58 am
Location: 1º16'N, 103º51'E
Contact:

Re: I thin k

Post by autolycus »

Dacyn wrote:
Ayin wrote:nobody wants to reply to this seriously...
If we do that, our answers will all be the same :wink:
I seriously doubt it. ;)

But here's my two cents' worth:

I think that from the questions asked, the interviewer is more interested in open source phenomena than in Wesnoth. Wesnoth just happens to be one of the more successful-looking and sustainable-looking phenomena. The questions also seem geared towards establishing whether or not open source games will be a challenge to 'mainstream' games, and whether this will be so across a wide spectrum of computer users or not.

Best wishes to Dave as he thinks up good answers (while we bug him with naughty ones!)
as kingfishers catch fire
so dragonflies draw flame
-GMH
quartex
Inactive Developer
Posts: 2258
Joined: December 22nd, 2003, 4:17 am
Location: Boston, MA

Post by quartex »

You have a point autolycus. But the open source phenomena is a bigger news story than Wesnoth is. The good news is that we get to advertise Wesnoth while using it as an example of the open source paradigm. Any press/publicity we get about Wesnoth can only help.
Fortify
Posts: 73
Joined: August 16th, 2004, 2:46 am
Location: Canada

Post by Fortify »

The other thing they are looking for is why did OSS principles work with Wesnoth and what would it take for it to work with other projects. I think Dave has answered this in his previous posts like: How to Write a Game: The Wesnothian Approach

http://www.wesnoth.org/forum/viewtopic.php?t=3294
The shovel saves more lives than the sword.
dms
Posts: 56
Joined: August 11th, 2004, 9:08 pm
Location: New Zealand

Post by dms »

Linus said some things in a recent interview that sound very similar to the Wesnothian approach:
Linus wrote:Nobody should start to undertake a large project. You start with a small _trivial_ project, and you should never expect it to get large. If you do, you'll just overdesign and generally think it is more important than it likely is at that stage. Or worse, you might be scared away by the sheer size of the work you envision.

So start small, and think about the details. Don't think about some big picture and fancy design. If it doesn't solve some fairly immediate need, it's almost certainly over-designed. And don't expect people to jump in and help you. That's not how these things work. You need to get something half-way _useful_ first, and then others will say "hey, that _almost_ works for me", and they'll get involved in the project.
Dave
Founding Developer
Posts: 7071
Joined: August 17th, 2003, 5:07 am
Location: Seattle
Contact:

Post by Dave »

dms wrote:Linus said some things in a recent interview that sound very similar to the Wesnothian approach:
Yes, I actually read this, and thought about how eloquently he expressed the best way to develop open source software :)

David
“At Gambling, the deadly sin is to mistake bad play for bad luck.” -- Ian Fleming
Na'enthos
Posts: 401
Joined: June 13th, 2004, 8:02 pm
Location: Netherlands

Re: Interview with PCTechTalk

Post by Na'enthos »

Dave wrote:PCTechTalk.com is doing an interview with me about the creation of Wesnoth.

Since Wesnoth is very much a community, and not just an individual effort, I'm posting the questions here. Developers and contributors are welcome to reply with insights into the answers to any of the questions they find interesting. After a few days, I will review answers of other developers, and compose answers to the questions, and send them to PCTechTalk.

David
Very nice. Haven't read the thread, so sorry if it's already past the date (as I'm adding my answers when applicable).


9) Is gaming popular in non-Windows environment already?

Er.. yeah it is. It doesn't have to do with the OS but rather with those who use it, I'd say.

11) Which OS platform is most popular amongst the game players?

Mac gamer here.. I think Linux is most popular around here, though.

17) Aren't some of the missions in campaign 1 quite hard to pass? I read alot of comments on that issue!

Strategy (thus; thinking) is required to do well, the more difficult the scenario, the more this appears to be true. It is advised to read the documentation and play the tutorial and therefore know what things modify the strength of one's troops and how choosing troops (which and how many) effects your current and following scenarios. To know how certain aspect affect the game is one thing; to apply them is another. Wesnoth can in that sense be a learning experience, and failing a scenario should not make one think the game is unplayable.. just try again. Yes I know I don't always play Wesnoth that way myself.. but this is kinda the correct answer, right?

18 ) How can people help and contibute to the game?

Visit http://www.wesnoth.org/(forum).. ideas, testers, artists and other developers are always welcome.
Dave
Founding Developer
Posts: 7071
Joined: August 17th, 2003, 5:07 am
Location: Seattle
Contact:

Post by Dave »

Here are my initial responses:

1) Let's start with a few details about you... Who is David White?

I'm 24 years old, born in Sydney, Australia. I have a beautiful wife, and hope to one day have equally beautiful children. I now live in Texas, USA. I'm currently employed as a software developer.


2) How was the idea for "The Battle for Wesnoth" born?

I think that most game programmers have several ideas floating around in their head at any given time. One of these ideas was a Civilization-like game. I had played Civilization III, and thought it was a nice game, but it lacked some important features. In particular, I thought I could write a game that had a more challenging AI.

But, the complexity of writing such a game was obvious. Besides, I wasn't really interested in trying to write a 'clone' of an already very good commercial game, and there was already a very good Free Civilization-like game: FreeCiv.

I still wanted to write a strategy game though. One which would be oriented toward providing players with a challenging and fun single player experience. At this stage, I hadn't played any games other than Civilization III very much for around seven years. I simply hadn't enjoyed any of the other games I had seen or played.

I thought back to some games I had played as a child, that I had truly enjoyed. I thought about some of the lesser-known titles that never got the recognition I thought they deserved.

Two games in particular stood out in my mind. They were both Sega Genesis games, and they were both fairly little-known, especially outside of Japan. These games were Master of Monsters, and Warsong (aka Langrisser). These were both strategy games, that shared some concepts.

I thought back to how much I enjoyed playing those games. I read web sites describing their rules, strategies, strengths, and flaws.

So, I designed a new game system in my head. It used some of the concepts of these two games, removed some concepts I felt flawed, and added some of my own. Then I started development.

3) Is it hard to maintain an open source project?

To maintain it well, yes. There are always bugs reported by users. Some are reproduceable on my system, and some are not.

Wesnoth is available on numerous different platforms - Windows XP/NT/2000/98, GNU/Linux, FreeBSD, Solaris, MacOSX, BeOS, etc. To make it always work well on all these platforms, with different compilers, and so forth, is very difficult.

This job is made a little easier by the dedicated 'porters' we have. For instance, our MacOSX porter is very committed to making Wesnoth on Mac high-quality and stable. He has helped immensely in tracking down issues on OSX and adding OSX-specific features.

4) How many programmers are working on the game?

Well, in terms of programmers who write C++, there are currently around five who have CVS write access and are active. This is very fluid though -- the time developers have available fluctuates alot.

Also, of course, there are many developers and contributors who are not programmers - there are artists, musicians, scenario/map designers, translators, textual editors, and so forth. The total number of contributors is very large -- there are probably fifty people who have contributed in some way over the last few months, and the total number of contributors over the life of the project is probably over a hundred.

In fact, I think one of the biggest challenges the project is facing at the moment is co-ordinating acceptance of contributions. Often someone will take the effort to contribute something -- some artwork, music, code, etc -- only to have it languishing for weeks before a developer finally gets round to reviewing and committing it. We are trying to overcome this problem, as we obviously value contributions made, but it has been challenging to co-ordinate.

Sometimes I get tired of being a 'manager', and just want to go back to being a humble programmer :)


5) You say that you wanted to write a game that falls into the middle between complexity and triviality - is it there now in your view?

I feel so. We're adding less and less features to the C++ engine, and more and more additions consist of simply changing our configuration language.

The core engine is around 50K lines of code, which is a small-moderate size. I don't think Wesnoth could be called 'trivial', but it's not a behemoth, either.

6) Which is the most important part of the game - is it the gameplay?

The most important part of any game is its gameplay. Other aspects of the game, such as graphics, sound, music, storyline, and so forth, enhance the gameplay, but without gameplay, you have no game at all.

That's not to say that other aspects are unimportant. A game with good gameplay can be greatly enhanced by good graphics, music, and so forth. I, personally, find it difficult to become immersed in a game that has no graphics, or very poor graphics. For this reason I haven't played NetHack for more than an hour.

Also, of course, software fundamentals are incredibly important. The game must be easy to install, have an easy to use interface, and be stable.


7) Are the graphics the most time-consumming process for the game? I see you have quite good storyline already. Do you plan to have commercial-like graphics in the game?

I can't really comment on how time-consuming the graphics are, since I don't draw any graphics for Wesnoth. (Well, I did once, but they were really bad :) I would imagine our artists find them time-consuming.

I also don't 'plan' the graphics for the game. I'm a programmer, not an artist, and I simply rely on people with artistic skills who happen to like the game to contribute art to it. Wesnoth has been very fortunate to have a very hard-working art team who have made some excellent graphics for it.

By 'commercial-like graphics', I assume you mean graphics comparable to games released by major game publishers in the last couple of years. In that case, the answer is that it will if some artists who have the skill, time, and compulsion decide to contribute such art to Wesnoth.

Whether that'll ever happen, I can't say for sure, but let's put things in perspective a little here. The commercial games industry has poured literally millions of dollars into developing as high-quality graphics as possible over the last ten years. In my opinion, high-quality graphics has been the most prominent focus of the industry.

This is mostly because good graphics sell games. Good graphics can appear on the back of a box. Good graphics can appear in screenshots on the Internet. Good graphics can astonish a user playing a demo that is too shallow to tell if the actual game is any good or not.

One of the advantages of a Free game is that we don't have to be governed by market forces. We don't have to use an isometric view like Civilization III does, just because it looks better, even though it makes it more difficult to see where everything is.

Would I like to see better graphics in Wesnoth? Sure. But it's not a must-have feature. The graphics are already better than I ever imagined them to be, and I think our artistic team has done an excellent job.


8) What do you think of the judgement that open-source gaming/coding is not popular?

I think it's fair to say that open-source gaming is currently not very popular. The main reason for this is that there aren't very many good open-source games, and of the ones there are, there are often factors which destroy appeal to most potential players, relegating themselves to a niche audience.

For instance, many open source games appear to be little more than attempted clones of popular commercial games. I find it difficult to see how such a game can become popular itself, unless it has substantial advantages over the commercial game.

The only clone I know of that has some such advantages is FreeCiv. It has several nice features that aren't in Civilization II. However, as much as I have played it, it seems geared toward multiplayer, and is still a regression from Civilization II in respect to single player play. Very few players are going to want to play a long game like that online with others.

Of course, Wesnoth has problems appealing to a mass-audience too. Its graphics certainly aren't as catchy as most commercial games, and turn-based games don't have a large following compared to first-person shooters and real-time strategy games.

That's not to say that's a real problem for us though. The aim of Wesnoth is to write a game that I like, and hopefully some others like too. It's not to appeal to as broad an audience as possible.

As to the topic of whether open-source game coding is popular, I think there are lots of people who would like to write or contribute to an open-source game. The big problem is that a game requires alot of content as well as code -- level design, storyline, art, etc.


9) Is gaming popular in non-Windows environment already?

I don't really know, to be honest. The main issue is that non-Windows environments have so little market share on the desktop that nothing can really be considered 'popular'.

Relative to other applications, I would say probably not, simply because there aren't that many games out there that one would want to play, and hard core gamers stick to Windows.


10) Windows or *NIX - your personal choice? And why?

At the moment I use GNU/Linux, but I am considering switching back to Windows.

I like GNU/Linux alot, but for me as a C++ programmer, the 'killer application' is a good C++ compiler, and Visual C++ on Windows is much better in my opinion than either GNU C++ or Intel C++ on GNU/Linux.

Visual C++ can compile Wesnoth on my machine in two minutes. GNU C++ takes twenty minutes, and Intel C++ isn't much better. Also GNU C++ has had some horrible bugs, produces slower code, and is less standards-conforming than Visual C++.

Sadly, the Free software community doesn't seem much interested in C++. C, Python, Perl, LISP, and now Ruby are preferred languages, and as such, support for C++ is poor. Which is sad, since in my opinion, for a program like Battle for Wesnoth, C++ is the best language around.

Also, it's frustrating having to carefully pick hardware that works with GNU/Linux. I know that we as consumers should put pressure on hardware makers to standardize their interfaces, so drivers can easily be written for any system, but this is frustrating to do.

When I do use Windows, though, I still use alot of Free software. I use Thunderbird for email, Firefox for web browsing, X-Chat for IRC, Gaim, Vim, and of course, I use Cygwin extensively. Pretty much the only non-Free user-level app I use is Visual C++.

GNU/Linux does offer some big advantages, and I really like to use it, but since I spend so much of my time programming, I find it difficult to argue with the much improved productivity of ten times faster compile times.

I do look very very forward to the day when the issues GNU/Linux has on the desktop are addressed.


11) Which OS platform is most popular amongst the game players?

It's hard to say. Obviously, Windows has the largest potential pool of players, but there are so many other games for Windows that Wesnoth can easily get lost.

One thing that has kinda surprised me is the number of Mac OSX players. There are lots of them, and they are very very pleased to see a nice game that works on their platform.

I'd have to venture a guess at it being pretty close to an even split between GNU/Linux, Mac OSX, and Windows. Truly hard to say though.


12) An opinion I read somewhere: "There aren't many OSS games, simply because most of the OSS people are not gamers". Is it true, and really why aren't there many OSS games?

I don't think it's because OSS people aren't gamers. I think it's because to write a game, you have to write more than just an engine. You need alot of content: music, artwork, levels, story, etc. To get people with all these talents together and thinking collectively is hard. It is difficult to get inspired to write a game when your game looks terrible because there are no good artists, and you don't have any sound at all.

I had to start Wesnoth by writing the code, and trying the best I could with graphics (which were really terrible), and then wait and hope people who liked the basic game concept would come along and help with aspects I wasn't good at. This is a hard thing to do, and I'm not sure how and why it is exactly that I have been successful at it.


13) What's the biggest advantage of the OSS games?

Well, I think the biggest advantage is the same as the advantage of all OSS software: it is (or should be) software written by people wanting to 'scratch an itch'.

I started writing Wesnoth because there was a certain type of game that I wanted to play that I couldn't find anywhere. I had this itch, and I wanted to scratch it.

I was thus free to work on this game simply to make something that I would enjoy playing. No marketing department to make happy. No deadlines to meet. Nothing like that. Simply the writing of a game that I would find fun.

This is the competitive advantage that all OSS has over commercial software: it's written by its users. It's thus written by people who care alot about writing good software.

Associated with this are other advantages: quick support, a friendly development community where any user can come and make suggestions and contribute, and so on.


14) And what's the biggest issue that stands to open-source games when it comes to the popularity of commercial games? Time? Money? or ...?

I think it's being able to assemble a team of committed individuals who are willing and able to work together for a common goal.

I think quite a few people would like to contribute to open source games, but to start with, the skillset of these people is heavily skewed toward programming: there aren't as many artists or musicians who are interested.

An even bigger problem is that even when a team does get together, it is likely their visions for the game will diverge sharply. In particular, I think that artists and programmers just think very differently :)

I think the only feasible approach is to make someone the lead developer, and give them the final say on all matters. Wesnoth has been very fortunate in having very talented developers who understand the necessity of this development model.

15) If you had to gather everything for OSS gaming in one sentence what would it be?

"People working together on a game that they find fun, and hope others find fun too."


16) Now back to "The Battle for Wesnoth"... Do you plan on expanding the game after 1.0? How do you see its development in a few years time?

I'm mainly focused on version 1.0 at the moment. It's likely some development will continue after that, since people still have some feature ideas. I would like to make the engine more flexible, so that it can be used to create a variety of hex-based strategy games, but I want to see how much interest there is in that first.

Honestly I don't expect to be involved in Wesnoth development in a few years time. I think that one should write a game, make it into a complete work, and then move on to something else.

If I have an idea for another game I would find fun -- or even just another type of program I would find useful -- I might start a new project. If I find an existing open source game project that I find enjoyable, and think can be improved upon, I might join that game project.


17) Aren't some of the missions in campaign 1 quite hard to pass? I read alot of comments on that issue!

Yes, they are. I like difficult games, and so Wesnoth is quite difficult :)

However I do think it is a little too difficult, especially since we have other campaigns. I do have plans to make it easier. Other people can develop the 'advanced' campaigns that are challenging. I plan to make the main campaign easier.

18) How can people help and contibute to the game?

They can tell other people about the game. They can give feedback, and report problems on our forums: http://forum.wesnoth.org, they can contribute with music, art, sound effects, or code.

Basically, if they see something which can be changed and will make the game more fun for them, they can change it, and then send us the change. If it makes the game more fun for us too, we will distribute their change to everyone else too :) If we don't think their change makes the game more fun for us, they can still post their change on the forum, and people who do think the change is more fun are welcome to use it.


19) What's your advice to the newbies in open source programming? And in programming at all?

Learn how to write good, stable code, and then always write code like that. It doesn't matter if you're writing (what you think will be) a throw-away test program, make it solid, stable, and high quality code.

Not only is it an excellent opportunity to practice code writing, but it's surprising how often code that was originally written for testing purposes is eventually re-used in production.

Don't make compromises. Just don't write bad code. Ever.

Also, I of course have to trot out the time-worn advice of the ancients, just because it's such good advice: Keep It Simple, Stupid.

20) Thank you !!! I wish you and "The Battle for Wesnoth" a great success....

Thank you! :)
“At Gambling, the deadly sin is to mistake bad play for bad luck.” -- Ian Fleming
Post Reply