Index: binaries/data/mods/public/maps/random/archipelago.js =================================================================== --- binaries/data/mods/public/maps/random/archipelago.js +++ binaries/data/mods/public/maps/random/archipelago.js @@ -77,7 +77,10 @@ playerPosition[i], 0, [Math.floor(islandRadius)]), - new SmoothElevationPainter(ELEVATION_SET, heightLand, 4)); + [ + new SmoothElevationPainter(ELEVATION_SET, heightLand, 4), + new TileClassPainter(clLand) + ]); g_Map.log("Creating random islands"); createAreas( @@ -147,10 +150,20 @@ else createMountains(tCliff, [avoidClasses(clPlayer, 2, clHill, 15), stayClasses(clLand, 0)], clHill, scaleByMapSize(1, 4) * numPlayers); -var [forestTrees, stragglerTrees] = getTreeCounts(...rBiomeTreeCount(1)); +// bump tree amount in all biomes and especially in sahara to ensure the players get some wood +// exclude india as it gets too crowded +var treeAmount = 1.2 +if (currentBiome() == "generic/sahara") + treeAmount = 2 +else if (currentBiome() == "generic/india") + treeAmount = 1 + +var forestForestSpacing = currentBiome() == "generic/india" ? 20 : 13; +var forestPlayerSpacing = currentBiome() == "generic/india" ? 20 : 10; +var [forestTrees, stragglerTrees] = getTreeCounts(...rBiomeTreeCount(treeAmount)); createForests( [tMainTerrain, tForestFloor1, tForestFloor2, pForest1, pForest2], - [avoidClasses(clPlayer, 20, clForest, 17, clHill, 0), stayClasses(clLand, 4)], + [avoidClasses(clPlayer, forestPlayerSpacing, clForest, forestForestSpacing, clHill, 0), stayClasses(clLand, 3)], clForest, forestTrees); Engine.SetProgress(50);