Spawn generation generally tries to place spawns: - In spacious areas - Away from the center (true center or mirror lines) - Away from a symmetry-projected spawn - Away from previously placed spawns This commit introduces the following adjustments: - The spacing between sequentially placed spawns is relaxed. - Fix spawn mines contributing too much to the space reservation. - Factor rotations into anti-center biasing calculation. - Preserve spacing information in center space fallback decisions. - Use a linear (instead of binary) falloff for anti-center biasing. - Enforce that spawns have a minimum buildable area around them. - Enforce that symmetry-projected spawns have as much separation as sequentially placed spawns would. - Allow spawns on or near roads.
387 lines
11 KiB
YAML
387 lines
11 KiB
YAML
^MapGenerators:
|
|
RaMapGenerator@ra:
|
|
Type: ra
|
|
Name: map-generator-ra
|
|
Settings:
|
|
Option@hidden_defaults:
|
|
Choice@hidden_defaults:
|
|
Settings:
|
|
TerrainFeatureSize: 20480
|
|
ForestFeatureSize: 20480
|
|
ResourceFeatureSize: 20480
|
|
Water: 0
|
|
Mountains: 100
|
|
Forests: 25
|
|
ForestCutout: 2
|
|
MaximumCutoutSpacing: 12
|
|
TerrainSmoothing: 4
|
|
SmoothingThreshold: 833
|
|
MinimumLandSeaThickness: 5
|
|
MinimumMountainThickness: 5
|
|
MaximumAltitude: 8
|
|
RoughnessRadius: 5
|
|
Roughness: 500
|
|
MinimumTerrainContourSpacing: 6
|
|
MinimumCliffLength: 10
|
|
ForestClumpiness: 1
|
|
DenyWalledAreas: True
|
|
EnforceSymmetry: 0
|
|
Roads: True
|
|
RoadSpacing: 5
|
|
RoadShrink: 0
|
|
CreateEntities: True
|
|
CentralSpawnReservationFraction: 250
|
|
ResourceSpawnReservation: 8
|
|
SpawnRegionSize: 12
|
|
SpawnBuildSize: 8
|
|
MinimumSpawnRadius: 5
|
|
SpawnResourceSpawns: 3
|
|
SpawnReservation: 16
|
|
SpawnResourceBias: 1050
|
|
ResourcesPerPlayer: 50000
|
|
OreUniformity: 500
|
|
OreClumpiness: 1
|
|
MaximumExpansionResourceSpawns: 5
|
|
MaximumResourceSpawnsPerExpansion: 2
|
|
MinimumExpansionSize: 2
|
|
MaximumExpansionSize: 12
|
|
ExpansionInner: 2
|
|
ExpansionBorder: 1
|
|
DefaultResource: Tiberium
|
|
ResourceSpawnSeeds:
|
|
split2: Tiberium
|
|
split3: Tiberium
|
|
splitblue: BlueTiberium
|
|
ClearTerrain: Clear
|
|
PlayableTerrain: Beach,BlueTiberium,Bridge,Clear,Road,Rough,Tiberium,Wall
|
|
PartiallyPlayableTerrain: River,Tree,Water
|
|
UnplayableTerrain: Rock
|
|
DominantTerrain: River,Rock,Tree,Water
|
|
ZoneableTerrain: Clear,Road
|
|
PartiallyPlayableCategories: Beach,Road
|
|
ClearSegmentTypes: Clear
|
|
BeachSegmentTypes: Beach
|
|
CliffSegmentTypes: Cliff
|
|
RoadSegmentTypes: Road,RoadIn,RoadOut
|
|
ForestObstacles: Trees
|
|
UnplayableObstacles: Obstructions
|
|
Option@hidden_tileset_overrides:
|
|
Choice@common:
|
|
Tileset: DESERT,JUNGLE,SNOW,TEMPERAT
|
|
Settings:
|
|
LandTile: 255
|
|
WaterTile: 1
|
|
RepaintTiles:
|
|
1: Water
|
|
Choice@winter:
|
|
Tileset: WINTER
|
|
Settings:
|
|
LandTile: 255
|
|
WaterTile: 1
|
|
RepaintTiles:
|
|
255: Snow
|
|
1: Water
|
|
Option@Seed:
|
|
Label: label-cnc-map-generator-option-seed
|
|
Random: True
|
|
Default: 0
|
|
Integer: Seed
|
|
Option@TerrainType:
|
|
Label: label-cnc-map-generator-option-terrain-type
|
|
Priority: 2
|
|
Default: Gardens,Rocky
|
|
Choice@Lakes:
|
|
Label: label-cnc-map-generator-choice-terrain-type-lakes
|
|
Tileset: DESERT
|
|
Settings:
|
|
Water: 200
|
|
Choice@Puddles:
|
|
Label: label-cnc-map-generator-choice-terrain-type-puddles
|
|
Tileset: DESERT
|
|
Settings:
|
|
Water: 100
|
|
Choice@Gardens:
|
|
Label: label-cnc-map-generator-choice-terrain-type-gardens
|
|
Tileset: DESERT
|
|
Settings:
|
|
Water: 50
|
|
Forests: 300
|
|
ForestCutout: 3
|
|
EnforceSymmetry: 2
|
|
RoadSpacing: 3
|
|
RoadShrink: 4
|
|
Choice@Plains:
|
|
Label: label-cnc-map-generator-choice-terrain-type-plains
|
|
Settings:
|
|
Water: 0
|
|
Choice@Parks:
|
|
Label: label-cnc-map-generator-choice-terrain-type-parks
|
|
Settings:
|
|
Water: 0
|
|
Forests: 100
|
|
Choice@Woodlands:
|
|
Label: label-cnc-map-generator-choice-terrain-type-woodlands
|
|
Settings:
|
|
Water: 0
|
|
Forests: 400
|
|
ForestCutout: 3
|
|
EnforceSymmetry: 2
|
|
RoadSpacing: 3
|
|
RoadShrink: 4
|
|
Choice@Overgrown:
|
|
Label: label-cnc-map-generator-choice-terrain-type-overgrown
|
|
Settings:
|
|
Water: 0
|
|
Forests: 500
|
|
EnforceSymmetry: 2
|
|
Mountains: 500
|
|
Roughness: 250
|
|
Choice@Rocky:
|
|
Label: label-cnc-map-generator-choice-terrain-type-rocky
|
|
Settings:
|
|
Water: 0
|
|
Forests: 300
|
|
ForestCutout: 3
|
|
EnforceSymmetry: 2
|
|
Mountains: 500
|
|
Roughness: 250
|
|
RoadSpacing: 3
|
|
RoadShrink: 4
|
|
Choice@Mountains:
|
|
Label: label-cnc-map-generator-choice-terrain-type-mountains
|
|
Settings:
|
|
Water: 0
|
|
Mountains: 1000
|
|
Roughness: 600
|
|
MinimumTerrainContourSpacing: 5
|
|
Choice@MountainLakes:
|
|
Label: label-cnc-map-generator-choice-terrain-type-mountain-lakes
|
|
Tileset: DESERT
|
|
Settings:
|
|
Water: 200
|
|
Mountains: 1000
|
|
Roughness: 850
|
|
MinimumTerrainContourSpacing: 5
|
|
Option@Rotations:
|
|
Label: label-cnc-map-generator-option-rotations
|
|
SimpleChoice: Rotations
|
|
Values: 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16
|
|
Default: 2
|
|
Priority: 1
|
|
Option@Mirror:
|
|
Label: label-cnc-map-generator-option-mirror
|
|
Default: None
|
|
Priority: 1
|
|
Choice@None:
|
|
Label: label-cnc-map-generator-choice-mirror-none
|
|
Settings:
|
|
Mirror: None
|
|
Choice@LeftMatchesRight:
|
|
Label: label-cnc-map-generator-choice-mirror-left-matches-right
|
|
Settings:
|
|
Mirror: LeftMatchesRight
|
|
Choice@TopLeftMatchesBottomRight:
|
|
Label: label-cnc-map-generator-choice-mirror-top-left-matches-bottom-right
|
|
Settings:
|
|
Mirror: TopLeftMatchesBottomRight
|
|
Choice@TopMatchesBottom:
|
|
Label: label-cnc-map-generator-choice-mirror-top-matches-bottom
|
|
Settings:
|
|
Mirror: TopMatchesBottom
|
|
Choice@TopRightMatchesBottomLeft:
|
|
Label: label-cnc-map-generator-choice-mirror-top-right-matches-bottom-left
|
|
Settings:
|
|
Mirror: TopRightMatchesBottomLeft
|
|
Option@Shape:
|
|
Label: label-cnc-map-generator-option-shape
|
|
Default: Square
|
|
Priority: 1
|
|
Choice@Square:
|
|
Label: label-cnc-map-generator-choice-shape-square
|
|
Settings:
|
|
ExternalCircularBias: 0
|
|
Choice@CircleMountain:
|
|
Label: label-cnc-map-generator-choice-shape-circle-mountain
|
|
Settings:
|
|
ExternalCircularBias: 1
|
|
Choice@CircleWater:
|
|
Label: label-cnc-map-generator-choice-shape-circle-water
|
|
Tileset: DESERT
|
|
Settings:
|
|
ExternalCircularBias: -1
|
|
Option@Players:
|
|
Label: label-cnc-map-generator-option-players
|
|
SimpleChoice: Players
|
|
Values: 0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16
|
|
Default: 1
|
|
Priority: 1
|
|
Option@Resources:
|
|
Label: label-cnc-map-generator-option-resources
|
|
Default: Medium
|
|
Choice@None:
|
|
Label: label-cnc-map-generator-choice-resources-none
|
|
Settings:
|
|
SpawnResourceSpawns: 0
|
|
ResourcesPerPlayer: 0
|
|
ResourceSpawnWeights:
|
|
MaximumExpansionResourceSpawns: 0
|
|
MaximumResourceSpawnsPerExpansion: 1
|
|
Choice@Low:
|
|
Label: label-cnc-map-generator-choice-resources-low
|
|
Settings:
|
|
SpawnResourceSpawns: 1
|
|
ResourcesPerPlayer: 25000
|
|
ResourceSpawnWeights:
|
|
split2: 1
|
|
split3: 1
|
|
MaximumExpansionResourceSpawns: 2
|
|
MaximumResourceSpawnsPerExpansion: 1
|
|
Choice@Medium:
|
|
Label: label-cnc-map-generator-choice-resources-medium
|
|
Settings:
|
|
SpawnResourceSpawns: 2
|
|
ResourcesPerPlayer: 50000
|
|
ResourceSpawnWeights:
|
|
split2: 95
|
|
split3: 95
|
|
splitblue: 10
|
|
MaximumExpansionResourceSpawns: 3
|
|
MaximumResourceSpawnsPerExpansion: 1
|
|
Choice@High:
|
|
Label: label-cnc-map-generator-choice-resources-high
|
|
Settings:
|
|
SpawnResourceSpawns: 3
|
|
ResourcesPerPlayer: 75000
|
|
ResourceSpawnWeights:
|
|
split2: 9
|
|
split3: 9
|
|
splitblue: 2
|
|
MaximumExpansionResourceSpawns: 5
|
|
MaximumResourceSpawnsPerExpansion: 2
|
|
Choice@VeryHigh:
|
|
Label: label-cnc-map-generator-choice-resources-very-high
|
|
Settings:
|
|
SpawnResourceSpawns: 4
|
|
ResourcesPerPlayer: 100000
|
|
ResourceSpawnWeights:
|
|
split2: 8
|
|
split3: 8
|
|
splitblue: 4
|
|
MaximumExpansionResourceSpawns: 8
|
|
MaximumResourceSpawnsPerExpansion: 2
|
|
Choice@Full:
|
|
Label: label-cnc-map-generator-choice-resources-full
|
|
Settings:
|
|
SpawnResourceSpawns: 0
|
|
ResourcesPerPlayer: 1000000000
|
|
ResourceSpawnWeights:
|
|
MaximumExpansionResourceSpawns: 0
|
|
MaximumResourceSpawnsPerExpansion: 1
|
|
Option@Buildings:
|
|
Label: label-cnc-map-generator-option-buildings
|
|
Default: Standard
|
|
Choice@None:
|
|
Label: label-cnc-map-generator-choice-buildings-none
|
|
Settings:
|
|
MinimumBuildings: 0
|
|
MaximumBuildings: 0
|
|
BuildingWeights:
|
|
Choice@Standard:
|
|
Label: label-cnc-map-generator-choice-buildings-standard
|
|
Settings:
|
|
MinimumBuildings: 0
|
|
MaximumBuildings: 3
|
|
BuildingWeights:
|
|
hosp: 2
|
|
miss: 1
|
|
v19: 9
|
|
Choice@Extra:
|
|
Label: label-cnc-map-generator-choice-buildings-extra
|
|
Settings:
|
|
MinimumBuildings: 3
|
|
MaximumBuildings: 6
|
|
BuildingWeights:
|
|
hosp: 2
|
|
miss: 1
|
|
v19: 9
|
|
gtwr: 2
|
|
Choice@OilOnly:
|
|
Label: label-cnc-map-generator-choice-buildings-oil-only
|
|
Settings:
|
|
MinimumBuildings: 0
|
|
MaximumBuildings: 3
|
|
BuildingWeights:
|
|
v19: 1
|
|
Choice@OilRush:
|
|
Label: label-cnc-map-generator-choice-buildings-oil-rush
|
|
Settings:
|
|
MinimumBuildings: 8
|
|
MaximumBuildings: 10
|
|
BuildingWeights:
|
|
v19: 1
|
|
Option@Density:
|
|
Label: label-cnc-map-generator-option-density
|
|
Default: Players
|
|
Priority: 1
|
|
Choice@Players:
|
|
Label: label-cnc-map-generator-choice-density-players
|
|
Settings:
|
|
AreaEntityBonus: 0
|
|
PlayerCountEntityBonus: 1000000
|
|
Choice@AreaAndPlayers:
|
|
Label: label-cnc-map-generator-choice-density-area-and-players
|
|
Settings:
|
|
AreaEntityBonus: 200
|
|
PlayerCountEntityBonus: 500000
|
|
Choice@AreaVeryLow:
|
|
Label: label-cnc-map-generator-choice-density-area-very-low
|
|
Settings:
|
|
AreaEntityBonus: 100
|
|
PlayerCountEntityBonus: 0
|
|
Choice@AreaLow:
|
|
Label: label-cnc-map-generator-choice-density-area-low
|
|
Settings:
|
|
AreaEntityBonus: 200
|
|
PlayerCountEntityBonus: 0
|
|
Choice@AreaMedium:
|
|
Label: label-cnc-map-generator-choice-density-area-medium
|
|
Settings:
|
|
AreaEntityBonus: 400
|
|
PlayerCountEntityBonus: 0
|
|
Choice@AreaHigh:
|
|
Label: label-cnc-map-generator-choice-density-area-high
|
|
Settings:
|
|
AreaEntityBonus: 600
|
|
PlayerCountEntityBonus: 0
|
|
Choice@AreaVeryHigh:
|
|
Label: label-cnc-map-generator-choice-density-area-very-high
|
|
Settings:
|
|
AreaEntityBonus: 800
|
|
PlayerCountEntityBonus: 0
|
|
Option@DenyWalledArea:
|
|
Label: label-cnc-map-generator-option-deny-walled-areas
|
|
Checkbox: DenyWalledAreas
|
|
Default: True
|
|
Priority: 1
|
|
Option@Roads:
|
|
Label: label-cnc-map-generator-option-roads
|
|
Checkbox: Roads
|
|
Default: True
|
|
Priority: 1
|
|
ClearMapGenerator@clear:
|
|
Type: clear
|
|
Name: map-generator-clear
|
|
Settings:
|
|
Option@Tile:
|
|
Label: label-clear-map-generator-option-tile
|
|
Choice@CommonClear:
|
|
Label: label-clear-map-generator-choice-tile-clear
|
|
Tileset: DESERT,JUNGLE,SNOW,TEMPERAT,WINTER
|
|
Settings:
|
|
Tile: 255
|
|
Choice@CommonWater:
|
|
Label: label-clear-map-generator-choice-tile-water
|
|
Tileset: DESERT,JUNGLE,SNOW,TEMPERAT,WINTER
|
|
Settings:
|
|
Tile: 1
|