Navigation

    TripleA Logo

    TripleA Forum

    • Register
    • Login
    • Search
    • TripleA Website
    • Categories
    • Recent
    • Popular
    • Users
    • Groups
    • Tags

    Proposal: Combine tags into `<territory>`

    Map Making
    2
    3
    206
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • LaFayette
      LaFayette Admin last edited by

      Proposal: Condense several nodes into the <territory> node. This would be the addition of optional nodes {<territoryAttachment>, <placements>, <connections> }

      This update would be backwards compatible. Though, if specifying both old and new tags, the game engine would generate an error to avoid non-determinism.

      Below are two examples, I'm still considering between whether territoryAttachment properties would be nicer as attributes or if as nested child tags.

      Example 1

      <map>
        <territory name="Quebec">
           <territoryAttachment owner="Canadians" production="2" unitProduction="3" capital="Canadians" victoryCity="1"/>
           <placements>
               <placement unitType="Infantry" quantity="3"/> <!-- default owner = territory owner -->
               <placement unitType="Tank" quantity="3" owner="Canadians" />
           </placements>
           <connections>
              <territory name="SZ 20"/>
              <territory name="SZ 19"/>
              <territory name="Ontario"/>
           </connections>
        </territory>
      </map>
      

      Example 2 (Alternative territoryAttachment)

      <map>
        <territory name="Quebec">
           <territoryAttachment> 
             <owner value="Canadians"/>
             <unitProduction value="3" />
             <kamikazeZone value="true" />
           </territoryAttachment>
           <placements>
               <placement unitType="Infantry" quantity="3"/> <!-- default owner = territory owner -->
               <placement unitType="Tank" quantity="3" owner="Canadians" />
           </placements>
           <connections>
              <territory name="SZ 20"/>
              <territory name="SZ 19"/>
              <territory name="Ontario"/>
           </connections>
        </territory>
      </map>
      

      Example (for comparison, existing XML)

      The above would be equivalent to the XML below:

        <map>
          <territory name="Quebec"/>
          <connection t1="Quebec" t2="SZ 20"/>
          <connection t1="Quebec" t2="SZ 19"/>
          <connection t1="Quebec" t2="Ontario"/>
        </map>
        <initialize>
          <ownerInitialize>
            <territoryOwner territory="Quebec" owner="Canadians"/>
          </ownerInitialize>
          <unitInitialize>
            <unitPlacement unitType="Infantry" territory="Quebec" quantity="3" owner="Canadians"/>
            <unitPlacement unitType="Tank" territory="Quebec" quantity="3" owner="Canadians"/>
          </unitInitialize>
        </initialize>
        <attachmentList>
           <attachment name="territoryAttachment" attachTo="Quebec" javaClass="games.strategy.triplea.attachments.TerritoryAttachment" type="territory">
             <option name="production" value="2"/>
             <option name="unitProduction" value="3"/>
             <option name="capital" value="Canadians"/>
             <option name="victoryCity" value="1"/>
           </attachment>
        </attachmentList>
      
      1 Reply Last reply Reply Quote 1
      • W
        wc_sumpton last edited by

        @LaFayette

        I like example 2 with the <attachment> (saying territoryAttachment in the <territory> block seems redundant) listed out separately, seems easier to read and flows more like the rest of the block.

        Would territory 'Ontario' need to show a connection to 'Quebec'? Maybe for clarity but on connection should be enough.

        Would canal connections be also included?

        I understand that this is just an example, but I do like the direction this is headed.

        Cheers...

        1 Reply Last reply Reply Quote 0
        • LaFayette
          LaFayette Admin last edited by

          We could even remove the <territoryAttachment> node altogether, eg:

            <territory name="Quebec">
               <owner value="Canadians"/>
               <unitProduction value="3" />
               <kamikazeZone value="true" />
               <placements>
                   :
                   :
          

          Thoughts?

          For canals, they attach to multiple territories, nesting underneath one territory would potentially not be as helpful as it could be. Here is an example of what we have today:

          <attachment name="canalAttachmentCentral America - Colombia" attachTo="25 Sea Zone" javaClass="games.s
          trategy.triplea.attachments.CanalAttachment" type="territory">
             <option name="canalName" value="the Central America - Colombia channel"/>
             <option name="landTerritories" value="Central America:Colombia"/>
          </attachment>
          <attachment name="canalAttachmentCentral America - Colombia" attachTo="100 Sea Zone" javaClass="games.strategy.triplea.attachments.CanalAttachment" type="territory">
             <option name="canalName" value="the Central America - Colombia channel"/>
             <option name="landTerritories" value="Central America:Colombia"/>
          </attachment>
          

          I think that might be better as one 'canal' tag. It's a really good call-out - though if it's going to be a different tag then perhaps topic for another thread (thread created: https://forums.triplea-game.org/topic/2269/proposal-simpler-canal-node)

          1 Reply Last reply Reply Quote 0
          • 1 / 1
          • First post
            Last post
          Copyright © 2016-2018 TripleA-Devs | Powered by NodeBB Forums