Changeset View
Changeset View
Standalone View
Standalone View
binaries/data/mods/public/maps/random/neareastern_badlands.js
Show First 20 Lines • Show All 159 Lines • ▼ Show 20 Lines | for (var i = 0; i < numPlayers; i++) | ||||
); | ); | ||||
createObjectGroup(group, 0, avoidClasses(clBaseResource,2)); | createObjectGroup(group, 0, avoidClasses(clBaseResource,2)); | ||||
} | } | ||||
RMS.SetProgress(10); | RMS.SetProgress(10); | ||||
log("Creating dune patches..."); | log("Creating dune patches..."); | ||||
placer = new ClumpPlacer(scaleByMapSize(40, 150), 0.2, 0.1, 0); | placer = new ClumpPlacer(scaleByMapSize(40, 150), 0.2, 0.1, 0); | ||||
painter = new TerrainPainter(tDunes); | painter = new TerrainPainter(tDunes); | ||||
createAreas(placer, [painter, paintClass(clPatch)], | createAreasDeprecated(placer, [painter, paintClass(clPatch)], | ||||
avoidClasses(clPatch, 2, clPlayer, 0), | avoidClasses(clPatch, 2, clPlayer, 0), | ||||
scaleByMapSize(5, 20) | scaleByMapSize(5, 20) | ||||
); | ); | ||||
RMS.SetProgress(15); | RMS.SetProgress(15); | ||||
log("Creating sand patches..."); | log("Creating sand patches..."); | ||||
var placer = new ClumpPlacer(scaleByMapSize(25, 100), 0.2, 0.1, 0); | var placer = new ClumpPlacer(scaleByMapSize(25, 100), 0.2, 0.1, 0); | ||||
var painter = new TerrainPainter([tSand, tFineSand]); | var painter = new TerrainPainter([tSand, tFineSand]); | ||||
createAreas(placer, [painter, paintClass(clPatch)], | createAreasDeprecated(placer, [painter, paintClass(clPatch)], | ||||
avoidClasses(clPatch, 2, clPlayer, 0), | avoidClasses(clPatch, 2, clPlayer, 0), | ||||
scaleByMapSize(15, 50) | scaleByMapSize(15, 50) | ||||
); | ); | ||||
RMS.SetProgress(20); | RMS.SetProgress(20); | ||||
log("Creating dirt patches..."); | log("Creating dirt patches..."); | ||||
placer = new ClumpPlacer(scaleByMapSize(25, 100), 0.2, 0.1, 0); | placer = new ClumpPlacer(scaleByMapSize(25, 100), 0.2, 0.1, 0); | ||||
painter = new TerrainPainter([tDirt]); | painter = new TerrainPainter([tDirt]); | ||||
createAreas(placer, [painter, paintClass(clPatch)], | createAreasDeprecated(placer, [painter, paintClass(clPatch)], | ||||
avoidClasses(clPatch, 2, clPlayer, 0), | avoidClasses(clPatch, 2, clPlayer, 0), | ||||
scaleByMapSize(15, 50) | scaleByMapSize(15, 50) | ||||
); | ); | ||||
RMS.SetProgress(25); | RMS.SetProgress(25); | ||||
log("Creating oasis..."); | log("Creating oasis..."); | ||||
var oRadius = scaleByMapSize(14, 40); | var oRadius = scaleByMapSize(14, 40); | ||||
placer = new ClumpPlacer(PI*oRadius*oRadius, 0.6, 0.15, 0, mapSize/2, mapSize/2); | placer = new ClumpPlacer(PI*oRadius*oRadius, 0.6, 0.15, 0, mapSize/2, mapSize/2); | ||||
▲ Show 20 Lines • Show All 49 Lines • ▼ Show 20 Lines | |||||
log("Creating level 1 hills..."); | log("Creating level 1 hills..."); | ||||
placer = new ClumpPlacer(scaleByMapSize(50,300), 0.25, 0.1, 0.5); | placer = new ClumpPlacer(scaleByMapSize(50,300), 0.25, 0.1, 0.5); | ||||
var terrainPainter = new LayeredPainter( | var terrainPainter = new LayeredPainter( | ||||
[tCliff, tSand], // terrains | [tCliff, tSand], // terrains | ||||
[1] // widths | [1] // widths | ||||
); | ); | ||||
var elevationPainter = new SmoothElevationPainter(ELEVATION_MODIFY, 16, 1); | var elevationPainter = new SmoothElevationPainter(ELEVATION_MODIFY, 16, 1); | ||||
var hillAreas = createAreas(placer, [terrainPainter, elevationPainter, paintClass(clHill1)], | var hillAreas = createAreasDeprecated(placer, [terrainPainter, elevationPainter, paintClass(clHill1)], | ||||
avoidClasses(clForest, 3, clPlayer, 0, clHill1, 10), | avoidClasses(clForest, 3, clPlayer, 0, clHill1, 10), | ||||
scaleByMapSize(10,20), 100 | scaleByMapSize(10,20), 100 | ||||
); | ); | ||||
RMS.SetProgress(40); | RMS.SetProgress(40); | ||||
log("Creating small level 1 hills..."); | log("Creating small level 1 hills..."); | ||||
placer = new ClumpPlacer(scaleByMapSize(25,150), 0.25, 0.1, 0.5); | placer = new ClumpPlacer(scaleByMapSize(25,150), 0.25, 0.1, 0.5); | ||||
terrainPainter = new LayeredPainter( | terrainPainter = new LayeredPainter( | ||||
[tCliff, tSand], // terrains | [tCliff, tSand], // terrains | ||||
[1] // widths | [1] // widths | ||||
); | ); | ||||
elevationPainter = new SmoothElevationPainter(ELEVATION_MODIFY, 16, 1); | elevationPainter = new SmoothElevationPainter(ELEVATION_MODIFY, 16, 1); | ||||
var tempAreas = createAreas(placer, [terrainPainter, elevationPainter, paintClass(clHill1)], | var tempAreas = createAreasDeprecated(placer, [terrainPainter, elevationPainter, paintClass(clHill1)], | ||||
avoidClasses(clForest, 3, clPlayer, 0, clHill1, 3), | avoidClasses(clForest, 3, clPlayer, 0, clHill1, 3), | ||||
scaleByMapSize(15,25), 100 | scaleByMapSize(15,25), 100 | ||||
); | ); | ||||
for (var i = 0; i < tempAreas.length; ++i) | for (var i = 0; i < tempAreas.length; ++i) | ||||
hillAreas.push(tempAreas[i]); | hillAreas.push(tempAreas[i]); | ||||
RMS.SetProgress(45); | RMS.SetProgress(45); | ||||
log("Creating decorative rocks..."); | log("Creating decorative rocks..."); | ||||
group = new SimpleGroup( | group = new SimpleGroup( | ||||
[new RandomObject([aDecorativeRock, aBush2, aBush3], 3,8, 0,2)], | [new RandomObject([aDecorativeRock, aBush2, aBush3], 3,8, 0,2)], | ||||
true | true | ||||
); | ); | ||||
createObjectGroupsByAreas(group, 0, | createObjectGroupsByAreasDeprecated(group, 0, | ||||
borderClasses(clHill1, 0, 3), | borderClasses(clHill1, 0, 3), | ||||
scaleByMapSize(40,200), 50, | scaleByMapSize(40,200), 50, | ||||
hillAreas | hillAreas | ||||
); | ); | ||||
RMS.SetProgress(50); | RMS.SetProgress(50); | ||||
log("Creating level 2 hills..."); | log("Creating level 2 hills..."); | ||||
placer = new ClumpPlacer(scaleByMapSize(25,150), 0.25, 0.1, 0); | placer = new ClumpPlacer(scaleByMapSize(25,150), 0.25, 0.1, 0); | ||||
terrainPainter = new LayeredPainter( | terrainPainter = new LayeredPainter( | ||||
[tCliff, tSand], // terrains | [tCliff, tSand], // terrains | ||||
[1] // widths | [1] // widths | ||||
); | ); | ||||
elevationPainter = new SmoothElevationPainter(ELEVATION_MODIFY, 16, 1); | elevationPainter = new SmoothElevationPainter(ELEVATION_MODIFY, 16, 1); | ||||
createAreasInAreas(placer, [terrainPainter, elevationPainter], | createAreasInAreasDeprecated(placer, [terrainPainter, elevationPainter], | ||||
[stayClasses(clHill1, 0)], | [stayClasses(clHill1, 0)], | ||||
scaleByMapSize(15,25), 50, | scaleByMapSize(15,25), 50, | ||||
hillAreas | hillAreas | ||||
); | ); | ||||
RMS.SetProgress(55); | RMS.SetProgress(55); | ||||
log("Creating level 3 hills..."); | log("Creating level 3 hills..."); | ||||
placer = new ClumpPlacer(scaleByMapSize(12, 75), 0.25, 0.1, 0); | placer = new ClumpPlacer(scaleByMapSize(12, 75), 0.25, 0.1, 0); | ||||
terrainPainter = new LayeredPainter( | terrainPainter = new LayeredPainter( | ||||
[tCliff, tSand], // terrains | [tCliff, tSand], // terrains | ||||
[1] // widths | [1] // widths | ||||
); | ); | ||||
elevationPainter = new SmoothElevationPainter(ELEVATION_MODIFY, 16, 1); | elevationPainter = new SmoothElevationPainter(ELEVATION_MODIFY, 16, 1); | ||||
createAreas(placer, [terrainPainter, elevationPainter], | createAreasDeprecated(placer, [terrainPainter, elevationPainter], | ||||
[stayClasses(clHill1, 0)], | [stayClasses(clHill1, 0)], | ||||
scaleByMapSize(15,25), 50, | scaleByMapSize(15,25), 50, | ||||
hillAreas | hillAreas | ||||
); | ); | ||||
RMS.SetProgress(60); | RMS.SetProgress(60); | ||||
log("Creating bumps..."); | log("Creating bumps..."); | ||||
placer = new ClumpPlacer(scaleByMapSize(20, 50), 0.3, 0.06, 0); | placer = new ClumpPlacer(scaleByMapSize(20, 50), 0.3, 0.06, 0); | ||||
elevationPainter = new SmoothElevationPainter(ELEVATION_MODIFY, 2, 2); | elevationPainter = new SmoothElevationPainter(ELEVATION_MODIFY, 2, 2); | ||||
createAreas( | createAreasDeprecated( | ||||
placer, | placer, | ||||
elevationPainter, | elevationPainter, | ||||
avoidClasses(clForest, 0, clPlayer, 0, clHill1, 2), | avoidClasses(clForest, 0, clPlayer, 0, clHill1, 2), | ||||
scaleByMapSize(100, 200) | scaleByMapSize(100, 200) | ||||
); | ); | ||||
RMS.SetProgress(65); | RMS.SetProgress(65); | ||||
// calculate desired number of trees for map (based on size) | // calculate desired number of trees for map (based on size) | ||||
const MIN_TREES = 500; | const MIN_TREES = 500; | ||||
const MAX_TREES = 2500; | const MAX_TREES = 2500; | ||||
const P_FOREST = 0.5; | const P_FOREST = 0.5; | ||||
var totalTrees = scaleByMapSize(MIN_TREES, MAX_TREES); | var totalTrees = scaleByMapSize(MIN_TREES, MAX_TREES); | ||||
var numForest = totalTrees * P_FOREST; | var numForest = totalTrees * P_FOREST; | ||||
var numStragglers = totalTrees * (1.0 - P_FOREST); | var numStragglers = totalTrees * (1.0 - P_FOREST); | ||||
// create forests | // create forests | ||||
log("Creating forests..."); | log("Creating forests..."); | ||||
var num = scaleByMapSize(10,30); | var num = scaleByMapSize(10,30); | ||||
placer = new ClumpPlacer(numForest / num, 0.15, 0.1, 0.5); | placer = new ClumpPlacer(numForest / num, 0.15, 0.1, 0.5); | ||||
painter = new TerrainPainter([tSand, pForest]); | painter = new TerrainPainter([tSand, pForest]); | ||||
createAreas(placer, [painter, paintClass(clForest)], | createAreasDeprecated(placer, [painter, paintClass(clForest)], | ||||
avoidClasses(clPlayer, 1, clForest, 10, clHill1, 1), | avoidClasses(clPlayer, 1, clForest, 10, clHill1, 1), | ||||
num, 50 | num, 50 | ||||
); | ); | ||||
RMS.SetProgress(70); | RMS.SetProgress(70); | ||||
log("Creating stone mines..."); | log("Creating stone mines..."); | ||||
group = new SimpleGroup([new SimpleObject(oStoneSmall, 0,2, 0,4), new SimpleObject(oStoneLarge, 1,1, 0,4), new RandomObject(aBushes, 2,4, 0,2)], true, clRock); | group = new SimpleGroup([new SimpleObject(oStoneSmall, 0,2, 0,4), new SimpleObject(oStoneLarge, 1,1, 0,4), new RandomObject(aBushes, 2,4, 0,2)], true, clRock); | ||||
createObjectGroups(group, 0, | createObjectGroupsDeprecated(group, 0, | ||||
[avoidClasses(clForest, 1, clPlayer, 10, clRock, 10, clHill1, 1)], | [avoidClasses(clForest, 1, clPlayer, 10, clRock, 10, clHill1, 1)], | ||||
scaleByMapSize(4,16), 100 | scaleByMapSize(4,16), 100 | ||||
); | ); | ||||
group = new SimpleGroup([new SimpleObject(oStoneSmall, 2,5, 1,3), new RandomObject(aBushes, 2,4, 0,2)], true, clRock); | group = new SimpleGroup([new SimpleObject(oStoneSmall, 2,5, 1,3), new RandomObject(aBushes, 2,4, 0,2)], true, clRock); | ||||
createObjectGroups(group, 0, | createObjectGroupsDeprecated(group, 0, | ||||
[avoidClasses(clForest, 1, clPlayer, 10, clRock, 10, clHill1, 1)], | [avoidClasses(clForest, 1, clPlayer, 10, clRock, 10, clHill1, 1)], | ||||
scaleByMapSize(4,16), 100 | scaleByMapSize(4,16), 100 | ||||
); | ); | ||||
log("Creating metal mines..."); | log("Creating metal mines..."); | ||||
group = new SimpleGroup([new SimpleObject(oMetalLarge, 1,1, 0,4), new RandomObject(aBushes, 2,4, 0,2)], true, clMetal); | group = new SimpleGroup([new SimpleObject(oMetalLarge, 1,1, 0,4), new RandomObject(aBushes, 2,4, 0,2)], true, clMetal); | ||||
createObjectGroups(group, 0, | createObjectGroupsDeprecated(group, 0, | ||||
[avoidClasses(clForest, 1, clPlayer, 10, clMetal, 10, clRock, 5, clHill1, 1)], | [avoidClasses(clForest, 1, clPlayer, 10, clMetal, 10, clRock, 5, clHill1, 1)], | ||||
scaleByMapSize(4,16), 100 | scaleByMapSize(4,16), 100 | ||||
); | ); | ||||
RMS.SetProgress(80); | RMS.SetProgress(80); | ||||
log("Creating gazelles..."); | log("Creating gazelles..."); | ||||
group = new SimpleGroup([new SimpleObject(oGazelle, 5,7, 0,4)], true, clFood); | group = new SimpleGroup([new SimpleObject(oGazelle, 5,7, 0,4)], true, clFood); | ||||
createObjectGroups(group, 0, | createObjectGroupsDeprecated(group, 0, | ||||
avoidClasses(clForest, 0, clPlayer, 5, clHill1, 1, clFood, 10), | avoidClasses(clForest, 0, clPlayer, 5, clHill1, 1, clFood, 10), | ||||
scaleByMapSize(5,20), 50 | scaleByMapSize(5,20), 50 | ||||
); | ); | ||||
log("Creating goats..."); | log("Creating goats..."); | ||||
group = new SimpleGroup([new SimpleObject(oGoat, 2,4, 0,3)], true, clFood); | group = new SimpleGroup([new SimpleObject(oGoat, 2,4, 0,3)], true, clFood); | ||||
createObjectGroups(group, 0, | createObjectGroupsDeprecated(group, 0, | ||||
avoidClasses(clForest, 0, clPlayer, 5, clHill1, 1, clFood, 10), | avoidClasses(clForest, 0, clPlayer, 5, clHill1, 1, clFood, 10), | ||||
scaleByMapSize(5,20), 50 | scaleByMapSize(5,20), 50 | ||||
); | ); | ||||
log("Creating camels..."); | log("Creating camels..."); | ||||
group = new SimpleGroup([new SimpleObject(oCamel, 2,4, 0,2)], true, clFood); | group = new SimpleGroup([new SimpleObject(oCamel, 2,4, 0,2)], true, clFood); | ||||
createObjectGroups(group, 0, | createObjectGroupsDeprecated(group, 0, | ||||
avoidClasses(clForest, 0, clPlayer, 5, clHill1, 1, clFood, 10), | avoidClasses(clForest, 0, clPlayer, 5, clHill1, 1, clFood, 10), | ||||
scaleByMapSize(5,20), 50 | scaleByMapSize(5,20), 50 | ||||
); | ); | ||||
RMS.SetProgress(85); | RMS.SetProgress(85); | ||||
log("Creating straggler trees..."); | log("Creating straggler trees..."); | ||||
var types = [oDatePalm, oSDatePalm]; // some variation | var types = [oDatePalm, oSDatePalm]; // some variation | ||||
var num = floor(numStragglers / types.length); | var num = floor(numStragglers / types.length); | ||||
for (var i = 0; i < types.length; ++i) | for (var i = 0; i < types.length; ++i) | ||||
{ | { | ||||
group = new SimpleGroup([new SimpleObject(types[i], 1,1, 0,0)], true); | group = new SimpleGroup([new SimpleObject(types[i], 1,1, 0,0)], true); | ||||
createObjectGroups(group, 0, | createObjectGroupsDeprecated(group, 0, | ||||
avoidClasses(clForest, 0, clHill1, 1, clPlayer, 4, clMetal, 6, clRock, 6), | avoidClasses(clForest, 0, clHill1, 1, clPlayer, 4, clMetal, 6, clRock, 6), | ||||
num | num | ||||
); | ); | ||||
} | } | ||||
RMS.SetProgress(90); | RMS.SetProgress(90); | ||||
log("Creating bushes..."); | log("Creating bushes..."); | ||||
group = new SimpleGroup([new RandomObject(aBushes, 2,3, 0,2)]); | group = new SimpleGroup([new RandomObject(aBushes, 2,3, 0,2)]); | ||||
createObjectGroups(group, 0, | createObjectGroupsDeprecated(group, 0, | ||||
avoidClasses(clHill1, 1, clPlayer, 0, clForest, 0), | avoidClasses(clHill1, 1, clPlayer, 0, clForest, 0), | ||||
scaleByMapSize(16, 262) | scaleByMapSize(16, 262) | ||||
); | ); | ||||
log("Creating more decorative rocks..."); | log("Creating more decorative rocks..."); | ||||
group = new SimpleGroup([new SimpleObject(aDecorativeRock, 1,2, 0,2)]); | group = new SimpleGroup([new SimpleObject(aDecorativeRock, 1,2, 0,2)]); | ||||
createObjectGroups(group, 0, | createObjectGroupsDeprecated(group, 0, | ||||
avoidClasses(clHill1, 1, clPlayer, 0, clForest, 0), | avoidClasses(clHill1, 1, clPlayer, 0, clForest, 0), | ||||
scaleByMapSize(16, 262) | scaleByMapSize(16, 262) | ||||
); | ); | ||||
setWaterColor(0, 0.227, 0.843); | setWaterColor(0, 0.227, 0.843); | ||||
setWaterTint(0, 0.545, 0.859); | setWaterTint(0, 0.545, 0.859); | ||||
setWaterWaviness(1.0); | setWaterWaviness(1.0); | ||||
setWaterType("clap"); | setWaterType("clap"); | ||||
setWaterMurkiness(0.75); | setWaterMurkiness(0.75); | ||||
setWaterHeight(20); | setWaterHeight(20); | ||||
ExportMap(); | ExportMap(); |
Wildfire Games · Phabricator