User Tools

Site Tools


modding:xml:systemmap

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
modding:xml:systemmap [2014/12/27 04:40] – external edit 127.0.0.1modding:xml:systemmap [2017/02/07 00:39] (current) – [TopologyProcessor] 0xabcdef
Line 138: Line 138:
 The <SetNodes> sub-element defines a list of <Node> elements that are to be placed. Each <Node> element in the list is placed randomly in the defined <Area>. If there are fewer <Node> elements than then count of nodes in the <Random> network, then the remaining nodes are initialized with the <NodeTemplate> element. If there are more <Node> elements, then the remainder are ignored. The <SetNodes> sub-element defines a list of <Node> elements that are to be placed. Each <Node> element in the list is placed randomly in the defined <Area>. If there are fewer <Node> elements than then count of nodes in the <Random> network, then the remaining nodes are initialized with the <NodeTemplate> element. If there are more <Node> elements, then the remainder are ignored.
  
-===== Topology Processors ===== +===== TopologyProcessor ===== 
-When the entire topology has been created, we iterate over all <TopologyProcessor> nodes in order and apply them to the topology. +When the entire topology has been created, we iterate over all <TopologyProcessor> nodes in order and apply them to the topology. A TopologyProcessor is an element that can assign additional attributes to existing nodes and a SystemType to nodes that do not already have one. There can be multiple instances of a TopologyProcessor in a SystemMap. Additionally, TopologyProcessors are recursive in that the <Group>, <Processor>, and any element with a <System> subelement will act as a TopologyProcessor of its own, using the nodes filtered by the parent
- +  * Zero or one <Criteria>. Determines criteria (in addition to any pre-existing criteria) for determining which nodes the processor applies to. If there is no <Criteria>, all nodes are affected. This works for the <TopologyProcessor>, which will process every single node on the map. 
 +    * An <Attributes> element that filters nodes by their attributes 
 +      * **criteria=** Contains the attributes to filter with. 
 +        * **"*"** specifies any node that already satisfies the parent criteria. 
 +        * **"+{attribute};"** means that nodes must have {attribute}. "+systemType:0;" specifies nodes without a <SystemType> 
 +        * **"-{attribute};"** means that nodes must not have {attribute} 
 +  * Zero or one <System>
 +    * **name=** 
 +    * **attributes=** The attributes to apply to the affected nodes. 
 +    * **level=** 
 +    * **unid=** The UNID of the new SystemType to assign to the affected nodes. 
 +    * Zero or one <Table>. Only works if none of the above attributes are defined in the element. 
 +  * Zero or more <Group>. Same as <TopologyProcessor>
 +  * Zero or more <ConquerNodes>. In this processor category, "Conquerors" take turns attempting to "occupy" every eligible node. Each node can be taken by only one Conqueror. Every turn, a conqueror first attempts to create one new seed, then each of its seeds attempt to expand into adjacent nodes. 
 +      * One or more <Conqueror> 
 +      * **seedChance=** The percentage chance that this conqueror will create a seed somewhere((Please verify)) 
 +      * **maxSeeds=** The total number of seeds that this conqueror can have. ((Please verify)) 
 +      * **expandChance=** The percentage chance that one seed will attempt to expand into an adjacent node ((Please verify)) 
 +      * **maxNodes=** The total((Please verify)) number of nodes that can be conquered by this conqueror's seeds. 
 +      * One <SeedChance> 
 +        * One or more <Node> 
 +          * **criteria=** The additional criteria that a node must satisfy to be seeded. "*" refers to any node that satisfies the base criteria 
 +          * **weight=** The percent chance that a seed will choose this node to attempt its expansion on. 
 +          * **successChance=** The percent chance that a seed will be successful in attempting to conquer this node 
 +      * One <ExpandChance> 
 +        * One or more <Chance> 
 +          * **criteria=** The additional criteria that a node must satisfy to be conquered by the seed 
 +          * **weight=** The percent chance that a node will be conquered by the seed 
 +          * **successChance=** The percent chance that a conqueror will be successful in attempting to create a seed in a node. 
 +      * One <Processor>. Same as <TopologyProcessor> 
 +  * Zero or more <DistributeNodes> 
 +    * **nodeCount=** 
 +    * One <Criteria> 
 +  * Zero or more <FillNodes>. Processes every eligible node in random order. 
 +    * <Attributes> 
 +    * <Criteria> 
 +    * <System> 
 +  * Zero or more <LocateNodes> 
 +    * **percentile=** 
 +    * One <Criteria> 
 +    * One <MapFunction> 
 +  * Zero or more <PartitionNodes> 
 +    * **partitionOrder=** 
 +      * **"random"** 
 +    * One or more <Partition> 
 +      * **nodeCount=** 
 +      * One <System> 
 +  * Zero or more <RandomPoints> 
 +  * Zero or more <Table> 
 +    * Zero or one <Criteria> 
 +    * Zero or more <System> 
 +      * **chance=** The chance that the **attributes** and **unid** of this element will be applied to the affected nodes.
modding/xml/systemmap.1419655256.txt.gz · Last modified: 2017/02/03 04:58 (external edit)