Editing Set map details API
Warning: You are not logged in.
Your IP address will be recorded in this page's edit history.The edit can be undone.
Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.
Latest revision | Your text | ||
Line 1: | Line 1: | ||
− | The '''set map details API''' can be used by map creators to assist in creating their | + | The '''set map details API''' can be used by map creators to assist in creating their map. This API can do the things that the built-in WarLight map UI can do, such as setting territory names, setting territory center points, defining the connections between territories, etc. |
== Preparation == | == Preparation == | ||
Line 5: | Line 5: | ||
To use the API, you must first have uploaded your SVG file via the [[Map Making|normal process]]. After it's uploaded, click the button named "Get link for sharing" and you'll get a URL such as: | To use the API, you must first have uploaded your SVG file via the [[Map Making|normal process]]. After it's uploaded, click the button named "Get link for sharing" and you'll get a URL such as: | ||
− | https://www. | + | https://www.warlight.net/SinglePlayer?PreviewMap=5859 |
The number at the end of the URL is your map ID. In the example shown, the map ID is 5859. | The number at the end of the URL is your map ID. In the example shown, the map ID is 5859. | ||
Line 11: | Line 11: | ||
==Usage== | ==Usage== | ||
− | To enter the details of your map without using the UI, you POST some JSON to https://www. | + | To enter the details of your map without using the UI, you POST some JSON to https://www.warlight.net/API/SetMapDetails |
The beginning of the JSON should look like this: | The beginning of the JSON should look like this: | ||
Line 18: | Line 18: | ||
{ | { | ||
− | + | email: 'your@email.com', | |
− | + | APIToken: 'yourapitoken', | |
− | + | mapID: 5859, | |
− | + | commands: [ | |
] | ] | ||
} | } | ||
Line 27: | Line 27: | ||
− | Your | + | Your WarLight account's e-mail address and API token are always required, as is the map ID you're modifying. You may get your API token using the [[Get API Token API]]. You may only enter the ID of a map you own, and the map must be in development mode (the same restrictions apply to editing the map with the UI.) |
Note that after updating a map with the API, your browser may need to be refreshed to see the changes reflected in the UI. | Note that after updating a map with the API, your browser may need to be refreshed to see the changes reflected in the UI. | ||
Line 53: | Line 53: | ||
{ command: 'addTerritoryConnection', id1: 56, id2:78, wrap: "WrapHorizontally" } | { command: 'addTerritoryConnection', id1: 56, id2:78, wrap: "WrapHorizontally" } | ||
− | Specify the two territory IDs as id1 and id2 attributes. It does not matter which territory is 1 and which is 2, since all connections in | + | Specify the two territory IDs as id1 and id2 attributes. It does not matter which territory is 1 and which is 2, since all connections in WarLight are two-way. |
− | As the wrap attribute, specify either Normal, WrapHorizontally, or WrapVertically to tell | + | As the wrap attribute, specify either Normal, WrapHorizontally, or WrapVertically to tell WarLight whether or not the connections wrap around the edge of the map. |
Connections cannot be removed via the API, only added. If you accidentally add a mistaken connection, it can be removed through the UI or you can delete the map and start over. | Connections cannot be removed via the API, only added. If you accidentally add a mistaken connection, it can be removed through the UI or you can delete the map and start over. | ||
Line 63: | Line 63: | ||
{ command: 'addBonus', name: "South America", armies: 4, color: "#DD0000" } | { command: 'addBonus', name: "South America", armies: 4, color: "#DD0000" } | ||
− | Adding a | + | Adding a bonus is similar to clicking the "Add new Bonus" button. The new bonus will initially have no territories assigned, but you can use addTerritoryToBonus below to add territories. |
The armies attribute specifies how many armies per turn the bonus is worth, and the color attribute supports six hex characters is in the format #RRGGBB. The hash sign must be included and all six characters must be specified. | The armies attribute specifies how many armies per turn the bonus is worth, and the color attribute supports six hex characters is in the format #RRGGBB. The hash sign must be included and all six characters must be specified. | ||
Line 80: | Line 80: | ||
Just like making a bonus, this creates an empty distribution mode just as if you clicked "Add new Distribution" in the UI. | Just like making a bonus, this creates an empty distribution mode just as if you clicked "Add new Distribution" in the UI. | ||
− | There are two types: | + | There are two types: Normal and Scenario distributions. To create a normal distribution, just specify a name, as is shown in the first example above. |
The second example shows how to create a scenario distribution. When creating a scenario distribution, also specify the name of each scenario. There must be at least two scenarios defined, although there can be more. | The second example shows how to create a scenario distribution. When creating a scenario distribution, also specify the name of each scenario. There must be at least two scenarios defined, although there can be more. | ||
Line 94: | Line 94: | ||
To add a territory to a scenario distribution, as is shown in the second example, specify the territory id, distribution name, and scenario name. | To add a territory to a scenario distribution, as is shown in the second example, specify the territory id, distribution name, and scenario name. | ||
+ | |||
[[Category:API]] | [[Category:API]] |