Data Schema::Campaign File - Subject9x/battleMETAL GitHub Wiki

Campaign Files are how new campaigns are added to the main menu system in menu.dat the files must be housed in metaldata/data/campaigns and appear in the list in alphabetical order of filename. This allows you to add your own map campaigns without having to recompile any code.


File Spec notes

  • you can use comments in the text file, but only '//' per line.
  • string values are contained in single quotes; 'foo'.
  • all values are strings, no floats or vectors.

File Values

  • 'name' : the main Display Name that will show in the available list.
  • 'map' : the starting map file that will load when player chooses this campaign.
  • 'desc' : a short description of the campaign, can use '+' for bulleted lists, ' | ' for new lines.
  • 'author' : the author of the campaign and its maps, give yourself some credit :).
  • 'mechs' : the starting mechs - these are mech ID's and will be available at campaign start.
  • 'items' : the starting weapons - these are weapons ID's and will be available at campaign start.

Map List

the specific map files in the campaign are then listed out using the following syntax: :|

  • example: o1m1:o1m2|none

Newgame+ tokens

To mark the actual "first" playable mission in the game, and to mark the "last" playable map, use the following tokens

  • "+" : for campaign first map.
  • "*" : for campaign end map. The reason for this is to account for animaticOnly maps that will not save to the player save file.
  • example: o3m6:credits|none|* (this marks an 'end' map to the campaign).
⚠️ **GitHub.com Fallback** ⚠️