Asides from a <code>List</code> of server objects to be built, the operation between any server objects
and the connected functionality emerging from more complex data structures is codified by this object.
In the former case, all <code>Terminal</code> server objects for a <code>Zone</code> are to be defined herein.
In the latter case, the arrangement of server objects into groups called facilities is also to be defined herein.
Much like a <code>BasicDefinition</code> to an object, <code>ZoneMap</code> should not maintain mutable information for the companion <code>Zone</code>.
Use it as a blueprint.<br>
<br>
The "training zones" are the best example of the difference between a <code>ZoneMap</code> and a <code>Zone.</code>
("Course" will be used as an unofficial location and layout descriptor.)
<code>tzdrtr</code> is the Terran Republic driving course.
<code>tzdrvs</code> is the Vanu Sovereignty driving course.
While each course can have different objects and object states, i.e., a <code>Zone</code>,
both of these courses utilize the same basic server object layout because they are built from the same blueprint, i.e., a <code>ZoneMap</code>.
<code>LoadMapMessage</code></p></span></dd></dl><divclass="toggleContainer"><divclass="toggle block"><span>Linear Supertypes</span><divclass="superTypes hiddenContent"><spanname="scala.AnyRef"class="extype">AnyRef</span>, <spanname="scala.Any"class="extype">Any</span></div></div></div></div><divid="mbrsel"><divclass="toggle"></div><divid="memberfilter"><iclass="material-icons arrow"></i><spanclass="input"><inputplaceholder="Filter all members"id="mbrsel-input"type="text"accesskey="/"/></span><iclass="clear material-icons"></i></div><divid="filterby"><divid="order"><spanclass="filtertype">Ordering</span><ol><liclass="alpha in"><span>Alphabetic</span></li><liclass="inherit out"><span>By Inheritance</span></li></ol></div><divclass="ancestors"><spanclass="filtertype">Inherited<br/></span><olid="linearization"><liclass="in"name="net.psforever.objects.zones.ZoneMap"><span>ZoneMap</span></li><liclass="in"name="scala.AnyRef"><span>AnyRef</span></li><liclass="in"name="scala.Any"><span>Any</span></li></ol></div><divclass="ancestors"><spanclass="filtertype"></span><ol><liclass="hideall out"><span>Hide All</span></li><liclass="showall in"><span>Show All</span></li></ol></div><divid="visbl"><spanclass="filtertype">Visibility</span><ol><liclass="public in"><span>Public</span></li><liclass="protected out"><span>Protected</span></li></ol></div></div></div><divid="template"><divid="allMembers"><divid="constructors"class="members"><h3>Instance Constructors</h3><ol><liclass="indented0 "name="net.psforever.objects.zones.ZoneMap#<init>"group="Ungrouped"fullComment="yes"data-isabs="false"visbl="pub"><aid="<init>(name:String):net.psforever.objects.zones.ZoneMap"></a><aid="<init>:ZoneMap"></a><spanclass="permalink"><ahref="../../../../net/psforever/objects/zones/ZoneMap.html#<init>(name:String):net.psforever.objects.zones.ZoneMap"title="Permalink"><iclass="material-icons"></i></a></span><spanclass="modifier_kind"><spanclass="modifier"></span><spanclass="kind">new</span></span><spanclass="symbol"><spanclass="name">ZoneMap</span><spanclass="params">(<spanname="name">name: <spanname="scala.Predef.String"class="extype">String</span></span>)</span></span><pclass="shortcomment cmt"></p><divclass="fullcomment"><divclass="comment cmt"></div><dlclass="paramcmts block"><dtclass="param">name</dt><ddclass="cmt"><p>the privileged name that can be used as the first parameter in the packet <code>LoadMapMessage</code></p></dd></dl></div></li></ol></div><divclass="values members"><h3>Value Members</h3><ol><liclass="indented0 "name="scala.AnyRef#!="group="Ungrouped"fullComment="yes"data-isabs="false"visbl="pub"><aid="!=(x$1:Any):Boolean"></a><aid="!=(Any):Boolean"></a><spanclass="permalink"><ahref="../../../../net/psforever/objects/zones/ZoneMap.html#!=(x$1:Any):Boolean"title="Permalink"><iclass="material-icons"></i></a></span><spanclass="modifier_kind"><spanclass="modifier">final </span><spanclass="kind">def</span></span><spanclass="symbol"><spanclass="name"title="gt4s: $bang$eq">!=</span><spanclass="params">(<spanname="arg0">arg0: <spanname="scala.Any"class="extype">Any</span></span>)</span><spanclass="result">: <spanname="scala.Boolean"class="extype">Boolean</span></span></span><divclass="fullcomment"><dlclass="attributes block"><dt>Definition Classes</dt><dd>AnyRef → Any</dd></dl></div></li><liclass="indented0 "name="scala.AnyRef###"group="Ungrouped"fullComment="yes"data-isabs="false"visbl="pub"><aid="##:Int"></a><spanclass="permalink"><ahref="../../../../net/psforever/objects/zones/ZoneMap.html###:Int"title="Permalink"><iclass="material-icons"></i></a></span><spanclass="modifier_kind"><spanclass="modifier">final </span><spanclass="kind">def</span></span><spanclass="symbol"><spanclass="name"title="gt4s: $hash$hash">##</span><spanclass="result">: <spanname="scala.Int"class="extype">Int</span></span></span><divclass="fullcomment"><dlclass="attributes block"><dt>Definition Classes</dt>
</p></div><dlclass="paramcmts block"><dtclass="param">id</dt><ddclass="cmt"><p>the unique id that will be assigned to this entity</p></dd><dtclass="param">constructor</dt><ddclass="cmt"><p>the logic that initializes the emitted entity</p></dd><dtclass="param">owningBuildingGuid</dt><ddclass="cmt"><p>The guid of the building this object should belong to, if specified</p></dd><dtclass="param">doorGuid</dt><ddclass="cmt"><p>The guid of the door this object (typically a lock) should be linked to, if specified</p></dd><dtclass="param">terminalGuid</dt><ddclass="cmt"><p>The guid of the terminal this object (typically a spawn pad) should be linked to, if specified</p></dd><dt>returns</dt><ddclass="cmt"><p>the current number of builders</p></dd></dl></div></li><liclass="indented0 "name="net.psforever.objects.zones.ZoneMap#areValidCoordinates"group="Ungrouped"fullComment="no"data-isabs="false"visbl="pub"><aid="areValidCoordinates(coordinates:net.psforever.types.Vector3):Boolean"></a><aid="areValidCoordinates(Vector3):Boolean"></a><spanclass="permalink"><ahref="../../../../net/psforever/objects/zones/ZoneMap.html#areValidCoordinates(coordinates:net.psforever.types.Vector3):Boolean"title="Permalink"><iclass="material-icons"></i></a></span><spanclass="modifier_kind"><spanclass="modifier"></span><spanclass="kind">def</span></span><spanclass="symbol"><spanclass="name">areValidCoordinates</span><spanclass="params">(<spanname="coordinates">coordinates: <ahref="../../types/Vector3.html"name="net.psforever.types.Vector3"id="net.psforever.types.Vector3"class="extype">Vector3</a></span>)</span><spanclass="result">: <spanname="scala.Boolean"class="extype">Boolean</span></span></span></li><liclass="indented0 "name="scala.Any#asInstanceOf"group="Ungrouped"fullComment="yes"data-isabs="false"visbl="pub"><aid="asInstanceOf[T0]:T0"></a><spanclass="permalink"><ahref="../../../../net/psforever/objects/zones/ZoneMap.html#asInstanceOf[T0]:T0"title="Permalink"><iclass="material-icons"></i></a></span><spanclass="modifier_kind"><spanclass="modifier">final </span><spanclass="kind">def</span></span><spanclass="symbol"><spanclass="name">asInstanceOf</span><spanclass="tparams">[<spanname="T0">T0</span>]</span><spanclass="result">: <spanname="scala.Any.asInstanceOf.T0"class="extype">T0</span></span></span><divclass="fullcomment"><dlclass="attributes block"><dt>Definition Classes</dt><dd>Any</dd></dl></div></li><liclass="indented0 "name="net.psforever.objects.zones.ZoneMap#cavern"group="Ungrouped"fullComment="no"data-isabs="false"visbl="pub"><aid="cavern:Boolean"></a><spanclass="permalink"><ahref="../../../../net/psforever/objects/zones/ZoneMap.html#cavern:Boolean"title="Permalink"><iclass="material-icons"></i></a></span><spanclass="modifier_kind"><spanclass="modifier"></span><spanclass="kind">var</span></span><spanclass="symbol"><spanclass="name">cavern</span><spanclass="result">: <spanname="scala.Boolean"class="extype">Boolean</span></span></span></li><liclass="indented0 "name="net.psforever.objects.zones.ZoneMap#checksum"group="Ungrouped"fullComment="no"data-isabs="false"visbl="pub"><aid="checksum:Long"></a><spanclass="permalink"><ahref="../../../../net/psforever/objects/zones/ZoneMap.html#checksum:Long"title="Permalink"><iclass="material-icons"></i></a></span><spanclass="modifier_kind"><spanclass="modifier"></span><spanclass="kind">var</span></span><spanclass="symbol"><spanclass="name">checksum</span><spanclass="result">: <spanname="scala.Long"class="extype">Long</span></span></span></li><liclass="indented0 "name="scala.AnyRef#clone"group="Ungrouped"fullComment="yes"data-isabs="false"visbl="prt"><aid="clone():Object"></a><aid="clone():AnyRef"></a><spanclass="permalink"><ahref="../../../../net/psforever/objects/zones/ZoneMap.html#clone():Object"title="Permalink"><iclass="material-icons"></i></a></span><spanclass="modifier_kind"><spanclass="modifier"></span><spanclass="kind">def</span></span><spanclass="symbol