Observer:Profiles:An Interview With Shadow Master

From The Battle for Wesnoth Wiki
Revision as of 01:58, 9 May 2008 by Ddr (talk | contribs) ('''An Interview With [http://www.wesnoth.org/wiki/User:ShikadiLord Shadow Master]''': edited!)

1) You have made a campaign, Invasion from the Unknown. Do you have any tips for campaign designers, pitfalls to avoid?

In the process of writing the 30 planned scenarios of "Invasion from the Unknown", and getting it to completion, I made many tremendous mistakes that I still regret. One of them was the campaign's length: I chose an amount of scenarios that I could not play-test in less than a week and a half, which was a very unpleasant experience for me as a player. To solve the issue, I removed some scenarios that contributed little to the story, and put some of their dialogues in those scenarios I was happy with. That reduced the campaign's length from 30 scenarios to 26, and then I was able to release version 1.0, after rewriting a few scenarios that were incredibly easy yet essential to the plot.

Afterwards I had a small discussion with ESR about the length and the possibility of inclusion in mainline. He personally did not like to handle such a big campaign (which is a trouble for Legend of Wesmere's inclusion in mainline, by the way) for revising story texts, dialogues, etc. So, I did another heavy revision pass to the campaign, collapsing some very long maps into small ones, and splitting it into two episodes that could be picked independently from the campaign menu, or played as a whole by selecting the adequate option at the end of the first one. This helped me a lot to balance and play-test further the existing scenarios, to a point I consider the campaign complete. But you can see now that polishing it took me thrice the amount of time it took me to write the original 30 scenarios.

I guess that the biggest cause of this quirky design is that I did not have a story written down - I designed it in the way, while writing the WML for "Invasion from the Unknown". ESR wrote a "Campaign Design How-to" shortly after the first playable release of my campaign (with 10 scenarios); if it had been done before, I probably would not have made such a mess of a project. Nevertheless, when I had 16 scenarios completed, I felt I could not bear the task of driving it to completion. But at the end, I managed to finish it, and to polish it with that How-to's help.

At the end, I can be proud that I never had to ask for artwork for the myriads of custom units my campaign uses. I made most of the artwork, including sprites for two of the main characters, and an entire faction of foes, the Shaxthals. The only artwork the campaign still lacks are animation sets for these custom units (which I just started to make, see my artwork thread in the forums) and portraits for characters. At the moment I'm using placeholder portraits (some of them recolored) to please myself when playing, but I hope that in the future the campaign can attract artists to help with them. Currently, kitty has demonstrated interest on making art for this campaign, but of course I prefer (as a mainline developer) that she makes generic portraits for the game instead, as she planned.


I see on your wiki page that you have made many contributions to the C++ side of Wesnoth. In your opinion, what is one area of the wesnoth code that wants improving the most?

The Graphical User Interface. At the moment it is pretty obscure and inflexible from the programming side, and almost impossible to customize (i.e. custom game themes) from the artists' point of view. The toolkit used by Wesnoth is also very unpleasant - we lack separate classes and artwork for radio buttons (which are present in old and famous toolkits such as GTK 1.x), combo boxes are visually represented as generic command buttons, and it is currently impossible to create completely custom dialogs in WML, which would be great for the long wanted pick-up items management interface for units (which wold allow players to give items to other units after having picked them up, to drop them, etc.), which would make many RPG-style multiplayer content look more professional.

Another problem with this toolkit is its lack of use. I recently had to handle some obscure dialogues in the built-in map editor that use SDL drawing functions directly for text labels, instead of using the provided gui::label class which would make the code much more readable. My best guess is that it is part of the reason the built-in map editor is in such a poor state, not maintained by anyone in particular.

(As far as I know, Mordante/SkeletonCrew is currently rewriting the GUI toolkit code in the development versions (1.5.x), and it already works, but it still requires some additional features he wants in order to replace completely the default toolkit.)

Besides the GUI, there is also a great lack of people who can handle Theme WML both in mainline and in user-made content. Mordante already expressed interest in rewriting the Theme WML dialect to make it easier to use for content authors, but I don't know if that could be done for version 1.6.0. Of course I would love to see that - my campaign has some unfinished GUI theme code and/or artwork that are not used until I get to learn this arcane dialect.

Other areas of Wesnoth are already being improved by other of our developers, or are part of the recently announced Google Summer of Code projects.

In the future, I would like to rewrite the multiplayer games' side set-up interface so that instead of having different screens for host and clients, there was an unified, more user-friendly interface, with built-in support for specifying whether one of the players is ready or not.


3) What is the development culture like in the Battle for Wesnoth, compared to other projects?

I have not been contributor or developer in any project but Wesnoth, but I do know the history of many other open-source games. Wesnoth has evolved over time and has achieved a grade of quality that I have yet to see in other free (as in freedom) game. Being a community-based project has surely helped Wesnoth's development; any competent person can fix or improve the different aspects of the game by submitting a patch, and if they make such contributions in a regular basis, or in a significant amount of importance, they eventually get developer access to the mainline subversion repository. This makes the project not constrained to a closed circle of people, and incarnates the spirit of free software in all its aspects.

Albeit the small amount of time I have been player (since version 0.9.6), and my incredibly recent work as developer (since 1.3.8), I can tell the game has evolved in a way I could never have imagined by playing version 1.0. It felt more than complete enough for an open-source software made by volunteers, but now it feels and looks professional enough to have been made by a medium-sized software company.


4) What is your opinion on custom art for UMCs? Can art be better used in the mainline?

Custom art is that, custom. UMCs have need for completely new artwork, units, stories, while mainline does not. Mainline has very specific needs in the artwork area now that our core units set is stable, and those are having idle animations, better defense animations and directional graphics for every unit, besides having standing animations for units that justify it (such as flying creatures or fire-wielding units). Jetryl et al are working very hard on remaking some legacy graphics (adding team-color pixels in the way), which is why the task of making new animations is mostly left to the vast community of Wesnoth, rather than the core art developers/contributors. They of course do not have all the time of the world for this, so if more capable people could help them to get the TC project to completion, they would have more time for those wanted animations and other subtle fanciness (particles, animated missile animations, etc.) which are already supported by the engine, yet lack the graphics to be used.

I (and I think is the case of many other artists such as Wayfarer and Eternal) have focused on UMC artwork development to learn the basics in the process, before attempting to do improvements in mainline. Often I have made artwork for custom units in my campaign, and later I find myself completely replacing it in favor of something more mainline-quality. I think I have learned a lot while at it, but I don't feel ready to face the challenge of animating every sprite I make, which is why I do not contribute to mainline yet.


5) You are making an SVN for user made campaigns. Would you care to tell our readers, in a nutshell, what it is?

The SVN is made, and there are a few projects already using it (Invasion from the Unknown, Thunderstone, Delfador's Memoirs, Era of Strife, The Dark Hordes, in order of appearance). It is an initiative that I and ESR put to practice for coordinate development of User Made Content. Some add-ons used WesCamp-i18n for that purpose in the past (Northern Rebirth, Son of the Black Eye), but that strongly deviated from the repository's official purpose and hampered translations management.

For that reason we started on SourceForge.net this project, using the provided version control capabilities. The project has a CIA bot that reports every commit on the repository to the #wesnoth-umc-dev IRC channel at irc.freenode.net, and to the mailing list.

Another goal of the project is to provide a secure and permanent medium for storing and backing up campaigns so that when they get abandoned, someone else can take them over with minimal effort. This repository also serves as an excellent release book-keeping tool for Invasion from the Unknown, the only add-on so far that takes full advantage of the version control possibilities thanks to a set of scripts I wrote for it. I hope to get them usable for every author in the future.

Also I would like to provide a facility for storing .pbl files in a secure manner (i.e. privately for each author). But I still do not know how to achieve that, or how much time it will take to be done.