Every map XML file must contain the base
<map> element. It contains modules that specify the map name, version, objective, authors, contributors and all other map settings. As per our our XML Conventions, all main children of the
<map> element must be inline with it and not indented. Each subsequent element inside of the main children elements must be indented with 4 spaces relative to the parent element. Never use tabs.
||The main map element containing all the modules used by the map.||Map Sub-elements|
proto attribute specifies what version of Game Manager the XML file was created for. If this value is higher than the version of Game Manager that is running, the map won’t load. If it’s lower, the map will load but the XML may be interpreted in an outdated way. Mapmakers should always use the latest supported XML version, and this is required of new maps that are to be added to the Stratus Network repository.
||Required The map's XML protocol version.||2.0.0|
||Required The name of the map.||String|
||Required The version number of the map which uses Semantic Versioning.||Version|
||Required The game type(s) of the map.||Game Type|
||Required The objective of the map. What must be done in order to win the game.||String|
||The development stage of this map. Only maps with
||Required The authors of the map.||Authors Sub-elements|
||The contributors to the map.||Contributors Sub-elements|
<map proto="2.0.0"> <name>Super Awesome Map</name> <version>1.0.0</version> <game>dtm</game> <objective>Destroy the other team's monument!</objective> </map>
Game Types specify the type of match that the map is. It is required for game types to be defined as different types can have different properties.Maps can have multiple game types, however, some game types are not compatible with others.
||Capture the Wool||
||Capture the Flag|
||King of the Hill|
||Destroy the Core||
||Destroy the Monument|
<!-- a map with both monument and core objectives --> <game>dtm</game> <game>dtc</game>
Authors and Contributors
The authors and contributors elements provide information about who created and helped create the map. There can be multiple authors and contributors to a map. The contribution attribute should be used to specify what their contribution to the map was. A player must be credited by their UUID. A UUID is a unique user identifier that is used to keep track of players even if they change their name. You can check player UUID’s at mcuuid.net.
||A major author of the map. Child to
||A contributor to the map. Child to
||Required The UUID used to identify a player.||UUID|
||The contribution this author or contributor made to the map.||String|
<authors> <author uuid="f690a591-348b-482e-a18d-7779d0c0a28c"/> <!-- mitchiii_ --> <author uuid="a9f11454-beac-4cc3-a138-1780802c8794" contribution="Awesome contributions"/> <!-- Crazy_ --> </authors> <contributors> <contributor uuid="c2a4c847-653e-482a-b62e-d7f8b64330cb" contribution="Clarification of element usage"/> <!-- ALM --> </contributors>
Below is a template which includes all of the elements discussed on this page which are required. Fill out all the elements in accordance to your map. In order for the XML to be valid and load onto the server, you still must add the following facets:
- A single format (Teams or Players)
- A single game type (Capture the Wool, Capture the Flag, or one of the others)
You may also want to include:
- Kits, to give players gear when they spawn
- Kill Rewards, to reward players each kill
- Applicators, to control where and what can be interacted with in the map
You can find more complete templates for each gamemode here.