This page describes how to make your own user campaign for use with Battle for Wesnoth. Please note that this document is not normative - its author is not a Wesnoth developer. I'm simply reporting on what works for me, and on what developers have prescribed elsewhere. If you see any errors, please fix them.
See also DebuggingCampaigns if your scenario doesn't load.
There are several steps to building a single player campaign in Wesnoth. The mechanics are covered in the sections below:
- WesCamp (How to make your campaign translatable, and get in touch with translators)
What follows is a collection of advice to aspiring campaign designers extracted from the Wesnoth fora. For a more in-depth treatment including heuristics for scenario and campaign balancing, see the Campaign Design How-To.
Start with Something Manageable
If you set out to make an epic campaign spanning the whole history of Wesnoth, you'll likely (not necessarily, though) become bored or frustrated along the way somewhere and give up. It's much easier to start with a small story and add elements to it than it is to cut an epic down to the length of a haiku.
- Shade (author of The Rise of Wesnoth) wrote:
- I started TRoW last April, even after it was scenario complete it was still eating all of my free time (Time not spent sleeping, at school / work, or with loved ones / friends) until mid-November... Even now there is still bugfixing and a couple of things I'd like to add... and keeping it up to date with the game engine and any new happenings on the WML front... so there is still quite a lot to keep you busy after you are done... The forums are littered with half finished epics... Before you commit to an epic think long and hard. I don't want to discourage you too much... But it is a lot of 'work' (& fun)
What separates a campaign from a single scenario is the ability to tell a story. Consequently, what keeps people coming back for more is a good, interesting story mixed with good, interesting game play. If you have a good idea of where the story of your campaign is going when you start, the little pieces will fall into place much more easily. After all, it worked for Pixar!
- Scott (author of Liberty, the outlaw campaign) wrote:
- Here is how I wrote Liberty.
- Write a rough story and plot
- Decide how many scenarios you want to have
- Divide the story between the scenarios so you can decide what will happen in each scenario
- where are you?
- who are you fighting and why?
- what do you have to do in this scenario?
- where does the hero want to go next?
- Decide on the "hook" for each scenario. There are a lot of different possible setups for scenarios, and if you want to avoid the boring repetition of "Kill the 2 enemy leaders" you can list interesting combinations of enemies, allies, shroud/fog, day/night effects, recruiting and terrain situations, etc. and pick a good mix to keep the combat interesting and fun.
- All of this has happened without doing any WML, but now you have enough to start coding.
Don't be shy to post whatever you've created for others to look at. We all had to learn too, and there are many people on the Scenario and Campaign Development forum (http://www.wesnoth.org/forum/viewforum.php?f=8) who are eager to help people learn.
- Turin (author of Eastern Invasion) wrote:
- I'm working on a loyalist campaign now. I already have the basic plot. I am wondering if anyone wants to playtest my completed levels (i am done with two). Thus i want to know if i should just post the new files as attachments, or what. There are two map files, two scenario files, an image file, a unit file, and you have to change the game file to access the campaign from the 'campaign menu. So tell me how i should make them accessable.
There are too many quotations to pick one for this maxim. The best way to learn how to do something is to copy it from someone else's campaign. It's polite to ask first, and most Campaign designers are happy to see small bits of their WML living in other campaigns. It's generally poor form to copy whole scenarios, maps, and campaigns, though. And especially poor form to do so without permission.