<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://war.app/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=TBest</id>
	<title>War.app Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://war.app/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=TBest"/>
	<link rel="alternate" type="text/html" href="https://war.app/wiki/Special:Contributions/TBest"/>
	<updated>2026-04-18T17:56:44Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.42.1</generator>
	<entry>
		<id>https://war.app/wiki/index.php?title=Map_requirements&amp;diff=5013</id>
		<title>Map requirements</title>
		<link rel="alternate" type="text/html" href="https://war.app/wiki/index.php?title=Map_requirements&amp;diff=5013"/>
		<updated>2020-04-10T14:49:01Z</updated>

		<summary type="html">&lt;p&gt;TBest: /* Map Limits */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page lists the requirements that all maps must meet in order to [[Making maps public|go public]].&lt;br /&gt;
&lt;br /&gt;
== Requirements ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Connections are Visible ===&lt;br /&gt;
&lt;br /&gt;
Players must be able to tell what territories connect just by looking at the map.&lt;br /&gt;
&lt;br /&gt;
The biggest mistake some map creators make is to connect two territories over water, but don&#039;t include any indication on the map that they connect.  It&#039;s customary to use yellow lines to show where the connections are - see the [https://www.warzone.com/SinglePlayer?PreviewMap=12 Earth Map] for an example.  It&#039;s not necessary to use yellow lines, it just must be obvious where the connections are.  It may be obvious that the territories connect in the map designer, but it needs to be obvious in the real game too.&lt;br /&gt;
&lt;br /&gt;
https://d32kaghj56y4ei.cloudfront.net/static/img/ConnectionMissing.png&lt;br /&gt;
&lt;br /&gt;
In maps with tricky connections, you may need to take special care to ensure that the connections can be reasonably figured out just by looking at the map (without clicking around).  A common rule of thumb is that territories that touch must connect, and territories that connect but don&#039;t touch must show the connection somehow.&lt;br /&gt;
&lt;br /&gt;
=== Tiny Territories ===&lt;br /&gt;
&lt;br /&gt;
All territories must be big enough to fit a two-digit army number.  Often people&#039;s first instinct is to keep territories real-life sized, however this doesn&#039;t work well in Warzone&#039;s engine.  This is especially evident once you try playing the [[Mobile Client|mobile version of Warzone]].&lt;br /&gt;
&lt;br /&gt;
Take, for example, Hawaii in the [https://www.warzone.com/SinglePlayer?PreviewMap=12 Earth Map].  Hawaii is a very small island, but in the Earth map it&#039;s sized significantly larger so that it can fit the army number.  &lt;br /&gt;
&lt;br /&gt;
In the map designer, you&#039;ll find a button labeled Show Example Armies.  When clicking this, all army numbers must fit entirely within the territory&#039;s borders.&lt;br /&gt;
&lt;br /&gt;
https://d32kaghj56y4ei.cloudfront.net/static/img/TinyTerritories.png&lt;br /&gt;
&lt;br /&gt;
See [[Inkscape tips]] for a guide on how to enlarge territories to make them fit their army number.&lt;br /&gt;
&lt;br /&gt;
=== Copyright Violations ===&lt;br /&gt;
&lt;br /&gt;
By uploading a map to Warzone, you are asserting that you own or have the necessary licenses, rights, consents, and permissions to the content within.  See the [https://www.warzone.com/TermsOfService Terms of Service] for full details.&lt;br /&gt;
&lt;br /&gt;
=== Missing or Mistaken Connections ===&lt;br /&gt;
&lt;br /&gt;
Maps makers should make an effort to find and missing or mistaken territory connections.  Missing connections are a very common problem, as it is difficult to find every last connection error within the map designer alone.&lt;br /&gt;
&lt;br /&gt;
The best way to find these kinds of mistakes is to play the map with real humans. If you need help finding players to test your map, make a thread on the map development [[forum]] asking for volunteers to help test your map.  There are always lots of people willing to help test.&lt;br /&gt;
&lt;br /&gt;
Incorrect or missing connections are also much more pronounced in the map previewer (which you can access via links in the Get Link for Sharing window), where all territories connected to the clicked one turn bright yellow.  Map creators should create several [[Testing maps|test games]] on their map with real human players and play them out.&lt;br /&gt;
&lt;br /&gt;
=== Territories are named ===&lt;br /&gt;
&lt;br /&gt;
All territories should be named appropriately.  Naming many territories the same thing, or just typing gibberish makes it hard for players to coordinate in team games.&lt;br /&gt;
&lt;br /&gt;
=== Bonus Links ===&lt;br /&gt;
&lt;br /&gt;
Bonus Links are the small boxes that show how many armies each bonus is worth.  Without these, it is difficult to tell where the bonuses are.  See [[Creating the SVG]] for instructions on how to add bonus links.&lt;br /&gt;
&lt;br /&gt;
When possible, bonus links should be placed near or on top of the bonus they correspond to and be big enough to fit the army number that appears inside of it.&lt;br /&gt;
&lt;br /&gt;
=== Appropriate Size ===&lt;br /&gt;
&lt;br /&gt;
The SVG file specifies the width and height of the map in pixels.  The recommended starting point is 1000x1000, however map creators can reduce this if they are making a small map or increase it if they&#039;re making a big map.&lt;br /&gt;
&lt;br /&gt;
The size specified in the SVG file determines how big the army numbers will be on the map.  This size must be appropriate for the map.  If a very small map is stretched into a huge SVG file, the army numbers will be too small to see without zooming in.  In order to avoid unnecessary zooming, a large SVG file should only be used if the map really needs that much room to fit all of its territories.&lt;br /&gt;
&lt;br /&gt;
=== Territories should not overlap ===&lt;br /&gt;
&lt;br /&gt;
Player-controllable territories can never overlap with each other.  If you find yourself in a situation where you feel like you want one territory to be on top of another, you need to cut a hole in the outer territory in the shape of the inner one. This makes the inner one look like it&#039;s on top, even though technically the territories aren&#039;t overlapping.&lt;br /&gt;
&lt;br /&gt;
=== Testing Maps ===&lt;br /&gt;
&lt;br /&gt;
The map must be a real map and not just a test.  It&#039;s a good idea to make your first map just a couple of territories to prove you understand how to make a real map, however maps without any strategic value should not go public.  You&#039;re free to put these into testing mode to play games on them, however.&lt;br /&gt;
&lt;br /&gt;
=== Map Limits ===&lt;br /&gt;
&lt;br /&gt;
Maps are limited to 30 distribution modes, 1500 bonuses and 3200 territories. The limit on distribution modes and bonuses was changed with update [https://www.warzone.com/ChangeLog/3.23.0.htm 3.23.6  ]&lt;br /&gt;
&lt;br /&gt;
The .svg file also has a max file size limit. Uploading a file that is too big will give the following alert. &lt;br /&gt;
&lt;br /&gt;
Sorry, maps must be smaller than 2,000,000 bytes.  This SVG is 9487917 bytes long.  If you have images in your map that you used for tracing, you should remove them before uploading since they&#039;ll just waste space.  It&#039;s also possible that the SVG objects contain more detail than is necessary.  Try using Inkscape&#039;s Simplify feature (Path -&amp;gt; Simplify) on complex objects to reduce their detail, which will reduce their size.  If you need more help, please post on the forum.&lt;br /&gt;
&lt;br /&gt;
== Grandfathered Maps ==&lt;br /&gt;
&lt;br /&gt;
Players sometimes notice maps that are already public that don&#039;t meet some of these requirements.  Older maps that were created before these requirements existed are grandfathered in, such as the Wheel map that does not have bonus links or the United States Big map that had tiny territories.  The presence of the old violations does not exempt new maps from the requirements.&lt;br /&gt;
&lt;br /&gt;
== See Also == &lt;br /&gt;
&lt;br /&gt;
* [[Map Making]]&lt;br /&gt;
* [[Map guidelines]]&lt;br /&gt;
* [[Inkscape tips]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Map Making]]&lt;/div&gt;</summary>
		<author><name>TBest</name></author>
	</entry>
	<entry>
		<id>https://war.app/wiki/index.php?title=Map_requirements&amp;diff=5012</id>
		<title>Map requirements</title>
		<link rel="alternate" type="text/html" href="https://war.app/wiki/index.php?title=Map_requirements&amp;diff=5012"/>
		<updated>2020-04-10T14:47:46Z</updated>

		<summary type="html">&lt;p&gt;TBest: /* Map Limits */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page lists the requirements that all maps must meet in order to [[Making maps public|go public]].&lt;br /&gt;
&lt;br /&gt;
== Requirements ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Connections are Visible ===&lt;br /&gt;
&lt;br /&gt;
Players must be able to tell what territories connect just by looking at the map.&lt;br /&gt;
&lt;br /&gt;
The biggest mistake some map creators make is to connect two territories over water, but don&#039;t include any indication on the map that they connect.  It&#039;s customary to use yellow lines to show where the connections are - see the [https://www.warzone.com/SinglePlayer?PreviewMap=12 Earth Map] for an example.  It&#039;s not necessary to use yellow lines, it just must be obvious where the connections are.  It may be obvious that the territories connect in the map designer, but it needs to be obvious in the real game too.&lt;br /&gt;
&lt;br /&gt;
https://d32kaghj56y4ei.cloudfront.net/static/img/ConnectionMissing.png&lt;br /&gt;
&lt;br /&gt;
In maps with tricky connections, you may need to take special care to ensure that the connections can be reasonably figured out just by looking at the map (without clicking around).  A common rule of thumb is that territories that touch must connect, and territories that connect but don&#039;t touch must show the connection somehow.&lt;br /&gt;
&lt;br /&gt;
=== Tiny Territories ===&lt;br /&gt;
&lt;br /&gt;
All territories must be big enough to fit a two-digit army number.  Often people&#039;s first instinct is to keep territories real-life sized, however this doesn&#039;t work well in Warzone&#039;s engine.  This is especially evident once you try playing the [[Mobile Client|mobile version of Warzone]].&lt;br /&gt;
&lt;br /&gt;
Take, for example, Hawaii in the [https://www.warzone.com/SinglePlayer?PreviewMap=12 Earth Map].  Hawaii is a very small island, but in the Earth map it&#039;s sized significantly larger so that it can fit the army number.  &lt;br /&gt;
&lt;br /&gt;
In the map designer, you&#039;ll find a button labeled Show Example Armies.  When clicking this, all army numbers must fit entirely within the territory&#039;s borders.&lt;br /&gt;
&lt;br /&gt;
https://d32kaghj56y4ei.cloudfront.net/static/img/TinyTerritories.png&lt;br /&gt;
&lt;br /&gt;
See [[Inkscape tips]] for a guide on how to enlarge territories to make them fit their army number.&lt;br /&gt;
&lt;br /&gt;
=== Copyright Violations ===&lt;br /&gt;
&lt;br /&gt;
By uploading a map to Warzone, you are asserting that you own or have the necessary licenses, rights, consents, and permissions to the content within.  See the [https://www.warzone.com/TermsOfService Terms of Service] for full details.&lt;br /&gt;
&lt;br /&gt;
=== Missing or Mistaken Connections ===&lt;br /&gt;
&lt;br /&gt;
Maps makers should make an effort to find and missing or mistaken territory connections.  Missing connections are a very common problem, as it is difficult to find every last connection error within the map designer alone.&lt;br /&gt;
&lt;br /&gt;
The best way to find these kinds of mistakes is to play the map with real humans. If you need help finding players to test your map, make a thread on the map development [[forum]] asking for volunteers to help test your map.  There are always lots of people willing to help test.&lt;br /&gt;
&lt;br /&gt;
Incorrect or missing connections are also much more pronounced in the map previewer (which you can access via links in the Get Link for Sharing window), where all territories connected to the clicked one turn bright yellow.  Map creators should create several [[Testing maps|test games]] on their map with real human players and play them out.&lt;br /&gt;
&lt;br /&gt;
=== Territories are named ===&lt;br /&gt;
&lt;br /&gt;
All territories should be named appropriately.  Naming many territories the same thing, or just typing gibberish makes it hard for players to coordinate in team games.&lt;br /&gt;
&lt;br /&gt;
=== Bonus Links ===&lt;br /&gt;
&lt;br /&gt;
Bonus Links are the small boxes that show how many armies each bonus is worth.  Without these, it is difficult to tell where the bonuses are.  See [[Creating the SVG]] for instructions on how to add bonus links.&lt;br /&gt;
&lt;br /&gt;
When possible, bonus links should be placed near or on top of the bonus they correspond to and be big enough to fit the army number that appears inside of it.&lt;br /&gt;
&lt;br /&gt;
=== Appropriate Size ===&lt;br /&gt;
&lt;br /&gt;
The SVG file specifies the width and height of the map in pixels.  The recommended starting point is 1000x1000, however map creators can reduce this if they are making a small map or increase it if they&#039;re making a big map.&lt;br /&gt;
&lt;br /&gt;
The size specified in the SVG file determines how big the army numbers will be on the map.  This size must be appropriate for the map.  If a very small map is stretched into a huge SVG file, the army numbers will be too small to see without zooming in.  In order to avoid unnecessary zooming, a large SVG file should only be used if the map really needs that much room to fit all of its territories.&lt;br /&gt;
&lt;br /&gt;
=== Territories should not overlap ===&lt;br /&gt;
&lt;br /&gt;
Player-controllable territories can never overlap with each other.  If you find yourself in a situation where you feel like you want one territory to be on top of another, you need to cut a hole in the outer territory in the shape of the inner one. This makes the inner one look like it&#039;s on top, even though technically the territories aren&#039;t overlapping.&lt;br /&gt;
&lt;br /&gt;
=== Testing Maps ===&lt;br /&gt;
&lt;br /&gt;
The map must be a real map and not just a test.  It&#039;s a good idea to make your first map just a couple of territories to prove you understand how to make a real map, however maps without any strategic value should not go public.  You&#039;re free to put these into testing mode to play games on them, however.&lt;br /&gt;
&lt;br /&gt;
=== Map Limits ===&lt;br /&gt;
&lt;br /&gt;
Maps are limited to 30 distribution modes, 1500 bonuses and 3200 territories. The limit on distribution modes and bonuses was changed with update [https://www.warzone.com/ChangeLog/3.23.0.htm 3.23.6  ]&lt;br /&gt;
&lt;br /&gt;
The .svg file also has a max filesize limit. Uploading a file that is too big will give the following alert. &lt;br /&gt;
&lt;br /&gt;
Sorry, maps must be smaller than 2,000,000 bytes.  This SVG is 9487917 bytes long.  If you have images in your map that you used for tracing, you should remove them before uploading since they&#039;ll just waste space.  It&#039;s also possible that the SVG objects contain more detail than is necessary.  Try using Inkscape&#039;s Simplify feature (Path -&amp;gt; Simplify) on complex objects to reduce their detail, which will reduce their size.  If you need more help, please post on the forum.&lt;br /&gt;
&lt;br /&gt;
== Grandfathered Maps ==&lt;br /&gt;
&lt;br /&gt;
Players sometimes notice maps that are already public that don&#039;t meet some of these requirements.  Older maps that were created before these requirements existed are grandfathered in, such as the Wheel map that does not have bonus links or the United States Big map that had tiny territories.  The presence of the old violations does not exempt new maps from the requirements.&lt;br /&gt;
&lt;br /&gt;
== See Also == &lt;br /&gt;
&lt;br /&gt;
* [[Map Making]]&lt;br /&gt;
* [[Map guidelines]]&lt;br /&gt;
* [[Inkscape tips]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Map Making]]&lt;/div&gt;</summary>
		<author><name>TBest</name></author>
	</entry>
	<entry>
		<id>https://war.app/wiki/index.php?title=Map_requirements&amp;diff=5006</id>
		<title>Map requirements</title>
		<link rel="alternate" type="text/html" href="https://war.app/wiki/index.php?title=Map_requirements&amp;diff=5006"/>
		<updated>2020-03-25T01:13:01Z</updated>

		<summary type="html">&lt;p&gt;TBest: /* Map Limits */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page lists the requirements that all maps must meet in order to [[Making maps public|go public]].&lt;br /&gt;
&lt;br /&gt;
== Requirements ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Connections are Visible ===&lt;br /&gt;
&lt;br /&gt;
Players must be able to tell what territories connect just by looking at the map.&lt;br /&gt;
&lt;br /&gt;
The biggest mistake some map creators make is to connect two territories over water, but don&#039;t include any indication on the map that they connect.  It&#039;s customary to use yellow lines to show where the connections are - see the [https://www.warzone.com/SinglePlayer?PreviewMap=12 Earth Map] for an example.  It&#039;s not necessary to use yellow lines, it just must be obvious where the connections are.  It may be obvious that the territories connect in the map designer, but it needs to be obvious in the real game too.&lt;br /&gt;
&lt;br /&gt;
https://d32kaghj56y4ei.cloudfront.net/static/img/ConnectionMissing.png&lt;br /&gt;
&lt;br /&gt;
In maps with tricky connections, you may need to take special care to ensure that the connections can be reasonably figured out just by looking at the map (without clicking around).  A common rule of thumb is that territories that touch must connect, and territories that connect but don&#039;t touch must show the connection somehow.&lt;br /&gt;
&lt;br /&gt;
=== Tiny Territories ===&lt;br /&gt;
&lt;br /&gt;
All territories must be big enough to fit a two-digit army number.  Often people&#039;s first instinct is to keep territories real-life sized, however this doesn&#039;t work well in Warzone&#039;s engine.  This is especially evident once you try playing the [[Mobile Client|mobile version of Warzone]].&lt;br /&gt;
&lt;br /&gt;
Take, for example, Hawaii in the [https://www.warzone.com/SinglePlayer?PreviewMap=12 Earth Map].  Hawaii is a very small island, but in the Earth map it&#039;s sized significantly larger so that it can fit the army number.  &lt;br /&gt;
&lt;br /&gt;
In the map designer, you&#039;ll find a button labeled Show Example Armies.  When clicking this, all army numbers must fit entirely within the territory&#039;s borders.&lt;br /&gt;
&lt;br /&gt;
https://d32kaghj56y4ei.cloudfront.net/static/img/TinyTerritories.png&lt;br /&gt;
&lt;br /&gt;
See [[Inkscape tips]] for a guide on how to enlarge territories to make them fit their army number.&lt;br /&gt;
&lt;br /&gt;
=== Copyright Violations ===&lt;br /&gt;
&lt;br /&gt;
By uploading a map to Warzone, you are asserting that you own or have the necessary licenses, rights, consents, and permissions to the content within.  See the [https://www.warzone.com/TermsOfService Terms of Service] for full details.&lt;br /&gt;
&lt;br /&gt;
=== Missing or Mistaken Connections ===&lt;br /&gt;
&lt;br /&gt;
Maps makers should make an effort to find and missing or mistaken territory connections.  Missing connections are a very common problem, as it is difficult to find every last connection error within the map designer alone.&lt;br /&gt;
&lt;br /&gt;
The best way to find these kinds of mistakes is to play the map with real humans. If you need help finding players to test your map, make a thread on the map development [[forum]] asking for volunteers to help test your map.  There are always lots of people willing to help test.&lt;br /&gt;
&lt;br /&gt;
Incorrect or missing connections are also much more pronounced in the map previewer (which you can access via links in the Get Link for Sharing window), where all territories connected to the clicked one turn bright yellow.  Map creators should create several [[Testing maps|test games]] on their map with real human players and play them out.&lt;br /&gt;
&lt;br /&gt;
=== Territories are named ===&lt;br /&gt;
&lt;br /&gt;
All territories should be named appropriately.  Naming many territories the same thing, or just typing gibberish makes it hard for players to coordinate in team games.&lt;br /&gt;
&lt;br /&gt;
=== Bonus Links ===&lt;br /&gt;
&lt;br /&gt;
Bonus Links are the small boxes that show how many armies each bonus is worth.  Without these, it is difficult to tell where the bonuses are.  See [[Creating the SVG]] for instructions on how to add bonus links.&lt;br /&gt;
&lt;br /&gt;
When possible, bonus links should be placed near or on top of the bonus they correspond to and be big enough to fit the army number that appears inside of it.&lt;br /&gt;
&lt;br /&gt;
=== Appropriate Size ===&lt;br /&gt;
&lt;br /&gt;
The SVG file specifies the width and height of the map in pixels.  The recommended starting point is 1000x1000, however map creators can reduce this if they are making a small map or increase it if they&#039;re making a big map.&lt;br /&gt;
&lt;br /&gt;
The size specified in the SVG file determines how big the army numbers will be on the map.  This size must be appropriate for the map.  If a very small map is stretched into a huge SVG file, the army numbers will be too small to see without zooming in.  In order to avoid unnecessary zooming, a large SVG file should only be used if the map really needs that much room to fit all of its territories.&lt;br /&gt;
&lt;br /&gt;
=== Territories should not overlap ===&lt;br /&gt;
&lt;br /&gt;
Player-controllable territories can never overlap with each other.  If you find yourself in a situation where you feel like you want one territory to be on top of another, you need to cut a hole in the outer territory in the shape of the inner one. This makes the inner one look like it&#039;s on top, even though technically the territories aren&#039;t overlapping.&lt;br /&gt;
&lt;br /&gt;
=== Testing Maps ===&lt;br /&gt;
&lt;br /&gt;
The map must be a real map and not just a test.  It&#039;s a good idea to make your first map just a couple of territories to prove you understand how to make a real map, however maps without any strategic value should not go public.  You&#039;re free to put these into testing mode to play games on them, however.&lt;br /&gt;
&lt;br /&gt;
=== Map Limits ===&lt;br /&gt;
&lt;br /&gt;
Maps are limited to 30 distribution modes, 1500 bonuses and 3200 territories. The limit on distribution modes and bonuses was changed with update [https://www.warzone.com/ChangeLog/3.23.0.htm 3.23.6  ]&lt;br /&gt;
&lt;br /&gt;
== Grandfathered Maps ==&lt;br /&gt;
&lt;br /&gt;
Players sometimes notice maps that are already public that don&#039;t meet some of these requirements.  Older maps that were created before these requirements existed are grandfathered in, such as the Wheel map that does not have bonus links or the United States Big map that had tiny territories.  The presence of the old violations does not exempt new maps from the requirements.&lt;br /&gt;
&lt;br /&gt;
== See Also == &lt;br /&gt;
&lt;br /&gt;
* [[Map Making]]&lt;br /&gt;
* [[Map guidelines]]&lt;br /&gt;
* [[Inkscape tips]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Map Making]]&lt;/div&gt;</summary>
		<author><name>TBest</name></author>
	</entry>
	<entry>
		<id>https://war.app/wiki/index.php?title=Map_requirements&amp;diff=5005</id>
		<title>Map requirements</title>
		<link rel="alternate" type="text/html" href="https://war.app/wiki/index.php?title=Map_requirements&amp;diff=5005"/>
		<updated>2020-03-25T01:12:11Z</updated>

		<summary type="html">&lt;p&gt;TBest: /* Requirements */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page lists the requirements that all maps must meet in order to [[Making maps public|go public]].&lt;br /&gt;
&lt;br /&gt;
== Requirements ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Connections are Visible ===&lt;br /&gt;
&lt;br /&gt;
Players must be able to tell what territories connect just by looking at the map.&lt;br /&gt;
&lt;br /&gt;
The biggest mistake some map creators make is to connect two territories over water, but don&#039;t include any indication on the map that they connect.  It&#039;s customary to use yellow lines to show where the connections are - see the [https://www.warzone.com/SinglePlayer?PreviewMap=12 Earth Map] for an example.  It&#039;s not necessary to use yellow lines, it just must be obvious where the connections are.  It may be obvious that the territories connect in the map designer, but it needs to be obvious in the real game too.&lt;br /&gt;
&lt;br /&gt;
https://d32kaghj56y4ei.cloudfront.net/static/img/ConnectionMissing.png&lt;br /&gt;
&lt;br /&gt;
In maps with tricky connections, you may need to take special care to ensure that the connections can be reasonably figured out just by looking at the map (without clicking around).  A common rule of thumb is that territories that touch must connect, and territories that connect but don&#039;t touch must show the connection somehow.&lt;br /&gt;
&lt;br /&gt;
=== Tiny Territories ===&lt;br /&gt;
&lt;br /&gt;
All territories must be big enough to fit a two-digit army number.  Often people&#039;s first instinct is to keep territories real-life sized, however this doesn&#039;t work well in Warzone&#039;s engine.  This is especially evident once you try playing the [[Mobile Client|mobile version of Warzone]].&lt;br /&gt;
&lt;br /&gt;
Take, for example, Hawaii in the [https://www.warzone.com/SinglePlayer?PreviewMap=12 Earth Map].  Hawaii is a very small island, but in the Earth map it&#039;s sized significantly larger so that it can fit the army number.  &lt;br /&gt;
&lt;br /&gt;
In the map designer, you&#039;ll find a button labeled Show Example Armies.  When clicking this, all army numbers must fit entirely within the territory&#039;s borders.&lt;br /&gt;
&lt;br /&gt;
https://d32kaghj56y4ei.cloudfront.net/static/img/TinyTerritories.png&lt;br /&gt;
&lt;br /&gt;
See [[Inkscape tips]] for a guide on how to enlarge territories to make them fit their army number.&lt;br /&gt;
&lt;br /&gt;
=== Copyright Violations ===&lt;br /&gt;
&lt;br /&gt;
By uploading a map to Warzone, you are asserting that you own or have the necessary licenses, rights, consents, and permissions to the content within.  See the [https://www.warzone.com/TermsOfService Terms of Service] for full details.&lt;br /&gt;
&lt;br /&gt;
=== Missing or Mistaken Connections ===&lt;br /&gt;
&lt;br /&gt;
Maps makers should make an effort to find and missing or mistaken territory connections.  Missing connections are a very common problem, as it is difficult to find every last connection error within the map designer alone.&lt;br /&gt;
&lt;br /&gt;
The best way to find these kinds of mistakes is to play the map with real humans. If you need help finding players to test your map, make a thread on the map development [[forum]] asking for volunteers to help test your map.  There are always lots of people willing to help test.&lt;br /&gt;
&lt;br /&gt;
Incorrect or missing connections are also much more pronounced in the map previewer (which you can access via links in the Get Link for Sharing window), where all territories connected to the clicked one turn bright yellow.  Map creators should create several [[Testing maps|test games]] on their map with real human players and play them out.&lt;br /&gt;
&lt;br /&gt;
=== Territories are named ===&lt;br /&gt;
&lt;br /&gt;
All territories should be named appropriately.  Naming many territories the same thing, or just typing gibberish makes it hard for players to coordinate in team games.&lt;br /&gt;
&lt;br /&gt;
=== Bonus Links ===&lt;br /&gt;
&lt;br /&gt;
Bonus Links are the small boxes that show how many armies each bonus is worth.  Without these, it is difficult to tell where the bonuses are.  See [[Creating the SVG]] for instructions on how to add bonus links.&lt;br /&gt;
&lt;br /&gt;
When possible, bonus links should be placed near or on top of the bonus they correspond to and be big enough to fit the army number that appears inside of it.&lt;br /&gt;
&lt;br /&gt;
=== Appropriate Size ===&lt;br /&gt;
&lt;br /&gt;
The SVG file specifies the width and height of the map in pixels.  The recommended starting point is 1000x1000, however map creators can reduce this if they are making a small map or increase it if they&#039;re making a big map.&lt;br /&gt;
&lt;br /&gt;
The size specified in the SVG file determines how big the army numbers will be on the map.  This size must be appropriate for the map.  If a very small map is stretched into a huge SVG file, the army numbers will be too small to see without zooming in.  In order to avoid unnecessary zooming, a large SVG file should only be used if the map really needs that much room to fit all of its territories.&lt;br /&gt;
&lt;br /&gt;
=== Territories should not overlap ===&lt;br /&gt;
&lt;br /&gt;
Player-controllable territories can never overlap with each other.  If you find yourself in a situation where you feel like you want one territory to be on top of another, you need to cut a hole in the outer territory in the shape of the inner one. This makes the inner one look like it&#039;s on top, even though technically the territories aren&#039;t overlapping.&lt;br /&gt;
&lt;br /&gt;
=== Testing Maps ===&lt;br /&gt;
&lt;br /&gt;
The map must be a real map and not just a test.  It&#039;s a good idea to make your first map just a couple of territories to prove you understand how to make a real map, however maps without any strategic value should not go public.  You&#039;re free to put these into testing mode to play games on them, however.&lt;br /&gt;
&lt;br /&gt;
=== Map Limits ===&lt;br /&gt;
&lt;br /&gt;
Maps are limited to 30 distribution modes, 1500 bonuses and 3200 territories. The limit on distribution modes and bonuses was changed with update [https://www.warzone.com/ChangeLog/3.23.0.htm 3.23.0  ]&lt;br /&gt;
&lt;br /&gt;
== Grandfathered Maps ==&lt;br /&gt;
&lt;br /&gt;
Players sometimes notice maps that are already public that don&#039;t meet some of these requirements.  Older maps that were created before these requirements existed are grandfathered in, such as the Wheel map that does not have bonus links or the United States Big map that had tiny territories.  The presence of the old violations does not exempt new maps from the requirements.&lt;br /&gt;
&lt;br /&gt;
== See Also == &lt;br /&gt;
&lt;br /&gt;
* [[Map Making]]&lt;br /&gt;
* [[Map guidelines]]&lt;br /&gt;
* [[Inkscape tips]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Map Making]]&lt;/div&gt;</summary>
		<author><name>TBest</name></author>
	</entry>
	<entry>
		<id>https://war.app/wiki/index.php?title=Mod_API_Reference:UI&amp;diff=5003</id>
		<title>Mod API Reference:UI</title>
		<link rel="alternate" type="text/html" href="https://war.app/wiki/index.php?title=Mod_API_Reference:UI&amp;diff=5003"/>
		<updated>2020-03-15T16:27:56Z</updated>

		<summary type="html">&lt;p&gt;TBest: /* Colors in the browser */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Mods can put UI (user interface) onto the screen when called from one of the Client &#039;&#039;&#039;Present&#039;&#039;&#039; [[Mod Hooks|hooks]].  This page describes how to create and update UI elements.&lt;br /&gt;
&lt;br /&gt;
UI elements are created by accessing the &amp;lt;code&amp;gt;UI&amp;lt;/code&amp;gt; global.  For example, mods can call UI.CreateButton(...) to create a button.  Any UI element listed below can be created in a similar manner.&lt;br /&gt;
&lt;br /&gt;
Behind the scenes, these objects are implemented using Unity&#039;s UI and layout system. Being familiar with Unity&#039;s UI system will make understanding how to build UI easier, but it&#039;s not a requirement.&lt;br /&gt;
&lt;br /&gt;
== Parents ==&lt;br /&gt;
All UI constructors take a single &amp;lt;code&amp;gt;parent&amp;lt;/code&amp;gt; argument.  This allows you to construct hierarchies.  For example, mods can create a vertical stack of three buttons like this:&lt;br /&gt;
&lt;br /&gt;
  local vert = UI.CreateVerticalLayoutGroup(rootParent);&lt;br /&gt;
  local btn1 = UI.CreateButton(vert);&lt;br /&gt;
  local btn2 = UI.CreateButton(vert);&lt;br /&gt;
  local btn3 = UI.CreateButton(vert);&lt;br /&gt;
&lt;br /&gt;
When a mod is called to present UI, it will be passed a root UI element (rootParent).  Your mod should pass the rootParent to a UI element that will be the root of all other elements you need.  This element is most often a VerticalLayoutGroup, as shown in the example above.  &lt;br /&gt;
&lt;br /&gt;
You can never make more than one element a child of the rootParent.  If you need more than one, simply make your own container to house them.&lt;br /&gt;
  &lt;br /&gt;
== Properties ==&lt;br /&gt;
&lt;br /&gt;
UI elements have properties that can be read or set.  For example, Buttons have a Text property that allows you to set the text that appears on the button.&lt;br /&gt;
&lt;br /&gt;
To read or write a UI element&#039;s property, you must use getter/setter functions named GetX() and SetX().  For example, to set the text of a button you can write &amp;lt;code&amp;gt;btn1.SetText(&#039;Click me!&#039;)&amp;lt;/code&amp;gt; and can retrieve it using &amp;lt;code&amp;gt;btn1.GetText()&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
All getter and setter functions return the UI element, which means you can chain them together to easily set lots of properties. For example:&lt;br /&gt;
&lt;br /&gt;
  UI.CreateButton(vert)&lt;br /&gt;
    .SetText(&#039;Click me!&#039;)&lt;br /&gt;
    .SetColor(&#039;#00FF00&#039;)&lt;br /&gt;
    .SetOnClick(someFunction);&lt;br /&gt;
&lt;br /&gt;
== Common Properties ==&lt;br /&gt;
&lt;br /&gt;
All UI elements have the following properties:&lt;br /&gt;
* &#039;&#039;&#039;PreferredWidth&#039;&#039;&#039; &#039;&#039;number&#039;&#039;: How wide the element prefers to be.  It may not be this wide if there is not enough space, and it may be wider if FlexibleWidth is greater than 0.  Defaults to -1, which is a special value meaning the object will meansure its own size based on its contents.&lt;br /&gt;
* &#039;&#039;&#039;PreferredHeight&#039;&#039;&#039; &#039;&#039;number&#039;&#039;: How tall the element prefers to be.  It may not be this tall if there is not enough space, and it may be taller if FlexibleHeight is greater than 0.  Defaults to -1, which is a special value meaning the object will meansure its own size based on its contents.&lt;br /&gt;
* &#039;&#039;&#039;FlexibleWidth&#039;&#039;&#039; &#039;&#039;number&#039;&#039;: A number from 0 to 1 indicating how much of the remaining space this element wishes to take up.  Defaults to 0, which means the element will be no wider than PreferredWidth.  Set it to 1 to indicate the object should grow to encompass all remaining horizontal space it can.&lt;br /&gt;
* &#039;&#039;&#039;FlexibleHeight&#039;&#039;&#039; &#039;&#039;number&#039;&#039;: A number from 0 to 1 indicating how much of the remaining space this element wishes to take up.  Defaults to 0, which means the element will be no taller than PreferredHeight.  Set it to 1 to indicate the object should grow to encompass all remaining vertical space it can.&lt;br /&gt;
&lt;br /&gt;
== UI Elements ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Empty&#039;&#039;&#039;: A simple UI element that displays nothing.  This can be used as a container or to create space.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;VerticalLayoutGroup&#039;&#039;&#039;: A container that stacks its children vertically.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;HorizontalLayoutGroup&#039;&#039;&#039;: A container that stacks its children horizontally.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Label&#039;&#039;&#039;: A way to display text on the screen.&lt;br /&gt;
* &#039;&#039;&#039;Text&#039;&#039;&#039; &#039;&#039;string&#039;&#039;: The text to display.&lt;br /&gt;
* &#039;&#039;&#039;Color&#039;&#039;&#039; &#039;&#039;string&#039;&#039;: The color of the text.  Pass this as a string in #RRGGBB format.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Button&#039;&#039;&#039;: A button that players can click on to do something.&lt;br /&gt;
* &#039;&#039;&#039;Text&#039;&#039;&#039; &#039;&#039;string&#039;&#039;: The text to display on the button.&lt;br /&gt;
* &#039;&#039;&#039;Color&#039;&#039;&#039; &#039;&#039;string&#039;&#039;: The color of the button.  Pass this as a string in #RRGGBB format.&lt;br /&gt;
* &#039;&#039;&#039;TextColor&#039;&#039;&#039; &#039;&#039;string&#039;&#039;: The color of the text on teh button.  Pass this as a string in #RRGGBB format.&lt;br /&gt;
* &#039;&#039;&#039;OnClick&#039;&#039;&#039; &#039;&#039;function&#039;&#039;: Pass the name of a lua function to be called whenever the player clicks the button.&lt;br /&gt;
* &#039;&#039;&#039;Interactable&#039;&#039;&#039; &#039;&#039;bool&#039;&#039;: If false, the control will be grayed out and unusable by the player.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;CheckBox&#039;&#039;&#039;: A toggleable check box that players can check and uncheck.&lt;br /&gt;
* &#039;&#039;&#039;IsChecked&#039;&#039;&#039; &#039;&#039;bool&#039;&#039;: Whether the check box is checked or unchecked.&lt;br /&gt;
* &#039;&#039;&#039;Text&#039;&#039;&#039; &#039;&#039;string&#039;&#039;: The label displayed to the right of the check box.&lt;br /&gt;
* &#039;&#039;&#039;OnValueChanged&#039;&#039;&#039; &#039;&#039;function&#039;&#039;: Pass the name of a lua function to be called whenever the IsChecked property changes, either by your code or by the player clicking the check box.&lt;br /&gt;
* &#039;&#039;&#039;Interactable&#039;&#039;&#039; &#039;&#039;bool&#039;&#039;: If false, the control will be grayed out and unusable by the player.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;TextInputField&#039;&#039;&#039;: A box where players can type a string.&lt;br /&gt;
* &#039;&#039;&#039;Text&#039;&#039;&#039; &#039;&#039;string&#039;&#039;: The string that appears in the box, or that players typed.&lt;br /&gt;
* &#039;&#039;&#039;PlaceholderText&#039;&#039;&#039; &#039;&#039;string&#039;&#039;: The text that appears in the box grayed out when it&#039;s empty.  For example, &amp;quot;Enter name here...&amp;quot;&lt;br /&gt;
* &#039;&#039;&#039;CharacterLimit&#039;&#039;&#039; &#039;&#039;integer&#039;&#039;: The maximum number of characters that players can type into this text field.&lt;br /&gt;
* &#039;&#039;&#039;Interactable&#039;&#039;&#039; &#039;&#039;bool&#039;&#039;: If false, the control will be grayed out and unusable by the player.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;NumberInputField&#039;&#039;&#039;: Allows players to input a number. Presents an input box and a slider that are linked, so players can either use the box to type a number or slide the slider.  This makes it friendly for mobile users who don&#039;t have a hardware keyboard, while also allowing any number to be entered if someone wants to exceed the range allowable by the slider.&lt;br /&gt;
* &#039;&#039;&#039;Value&#039;&#039;&#039; &#039;&#039;number&#039;&#039;: The value to show in the box+slider, or the value entered by the player.&lt;br /&gt;
* &#039;&#039;&#039;WholeNumbers&#039;&#039;&#039; &#039;&#039;bool&#039;&#039;: If true, only integers will be selectable by the player.  If false, partial numbers will be selectable. Defaults to true.&lt;br /&gt;
* &#039;&#039;&#039;SliderMinValue&#039;&#039;&#039; &#039;&#039;number&#039;&#039;: The minimum value selectable by the slider.  Numbers below this can still be entered by typing them into the box, so ensure to always validate the number you retrieve.&lt;br /&gt;
* &#039;&#039;&#039;SliderMaxValue&#039;&#039;&#039; &#039;&#039;number&#039;&#039;: The maxium value selectable by the slider.  Numbers above this can still be entered by typing them into the box, so ensure to always validate the number you retrieve.&lt;br /&gt;
* &#039;&#039;&#039;BoxPreferredWidth&#039;&#039;&#039; &#039;&#039;number&#039;&#039;: Allows setting the preferred width of just the box.  See &#039;&#039;&#039;Common Properties&#039;&#039;&#039; above.&lt;br /&gt;
* &#039;&#039;&#039;SliderPreferredWidth&#039;&#039;&#039; &#039;&#039;number&#039;&#039;: Allows setting the preferred width of just the slider.  See &#039;&#039;&#039;Common Properties&#039;&#039;&#039; above.&lt;br /&gt;
* &#039;&#039;&#039;Interactable&#039;&#039;&#039; &#039;&#039;bool&#039;&#039;: If false, the control will be grayed out and unusable by the player.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Helper Functions ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;UI.Destroy&#039;&#039;&#039;: Destroys (removes) any UI that the mod previously created.  Simply pass a UI element created by one of the UI.CreateXXX functions to UI.Destroy and it will disappear forever.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;UI.Alert&#039;&#039;&#039;: Pops up a dialog with a message and an Okay button to close the message.  Call this as simply &amp;lt;code&amp;gt;UI.Alert(msg)&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;UI.PromptFromList&#039;&#039;&#039;: Pops up a dialog with a series of buttons to choose from.    This takes two arguments:  &lt;br /&gt;
* &#039;&#039;&#039;Message&#039;&#039;&#039; &#039;&#039;string&#039;&#039;: Text to appear at the top of the dialog.&lt;br /&gt;
* &#039;&#039;&#039;Options&#039;&#039;&#039; &#039;&#039;array&#039;&#039;: A list of options, each of which will show up as a button.  Each entry in this array should be a table with two fields, &#039;&#039;&#039;text&#039;&#039;&#039; and &#039;&#039;&#039;selected&#039;&#039;&#039;.  &#039;&#039;&#039;text&#039;&#039;&#039; populates the text that will appear on that button, and &#039;&#039;&#039;selected&#039;&#039;&#039; is a zero-argument function that gets called if the player selects that option.&lt;br /&gt;
[[Category:Mod API Reference]]&lt;/div&gt;</summary>
		<author><name>TBest</name></author>
	</entry>
	<entry>
		<id>https://war.app/wiki/index.php?title=Mod_API_Reference:UI&amp;diff=5002</id>
		<title>Mod API Reference:UI</title>
		<link rel="alternate" type="text/html" href="https://war.app/wiki/index.php?title=Mod_API_Reference:UI&amp;diff=5002"/>
		<updated>2020-03-15T16:17:21Z</updated>

		<summary type="html">&lt;p&gt;TBest: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Mods can put UI (user interface) onto the screen when called from one of the Client &#039;&#039;&#039;Present&#039;&#039;&#039; [[Mod Hooks|hooks]].  This page describes how to create and update UI elements.&lt;br /&gt;
&lt;br /&gt;
UI elements are created by accessing the &amp;lt;code&amp;gt;UI&amp;lt;/code&amp;gt; global.  For example, mods can call UI.CreateButton(...) to create a button.  Any UI element listed below can be created in a similar manner.&lt;br /&gt;
&lt;br /&gt;
Behind the scenes, these objects are implemented using Unity&#039;s UI and layout system. Being familiar with Unity&#039;s UI system will make understanding how to build UI easier, but it&#039;s not a requirement.&lt;br /&gt;
&lt;br /&gt;
== Parents ==&lt;br /&gt;
All UI constructors take a single &amp;lt;code&amp;gt;parent&amp;lt;/code&amp;gt; argument.  This allows you to construct hierarchies.  For example, mods can create a vertical stack of three buttons like this:&lt;br /&gt;
&lt;br /&gt;
  local vert = UI.CreateVerticalLayoutGroup(rootParent);&lt;br /&gt;
  local btn1 = UI.CreateButton(vert);&lt;br /&gt;
  local btn2 = UI.CreateButton(vert);&lt;br /&gt;
  local btn3 = UI.CreateButton(vert);&lt;br /&gt;
&lt;br /&gt;
When a mod is called to present UI, it will be passed a root UI element (rootParent).  Your mod should pass the rootParent to a UI element that will be the root of all other elements you need.  This element is most often a VerticalLayoutGroup, as shown in the example above.  &lt;br /&gt;
&lt;br /&gt;
You can never make more than one element a child of the rootParent.  If you need more than one, simply make your own container to house them.&lt;br /&gt;
  &lt;br /&gt;
== Properties ==&lt;br /&gt;
&lt;br /&gt;
UI elements have properties that can be read or set.  For example, Buttons have a Text property that allows you to set the text that appears on the button.&lt;br /&gt;
&lt;br /&gt;
To read or write a UI element&#039;s property, you must use getter/setter functions named GetX() and SetX().  For example, to set the text of a button you can write &amp;lt;code&amp;gt;btn1.SetText(&#039;Click me!&#039;)&amp;lt;/code&amp;gt; and can retrieve it using &amp;lt;code&amp;gt;btn1.GetText()&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
All getter and setter functions return the UI element, which means you can chain them together to easily set lots of properties. For example:&lt;br /&gt;
&lt;br /&gt;
  UI.CreateButton(vert)&lt;br /&gt;
    .SetText(&#039;Click me!&#039;)&lt;br /&gt;
    .SetColor(&#039;#00FF00&#039;)&lt;br /&gt;
    .SetOnClick(someFunction);&lt;br /&gt;
&lt;br /&gt;
== Common Properties ==&lt;br /&gt;
&lt;br /&gt;
All UI elements have the following properties:&lt;br /&gt;
* &#039;&#039;&#039;PreferredWidth&#039;&#039;&#039; &#039;&#039;number&#039;&#039;: How wide the element prefers to be.  It may not be this wide if there is not enough space, and it may be wider if FlexibleWidth is greater than 0.  Defaults to -1, which is a special value meaning the object will meansure its own size based on its contents.&lt;br /&gt;
* &#039;&#039;&#039;PreferredHeight&#039;&#039;&#039; &#039;&#039;number&#039;&#039;: How tall the element prefers to be.  It may not be this tall if there is not enough space, and it may be taller if FlexibleHeight is greater than 0.  Defaults to -1, which is a special value meaning the object will meansure its own size based on its contents.&lt;br /&gt;
* &#039;&#039;&#039;FlexibleWidth&#039;&#039;&#039; &#039;&#039;number&#039;&#039;: A number from 0 to 1 indicating how much of the remaining space this element wishes to take up.  Defaults to 0, which means the element will be no wider than PreferredWidth.  Set it to 1 to indicate the object should grow to encompass all remaining horizontal space it can.&lt;br /&gt;
* &#039;&#039;&#039;FlexibleHeight&#039;&#039;&#039; &#039;&#039;number&#039;&#039;: A number from 0 to 1 indicating how much of the remaining space this element wishes to take up.  Defaults to 0, which means the element will be no taller than PreferredHeight.  Set it to 1 to indicate the object should grow to encompass all remaining vertical space it can.&lt;br /&gt;
&lt;br /&gt;
== UI Elements ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Empty&#039;&#039;&#039;: A simple UI element that displays nothing.  This can be used as a container or to create space.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;VerticalLayoutGroup&#039;&#039;&#039;: A container that stacks its children vertically.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;HorizontalLayoutGroup&#039;&#039;&#039;: A container that stacks its children horizontally.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Label&#039;&#039;&#039;: A way to display text on the screen.&lt;br /&gt;
* &#039;&#039;&#039;Text&#039;&#039;&#039; &#039;&#039;string&#039;&#039;: The text to display.&lt;br /&gt;
* &#039;&#039;&#039;Color&#039;&#039;&#039; &#039;&#039;string&#039;&#039;: The color of the text.  Pass this as a string in #RRGGBB format.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Button&#039;&#039;&#039;: A button that players can click on to do something.&lt;br /&gt;
* &#039;&#039;&#039;Text&#039;&#039;&#039; &#039;&#039;string&#039;&#039;: The text to display on the button.&lt;br /&gt;
* &#039;&#039;&#039;Color&#039;&#039;&#039; &#039;&#039;string&#039;&#039;: The color of the button.  Pass this as a string in #RRGGBB format.&lt;br /&gt;
* &#039;&#039;&#039;TextColor&#039;&#039;&#039; &#039;&#039;string&#039;&#039;: The color of the text on teh button.  Pass this as a string in #RRGGBB format.&lt;br /&gt;
* &#039;&#039;&#039;OnClick&#039;&#039;&#039; &#039;&#039;function&#039;&#039;: Pass the name of a lua function to be called whenever the player clicks the button.&lt;br /&gt;
* &#039;&#039;&#039;Interactable&#039;&#039;&#039; &#039;&#039;bool&#039;&#039;: If false, the control will be grayed out and unusable by the player.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;CheckBox&#039;&#039;&#039;: A toggleable check box that players can check and uncheck.&lt;br /&gt;
* &#039;&#039;&#039;IsChecked&#039;&#039;&#039; &#039;&#039;bool&#039;&#039;: Whether the check box is checked or unchecked.&lt;br /&gt;
* &#039;&#039;&#039;Text&#039;&#039;&#039; &#039;&#039;string&#039;&#039;: The label displayed to the right of the check box.&lt;br /&gt;
* &#039;&#039;&#039;OnValueChanged&#039;&#039;&#039; &#039;&#039;function&#039;&#039;: Pass the name of a lua function to be called whenever the IsChecked property changes, either by your code or by the player clicking the check box.&lt;br /&gt;
* &#039;&#039;&#039;Interactable&#039;&#039;&#039; &#039;&#039;bool&#039;&#039;: If false, the control will be grayed out and unusable by the player.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;TextInputField&#039;&#039;&#039;: A box where players can type a string.&lt;br /&gt;
* &#039;&#039;&#039;Text&#039;&#039;&#039; &#039;&#039;string&#039;&#039;: The string that appears in the box, or that players typed.&lt;br /&gt;
* &#039;&#039;&#039;PlaceholderText&#039;&#039;&#039; &#039;&#039;string&#039;&#039;: The text that appears in the box grayed out when it&#039;s empty.  For example, &amp;quot;Enter name here...&amp;quot;&lt;br /&gt;
* &#039;&#039;&#039;CharacterLimit&#039;&#039;&#039; &#039;&#039;integer&#039;&#039;: The maximum number of characters that players can type into this text field.&lt;br /&gt;
* &#039;&#039;&#039;Interactable&#039;&#039;&#039; &#039;&#039;bool&#039;&#039;: If false, the control will be grayed out and unusable by the player.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;NumberInputField&#039;&#039;&#039;: Allows players to input a number. Presents an input box and a slider that are linked, so players can either use the box to type a number or slide the slider.  This makes it friendly for mobile users who don&#039;t have a hardware keyboard, while also allowing any number to be entered if someone wants to exceed the range allowable by the slider.&lt;br /&gt;
* &#039;&#039;&#039;Value&#039;&#039;&#039; &#039;&#039;number&#039;&#039;: The value to show in the box+slider, or the value entered by the player.&lt;br /&gt;
* &#039;&#039;&#039;WholeNumbers&#039;&#039;&#039; &#039;&#039;bool&#039;&#039;: If true, only integers will be selectable by the player.  If false, partial numbers will be selectable. Defaults to true.&lt;br /&gt;
* &#039;&#039;&#039;SliderMinValue&#039;&#039;&#039; &#039;&#039;number&#039;&#039;: The minimum value selectable by the slider.  Numbers below this can still be entered by typing them into the box, so ensure to always validate the number you retrieve.&lt;br /&gt;
* &#039;&#039;&#039;SliderMaxValue&#039;&#039;&#039; &#039;&#039;number&#039;&#039;: The maxium value selectable by the slider.  Numbers above this can still be entered by typing them into the box, so ensure to always validate the number you retrieve.&lt;br /&gt;
* &#039;&#039;&#039;BoxPreferredWidth&#039;&#039;&#039; &#039;&#039;number&#039;&#039;: Allows setting the preferred width of just the box.  See &#039;&#039;&#039;Common Properties&#039;&#039;&#039; above.&lt;br /&gt;
* &#039;&#039;&#039;SliderPreferredWidth&#039;&#039;&#039; &#039;&#039;number&#039;&#039;: Allows setting the preferred width of just the slider.  See &#039;&#039;&#039;Common Properties&#039;&#039;&#039; above.&lt;br /&gt;
* &#039;&#039;&#039;Interactable&#039;&#039;&#039; &#039;&#039;bool&#039;&#039;: If false, the control will be grayed out and unusable by the player.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Helper Functions ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;UI.Destroy&#039;&#039;&#039;: Destroys (removes) any UI that the mod previously created.  Simply pass a UI element created by one of the UI.CreateXXX functions to UI.Destroy and it will disappear forever.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;UI.Alert&#039;&#039;&#039;: Pops up a dialog with a message and an Okay button to close the message.  Call this as simply &amp;lt;code&amp;gt;UI.Alert(msg)&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;UI.PromptFromList&#039;&#039;&#039;: Pops up a dialog with a series of buttons to choose from.    This takes two arguments:  &lt;br /&gt;
* &#039;&#039;&#039;Message&#039;&#039;&#039; &#039;&#039;string&#039;&#039;: Text to appear at the top of the dialog.&lt;br /&gt;
* &#039;&#039;&#039;Options&#039;&#039;&#039; &#039;&#039;array&#039;&#039;: A list of options, each of which will show up as a button.  Each entry in this array should be a table with two fields, &#039;&#039;&#039;text&#039;&#039;&#039; and &#039;&#039;&#039;selected&#039;&#039;&#039;.  &#039;&#039;&#039;text&#039;&#039;&#039; populates the text that will appear on that button, and &#039;&#039;&#039;selected&#039;&#039;&#039; is a zero-argument function that gets called if the player selects that option.&lt;br /&gt;
[[Category:Mod API Reference]]&lt;br /&gt;
&lt;br /&gt;
== Colors in the browser ==&lt;br /&gt;
&lt;br /&gt;
Only the following list of colors will work in UJS,  due to javascript. &lt;br /&gt;
&lt;br /&gt;
00A0FF&lt;br /&gt;
&lt;br /&gt;
00B5FF &lt;br /&gt;
&lt;br /&gt;
F3FFAE&lt;br /&gt;
&lt;br /&gt;
43C731&lt;br /&gt;
&lt;br /&gt;
43C631&lt;br /&gt;
&lt;br /&gt;
1274A4&lt;br /&gt;
&lt;br /&gt;
1274A5&lt;br /&gt;
&lt;br /&gt;
B03B3B&lt;br /&gt;
&lt;br /&gt;
0021FF&lt;br /&gt;
&lt;br /&gt;
359029&lt;br /&gt;
&lt;br /&gt;
00E9FF&lt;br /&gt;
&lt;br /&gt;
00FF21&lt;br /&gt;
&lt;br /&gt;
FFF700&lt;br /&gt;
&lt;br /&gt;
AA3A3A&lt;br /&gt;
&lt;br /&gt;
43C732&lt;br /&gt;
&lt;br /&gt;
00D4FF&lt;br /&gt;
&lt;br /&gt;
B03C3C&lt;br /&gt;
&lt;br /&gt;
00F4FF&lt;br /&gt;
&lt;br /&gt;
00BFFF&lt;br /&gt;
&lt;br /&gt;
4EC4FF&lt;br /&gt;
&lt;br /&gt;
FFFF00&lt;br /&gt;
&lt;br /&gt;
615DDF&lt;br /&gt;
&lt;br /&gt;
100C08&lt;br /&gt;
&lt;br /&gt;
943E3E&lt;br /&gt;
&lt;br /&gt;
0000ff&lt;br /&gt;
&lt;br /&gt;
4effff&lt;br /&gt;
&lt;br /&gt;
59009d&lt;br /&gt;
&lt;br /&gt;
008000&lt;br /&gt;
&lt;br /&gt;
ff7d00&lt;br /&gt;
&lt;br /&gt;
ff0000&lt;br /&gt;
&lt;br /&gt;
606060&lt;br /&gt;
&lt;br /&gt;
00ff05&lt;br /&gt;
&lt;br /&gt;
ff697a&lt;br /&gt;
&lt;br /&gt;
94652e&lt;br /&gt;
&lt;br /&gt;
00ff8c&lt;br /&gt;
&lt;br /&gt;
ff4700&lt;br /&gt;
&lt;br /&gt;
009b9d&lt;br /&gt;
&lt;br /&gt;
23a0ff&lt;br /&gt;
&lt;br /&gt;
ac0059&lt;br /&gt;
&lt;br /&gt;
ff87ff&lt;br /&gt;
&lt;br /&gt;
ffff00&lt;br /&gt;
&lt;br /&gt;
943e3e&lt;br /&gt;
&lt;br /&gt;
feff9b&lt;br /&gt;
&lt;br /&gt;
ad7e7e&lt;br /&gt;
&lt;br /&gt;
b70aff&lt;br /&gt;
&lt;br /&gt;
ffaf56&lt;br /&gt;
&lt;br /&gt;
ff00b1&lt;br /&gt;
&lt;br /&gt;
8ebe57&lt;br /&gt;
&lt;br /&gt;
DAA520&lt;br /&gt;
&lt;br /&gt;
990024&lt;br /&gt;
&lt;br /&gt;
00FFFF&lt;br /&gt;
&lt;br /&gt;
8F9779&lt;br /&gt;
&lt;br /&gt;
880085&lt;br /&gt;
&lt;br /&gt;
00755E&lt;br /&gt;
&lt;br /&gt;
FFE5B4&lt;br /&gt;
&lt;br /&gt;
4169E1&lt;br /&gt;
&lt;br /&gt;
FF43A4&lt;br /&gt;
&lt;br /&gt;
8DB600&lt;br /&gt;
&lt;br /&gt;
40826D&lt;br /&gt;
&lt;br /&gt;
C04000&lt;br /&gt;
&lt;br /&gt;
FFDDF4&lt;br /&gt;
&lt;br /&gt;
CD7F32&lt;br /&gt;
&lt;br /&gt;
C19A6B&lt;br /&gt;
&lt;br /&gt;
C09999&lt;br /&gt;
&lt;br /&gt;
B0BF1A&lt;br /&gt;
&lt;br /&gt;
3B7A57&lt;br /&gt;
&lt;br /&gt;
4B5320&lt;br /&gt;
&lt;br /&gt;
664C28&lt;br /&gt;
&lt;br /&gt;
893F45&lt;br /&gt;
&lt;br /&gt;
D2691E&lt;br /&gt;
&lt;br /&gt;
36454F&lt;br /&gt;
&lt;br /&gt;
FF00FF&lt;br /&gt;
&lt;br /&gt;
76FF7A&lt;br /&gt;
&lt;br /&gt;
100C08&lt;/div&gt;</summary>
		<author><name>TBest</name></author>
	</entry>
</feed>