Packaging user campaigns

Discussion and development of scenarios and campaigns for the game.

Moderator: Forum Moderators

Post Reply
jp30
Posts: 124
Joined: April 2nd, 2004, 10:59 am
Contact:

Packaging user campaigns

Post by jp30 »

I've noticed that there is great diversity in the way that user campaigns are packaged. I use an automake based tarball, like wesnoth itself; others distribute zipfiles with various different internal layouts. It would be nice if there was a standard internal layout for user campaign packages. I can think of some desiderata:

1. It should be an easy, mechanical procedure on any of the platforms wesnoth supports to install a user campaign package.

2. It should be easy to install a user campaign package either system-wide, or user-wide.

3. The layout of a standard user campaign package should be close to what people are doing already.

4. It might be good to allow packages in this format to install non-campaign add-ons (themes? multiplayer maps?)

So, here's my suggestion of how this could work. First, a standard user campaign package should be a zipfile, since everyone on every platform wesnoth supports understands and can unpack zipfiles. It should contain an "installed image" of the campaign - i.e. it should have every file needed to play the campaign, in the same relative locations the files would be in once installed.

That just leaves the question of what path the files within the zipfile should be, relative to the root of the zipfile. This is where there's a lot of diversity at the moment. In some campaign packages you see (e.g) "data/campaigns/My_Campaign.cfg", in others "campaigns/My_Campaign.cfg" in others "My_Campaign.cfg". We could do with some legislation here. My feeling is that the second of these is best, as the first fails desideratum (2), and the third desideratum (4).

Of course, this doesn't mean that campaign writers have to use this layout to store their campaigns themselves; just that they should be able to produce a package layed out in this way. Then we can give users standardised instructions to install a user campaign.

Any comments?
Post Reply