Difference between revisions of "CampaignServerWML"

From The Battle for Wesnoth Wiki
(Listing Available Campaigns)
(Listing Available Campaigns)
Line 18: Line 18:
 
**** ''filename'' - filename campaign is stored in (currently the same as ''name'').
 
**** ''filename'' - filename campaign is stored in (currently the same as ''name'').
 
**** ''icon'' - path to an image in the standard image directory for Wesnoth. This path must use forward slashes (/). It cannot refer to custom images included with the campaign. This image is displayed as an icon by the campaign client built into Wesnoth.
 
**** ''icon'' - path to an image in the standard image directory for Wesnoth. This path must use forward slashes (/). It cannot refer to custom images included with the campaign. This image is displayed as an icon by the campaign client built into Wesnoth.
**** ''passphrase'' - will always be the empty string rather than the real passphrase.
 
 
**** ''size'' - the size of the campaign in bytes on the campaign server.
 
**** ''size'' - the size of the campaign in bytes on the campaign server.
 
**** ''timestamp'' - when this version of the campaign was uploaded.
 
**** ''timestamp'' - when this version of the campaign was uploaded.

Revision as of 18:08, 8 October 2005

Campaign Server WML

This page describes the WML commands exchanged between campaign download clients and a campaign server. Note that this WML is not used in the game engine.

Listing Available Campaigns

This request is used to retrieve a list of campaigns available on the server and some overview information about them.

  • Request
    • [request_campaign_list]
  • Response
    • timestamp - what time the campaign server thought it was when this response was generated. You shouldn't count on this as a guaranty that no new campaigns will appear with previous update times. This could be used to detect significant clock skew or possibly used as an approximate time for how far you need to look back for updated campaigns.
    • [campaigns]
      • [campaign]
        • author - author(s) of the campaign.
        • description - description of the campaign. For pre 1.0 campaigns this should also describe the playability.
        • downloads - the number times the campaign (including previous versions) has been downloaded directly from the campaign server.
        • filename - filename campaign is stored in (currently the same as name).
        • icon - path to an image in the standard image directory for Wesnoth. This path must use forward slashes (/). It cannot refer to custom images included with the campaign. This image is displayed as an icon by the campaign client built into Wesnoth.
        • size - the size of the campaign in bytes on the campaign server.
        • timestamp - when this version of the campaign was uploaded.
        • title - campaign title.
        • version - version of the campaign. The recommended format is x.y.z where x, y and z are decimal strings. x should be 0 for campaigns that are not yet complete.

Downloading a Campaign

This command is used to download a specified campaign from the campaign server.

  • Request
    • [request_campaign]
      • name - the name of the campaign. Note this is not the title and shouldn't have spaces in it.
  • Response
    • author - author(s) of the campaign.
    • description - description of the campaign. For pre 1.0 campaigns this should also describe the playability.
    • icon - path to an image in the standard image directory for Wesnoth. This path must use forward slashes (/). It cannot refer to custom images included with the campaign. This image is displayed as an icon by the campaign client built into Wesnoth.
    • name - the name of the campaign. Note this is not the title and shouldn't have spaces in it.
    • passphrase - this is used to control updates to campaigns on the server. For existing campaigns, if the passphrase doesn't match the update will be rejected. You can't change the passphrase yourself. If you lose or need to change the passphrase you need to contact the server administrator.
    • timestamp - the time the campaign was last uploaded to the campaign server. This is a decimal string containing the number of seconds since the unix epoch.
    • title - the title of the campaign. This is not a translatable string.
    • version - version of the campaign. The recommended format is x.y.z where x, y and z are decimal strings. x should be 0 for campaigns that are not yet complete.
    • [file]
      • name - the name of the file. This does not include any path information.
      • contents - the content of the file (binary data).
    • [dir]
      • name - the name of the directory. This does not include any path information.
      • This tag may contain [file] or [dir] subtags (the latter are recursive).

Uploading a Campaign

This command is used to upload a new or updated version of an add on campaign to the campaign server.

  • Request
    • [upload]
      • author - author(s) of the campaign.
      • description - description of the campaign. For pre 1.0 campaigns this should also describe the playability.
      • icon - path to an image in the standard image directory for Wesnoth. This path must use forward slashes (/). It cannot refer to custom images included with the campaign. This image is displayed as an icon by the campaign client built into Wesnoth.
      • name - the name of the campaign. Note this is not the title and shouldn't have spaces in it.
      • passphrase - this is used to control updates to campaigns on the server. For existing campaigns, if the passphrase doesn't match the update will be rejected. You can't change the passphrase yourself. If you lose or need to change the passphrase you need to contact the server administrator.
      • title - the title of the campaign. This is not a translatable string.
      • version - version of the campaign. The recommended format is x.y.z where x, y and z are decimal strings. x should be 0 for campaigns that are not yet complete.
      • [data]
        • [file]
          • name - the name of the file. This does not include any path information.
          • contents - the content of the file (binary data).
        • [dir]
          • name - the name of the directory. This does not include any path information.
          • This tag may contain [file] or [dir] subtags (the latter are recursive).
  • Response
    • [message]
      • message - translatable string that indicates that the campaign upload was successful.

Deleting a Campaign

This command is used to delete an existing campaign from the campaign server.

  • Request
    • [delete]
      • name - The name of the cmpaign to delete.
      • passphrase - This must match the passphrase on record for the campaign in order for the campaign to be deleted.
  • Response
    • [message]
      • message - translatable string that says that the campaign was erased.

Request License Information

Retrieve the terms of the license used for any uploaded campaigns. You may not upload a campaign if you don't (or can't) aggree to the license. Wesnoth requires campaigns (including images and sound) to be licensed under the GPL.

  • Request
    • [request_terms]
  • Response
    • [message]
      • message - translatable string containing the text of the license.

See Also