<?xml version="1.0" encoding="utf-8"?>
<Defs>

  <RoadDef>
    <defName>DirtPath</defName>
    <label>dirt path</label>
    <priority>10</priority>
    <movementCostMultiplier>0.5</movementCostMultiplier>
    <tilesPerSegment>15</tilesPerSegment>
    <pathingMode>Avoid</pathingMode>
    <roadGenSteps>
      <li Class="RoadDefGenStep_Place">
        <chancePerPositionCurve>
          <points>
            <li>(1.1, 1)</li>
            <li>(1.1, 0)</li>
          </points>
        </chancePerPositionCurve>
        <place>Bridge</place>
        <antialiasingMultiplier>0</antialiasingMultiplier>
        <onlyIfOriginAllows>true</onlyIfOriginAllows> <!-- only if bridge also at the center -->
      </li>
      <li Class="RoadDefGenStep_Place">
        <chancePerPositionCurve>
          <points>
            <li>(0, 0.9)</li>
            <li>(0.6, 0.8)</li>
            <li>(0.8, 0)</li>
          </points>
        </chancePerPositionCurve>
        <place>PackedDirt</place>
      </li>
    </roadGenSteps>
    <distortionFrequency>0.5</distortionFrequency>
    <distortionIntensity>0.2</distortionIntensity>
    <worldRenderSteps>
      <li>
        <layer>Outline</layer>
        <width>0.35</width>
      </li>
      <li>
        <layer>Dirt</layer>
        <width>0.2</width>
      </li>
    </worldRenderSteps>
    <worldTransitionGroup>Dirt</worldTransitionGroup>
  </RoadDef>
  
  <RoadDef>
    <defName>DirtRoad</defName>
    <label>dirt road</label>
    <priority>20</priority>
    <movementCostMultiplier>0.5</movementCostMultiplier>
    <tilesPerSegment>15</tilesPerSegment>
    <pathingMode>Avoid</pathingMode>
    <roadGenSteps>
      <li Class="RoadDefGenStep_Place">
        <chancePerPositionCurve>
          <points>
            <li>(1.4, 1)</li>
            <li>(1.4, 0)</li>
          </points>
        </chancePerPositionCurve>
        <place>Bridge</place>
        <antialiasingMultiplier>0</antialiasingMultiplier>
        <onlyIfOriginAllows>true</onlyIfOriginAllows> <!-- only if bridge also at the center -->
      </li>
      <li Class="RoadDefGenStep_Place">
        <chancePerPositionCurve>
          <points>
            <li>(0, 0.9)</li>
            <li>(1.2, 0.8)</li>
            <li>(1.4, 0)</li>
          </points>
        </chancePerPositionCurve>
        <place>PackedDirt</place>
      </li>
    </roadGenSteps>
    <distortionFrequency>0.5</distortionFrequency>
    <distortionIntensity>0.2</distortionIntensity>
    <worldRenderSteps>
      <li>
        <layer>Outline</layer>
        <width>0.55</width>
      </li>
      <li>
        <layer>Dirt</layer>
        <width>0.4</width>
      </li>
    </worldRenderSteps>
    <worldTransitionGroup>Dirt</worldTransitionGroup>
  </RoadDef>
  
  <RoadDef>
    <defName>StoneRoad</defName>
    <label>stone road</label>
    <priority>30</priority>
    <movementCostMultiplier>0.5</movementCostMultiplier>
    <tilesPerSegment>25</tilesPerSegment>
    <pathingMode>Avoid</pathingMode>
    <roadGenSteps>
      <li Class="RoadDefGenStep_Place">
        <chancePerPositionCurve>
          <points>
            <li>(1.8, 1)</li>
            <li>(1.8, 0)</li>
          </points>
        </chancePerPositionCurve>
        <place>Bridge</place>
        <antialiasingMultiplier>0</antialiasingMultiplier>
        <onlyIfOriginAllows>true</onlyIfOriginAllows> <!-- only if bridge also at the center -->
      </li>
      <li Class="RoadDefGenStep_Place">
        <chancePerPositionCurve>
          <points>
            <li>(0, 1)</li>
            <li>(1.8, 1)</li>
            <li>(1.8, 0)</li>
          </points>
        </chancePerPositionCurve>
        <antialiasingMultiplier>0</antialiasingMultiplier>
        <place>FlagstoneSandstone</place>
      </li>
    </roadGenSteps>
    <distortionFrequency>0.2</distortionFrequency>
    <distortionIntensity>0.10</distortionIntensity>
    <worldRenderSteps>
      <li>
        <layer>Outline</layer>
        <width>0.55</width>
      </li>
      <li>
        <layer>Stone</layer>
        <width>0.4</width>
      </li>
    </worldRenderSteps>
    <worldTransitionGroup>Stone</worldTransitionGroup>
  </RoadDef>
  
  <RoadDef>
    <defName>AncientAsphaltRoad</defName>
    <label>ancient asphalt road</label>
    <priority>40</priority>
    <ancientOnly>true</ancientOnly>
    <movementCostMultiplier>0.5</movementCostMultiplier>
    <tilesPerSegment>100</tilesPerSegment>
    <pathingMode>Bulldoze</pathingMode>
    <roadGenSteps>
      <li Class="RoadDefGenStep_Place">
        <chancePerPositionCurve>
          <points>
            <li>(1.8, 1)</li>
            <li>(1.8, 0)</li>
          </points>
        </chancePerPositionCurve>
        <place>Bridge</place>
        <antialiasingMultiplier>0</antialiasingMultiplier>
        <onlyIfOriginAllows>true</onlyIfOriginAllows> <!-- only if bridge also at the center -->
      </li>
      <li Class="RoadDefGenStep_Place">
        <chancePerPositionCurve>
          <points>
            <li>(0, 0.8)</li>
            <li>(1.4, 0.8)</li>
            <li>(2.0, 0)</li>
          </points>
        </chancePerPositionCurve>
        <suppressOnTerrainTag>Water</suppressOnTerrainTag>
        <place>Gravel</place>
      </li>
      <li Class="RoadDefGenStep_Place">
        <chancePerPositionCurve>
          <points>
            <li>(0, 0.8)</li>
            <li>(1.4, 0.6)</li>
            <li>(1.8, 0)</li>
          </points>
        </chancePerPositionCurve>
        <place>BrokenAsphalt</place>
      </li>
      <li Class="RoadDefGenStep_Place">
        <chancePerPositionCurve>
          <points>
            <li>(0, 0.001)</li>
            <li>(2.2, 0.001)</li>
            <li>(2.3, 0.5)</li>
            <li>(2.5, 0)</li>
          </points>
        </chancePerPositionCurve>
        <suppressOnTerrainTag>Water</suppressOnTerrainTag>
        <place>AncientConcreteBarrier</place>
      </li>
      <li Class="RoadDefGenStep_Place">
        <chancePerPositionCurve>
          <points>
            <li>(0, 0)</li>
            <li>(1.8, 0)</li>
            <li>(2.3, 0.4)</li>
            <li>(2.9, 0)</li>
          </points>
        </chancePerPositionCurve>
        <suppressOnTerrainTag>Water</suppressOnTerrainTag>
        <place>AncientLamppost</place>
        <periodicSpacing>12</periodicSpacing>
        <proximitySpacing>4</proximitySpacing>
      </li>
    </roadGenSteps>
    <worldRenderSteps>
      <li>
        <layer>Outline</layer>
        <width>0.65</width>
      </li>
      <li>
        <layer>Gravel</layer>
        <width>0.5</width>
      </li>
      <li>
        <layer>Asphalt</layer>
        <width>0.25</width>
      </li>
    </worldRenderSteps>
    <worldTransitionGroup>Asphalt</worldTransitionGroup>
  </RoadDef>
  
  <RoadDef>
    <defName>AncientAsphaltHighway</defName>
    <label>ancient asphalt highway</label>
    <priority>50</priority>
    <ancientOnly>true</ancientOnly>
    <movementCostMultiplier>0.5</movementCostMultiplier>
    <tilesPerSegment>400</tilesPerSegment>
    <pathingMode>Bulldoze</pathingMode>
    <roadGenSteps>
      <li Class="RoadDefGenStep_Bulldoze">
        <chancePerPositionCurve>
          <points>
            <li>(0, 1)</li>
            <li>(4, 1)</li>
            <li>(4, 0)</li>
          </points>
        </chancePerPositionCurve>
      </li>
      <li Class="RoadDefGenStep_Place">
        <chancePerPositionCurve>
          <points>
            <li>(3.0, 1)</li>
            <li>(3.0, 0)</li>
          </points>
        </chancePerPositionCurve>
        <place>Bridge</place>
        <antialiasingMultiplier>0</antialiasingMultiplier>
        <onlyIfOriginAllows>true</onlyIfOriginAllows> <!-- only if bridge also at the center -->
      </li>
      <li Class="RoadDefGenStep_Place">
        <chancePerPositionCurve>
          <points>
            <li>(0, 0.8)</li>
            <li>(2.8, 0.8)</li>
            <li>(3.2, 0)</li>
          </points>
        </chancePerPositionCurve>
        <suppressOnTerrainTag>Water</suppressOnTerrainTag>
        <place>Gravel</place>
      </li>
      <li Class="RoadDefGenStep_Place">
        <chancePerPositionCurve>
          <points>
            <li>(0, 0.9)</li>
            <li>(2.6, 0.8)</li>
            <li>(3.0, 0)</li>
          </points>
        </chancePerPositionCurve>
        <place>BrokenAsphalt</place>
      </li>
      <li Class="RoadDefGenStep_Place">
        <chancePerPositionCurve>
          <points>
            <li>(0, 0.003)</li>
            <li>(3.5, 0.003)</li>
            <li>(3.6, 1)</li>
            <li>(3.7, 0)</li>
          </points>
        </chancePerPositionCurve>
        <suppressOnTerrainTag>Water</suppressOnTerrainTag>
        <place>AncientConcreteBarrier</place>
      </li>
      <li Class="RoadDefGenStep_Place">
        <chancePerPositionCurve>
          <points>
            <li>(0, 0)</li>
            <li>(3.0, 0)</li>
            <li>(3.5, 0.8)</li>
            <li>(4.0, 0)</li>
          </points>
        </chancePerPositionCurve>
        <suppressOnTerrainTag>Water</suppressOnTerrainTag>
        <place>AncientLamppost</place>
        <periodicSpacing>8</periodicSpacing>
        <proximitySpacing>4</proximitySpacing>
      </li>
    </roadGenSteps>
    <worldRenderSteps>
      <li>
        <layer>Outline</layer>
        <width>0.95</width>
      </li>
      <li>
        <layer>Gravel</layer>
        <width>0.8</width>
      </li>
      <li>
        <layer>Asphalt</layer>
        <width>0.55</width>
      </li>
    </worldRenderSteps>
    <worldTransitionGroup>Asphalt</worldTransitionGroup>
  </RoadDef>
  
</Defs>
