Policy for adding campaigns to mainline

This is the place for discussing development of mainline campaigns, reporting bugs in them and providing overall feedback.

Moderators: Forum Moderators, Developers

User avatar
Development Team
Battle for Wesnoth
Location: #wesnoth @ irc.freenode.net

Policy for adding campaigns to mainline

Post by Development Team » May 7th, 2007, 8:34 pm

In the future dev releases we will add several new campaigns to mainline and make adding campaigns to mainline a whole lot easier. Here is a guideline with what you have to do to allow the campaign be added to mainline:

* Run wmllint on the campaign before submitting it. This is to make sure your WML syntax is correct and up-to-date.
* Run wmllindent to make the indentation match the rest of mainline.(This is to make the WML easier for our maintainers to read.)

* The campaign must be in wescamp prior to inclusion and all strings that should be translateable have to be marked as such. This is to easy the pain of including the translations and to make sure that everything is ready for translations.

* All custom units should follow the guidelines for the inclusion of new units into mainline, except for the balance part. That is: the units do need to have reasonable arts, animations and all this stuff (at least: 1 standing frame, 1 attack frame per attack and 1 defense frame, if the ability exists: 1 leading and 1 healing frame are needed).
* All units that are not included in data/units/ do have to be in the campaign itself (using campaignspecific units from other (mainline-)content is not the way to go, copy it over. This makes it possible to easier remove content when something is not working and to easier split packages. Though make sure to *only* add units that really are needed. If the only change is adding a portrait, do it via plain WML.

* The campaign should be complete. It doesn't have to be polished in all aspects, but it shouldn't have any gaps. This means the story should have an end, and anything that needs to be done after that can be qualified as "improvement"

* The campaign should be reasonably balanced within each difficulty level, and if the level has the same name as a difficulty level in mainline, it should be about the same difficulty

* The story should be interesting and reasonably consistant with the rest of the wesnoth universe.. This means that if you point to Wesnoth history it should somehow match it. If you do vary history in some places, please mark it accordingly as "legend" or something like this in the intro of the campaign.

* Once your campaign is in SVN the campaign dev will be in charge of it. Most of the time, you will just have to mail him the new version, but he will have all power to change what he feels like changing to either fix bugs/spelling mistakes/changed WML or storyparts that either do not fit with the history to match it better. In general the maintainer of the campaign will not have to get commit access to the Wesnoth-svn just because "his campaign is in" though if we trust the campaign maintainer to do some reasonable work (this takes some time on our side...) he/she will probably get commit access.

* The campaign must be on the campaign server for some time.
* A feedback thread on the forum is a must.
* A mainline developer has to speak in favor of adding the campaign.

* If you got *good* artworks, include it. Do not include placeholder graphics, better use black screens just with text.

* Better do use no portraits than bad / incomplete ones.

* We will remove campaigns that are not maintained good enough or that we do think of don't meet the level of quality we want to achieve. So in general: it will be a lot easier to get something into mainline, but removing it from mainline will be just as simple. If we ship a campaign in a development release it does not mean that it will be shipped in the next stable release, too.

* There will be a forum thread in "Developers Discussions" that is meant for discussing policy changes and nominating campaigns for the addition. In general you will need one core dev (those guys having commit access) who thinks the campaign is worth to add it and someone who is willing to commit it in the end. The thread is more or less only meant to give core devs "hints" about which campaigns *could* be okay.

* Hmmm, hard to tell. In general we will of course consider everything you say about it. Though we might change some smaller things to smooth some edges. As long as you actively do maintain the campaign we will only make smaller changes and fixes, once you abandon it, we might change it more radically (or remove it from mainline).

Following this guideline some campaigns have already been added to mainline since 1.3.2:
"Northern Rebirth" and "Son of the Black Eye" were the first ones to be added following these rules. Then came "Sceptre of Fire" and "Descent Into Darkness"; others are to follow.

Everything in this post is free to be discussed in this forum post.
Last edited by ivanovic on February 24th, 2008, 6:31 pm, edited 3 times in total.