From e8a4f9ce4ae5127ff1e37f11acac479a98bc2f67 Mon Sep 17 00:00:00 2001 From: Spahbod Date: Wed, 27 Jun 2012 08:17:04 +0000 Subject: [PATCH] This was SVN commit r12028. --- binaries/data/mods/public/maps/random/aegean_sea.json | 3 ++- binaries/data/mods/public/maps/random/alpine_lakes.js | 8 ++++---- binaries/data/mods/public/maps/random/alpine_lakes.json | 2 +- binaries/data/mods/public/maps/random/alpine_valley.js | 8 ++++---- binaries/data/mods/public/maps/random/alpine_valley.json | 2 +- .../data/mods/public/maps/random/anatolian_plateau.js | 2 +- .../data/mods/public/maps/random/anatolian_plateau.json | 4 ++-- binaries/data/mods/public/maps/random/archipelago.json | 3 ++- .../data/mods/public/maps/random/ardennes_forest.json | 2 +- .../data/mods/public/maps/random/atlas_mountains.json | 2 +- binaries/data/mods/public/maps/random/corsica.json | 1 + .../mods/public/maps/random/cycladic_archipelago.json | 1 + binaries/data/mods/public/maps/random/gulf_of_bothnia.js | 2 +- binaries/data/mods/public/maps/random/islands.json | 1 + binaries/data/mods/public/maps/random/migration.json | 1 + .../data/mods/public/maps/random/rmgen/randombiome.js | 2 +- binaries/data/mods/public/maps/random/the_nile.json | 1 + 17 files changed, 26 insertions(+), 19 deletions(-) diff --git a/binaries/data/mods/public/maps/random/aegean_sea.json b/binaries/data/mods/public/maps/random/aegean_sea.json index ad3ecfb6fa..5de81da9b4 100644 --- a/binaries/data/mods/public/maps/random/aegean_sea.json +++ b/binaries/data/mods/public/maps/random/aegean_sea.json @@ -2,9 +2,10 @@ "settings" : { "Name" : "Aegean Sea", "Script" : "aegean_sea.js", - "Description" : "Players start in two sides of a sea with scattered islands", + "Description" : "Players start in two sides of a sea with scattered islands\n\n\nAegean Sea is a part of Mediterranean Sea between southern Balkan and Anatolia. There are more than 100 islands located in the region. By the game's timeline, nearly all of the inhabitants of the areas surrounding the sea were Greek. Many of the islands in the Aegean have safe harbours and bays. In ancient times, navigation through the sea was easier than travelling across the rough terrain of the Greek mainland (and to some extent the coastal areas of Anatolia). Many of the islands are volcanic, and marble and iron are mined on other islands. The larger islands have some fertile valleys and plains.", "BaseTerrain" : ["medit_grass_shrubs", "medit_rocks_grass_shrubs", "medit_rocks_shrubs", "medit_rocks_grass", "medit_shrubs"], "BaseHeight" : 1, + "Keywords": ["naval"], "CircularMap" : true, "XXXXXX" : "Optionally define other things here, like we would for a scenario" } diff --git a/binaries/data/mods/public/maps/random/alpine_lakes.js b/binaries/data/mods/public/maps/random/alpine_lakes.js index eed0fceb3f..24877db9da 100644 --- a/binaries/data/mods/public/maps/random/alpine_lakes.js +++ b/binaries/data/mods/public/maps/random/alpine_lakes.js @@ -249,8 +249,8 @@ for (var i = 0; i < scaleByMapSize(15,40); i++) ); var elevationPainter = new SmoothElevationPainter( ELEVATION_SET, // type - 25, // elevation - 3 // blend radius + 30, // elevation + 2 // blend radius ); createArea(placer, [terrainPainter, elevationPainter, paintClass(clHill)], avoidClasses(clPlayer, 15)); } @@ -272,7 +272,7 @@ for (var i = 0; i < numPlayers; i++) var elevationPainter = new SmoothElevationPainter( ELEVATION_SET, // type 3, // elevation - 3 // blend radius + 2 // blend radius ); createArea(placer, [terrainPainter, elevationPainter, paintClass(clPass)], null); } @@ -313,7 +313,7 @@ terrainPainter = new LayeredPainter( [tGrass, tCliff, tGrass], // terrains [1, 2] // widths ); -elevationPainter = new SmoothElevationPainter(ELEVATION_SET, 18, 2); +elevationPainter = new SmoothElevationPainter(ELEVATION_SET, 27, 2); createAreas( placer, [terrainPainter, elevationPainter, paintClass(clHill)], diff --git a/binaries/data/mods/public/maps/random/alpine_lakes.json b/binaries/data/mods/public/maps/random/alpine_lakes.json index f7d62602d2..3f080df3b1 100644 --- a/binaries/data/mods/public/maps/random/alpine_lakes.json +++ b/binaries/data/mods/public/maps/random/alpine_lakes.json @@ -2,7 +2,7 @@ "settings" : { "Name" : "Alpine Lakes", "Script" : "alpine_lakes.js", - "Description" : "High mountains bordering deep valleys strung with mountain streams and broader finger-like lakes.", + "Description" : "High mountains bordering deep valleys strung with mountain streams and broader finger-like lakes.\n\n\nThe Alps is a great mountain range located in the north of the Italian Peninsula. Little is known of the early dwellers of the Alps, save from scanty accounts preserved by Roman and Greek historians and geographers. A few details have come down to us of the conquest of many of the Alpine tribes by Augustus. During the Second Punic War in 218 BC, the Carthaginian general Hannibal successfully crossed the Alps along with an army numbering 38,000 infantry, 8,000 cavalry, and 37 war elephants. This was one of the most celebrated achievements of any military force in ancient warfare.", "BaseTerrain" : ["alpine_dirt_grass_50"], "BaseHeight" : 3, "CircularMap" : true, diff --git a/binaries/data/mods/public/maps/random/alpine_valley.js b/binaries/data/mods/public/maps/random/alpine_valley.js index 103ec80908..ababd60870 100644 --- a/binaries/data/mods/public/maps/random/alpine_valley.js +++ b/binaries/data/mods/public/maps/random/alpine_valley.js @@ -251,8 +251,8 @@ for (var i = 0; i < scaleByMapSize(15,40); i++) ); var elevationPainter = new SmoothElevationPainter( ELEVATION_SET, // type - 20, // elevation - 3 // blend radius + 30, // elevation + 2 // blend radius ); createArea(placer, [terrainPainter, elevationPainter, paintClass(clHill)], avoidClasses(clPlayer, 15)); } @@ -276,7 +276,7 @@ for (var i = 0; i < numPlayers; i++) var elevationPainter = new SmoothElevationPainter( ELEVATION_SET, // type 3, // elevation - 3 // blend radius + 2 // blend radius ); createArea(placer, [terrainPainter, elevationPainter, paintClass(clPass)], null); } @@ -335,7 +335,7 @@ terrainPainter = new LayeredPainter( [tGrass, tCliff, tGrass], // terrains [1, 2] // widths ); -elevationPainter = new SmoothElevationPainter(ELEVATION_SET, 18, 2); +elevationPainter = new SmoothElevationPainter(ELEVATION_SET, 27, 2); createAreas( placer, [terrainPainter, elevationPainter, paintClass(clHill)], diff --git a/binaries/data/mods/public/maps/random/alpine_valley.json b/binaries/data/mods/public/maps/random/alpine_valley.json index 4dc260f6b2..c2f4244e2c 100644 --- a/binaries/data/mods/public/maps/random/alpine_valley.json +++ b/binaries/data/mods/public/maps/random/alpine_valley.json @@ -2,7 +2,7 @@ "settings" : { "Name" : "Alpine Valley", "Script" : "alpine_valley.js", - "Description" : "High mountains bordering deep valleys", + "Description" : "High mountains bordering deep valleys\n\n\nThe Alps is a great mountain range located in the north of the Italian Peninsula. Little is known of the early dwellers of the Alps, save from scanty accounts preserved by Roman and Greek historians and geographers. A few details have come down to us of the conquest of many of the Alpine tribes by Augustus. During the Second Punic War in 218 BC, the Carthaginian general Hannibal successfully crossed the Alps along with an army numbering 38,000 infantry, 8,000 cavalry, and 37 war elephants. This was one of the most celebrated achievements of any military force in ancient warfare.", "BaseTerrain" : ["alpine_dirt_grass_50"], "BaseHeight" : 3, "CircularMap" : true, diff --git a/binaries/data/mods/public/maps/random/anatolian_plateau.js b/binaries/data/mods/public/maps/random/anatolian_plateau.js index f1b7652d71..dddc63aab5 100644 --- a/binaries/data/mods/public/maps/random/anatolian_plateau.js +++ b/binaries/data/mods/public/maps/random/anatolian_plateau.js @@ -1 +1 @@ -RMS.LoadLibrary("rmgen"); var tGrass = ["steppe_grass_a", "steppe_grass_b", "steppe_grass_c", "steppe_grass_d"]; var tGrassPForest = "steppe_grass_c"; var tGrassDForest = "steppe_grass_c"; var tGrassA = "steppe_grass_green_a"; var tGrassB = "steppe_grass_dirt_33"; var tGrassC = ["steppe_grass_b", "steppe_grass_c", "steppe_grass_d"]; var tDirt = ["steppe_dirt_a", "steppe_dirt_b"]; var tRoad = "road_stones"; var tRoadWild = "road_stones"; var tShoreBlend = "desert_shore_stones"; var tShore = "dirta"; var tWater = "desert_sand_wet"; // gaia entities var oBeech = "gaia/flora_tree_poplar_lombardy"; var oBush = "gaia/flora_bush_temperate"; var oBerryBush = "gaia/flora_bush_berry"; var oChicken = "gaia/fauna_chicken"; var oDeer = "gaia/fauna_rabbit"; var oFish = "gaia/fauna_fish"; var oSheep = "gaia/fauna_sheep"; var oStoneLarge = "gaia/geology_stonemine_medit_quarry"; var oStoneSmall = "gaia/geology_stone_mediterranean"; var oMetalLarge = "gaia/geology_metal_mediterranean_slabs"; // decorative props var aGrass = "actor|props/flora/grass_soft_small_tall.xml"; var aGrassShort = "actor|props/flora/grass_soft_large.xml"; var aRockLarge = "actor|geology/stone_granite_med.xml"; var aRockMedium = "actor|geology/stone_granite_med.xml"; var aBushMedium = "actor|props/flora/bush_medit_me.xml"; var aBushSmall = "actor|props/flora/bush_medit_sm.xml"; var pForestD = [tGrassDForest + TERRAIN_SEPARATOR + oBeech, tGrassDForest]; var pForestP = [tGrassPForest + TERRAIN_SEPARATOR + oBeech, tGrassPForest]; const BUILDING_ANGlE = -PI/4; // initialize map log("Initializing map..."); InitMap(); var numPlayers = getNumPlayers(); var mapSize = getMapSize(); var mapArea = mapSize*mapSize; // create tile classes var clPlayer = createTileClass(); var clHill = createTileClass(); var clForest = createTileClass(); var clWater = createTileClass(); var clDirt = createTileClass(); var clRock = createTileClass(); var clMetal = createTileClass(); var clFood = createTileClass(); var clBaseResource = createTileClass(); var clSettlement = createTileClass(); // randomize player order var playerIDs = []; for (var i = 0; i < numPlayers; i++) { playerIDs.push(i+1); } playerIDs = sortPlayers(playerIDs); // place players var playerX = new Array(numPlayers); var playerZ = new Array(numPlayers); var playerAngle = new Array(numPlayers); var startAngle = randFloat(0, TWO_PI); for (var i = 0; i < numPlayers; i++) { playerAngle[i] = startAngle + i*TWO_PI/numPlayers; playerX[i] = 0.5 + 0.35*cos(playerAngle[i]); playerZ[i] = 0.5 + 0.35*sin(playerAngle[i]); } for (var i = 0; i < numPlayers; i++) { var id = playerIDs[i]; log("Creating base for player " + id + "..."); // some constants var radius = scaleByMapSize(15,25); var cliffRadius = 2; var elevation = 20; // get the x and z in tiles var fx = fractionToTiles(playerX[i]); var fz = fractionToTiles(playerZ[i]); var ix = round(fx); var iz = round(fz); addToClass(ix, iz, clPlayer); addToClass(ix+5, iz, clPlayer); addToClass(ix, iz+5, clPlayer); addToClass(ix-5, iz, clPlayer); addToClass(ix, iz-5, clPlayer); // create the city patch var cityRadius = radius/3; var placer = new ClumpPlacer(PI*cityRadius*cityRadius, 0.6, 0.3, 10, ix, iz); var painter = new LayeredPainter([tRoadWild, tRoad], [1]); createArea(placer, painter, null); // create starting units placeCivDefaultEntities(fx, fz, id, BUILDING_ANGlE); // create animals for (var j = 0; j < 2; ++j) { var aAngle = randFloat(0, TWO_PI); var aDist = 7; var aX = round(fx + aDist * cos(aAngle)); var aZ = round(fz + aDist * sin(aAngle)); var group = new SimpleGroup( [new SimpleObject(oChicken, 5,5, 0,3)], true, clBaseResource, aX, aZ ); createObjectGroup(group, 0); } // create berry bushes var bbAngle = randFloat(0, TWO_PI); var bbDist = 12; var bbX = round(fx + bbDist * cos(bbAngle)); var bbZ = round(fz + bbDist * sin(bbAngle)); group = new SimpleGroup( [new SimpleObject(oBerryBush, 5,5, 0,3)], true, clBaseResource, bbX, bbZ ); createObjectGroup(group, 0); // create metal mine var mAngle = bbAngle; while(abs(mAngle - bbAngle) < PI/3) { mAngle = randFloat(0, TWO_PI); } var mDist = 12; var mX = round(fx + mDist * cos(mAngle)); var mZ = round(fz + mDist * sin(mAngle)); group = new SimpleGroup( [new SimpleObject(oMetalLarge, 1,1, 0,0)], true, clBaseResource, mX, mZ ); createObjectGroup(group, 0); // create stone mines mAngle += randFloat(PI/8, PI/4); mX = round(fx + mDist * cos(mAngle)); mZ = round(fz + mDist * sin(mAngle)); group = new SimpleGroup( [new SimpleObject(oStoneLarge, 1,1, 0,2)], true, clBaseResource, mX, mZ ); createObjectGroup(group, 0); var hillSize = PI * radius * radius; // create starting trees var num = floor(hillSize / 100); var tAngle = randFloat(0, TWO_PI); var tDist = randFloat(11, 13); var tX = round(fx + tDist * cos(tAngle)); var tZ = round(fz + tDist * sin(tAngle)); group = new SimpleGroup( [new SimpleObject(oBeech, num, num, 0,5)], false, clBaseResource, tX, tZ ); createObjectGroup(group, 0, avoidClasses(clBaseResource,2)); // create grass tufts var num = hillSize / 250; for (var j = 0; j < num; j++) { var gAngle = randFloat(0, TWO_PI); var gDist = radius - (5 + randInt(7)); var gX = round(fx + gDist * cos(gAngle)); var gZ = round(fz + gDist * sin(gAngle)); group = new SimpleGroup( [new SimpleObject(aGrassShort, 2,5, 0,1, -PI/8,PI/8)], false, clBaseResource, gX, gZ ); createObjectGroup(group, 0); } } RMS.SetProgress(20); // create bumps log("Creating bumps..."); placer = new ClumpPlacer(scaleByMapSize(20, 50), 0.3, 0.06, 1); painter = new SmoothElevationPainter(ELEVATION_MODIFY, 2, 2); createAreas( placer, painter, avoidClasses(clPlayer, 13), scaleByMapSize(300, 800) ); // calculate desired number of trees for map (based on size) var MIN_TREES = 150; var MAX_TREES = 900; var P_FOREST = 0.65; var totalTrees = scaleByMapSize(MIN_TREES, MAX_TREES); var numForest = totalTrees * P_FOREST; var numStragglers = totalTrees * (1.0 - P_FOREST); // create forests log("Creating forests..."); var types = [ [[tGrassDForest, tGrass, pForestD], [tGrassDForest, pForestD]], [[tGrassPForest, tGrass, pForestP], [tGrassPForest, pForestP]] ]; // some variation var size = numForest / (scaleByMapSize(2,8) * numPlayers); var num = 4 * floor(size / types.length); for (var i = 0; i < types.length; ++i) { placer = new ClumpPlacer(numForest / num, 0.1, 0.1, 1); painter = new LayeredPainter( types[i], // terrains [2] // widths ); createAreas( placer, [painter, paintClass(clForest)], avoidClasses(clPlayer, 13, clForest, 20, clHill, 1), num ); } RMS.SetProgress(50); // create grass patches log("Creating grass patches..."); var sizes = [scaleByMapSize(3, 48), scaleByMapSize(5, 84), scaleByMapSize(8, 128)]; for (var i = 0; i < sizes.length; i++) { placer = new ClumpPlacer(sizes[i], 0.3, 0.06, 0.5); painter = new LayeredPainter( [[tGrass,tGrassA,tGrassC],[tGrass,tGrassA,tGrassC], [tGrass,tGrassA,tGrassC]], // terrains [1,1] // widths ); createAreas( placer, [painter, paintClass(clDirt)], avoidClasses(clForest, 0, clHill, 0, clDirt, 5, clPlayer, 10), scaleByMapSize(20, 60) ); } // create dirt patches log("Creating dirt patches..."); var sizes = [scaleByMapSize(2, 32), scaleByMapSize(3, 48), scaleByMapSize(5, 80)]; for (var i = 0; i < sizes.length; i++) { placer = new ClumpPlacer(sizes[i], 0.3, 0.06, 0.5); painter = new LayeredPainter( [tGrassB ,tDirt], // terrains [1] // widths ); createAreas( placer, painter, avoidClasses(clForest, 0, clHill, 0, clDirt, 5, clPlayer, 10), scaleByMapSize(30, 90) ); } RMS.SetProgress(55); log("Creating stone mines..."); // create large stone quarries group = new SimpleGroup([new SimpleObject(oStoneSmall, 0,2, 0,4), new SimpleObject(oStoneLarge, 1,1, 0,4)], true, clRock); createObjectGroups(group, 0, avoidClasses(clForest, 1, clPlayer, 10, clRock, 10, clHill, 1), scaleByMapSize(1,4), 100 ); // create small stone quarries group = new SimpleGroup([new SimpleObject(oStoneSmall, 2,5, 1,3)], true, clRock); createObjectGroups(group, 0, avoidClasses(clForest, 1, clPlayer, 10, clRock, 10, clHill, 1), scaleByMapSize(1,4), 100 ); log("Creating metal mines..."); // create large metal quarries group = new SimpleGroup([new SimpleObject(oMetalLarge, 1,1, 0,4)], true, clMetal); createObjectGroups(group, 0, avoidClasses(clForest, 1, clPlayer, 10, clMetal, 10, clRock, 5, clHill, 1), scaleByMapSize(2,8), 100 ); RMS.SetProgress(65); // create small decorative rocks log("Creating small decorative rocks..."); group = new SimpleGroup( [new SimpleObject(aRockMedium, 1,3, 0,1)], true ); createObjectGroups( group, 0, avoidClasses(clWater, 0, clForest, 0, clPlayer, 10, clHill, 0), scaleByMapSize(16, 262), 50 ); // create large decorative rocks log("Creating large decorative rocks..."); group = new SimpleGroup( [new SimpleObject(aRockLarge, 1,2, 0,1), new SimpleObject(aRockMedium, 1,3, 0,2)], true ); createObjectGroups( group, 0, avoidClasses(clWater, 0, clForest, 0, clPlayer, 10, clHill, 0), scaleByMapSize(8, 131), 50 ); RMS.SetProgress(70); // create deer log("Creating deer..."); group = new SimpleGroup( [new SimpleObject(oDeer, 5,7, 0,4)], true, clFood ); createObjectGroups(group, 0, avoidClasses(clWater, 0, clForest, 0, clPlayer, 10, clHill, 1, clFood, 20), 6 * numPlayers, 50 ); RMS.SetProgress(75); // create sheep log("Creating sheep..."); group = new SimpleGroup( [new SimpleObject(oSheep, 2,3, 0,2)], true, clFood ); createObjectGroups(group, 0, avoidClasses(clWater, 0, clForest, 0, clPlayer, 10, clHill, 1, clFood, 20), 3 * numPlayers, 50 ); RMS.SetProgress(85); // create straggler trees log("Creating straggler trees..."); var types = [oBush, oBeech]; // some variation var num = floor(numStragglers / types.length); for (var i = 0; i < types.length; ++i) { group = new SimpleGroup( [new SimpleObject(types[i], 1,1, 0,3)], true, clForest ); createObjectGroups(group, 0, avoidClasses(clForest, 1, clHill, 1, clPlayer, 13, clMetal, 1, clRock, 1), num ); } // create large grass tufts log("Creating large grass tufts..."); group = new SimpleGroup( [new SimpleObject(aGrass, 2,4, 0,1.8, -PI/8,PI/8), new SimpleObject(aGrassShort, 3,6, 1.2,2.5, -PI/8,PI/8)] ); createObjectGroups(group, 0, avoidClasses(clWater, 3, clHill, 2, clPlayer, 2, clDirt, 1, clForest, 0), scaleByMapSize(13, 200) ); RMS.SetProgress(95); // create bushes log("Creating bushes..."); group = new SimpleGroup( [new SimpleObject(aBushMedium, 1,2, 0,2), new SimpleObject(aBushSmall, 2,4, 0,2)] ); createObjectGroups(group, 0, avoidClasses(clWater, 1, clHill, 1, clPlayer, 1, clDirt, 1), scaleByMapSize(13, 200), 50 ); ExportMap(); \ No newline at end of file +RMS.LoadLibrary("rmgen"); var tGrass = ["steppe_grass_a", "steppe_grass_b", "steppe_grass_c", "steppe_grass_d"]; var tGrassPForest = "steppe_grass_c"; var tGrassDForest = "steppe_grass_c"; var tGrassA = "steppe_grass_b"; var tGrassB = "steppe_grass_c"; var tGrassC = ["steppe_grass_b", "steppe_grass_c", "steppe_grass_d"]; var tDirt = ["steppe_dirt_a", "steppe_dirt_b"]; var tRoad = "road_stones"; var tRoadWild = "road_stones"; var tShoreBlend = "desert_shore_stones"; var tShore = "dirta"; var tWater = "desert_sand_wet"; // gaia entities var oBeech = "gaia/flora_tree_poplar_lombardy"; var oBush = "gaia/flora_bush_temperate"; var oBerryBush = "gaia/flora_bush_berry"; var oChicken = "gaia/fauna_chicken"; var oDeer = "gaia/fauna_rabbit"; var oFish = "gaia/fauna_fish"; var oSheep = "gaia/fauna_sheep"; var oStoneLarge = "gaia/geology_stonemine_medit_quarry"; var oStoneSmall = "gaia/geology_stone_mediterranean"; var oMetalLarge = "gaia/geology_metal_mediterranean_slabs"; // decorative props var aGrass = "actor|props/flora/grass_soft_small_tall.xml"; var aGrassShort = "actor|props/flora/grass_soft_large.xml"; var aRockLarge = "actor|geology/stone_granite_med.xml"; var aRockMedium = "actor|geology/stone_granite_med.xml"; var aBushMedium = "actor|props/flora/bush_medit_me.xml"; var aBushSmall = "actor|props/flora/bush_medit_sm.xml"; var pForestD = [tGrassDForest + TERRAIN_SEPARATOR + oBeech, tGrassDForest]; var pForestP = [tGrassPForest + TERRAIN_SEPARATOR + oBeech, tGrassPForest]; const BUILDING_ANGlE = -PI/4; // initialize map log("Initializing map..."); InitMap(); var numPlayers = getNumPlayers(); var mapSize = getMapSize(); var mapArea = mapSize*mapSize; // create tile classes var clPlayer = createTileClass(); var clHill = createTileClass(); var clForest = createTileClass(); var clWater = createTileClass(); var clDirt = createTileClass(); var clRock = createTileClass(); var clMetal = createTileClass(); var clFood = createTileClass(); var clBaseResource = createTileClass(); var clSettlement = createTileClass(); // randomize player order var playerIDs = []; for (var i = 0; i < numPlayers; i++) { playerIDs.push(i+1); } playerIDs = sortPlayers(playerIDs); // place players var playerX = new Array(numPlayers); var playerZ = new Array(numPlayers); var playerAngle = new Array(numPlayers); var startAngle = randFloat(0, TWO_PI); for (var i = 0; i < numPlayers; i++) { playerAngle[i] = startAngle + i*TWO_PI/numPlayers; playerX[i] = 0.5 + 0.35*cos(playerAngle[i]); playerZ[i] = 0.5 + 0.35*sin(playerAngle[i]); } for (var i = 0; i < numPlayers; i++) { var id = playerIDs[i]; log("Creating base for player " + id + "..."); // some constants var radius = scaleByMapSize(15,25); var cliffRadius = 2; var elevation = 20; // get the x and z in tiles var fx = fractionToTiles(playerX[i]); var fz = fractionToTiles(playerZ[i]); var ix = round(fx); var iz = round(fz); addToClass(ix, iz, clPlayer); addToClass(ix+5, iz, clPlayer); addToClass(ix, iz+5, clPlayer); addToClass(ix-5, iz, clPlayer); addToClass(ix, iz-5, clPlayer); // create the city patch var cityRadius = radius/3; var placer = new ClumpPlacer(PI*cityRadius*cityRadius, 0.6, 0.3, 10, ix, iz); var painter = new LayeredPainter([tRoadWild, tRoad], [1]); createArea(placer, painter, null); // create starting units placeCivDefaultEntities(fx, fz, id, BUILDING_ANGlE); // create animals for (var j = 0; j < 2; ++j) { var aAngle = randFloat(0, TWO_PI); var aDist = 7; var aX = round(fx + aDist * cos(aAngle)); var aZ = round(fz + aDist * sin(aAngle)); var group = new SimpleGroup( [new SimpleObject(oChicken, 5,5, 0,3)], true, clBaseResource, aX, aZ ); createObjectGroup(group, 0); } // create berry bushes var bbAngle = randFloat(0, TWO_PI); var bbDist = 12; var bbX = round(fx + bbDist * cos(bbAngle)); var bbZ = round(fz + bbDist * sin(bbAngle)); group = new SimpleGroup( [new SimpleObject(oBerryBush, 5,5, 0,3)], true, clBaseResource, bbX, bbZ ); createObjectGroup(group, 0); // create metal mine var mAngle = bbAngle; while(abs(mAngle - bbAngle) < PI/3) { mAngle = randFloat(0, TWO_PI); } var mDist = 12; var mX = round(fx + mDist * cos(mAngle)); var mZ = round(fz + mDist * sin(mAngle)); group = new SimpleGroup( [new SimpleObject(oMetalLarge, 1,1, 0,0)], true, clBaseResource, mX, mZ ); createObjectGroup(group, 0); // create stone mines mAngle += randFloat(PI/8, PI/4); mX = round(fx + mDist * cos(mAngle)); mZ = round(fz + mDist * sin(mAngle)); group = new SimpleGroup( [new SimpleObject(oStoneLarge, 1,1, 0,2)], true, clBaseResource, mX, mZ ); createObjectGroup(group, 0); var hillSize = PI * radius * radius; // create starting trees var num = floor(hillSize / 100); var tAngle = randFloat(0, TWO_PI); var tDist = randFloat(11, 13); var tX = round(fx + tDist * cos(tAngle)); var tZ = round(fz + tDist * sin(tAngle)); group = new SimpleGroup( [new SimpleObject(oBeech, num, num, 0,5)], false, clBaseResource, tX, tZ ); createObjectGroup(group, 0, avoidClasses(clBaseResource,2)); // create grass tufts var num = hillSize / 250; for (var j = 0; j < num; j++) { var gAngle = randFloat(0, TWO_PI); var gDist = radius - (5 + randInt(7)); var gX = round(fx + gDist * cos(gAngle)); var gZ = round(fz + gDist * sin(gAngle)); group = new SimpleGroup( [new SimpleObject(aGrassShort, 2,5, 0,1, -PI/8,PI/8)], false, clBaseResource, gX, gZ ); createObjectGroup(group, 0); } } RMS.SetProgress(20); // create bumps log("Creating bumps..."); placer = new ClumpPlacer(scaleByMapSize(20, 50), 0.3, 0.06, 1); painter = new SmoothElevationPainter(ELEVATION_MODIFY, 2, 2); createAreas( placer, painter, avoidClasses(clPlayer, 13), scaleByMapSize(300, 800) ); // calculate desired number of trees for map (based on size) var MIN_TREES = 220; var MAX_TREES = 1000; var P_FOREST = 0.65; var totalTrees = scaleByMapSize(MIN_TREES, MAX_TREES); var numForest = totalTrees * P_FOREST; var numStragglers = totalTrees * (1.0 - P_FOREST); // create forests log("Creating forests..."); var types = [ [[tGrassDForest, tGrass, pForestD], [tGrassDForest, pForestD]], [[tGrassPForest, tGrass, pForestP], [tGrassPForest, pForestP]] ]; // some variation var size = numForest / (scaleByMapSize(2,8) * numPlayers); var num = 4 * floor(size / types.length); for (var i = 0; i < types.length; ++i) { placer = new ClumpPlacer(numForest / num, 0.1, 0.1, 1); painter = new LayeredPainter( types[i], // terrains [2] // widths ); createAreas( placer, [painter, paintClass(clForest)], avoidClasses(clPlayer, 13, clForest, 20, clHill, 1), num ); } RMS.SetProgress(50); // create grass patches log("Creating grass patches..."); var sizes = [scaleByMapSize(5, 48), scaleByMapSize(6, 84), scaleByMapSize(8, 128)]; for (var i = 0; i < sizes.length; i++) { placer = new ClumpPlacer(sizes[i], 0.3, 0.06, 0.5); painter = new LayeredPainter( [[tGrass,tGrassA,tGrassC],[tGrass,tGrassA,tGrassC], [tGrass,tGrassA,tGrassC]], // terrains [1,1] // widths ); createAreas( placer, [painter, paintClass(clDirt)], avoidClasses(clForest, 0, clHill, 0, clDirt, 2, clPlayer, 10), scaleByMapSize(50, 70) ); } // create dirt patches log("Creating dirt patches..."); var sizes = [scaleByMapSize(5, 32), scaleByMapSize(6, 48), scaleByMapSize(7, 80)]; for (var i = 0; i < sizes.length; i++) { placer = new ClumpPlacer(sizes[i], 0.3, 0.06, 0.5); painter = new LayeredPainter( [tGrassB ,tDirt], // terrains [1] // widths ); createAreas( placer, painter, avoidClasses(clForest, 0, clHill, 0, clDirt, 2, clPlayer, 10), scaleByMapSize(50, 90) ); } RMS.SetProgress(55); // create big patches log("Creating big patches..."); var sizes = [scaleByMapSize(10, 60), scaleByMapSize(15, 90), scaleByMapSize(20, 120)]; for (var i = 0; i < sizes.length; i++) { placer = new ClumpPlacer(sizes[i], 0.3, 0.06, 0.5); painter = new LayeredPainter( [tGrassB ,tGrassA], // terrains [1] // widths ); createAreas( placer, painter, avoidClasses(clHill, 0, clPlayer, 8), scaleByMapSize(30, 90) ); } RMS.SetProgress(55); log("Creating stone mines..."); // create large stone quarries group = new SimpleGroup([new SimpleObject(oStoneSmall, 0,2, 0,4), new SimpleObject(oStoneLarge, 1,1, 0,4)], true, clRock); createObjectGroups(group, 0, avoidClasses(clForest, 1, clPlayer, 10, clRock, 10, clHill, 1), scaleByMapSize(1,4), 100 ); // create small stone quarries group = new SimpleGroup([new SimpleObject(oStoneSmall, 2,5, 1,3)], true, clRock); createObjectGroups(group, 0, avoidClasses(clForest, 1, clPlayer, 10, clRock, 10, clHill, 1), scaleByMapSize(1,4), 100 ); log("Creating metal mines..."); // create large metal quarries group = new SimpleGroup([new SimpleObject(oMetalLarge, 1,1, 0,4)], true, clMetal); createObjectGroups(group, 0, avoidClasses(clForest, 1, clPlayer, 10, clMetal, 10, clRock, 5, clHill, 1), scaleByMapSize(2,8), 100 ); RMS.SetProgress(65); // create small decorative rocks log("Creating small decorative rocks..."); group = new SimpleGroup( [new SimpleObject(aRockMedium, 1,3, 0,1)], true ); createObjectGroups( group, 0, avoidClasses(clWater, 0, clForest, 0, clPlayer, 10, clHill, 0), scaleByMapSize(16, 262), 50 ); // create large decorative rocks log("Creating large decorative rocks..."); group = new SimpleGroup( [new SimpleObject(aRockLarge, 1,2, 0,1), new SimpleObject(aRockMedium, 1,3, 0,2)], true ); createObjectGroups( group, 0, avoidClasses(clWater, 0, clForest, 0, clPlayer, 10, clHill, 0), scaleByMapSize(8, 131), 50 ); RMS.SetProgress(70); // create deer log("Creating deer..."); group = new SimpleGroup( [new SimpleObject(oDeer, 5,7, 0,4)], true, clFood ); createObjectGroups(group, 0, avoidClasses(clWater, 0, clForest, 0, clPlayer, 10, clHill, 1, clFood, 20), 6 * numPlayers, 50 ); RMS.SetProgress(75); // create sheep log("Creating sheep..."); group = new SimpleGroup( [new SimpleObject(oSheep, 2,3, 0,2)], true, clFood ); createObjectGroups(group, 0, avoidClasses(clWater, 0, clForest, 0, clPlayer, 10, clHill, 1, clFood, 20), 3 * numPlayers, 50 ); RMS.SetProgress(85); // create straggler trees log("Creating straggler trees..."); var types = [oBush, oBeech]; // some variation var num = floor(numStragglers / types.length); for (var i = 0; i < types.length; ++i) { group = new SimpleGroup( [new SimpleObject(types[i], 1,1, 0,3)], true, clForest ); createObjectGroups(group, 0, avoidClasses(clForest, 1, clHill, 1, clPlayer, 13, clMetal, 1, clRock, 1), num ); } // create large grass tufts log("Creating large grass tufts..."); group = new SimpleGroup( [new SimpleObject(aGrass, 2,4, 0,1.8, -PI/8,PI/8), new SimpleObject(aGrassShort, 3,6, 1.2,2.5, -PI/8,PI/8)] ); createObjectGroups(group, 0, avoidClasses(clWater, 3, clHill, 2, clPlayer, 2, clDirt, 1, clForest, 0), scaleByMapSize(13, 200) ); RMS.SetProgress(95); // create bushes log("Creating bushes..."); group = new SimpleGroup( [new SimpleObject(aBushMedium, 1,2, 0,2), new SimpleObject(aBushSmall, 2,4, 0,2)] ); createObjectGroups(group, 0, avoidClasses(clWater, 1, clHill, 1, clPlayer, 1, clDirt, 1), scaleByMapSize(13, 200), 50 ); ExportMap(); \ No newline at end of file diff --git a/binaries/data/mods/public/maps/random/anatolian_plateau.json b/binaries/data/mods/public/maps/random/anatolian_plateau.json index 96a31fcd4a..70da43b849 100644 --- a/binaries/data/mods/public/maps/random/anatolian_plateau.json +++ b/binaries/data/mods/public/maps/random/anatolian_plateau.json @@ -2,8 +2,8 @@ "settings" : { "Name" : "Anatolian Plateau", "Script" : "anatolian_plateau.js", - "Description" : "An indefensible open land with little wood and stone.", - "BaseTerrain" : ["steppe_grass_a", "steppe_grass_b", "steppe_grass_c", "steppe_grass_d"], + "Description" : "An indefensible open land with little wood and stone.\n\n\nThe Anatolian peninsula, also called Asia Minor, is bounded by the Black Sea to the north, the Mediterranean Sea to the south, the Aegean Sea to the west, and the sea of Marmara to the northwest, which separates Anatolia from Thrace in Europe. Stretching inland from the Aegean coastal plain, the Central Anatolian plateau occupies the area between the two zones of the folded coastal ranges in the north and south, extending east to the point where the two ranges converge. Anatolia was home to some of world's oldest civilizations like Hattians, Luwians and Hittites.", + "BaseTerrain" : ["steppe_grass_a", "steppe_grass_c", "steppe_grass_d"], "BaseHeight" : 1, "CircularMap" : true, "XXXXXX" : "Optionally define other things here, like we would for a scenario" diff --git a/binaries/data/mods/public/maps/random/archipelago.json b/binaries/data/mods/public/maps/random/archipelago.json index b1ef6619f1..50aceade88 100644 --- a/binaries/data/mods/public/maps/random/archipelago.json +++ b/binaries/data/mods/public/maps/random/archipelago.json @@ -2,9 +2,10 @@ "settings" : { "Name" : "Archipelago", "Script" : "archipelago.js", - "Description" : "A maze of islands of different sizes and shapes. Players start with more wood.", + "Description" : "A maze of islands of different sizes and shapes. Players start with more wood.\n\n\nAn archipelago, sometimes called an island group, is a chain or cluster of islands. Archipelagos may be found isolated in bodies of water or neighboring a large land mass. For example, Scotland has more than 700 islands surrounding its mainland which constitute an archipelago. Archipelagos are often volcanic, forming along island arcs generated by subduction zones or hotspots, but may also be the result of erosion, deposition and land elevation.", "BaseTerrain" : ["medit_sand_wet"], "BaseHeight" : -5, + "Keywords": ["naval"], "CircularMap" : true, "XXXXXX" : "Optionally define other things here, like we would for a scenario" } diff --git a/binaries/data/mods/public/maps/random/ardennes_forest.json b/binaries/data/mods/public/maps/random/ardennes_forest.json index cd10fd83a6..f809acfb27 100644 --- a/binaries/data/mods/public/maps/random/ardennes_forest.json +++ b/binaries/data/mods/public/maps/random/ardennes_forest.json @@ -2,7 +2,7 @@ "settings" : { "Name" : "Ardennes Forest", "Script" : "ardennes_forest.js", - "Description" : "Each player starts deep in the forest.", + "Description" : "Each player starts deep in the forest.\n\n\nThe Ardennes is a region of extensive forests, rolling hills and ridges formed within the Givetian Ardennes mountain range, primarily in modern day Belgium and Luxembourg. The region took its name from the ancient "Silva", a vast forest in Roman times called "Arduenna Silva".", "BaseTerrain" : [ "temp_forestfloor_pine", "temp_forestfloor_pine", "alpine_cliff_c", "alpine_grass_rocky" ], diff --git a/binaries/data/mods/public/maps/random/atlas_mountains.json b/binaries/data/mods/public/maps/random/atlas_mountains.json index 47af286e1e..256d65b0bf 100644 --- a/binaries/data/mods/public/maps/random/atlas_mountains.json +++ b/binaries/data/mods/public/maps/random/atlas_mountains.json @@ -2,7 +2,7 @@ "settings" : { "Name" : "Atlas Mountains", "Script" : "atlas_mountains.js", - "Description" : "A rugged land with small room for buildings with scarce wood.", + "Description" : "A rugged land with small room for buildings with scarce wood.\n\n\nThe Atlas Mountains is a mountain range across a north-western stretch of Africa. The eastern portion was under carthaginian control before the second Punic war and the fertile central part was home to Numidians. These mountains act as natural barriers that separates Mediterrainian Sea from Saharan Desert and traps the water vapour from the sea and thus provides enough water for plantlife.", "BaseTerrain" : ["medit_rocks_grass", "medit_rocks_grass", "medit_rocks_grass", "medit_rocks_grass", "medit_rocks_grass_shrubs", "medit_rocks_shrubs"], "BaseHeight" : 3, "CircularMap" : true, diff --git a/binaries/data/mods/public/maps/random/corsica.json b/binaries/data/mods/public/maps/random/corsica.json index 6afe5a922b..4ae8247052 100644 --- a/binaries/data/mods/public/maps/random/corsica.json +++ b/binaries/data/mods/public/maps/random/corsica.json @@ -5,6 +5,7 @@ "Description" : "The players start on two opposing islands, both with a very jagged relief that will make landing difficult.", "BaseTerrain" : ["medit_dirt", "medit_dirt_b", "medit_dirt_c"], "BaseHeight" : -8, + "Keywords": ["naval"], "CircularMap" : false, "XXXXXX" : "Optionally define other things here, like we would for a scenario" } diff --git a/binaries/data/mods/public/maps/random/cycladic_archipelago.json b/binaries/data/mods/public/maps/random/cycladic_archipelago.json index e433d9c3c9..43704b4e58 100644 --- a/binaries/data/mods/public/maps/random/cycladic_archipelago.json +++ b/binaries/data/mods/public/maps/random/cycladic_archipelago.json @@ -5,6 +5,7 @@ "Description" : "Each player starts on an island surrounded by water.", "BaseTerrain" : ["medit_sea_depths"], "BaseHeight" : -5, + "Keywords": ["naval"], "CircularMap" : true, "XXXXXX" : "Optionally define other things here, like we would for a scenario" } diff --git a/binaries/data/mods/public/maps/random/gulf_of_bothnia.js b/binaries/data/mods/public/maps/random/gulf_of_bothnia.js index a0e54d4da7..82a2532aba 100644 --- a/binaries/data/mods/public/maps/random/gulf_of_bothnia.js +++ b/binaries/data/mods/public/maps/random/gulf_of_bothnia.js @@ -329,7 +329,7 @@ var elevationPainter = new SmoothElevationPainter( seaHeight, // elevation 0 // blend radius ); -createArea(placer, [terrainPainter, elevationPainter, paintClass(clWater)], avoidClasses(clPlayer,scaleByMapSize(15,25))); +createArea(placer, [terrainPainter, elevationPainter, paintClass(clWater)], avoidClasses(clPlayer,scaleByMapSize(15,25)+4)); var elevationPainter = new SmoothElevationPainter( ELEVATION_SET, // type seaHeight, // elevation diff --git a/binaries/data/mods/public/maps/random/islands.json b/binaries/data/mods/public/maps/random/islands.json index f8e4e10256..fb61d76bbb 100644 --- a/binaries/data/mods/public/maps/random/islands.json +++ b/binaries/data/mods/public/maps/random/islands.json @@ -5,6 +5,7 @@ "Description" : "Players start in small islands while there are many others around.", "BaseTerrain" : ["medit_sand_wet"], "BaseHeight" : -5, + "Keywords": ["naval"], "CircularMap" : true, "XXXXXX" : "Optionally define other things here, like we would for a scenario" } diff --git a/binaries/data/mods/public/maps/random/migration.json b/binaries/data/mods/public/maps/random/migration.json index d7ee8a14bf..f69ce22ef4 100644 --- a/binaries/data/mods/public/maps/random/migration.json +++ b/binaries/data/mods/public/maps/random/migration.json @@ -5,6 +5,7 @@ "Description" : "Players start in small islands in the eastern part of the map. There is a big continent in the west ready for expansion.", "BaseTerrain" : ["medit_sand_wet"], "BaseHeight" : -5, + "Keywords": ["naval"], "CircularMap" : true, "XXXXXX" : "Optionally define other things here, like we would for a scenario" } diff --git a/binaries/data/mods/public/maps/random/rmgen/randombiome.js b/binaries/data/mods/public/maps/random/rmgen/randombiome.js index 595a1efe43..b0ddf4e371 100644 --- a/binaries/data/mods/public/maps/random/rmgen/randombiome.js +++ b/binaries/data/mods/public/maps/random/rmgen/randombiome.js @@ -1 +1 @@ -///////////////////////////////////////////////////////////////////////////////////////////// // definitions ///////////////////////////////////////////////////////////////////////////////////////////// var biomeID = 1; var rbt1 = ["temp_grass_long_b"]; var rbt2 = "temp_forestfloor_pine"; var rbt3 = "temp_plants_bog"; var rbt4 = ["temp_cliff_a", "temp_cliff_b"]; var rbt5 = "temp_grass_d"; var rbt6 = "temp_grass_c"; var rbt7 = "temp_grass_clovers_2"; var rbt8 = ["temp_dirt_gravel", "temp_dirt_gravel_b"]; var rbt9 = ["temp_dirt_gravel", "temp_dirt_gravel_b"]; var rbt10 = "temp_road"; var rbt11 = "temp_road_overgrown"; var rbt12 = "temp_grass_plants"; var rbt13 = "temp_mud_plants"; var rbt14 = "sand_grass_25"; var rbt15 = "medit_sand_wet"; // gaia entities var rbe1 = "gaia/flora_tree_oak"; var rbe2 = "gaia/flora_tree_oak_large"; var rbe3 = "gaia/flora_tree_apple"; var rbe4 = "gaia/flora_tree_pine"; var rbe5 = "gaia/flora_tree_aleppo_pine"; var rbe6 = "gaia/flora_bush_berry"; var rbe7 = "gaia/fauna_chicken"; var rbe8 = "gaia/fauna_deer"; var rbe9 = "gaia/fauna_fish"; var rbe10 = "gaia/fauna_sheep"; var rbe11 = "gaia/geology_stonemine_medit_quarry"; var rbe12 = "gaia/geology_stone_mediterranean"; var rbe13 = "gaia/geology_metal_mediterranean_slabs"; // decorative props var rba1 = "actor|props/flora/grass_soft_large_tall.xml"; var rba2 = "actor|props/flora/grass_soft_large.xml"; var rba3 = "actor|props/flora/reeds_pond_lush_a.xml"; var rba4 = "actor|props/flora/pond_lillies_large.xml"; var rba5 = "actor|geology/stone_granite_large.xml"; var rba6 = "actor|geology/stone_granite_med.xml"; var rba7 = "actor|props/flora/bush_medit_me.xml"; var rba8 = "actor|props/flora/bush_medit_sm.xml"; var rba9 = "actor|flora/trees/oak.xml"; ///////////////////////////////////////////////////////////////////////////////////////////// // randomizeBiome: randomizes the biomeID and returns the value ///////////////////////////////////////////////////////////////////////////////////////////// function randomizeBiome() { biomeID = randInt(1,7); //temperate if (biomeID == 1){ rbt1 = ["temp_grass_long_b"]; rbt2 = "temp_forestfloor_pine"; rbt3 = "temp_plants_bog"; rbt4 = ["temp_cliff_a", "temp_cliff_b"]; rbt5 = "temp_grass_d"; rbt6 = "temp_grass_c"; rbt7 = "temp_grass_clovers_2"; rbt8 = ["temp_dirt_gravel", "temp_dirt_gravel_b"]; rbt9 = ["temp_dirt_gravel", "temp_dirt_gravel_b"]; rbt10 = "temp_road"; rbt11 = "temp_road_overgrown"; rbt12 = "temp_grass_plants"; rbt13 = "temp_mud_plants"; rbt14 = "sand_grass_25"; rbt15 = "medit_sand_wet"; // gaia entities rbe1 = "gaia/flora_tree_oak"; rbe2 = "gaia/flora_tree_oak_large"; rbe3 = "gaia/flora_tree_apple"; rbe4 = "gaia/flora_tree_pine"; rbe5 = "gaia/flora_tree_aleppo_pine"; rbe6 = "gaia/flora_bush_berry"; rbe7 = "gaia/fauna_chicken"; rbe8 = "gaia/fauna_deer"; rbe9 = "gaia/fauna_fish"; rbe10 = "gaia/fauna_sheep"; rbe11 = "gaia/geology_stonemine_medit_quarry"; rbe12 = "gaia/geology_stone_mediterranean"; rbe13 = "gaia/geology_metal_mediterranean_slabs"; // decorative props rba1 = "actor|props/flora/grass_soft_large_tall.xml"; rba2 = "actor|props/flora/grass_soft_large.xml"; rba3 = "actor|props/flora/reeds_pond_lush_a.xml"; rba4 = "actor|props/flora/water_lillies.xml"; rba5 = "actor|geology/stone_granite_large.xml"; rba6 = "actor|geology/stone_granite_med.xml"; rba7 = "actor|props/flora/bush_medit_me.xml"; rba8 = "actor|props/flora/bush_medit_sm.xml"; rba9 = "actor|flora/trees/oak.xml"; } //snowy else if (biomeID == 2) { setSunColour(0.550, 0.601, 0.644); // a little darker rbt1 = ["polar_snow_b", "snow grass 75", "snow rocks", "snow forest"]; rbt2 = "polar_tundra_snow"; rbt3 = "polar_tundra_snow"; rbt4 = ["alpine_cliff_a", "alpine_cliff_b"]; rbt5 = "snow grass 2"; rbt6 = "polar_snow_a"; rbt7 = "polar_ice_snow"; rbt8 = ["polar_snow_rocks", "polar_cliff_snow"]; rbt9 = ["polar_ice_b", "polar_ice_c"]; rbt10 = "new_alpine_citytile"; rbt11 = "polar_ice_cracked"; rbt12 = "snow grass 2"; rbt13 = "polar_ice"; rbt14 = "alpine_shore_rocks_icy"; rbt15 = "alpine_shore_rocks"; // gaia entities rbe1 = "gaia/flora_tree_pine_w"; rbe2 = "gaia/flora_tree_pine_w"; rbe3 = "gaia/flora_tree_pine_w"; rbe4 = "gaia/flora_tree_pine_w"; rbe5 = "gaia/flora_tree_pine"; rbe6 = "gaia/flora_bush_berry"; rbe7 = "gaia/fauna_chicken"; rbe8 = "gaia/fauna_muskox"; rbe9 = "gaia/fauna_fish_tuna"; rbe10 = "gaia/fauna_walrus"; rbe11 = "gaia/geology_stonemine_alpine_quarry"; rbe12 = "gaia/geology_stone_alpine_a"; rbe13 = "gaia/geology_metal_alpine_slabs"; // decorative props rba1 = "actor|props/flora/grass_soft_dry_small_tall.xml"; rba2 = "actor|props/flora/grass_soft_dry_large.xml"; rba3 = "actor|props/flora/reeds_pond_dry.xml"; rba4 = "actor|geology/stone_granite_large.xml"; rba5 = "actor|geology/stone_granite_large.xml"; rba6 = "actor|geology/stone_granite_med.xml"; rba7 = "actor|props/flora/bush_desert_dry_a.xml"; rba8 = "actor|props/flora/bush_desert_dry_a.xml"; rba9 = "actor|flora/trees/pine_w.xml"; } //desert else if (biomeID == 3) { setSunColour(0.733, 0.746, 0.574); rbt1 = ["desert_dirt_rough", "desert_dirt_rough_2", "desert_sand_dunes_50", "desert_sand_smooth"]; rbt2 = "forestfloor_dirty"; rbt3 = "desert_forestfloor_palms"; rbt4 = ["desert_cliff_1", "desert_cliff_2", "desert_cliff_3", "desert_cliff_4", "desert_cliff_5"]; rbt5 = ["desert_dirt_persia_1", "desert_dirt_persia_2"]; rbt6 = "dirta"; rbt7 = "medit_dirt_dry"; rbt8 = ["desert_dirt_rocks_1", "desert_dirt_rocks_2", "desert_dirt_rocks_3"]; rbt9 = ["desert_lakebed_dry", "desert_lakebed_dry_b"]; rbt10 = "desert_city_tile"; rbt11 = "desert_city_tile"; rbt12 = "desert_dirt_rough"; rbt13 = "desert_shore_stones"; rbt14 = "desert_sand_smooth"; rbt15 = "desert_sand_wet"; // gaia entities rbe1 = "gaia/flora_tree_cretan_date_palm_short"; rbe2 = "gaia/flora_tree_cretan_date_palm_tall"; rbe3 = "gaia/flora_tree_fig"; rbe4 = "gaia/flora_tree_dead"; rbe5 = "gaia/flora_tree_date_palm"; rbe6 = "gaia/flora_bush_grapes"; rbe7 = "gaia/fauna_chicken"; rbe8 = "gaia/fauna_camel"; rbe9 = "gaia/fauna_fish"; rbe10 = "gaia/fauna_gazelle"; rbe11 = "gaia/geology_stonemine_desert_quarry"; rbe12 = "gaia/geology_stone_desert_small"; rbe13 = "gaia/geology_metal_desert_slabs"; // decorative props rba1 = "actor|props/flora/grass_soft_dry_small_tall.xml"; rba2 = "actor|props/flora/grass_soft_dry_large.xml"; rba3 = "actor|props/flora/reeds_pond_lush_a.xml"; rba4 = "actor|props/flora/reeds_pond_lush_b.xml"; rba5 = "actor|geology/stone_desert_med.xml"; rba6 = "actor|geology/stone_desert_med.xml"; rba7 = "actor|props/flora/bush_desert_dry_a.xml"; rba8 = "actor|props/flora/bush_desert_dry_a.xml"; rba9 = "actor|flora/trees/palm_date.xml"; } //alpine else if (biomeID == 4) { rbt1 = ["alpine_dirt_grass_50"]; rbt2 = "alpine_forrestfloor"; rbt3 = "alpine_forrestfloor"; rbt4 = ["alpine_cliff_a", "alpine_cliff_b", "alpine_cliff_c"]; rbt5 = "alpine_grass_rocky"; rbt6 = ["alpine_grass_snow_50", "alpine_dirt_snow"]; rbt7 = ["alpine_snow_a", "alpine_snow_b"]; rbt8 = "alpine_cliff_snow"; rbt9 = ["alpine_dirt", "alpine_grass_d"]; rbt10 = "new_alpine_citytile"; rbt11 = "new_alpine_citytile"; rbt12 = "new_alpine_grass_a"; rbt13 = "alpine_shore_rocks"; rbt14 = "alpine_shore_rocks_grass_50"; rbt15 = "alpine_shore_rocks"; // gaia entities rbe1 = "gaia/flora_tree_pine"; rbe2 = "gaia/flora_tree_pine"; rbe3 = "gaia/flora_tree_pine"; rbe4 = "gaia/flora_tree_pine"; rbe5 = "gaia/flora_tree_pine"; rbe6 = "gaia/flora_bush_berry"; rbe7 = "gaia/fauna_chicken"; rbe8 = "gaia/fauna_goat"; rbe9 = "gaia/fauna_fish_tuna"; rbe10 = "gaia/fauna_deer"; rbe11 = "gaia/geology_stonemine_alpine_quarry"; rbe12 = "gaia/geology_stone_alpine_a"; rbe13 = "gaia/geology_metal_alpine_slabs"; // decorative props rba1 = "actor|props/flora/grass_soft_dry_small_tall.xml"; rba2 = "actor|props/flora/grass_soft_dry_large.xml"; rba3 = "actor|props/flora/reeds_pond_dry.xml"; rba4 = "actor|geology/stone_granite_large.xml"; rba5 = "actor|geology/stone_granite_large.xml"; rba6 = "actor|geology/stone_granite_med.xml"; rba7 = "actor|props/flora/bush_desert_dry_a.xml"; rba8 = "actor|props/flora/bush_desert_dry_a.xml"; rba9 = "actor|flora/trees/pine.xml"; } //medit else if (biomeID == 5){ rbt1 = ["medit_grass_field_a", "medit_grass_field_b"]; rbt2 = "medit_plants_dirt"; rbt3 = "medit_grass_shrubs"; rbt4 = ["medit_cliff_grass", "medit_cliff_greek", "medit_cliff_greek_2", "medit_cliff_aegean", "medit_cliff_italia", "medit_cliff_italia_grass"]; rbt5 = "medit_grass_field_b"; rbt6 = "medit_grass_field_brown"; rbt7 = "medit_grass_field_dry"; rbt8 = ["medit_rocks_grass_shrubs", "medit_rocks_shrubs"]; rbt9 = ["medit_dirt", "medit_dirt_b"]; rbt10 = "medit_city_tile"; rbt11 = "medit_city_tile"; rbt12 = "medit_grass_wild"; rbt13 = "medit_sand"; rbt14 = "sand_grass_25"; rbt15 = "medit_sand_wet"; // gaia entities rbe1 = "gaia/flora_tree_cretan_date_palm_short"; rbe2 = "gaia/flora_tree_medit_fan_palm"; rbe3 = "gaia/flora_tree_apple"; rbe4 = "gaia/flora_tree_cypress"; rbe5 = "gaia/flora_tree_aleppo_pine"; rbe6 = "gaia/flora_bush_berry"; rbe7 = "gaia/fauna_chicken"; rbe8 = "gaia/fauna_deer"; rbe9 = "gaia/fauna_fish"; rbe10 = "gaia/fauna_sheep"; rbe11 = "gaia/geology_stonemine_medit_quarry"; rbe12 = "gaia/geology_stone_mediterranean"; rbe13 = "gaia/geology_metal_mediterranean_slabs"; // decorative props rba1 = "actor|props/flora/grass_soft_large_tall.xml"; rba2 = "actor|props/flora/grass_soft_large.xml"; rba3 = "actor|props/flora/reeds_pond_lush_b.xml"; rba4 = "actor|props/flora/water_lillies.xml"; rba5 = "actor|geology/stone_granite_large.xml"; rba6 = "actor|geology/stone_granite_med.xml"; rba7 = "actor|props/flora/bush_medit_me.xml"; rba8 = "actor|props/flora/bush_medit_sm.xml"; rba9 = "actor|flora/trees/palm_cretan_date.xml"; } //savanah else if (biomeID == 6) { rbt1 = ["savanna_grass_a", "savanna_grass_b"]; rbt2 = "savanna_forestfloor_a"; rbt3 = "savanna_forestfloor_b"; rbt4 = ["savanna_cliff_a", "savanna_cliff_b"]; rbt5 = "savanna_shrubs_a"; rbt6 = "savanna_dirt_rocks_b"; rbt7 = "dirt_brown_e"; rbt8 = ["savanna_grass_a", "savanna_grass_b"]; rbt9 = ["savanna_dirt_rocks_b", "dirt_brown_e"]; rbt10 = "savanna_tile_a"; rbt11 = "savanna_tile_a"; rbt12 = "savanna_grass_a"; rbt13 = "savanna_riparian"; rbt14 = "savanna_riparian_bank"; rbt15 = "savanna_riparian_wet"; // gaia entities rbe1 = "gaia/flora_tree_baobab"; rbe2 = "gaia/flora_tree_baobab"; rbe3 = "gaia/flora_tree_baobab"; rbe4 = "gaia/flora_tree_baobab"; rbe5 = "gaia/flora_tree_baobab"; rbe6 = "gaia/flora_bush_grapes"; rbe7 = "gaia/fauna_chicken"; var rts = randInt(1,4); if (rts==1){ rbe8 = "gaia/fauna_wildebeest"; } else if (rts==2) { rbe8 = "gaia/fauna_zebra"; } else if (rts==3) { rbe8 = "gaia/fauna_giraffe"; } else if (rts==4) { rbe8 = "gaia/fauna_elephant_african_bush"; } rbe9 = "gaia/fauna_fish"; rbe10 = "gaia/fauna_gazelle"; rbe11 = "gaia/geology_stonemine_desert_quarry"; rbe12 = "gaia/geology_stone_savanna_small"; rbe13 = "gaia/geology_metal_savanna_slabs"; // decorative props rba1 = "actor|props/flora/grass_savanna.xml"; rba2 = "actor|props/flora/grass_medit_field.xml"; rba3 = "actor|props/flora/reeds_pond_lush_a.xml"; rba4 = "actor|props/flora/reeds_pond_lush_b.xml"; rba5 = "actor|geology/stone_savanna_med.xml"; rba6 = "actor|geology/stone_savanna_med.xml"; rba7 = "actor|props/flora/bush_desert_dry_a.xml"; rba8 = "actor|props/flora/bush_dry_a.xml"; rba9 = "actor|flora/trees/baobab.xml"; } //tropic else if (biomeID == 7){ rbt1 = ["tropic_grass_c", "tropic_grass_c", "tropic_grass_c", "tropic_grass_c", "tropic_grass_plants", "tropic_plants", "tropic_plants_b"]; rbt2 = "tropic_plants_c"; rbt3 = "tropic_plants_c"; rbt4 = ["tropic_cliff_a", "tropic_cliff_a", "tropic_cliff_a", "tropic_cliff_a_plants"]; rbt5 = "tropic_grass_c"; rbt6 = "tropic_grass_plants"; rbt7 = "tropic_plants"; rbt8 = ["tropic_cliff_grass"]; rbt9 = ["tropic_dirt_a", "tropic_dirt_a_plants"]; rbt10 = "tropic_citytile_a"; rbt11 = "tropic_citytile_plants"; rbt12 = "tropic_plants_b"; rbt13 = "temp_mud_plants"; rbt14 = "tropic_beach_dry"; rbt15 = "tropic_beach_wet"; // gaia entities rbe1 = "gaia/flora_tree_poplar"; rbe2 = "gaia/flora_tree_poplar"; rbe3 = "gaia/flora_tree_poplar"; rbe4 = "gaia/flora_tree_cretan_date_palm_short"; rbe5 = "gaia/flora_tree_cretan_date_palm_tall"; rbe6 = "gaia/flora_bush_berry"; rbe7 = "gaia/fauna_chicken"; rbe8 = "gaia/fauna_deer"; rbe9 = "gaia/fauna_fish"; rbe10 = "gaia/fauna_tiger"; rbe11 = "gaia/geology_stonemine_tropic_quarry"; rbe12 = "gaia/geology_stone_tropic_a"; rbe13 = "gaia/geology_metal_tropic_slabs"; // decorative props rba1 = "actor|props/flora/plant_tropic_a.xml"; rba2 = "actor|props/flora/plant_lg.xml"; rba3 = "actor|props/flora/reeds_pond_lush_b.xml"; rba4 = "actor|props/flora/water_lillies.xml"; rba5 = "actor|geology/stone_granite_large.xml"; rba6 = "actor|geology/stone_granite_med.xml"; rba7 = "actor|props/flora/plant_tropic_large.xml"; rba8 = "actor|props/flora/plant_tropic_large.xml"; rba9 = "actor|flora/trees/poplar.xml"; } return biomeID; } ///////////////////////////////////////////////////////////////////////////////////////////// // These functions return the values needed for a randomized biome ///////////////////////////////////////////////////////////////////////////////////////////// function rBiomeT1() { return rbt1; } function rBiomeT2() { return rbt2; } function rBiomeT3() { return rbt3; } function rBiomeT4() { return rbt4; } function rBiomeT5() { return rbt5; } function rBiomeT6() { return rbt6; } function rBiomeT7() { return rbt7; } function rBiomeT8() { return rbt8; } function rBiomeT9() { return rbt9; } function rBiomeT10() { return rbt10; } function rBiomeT11() { return rbt11; } function rBiomeT12() { return rbt12; } function rBiomeT13() { return rbt13; } function rBiomeT14() { return rbt14; } function rBiomeT15() { return rbt15; } function rBiomeE1() { return rbe1; } function rBiomeE2() { return rbe2; } function rBiomeE3() { return rbe3; } function rBiomeE4() { return rbe4; } function rBiomeE5() { return rbe5; } function rBiomeE6() { return rbe6; } function rBiomeE7() { return rbe7; } function rBiomeE8() { return rbe8; } function rBiomeE9() { return rbe9; } function rBiomeE10() { return rbe10; } function rBiomeE11() { return rbe11; } function rBiomeE12() { return rbe12; } function rBiomeE13() { return rbe13; } function rBiomeA1() { return rba1; } function rBiomeA2() { return rba2; } function rBiomeA3() { return rba3; } function rBiomeA4() { return rba4; } function rBiomeA5() { return rba5; } function rBiomeA6() { return rba6; } function rBiomeA7() { return rba7; } function rBiomeA8() { return rba8; } function rBiomeA9() { return rba9; } \ No newline at end of file +///////////////////////////////////////////////////////////////////////////////////////////// // definitions ///////////////////////////////////////////////////////////////////////////////////////////// var biomeID = 1; var rbt1 = ["temp_grass_long_b"]; var rbt2 = "temp_forestfloor_pine"; var rbt3 = "temp_plants_bog"; var rbt4 = ["temp_cliff_a", "temp_cliff_b"]; var rbt5 = "temp_grass_d"; var rbt6 = "temp_grass_c"; var rbt7 = "temp_grass_clovers_2"; var rbt8 = ["temp_dirt_gravel", "temp_dirt_gravel_b"]; var rbt9 = ["temp_dirt_gravel", "temp_dirt_gravel_b"]; var rbt10 = "temp_road"; var rbt11 = "temp_road_overgrown"; var rbt12 = "temp_grass_plants"; var rbt13 = "temp_mud_plants"; var rbt14 = "sand_grass_25"; var rbt15 = "medit_sand_wet"; // gaia entities var rbe1 = "gaia/flora_tree_oak"; var rbe2 = "gaia/flora_tree_oak_large"; var rbe3 = "gaia/flora_tree_apple"; var rbe4 = "gaia/flora_tree_pine"; var rbe5 = "gaia/flora_tree_aleppo_pine"; var rbe6 = "gaia/flora_bush_berry"; var rbe7 = "gaia/fauna_chicken"; var rbe8 = "gaia/fauna_deer"; var rbe9 = "gaia/fauna_fish"; var rbe10 = "gaia/fauna_sheep"; var rbe11 = "gaia/geology_stonemine_medit_quarry"; var rbe12 = "gaia/geology_stone_mediterranean"; var rbe13 = "gaia/geology_metal_mediterranean_slabs"; // decorative props var rba1 = "actor|props/flora/grass_soft_large_tall.xml"; var rba2 = "actor|props/flora/grass_soft_large.xml"; var rba3 = "actor|props/flora/reeds_pond_lush_a.xml"; var rba4 = "actor|props/flora/pond_lillies_large.xml"; var rba5 = "actor|geology/stone_granite_large.xml"; var rba6 = "actor|geology/stone_granite_med.xml"; var rba7 = "actor|props/flora/bush_medit_me.xml"; var rba8 = "actor|props/flora/bush_medit_sm.xml"; var rba9 = "actor|flora/trees/oak.xml"; ///////////////////////////////////////////////////////////////////////////////////////////// // randomizeBiome: randomizes the biomeID and returns the value ///////////////////////////////////////////////////////////////////////////////////////////// function randomizeBiome() { biomeID = randInt(1,7); //temperate if (biomeID == 1){ rbt1 = ["temp_grass_long_b"]; rbt2 = "temp_forestfloor_pine"; rbt3 = "temp_plants_bog"; rbt4 = ["temp_cliff_a", "temp_cliff_b"]; rbt5 = "temp_grass_d"; rbt6 = "temp_grass_c"; rbt7 = "temp_grass_clovers_2"; rbt8 = ["temp_dirt_gravel", "temp_dirt_gravel_b"]; rbt9 = ["temp_dirt_gravel", "temp_dirt_gravel_b"]; rbt10 = "temp_road"; rbt11 = "temp_road_overgrown"; rbt12 = "temp_grass_plants"; rbt13 = "temp_mud_plants"; rbt14 = "sand_grass_25"; rbt15 = "medit_sand_wet"; // gaia entities rbe1 = "gaia/flora_tree_oak"; rbe2 = "gaia/flora_tree_oak_large"; rbe3 = "gaia/flora_tree_apple"; rbe4 = "gaia/flora_tree_pine"; rbe5 = "gaia/flora_tree_aleppo_pine"; rbe6 = "gaia/flora_bush_berry"; rbe7 = "gaia/fauna_chicken"; rbe8 = "gaia/fauna_deer"; rbe9 = "gaia/fauna_fish"; rbe10 = "gaia/fauna_sheep"; rbe11 = "gaia/geology_stonemine_medit_quarry"; rbe12 = "gaia/geology_stone_mediterranean"; rbe13 = "gaia/geology_metal_mediterranean_slabs"; // decorative props rba1 = "actor|props/flora/grass_soft_large_tall.xml"; rba2 = "actor|props/flora/grass_soft_large.xml"; rba3 = "actor|props/flora/reeds_pond_lush_a.xml"; rba4 = "actor|props/flora/water_lillies.xml"; rba5 = "actor|geology/stone_granite_large.xml"; rba6 = "actor|geology/stone_granite_med.xml"; rba7 = "actor|props/flora/bush_medit_me.xml"; rba8 = "actor|props/flora/bush_medit_sm.xml"; rba9 = "actor|flora/trees/oak.xml"; } //snowy else if (biomeID == 2) { setSunColour(0.550, 0.601, 0.644); // a little darker rbt1 = ["polar_snow_b", "snow grass 75", "snow rocks", "snow forest"]; rbt2 = "polar_tundra_snow"; rbt3 = "polar_tundra_snow"; rbt4 = ["alpine_cliff_a", "alpine_cliff_b"]; rbt5 = "snow grass 2"; rbt6 = "polar_snow_a"; rbt7 = "polar_ice_snow"; rbt8 = ["polar_snow_rocks", "polar_cliff_snow"]; rbt9 = ["polar_ice_b", "polar_ice_c"]; rbt10 = "new_alpine_citytile"; rbt11 = "polar_ice_cracked"; rbt12 = "snow grass 2"; rbt13 = "polar_ice"; rbt14 = "alpine_shore_rocks_icy"; rbt15 = "alpine_shore_rocks"; // gaia entities rbe1 = "gaia/flora_tree_pine_w"; rbe2 = "gaia/flora_tree_pine_w"; rbe3 = "gaia/flora_tree_pine_w"; rbe4 = "gaia/flora_tree_pine_w"; rbe5 = "gaia/flora_tree_pine"; rbe6 = "gaia/flora_bush_berry"; rbe7 = "gaia/fauna_chicken"; rbe8 = "gaia/fauna_muskox"; rbe9 = "gaia/fauna_fish_tuna"; rbe10 = "gaia/fauna_walrus"; rbe11 = "gaia/geology_stonemine_alpine_quarry"; rbe12 = "gaia/geology_stone_alpine_a"; rbe13 = "gaia/geology_metal_alpine_slabs"; // decorative props rba1 = "actor|props/flora/grass_soft_dry_small_tall.xml"; rba2 = "actor|props/flora/grass_soft_dry_large.xml"; rba3 = "actor|props/flora/reeds_pond_dry.xml"; rba4 = "actor|geology/stone_granite_large.xml"; rba5 = "actor|geology/stone_granite_large.xml"; rba6 = "actor|geology/stone_granite_med.xml"; rba7 = "actor|props/flora/bush_desert_dry_a.xml"; rba8 = "actor|props/flora/bush_desert_dry_a.xml"; rba9 = "actor|flora/trees/pine_w.xml"; } //desert else if (biomeID == 3) { setSunColour(0.733, 0.746, 0.574); rbt1 = ["desert_dirt_rough", "desert_dirt_rough_2", "desert_sand_dunes_50", "desert_sand_smooth"]; rbt2 = "forestfloor_dirty"; rbt3 = "desert_forestfloor_palms"; rbt4 = ["desert_cliff_1", "desert_cliff_2", "desert_cliff_3", "desert_cliff_4", "desert_cliff_5"]; rbt5 = ["desert_dirt_persia_1", "desert_dirt_persia_2"]; rbt6 = "dirta"; rbt7 = "medit_dirt_dry"; rbt8 = ["desert_dirt_rocks_1", "desert_dirt_rocks_2", "desert_dirt_rocks_3"]; rbt9 = ["desert_lakebed_dry", "desert_lakebed_dry_b"]; rbt10 = "desert_city_tile"; rbt11 = "desert_city_tile"; rbt12 = "desert_dirt_rough"; rbt13 = "desert_shore_stones"; rbt14 = "desert_sand_smooth"; rbt15 = "desert_sand_wet"; // gaia entities rbe1 = "gaia/flora_tree_cretan_date_palm_short"; rbe2 = "gaia/flora_tree_cretan_date_palm_tall"; rbe3 = "gaia/flora_tree_fig"; rbe4 = "gaia/flora_tree_dead"; rbe5 = "gaia/flora_tree_date_palm"; rbe6 = "gaia/flora_bush_grapes"; rbe7 = "gaia/fauna_chicken"; rbe8 = "gaia/fauna_camel"; rbe9 = "gaia/fauna_fish"; rbe10 = "gaia/fauna_gazelle"; rbe11 = "gaia/geology_stonemine_desert_quarry"; rbe12 = "gaia/geology_stone_desert_small"; rbe13 = "gaia/geology_metal_desert_slabs"; // decorative props rba1 = "actor|props/flora/grass_soft_dry_small_tall.xml"; rba2 = "actor|props/flora/grass_soft_dry_large.xml"; rba3 = "actor|props/flora/reeds_pond_lush_a.xml"; rba4 = "actor|props/flora/reeds_pond_lush_b.xml"; rba5 = "actor|geology/stone_desert_med.xml"; rba6 = "actor|geology/stone_desert_med.xml"; rba7 = "actor|props/flora/bush_desert_dry_a.xml"; rba8 = "actor|props/flora/bush_desert_dry_a.xml"; rba9 = "actor|flora/trees/palm_date.xml"; } //alpine else if (biomeID == 4) { rbt1 = ["alpine_dirt_grass_50"]; rbt2 = "alpine_forrestfloor"; rbt3 = "alpine_forrestfloor"; rbt4 = ["alpine_cliff_a", "alpine_cliff_b", "alpine_cliff_c"]; rbt5 = "alpine_grass_rocky"; rbt6 = ["alpine_grass_snow_50", "alpine_dirt_snow"]; rbt7 = ["alpine_snow_a", "alpine_snow_b"]; rbt8 = "alpine_cliff_snow"; rbt9 = ["alpine_dirt", "alpine_grass_d"]; rbt10 = "new_alpine_citytile"; rbt11 = "new_alpine_citytile"; rbt12 = "new_alpine_grass_a"; rbt13 = "alpine_shore_rocks"; rbt14 = "alpine_shore_rocks_grass_50"; rbt15 = "alpine_shore_rocks"; // gaia entities rbe1 = "gaia/flora_tree_pine"; rbe2 = "gaia/flora_tree_pine"; rbe3 = "gaia/flora_tree_pine"; rbe4 = "gaia/flora_tree_pine"; rbe5 = "gaia/flora_tree_pine"; rbe6 = "gaia/flora_bush_berry"; rbe7 = "gaia/fauna_chicken"; rbe8 = "gaia/fauna_goat"; rbe9 = "gaia/fauna_fish_tuna"; rbe10 = "gaia/fauna_deer"; rbe11 = "gaia/geology_stonemine_alpine_quarry"; rbe12 = "gaia/geology_stone_alpine_a"; rbe13 = "gaia/geology_metal_alpine_slabs"; // decorative props rba1 = "actor|props/flora/grass_soft_dry_small_tall.xml"; rba2 = "actor|props/flora/grass_soft_dry_large.xml"; rba3 = "actor|props/flora/reeds_pond_dry.xml"; rba4 = "actor|geology/stone_granite_large.xml"; rba5 = "actor|geology/stone_granite_large.xml"; rba6 = "actor|geology/stone_granite_med.xml"; rba7 = "actor|props/flora/bush_desert_dry_a.xml"; rba8 = "actor|props/flora/bush_desert_dry_a.xml"; rba9 = "actor|flora/trees/pine.xml"; } //medit else if (biomeID == 5){ rbt1 = ["medit_grass_field_a", "medit_grass_field_b"]; rbt2 = "medit_plants_dirt"; rbt3 = "medit_grass_shrubs"; rbt4 = ["medit_cliff_grass", "medit_cliff_greek", "medit_cliff_greek_2", "medit_cliff_aegean", "medit_cliff_italia", "medit_cliff_italia_grass"]; rbt5 = "medit_grass_field_b"; rbt6 = "medit_grass_field_brown"; rbt7 = "medit_grass_field_dry"; rbt8 = ["medit_rocks_grass_shrubs", "medit_rocks_shrubs"]; rbt9 = ["medit_dirt", "medit_dirt_b"]; rbt10 = "medit_city_tile"; rbt11 = "medit_city_tile"; rbt12 = "medit_grass_wild"; rbt13 = "medit_sand"; rbt14 = "sand_grass_25"; rbt15 = "medit_sand_wet"; // gaia entities rbe1 = "gaia/flora_tree_cretan_date_palm_short"; rbe2 = "gaia/flora_tree_medit_fan_palm"; rbe3 = "gaia/flora_tree_apple"; rbe4 = "gaia/flora_tree_cypress"; rbe5 = "gaia/flora_tree_aleppo_pine"; rbe6 = "gaia/flora_bush_berry"; rbe7 = "gaia/fauna_chicken"; rbe8 = "gaia/fauna_deer"; rbe9 = "gaia/fauna_fish"; rbe10 = "gaia/fauna_sheep"; rbe11 = "gaia/geology_stonemine_medit_quarry"; rbe12 = "gaia/geology_stone_mediterranean"; rbe13 = "gaia/geology_metal_mediterranean_slabs"; // decorative props rba1 = "actor|props/flora/grass_soft_large_tall.xml"; rba2 = "actor|props/flora/grass_soft_large.xml"; rba3 = "actor|props/flora/reeds_pond_lush_b.xml"; rba4 = "actor|props/flora/water_lillies.xml"; rba5 = "actor|geology/stone_granite_large.xml"; rba6 = "actor|geology/stone_granite_med.xml"; rba7 = "actor|props/flora/bush_medit_me.xml"; rba8 = "actor|props/flora/bush_medit_sm.xml"; rba9 = "actor|flora/trees/palm_cretan_date.xml"; } //savanah else if (biomeID == 6) { rbt1 = ["savanna_grass_a", "savanna_grass_b"]; rbt2 = "savanna_forestfloor_a"; rbt3 = "savanna_forestfloor_b"; rbt4 = ["savanna_cliff_a", "savanna_cliff_b"]; rbt5 = "savanna_shrubs_a"; rbt6 = "savanna_dirt_rocks_b"; rbt7 = "dirt_brown_e"; rbt8 = ["savanna_grass_a", "savanna_grass_b"]; rbt9 = ["savanna_dirt_rocks_b", "dirt_brown_e"]; rbt10 = "savanna_tile_a"; rbt11 = "savanna_tile_a"; rbt12 = "savanna_grass_a"; rbt13 = "savanna_riparian"; rbt14 = "savanna_riparian_bank"; rbt15 = "savanna_riparian_wet"; // gaia entities rbe1 = "gaia/flora_tree_baobab"; rbe2 = "gaia/flora_tree_baobab"; rbe3 = "gaia/flora_tree_baobab"; rbe4 = "gaia/flora_tree_baobab"; rbe5 = "gaia/flora_tree_baobab"; rbe6 = "gaia/flora_bush_grapes"; rbe7 = "gaia/fauna_chicken"; var rts = randInt(1,4); if (rts==1){ rbe8 = "gaia/fauna_wildebeest"; } else if (rts==2) { rbe8 = "gaia/fauna_zebra"; } else if (rts==3) { rbe8 = "gaia/fauna_giraffe"; } else if (rts==4) { rbe8 = "gaia/fauna_elephant_african_bush"; } rbe9 = "gaia/fauna_fish"; rbe10 = "gaia/fauna_gazelle"; rbe11 = "gaia/geology_stonemine_desert_quarry"; rbe12 = "gaia/geology_stone_savanna_small"; rbe13 = "gaia/geology_metal_savanna_slabs"; // decorative props rba1 = "actor|props/flora/grass_savanna.xml"; rba2 = "actor|props/flora/grass_medit_field.xml"; rba3 = "actor|props/flora/reeds_pond_lush_a.xml"; rba4 = "actor|props/flora/reeds_pond_lush_b.xml"; rba5 = "actor|geology/stone_savanna_med.xml"; rba6 = "actor|geology/stone_savanna_med.xml"; rba7 = "actor|props/flora/bush_desert_dry_a.xml"; rba8 = "actor|props/flora/bush_dry_a.xml"; rba9 = "actor|flora/trees/baobab.xml"; } //tropic else if (biomeID == 7){ rbt1 = ["tropic_grass_c", "tropic_grass_c", "tropic_grass_c", "tropic_grass_c", "tropic_grass_plants", "tropic_plants", "tropic_plants_b"]; rbt2 = "tropic_plants_c"; rbt3 = "tropic_plants_c"; rbt4 = ["tropic_cliff_a", "tropic_cliff_a", "tropic_cliff_a", "tropic_cliff_a_plants"]; rbt5 = "tropic_grass_c"; rbt6 = "tropic_grass_plants"; rbt7 = "tropic_plants"; rbt8 = ["tropic_cliff_grass"]; rbt9 = ["tropic_dirt_a", "tropic_dirt_a_plants"]; rbt10 = "tropic_citytile_a"; rbt11 = "tropic_citytile_plants"; rbt12 = "tropic_plants_b"; rbt13 = "temp_mud_plants"; rbt14 = "tropic_beach_dry"; rbt15 = "tropic_beach_wet"; // gaia entities rbe1 = "gaia/flora_tree_toona"; rbe2 = "gaia/flora_tree_toona"; rbe3 = "gaia/flora_tree_palm_tropic"; rbe4 = "gaia/flora_tree_palm_tropic"; rbe5 = "gaia/flora_tree_palm_tropic"; rbe6 = "gaia/flora_bush_berry"; rbe7 = "gaia/fauna_chicken"; rbe8 = "gaia/fauna_deer"; rbe9 = "gaia/fauna_fish"; rbe10 = "gaia/fauna_tiger"; rbe11 = "gaia/geology_stonemine_tropic_quarry"; rbe12 = "gaia/geology_stone_tropic_a"; rbe13 = "gaia/geology_metal_tropic_slabs"; // decorative props rba1 = "actor|props/flora/plant_tropic_a.xml"; rba2 = "actor|props/flora/plant_lg.xml"; rba3 = "actor|props/flora/reeds_pond_lush_b.xml"; rba4 = "actor|props/flora/water_lillies.xml"; rba5 = "actor|geology/stone_granite_large.xml"; rba6 = "actor|geology/stone_granite_med.xml"; rba7 = "actor|props/flora/plant_tropic_large.xml"; rba8 = "actor|props/flora/plant_tropic_large.xml"; rba9 = "actor|flora/trees/tree_tropic.xml"; } return biomeID; } ///////////////////////////////////////////////////////////////////////////////////////////// // These functions return the values needed for a randomized biome ///////////////////////////////////////////////////////////////////////////////////////////// function rBiomeT1() { return rbt1; } function rBiomeT2() { return rbt2; } function rBiomeT3() { return rbt3; } function rBiomeT4() { return rbt4; } function rBiomeT5() { return rbt5; } function rBiomeT6() { return rbt6; } function rBiomeT7() { return rbt7; } function rBiomeT8() { return rbt8; } function rBiomeT9() { return rbt9; } function rBiomeT10() { return rbt10; } function rBiomeT11() { return rbt11; } function rBiomeT12() { return rbt12; } function rBiomeT13() { return rbt13; } function rBiomeT14() { return rbt14; } function rBiomeT15() { return rbt15; } function rBiomeE1() { return rbe1; } function rBiomeE2() { return rbe2; } function rBiomeE3() { return rbe3; } function rBiomeE4() { return rbe4; } function rBiomeE5() { return rbe5; } function rBiomeE6() { return rbe6; } function rBiomeE7() { return rbe7; } function rBiomeE8() { return rbe8; } function rBiomeE9() { return rbe9; } function rBiomeE10() { return rbe10; } function rBiomeE11() { return rbe11; } function rBiomeE12() { return rbe12; } function rBiomeE13() { return rbe13; } function rBiomeA1() { return rba1; } function rBiomeA2() { return rba2; } function rBiomeA3() { return rba3; } function rBiomeA4() { return rba4; } function rBiomeA5() { return rba5; } function rBiomeA6() { return rba6; } function rBiomeA7() { return rba7; } function rBiomeA8() { return rba8; } function rBiomeA9() { return rba9; } \ No newline at end of file diff --git a/binaries/data/mods/public/maps/random/the_nile.json b/binaries/data/mods/public/maps/random/the_nile.json index aaa12f7217..3fac3c333a 100644 --- a/binaries/data/mods/public/maps/random/the_nile.json +++ b/binaries/data/mods/public/maps/random/the_nile.json @@ -5,6 +5,7 @@ "Description" : "A calm wide river divides the map into northern and southern parts.", "BaseTerrain" : ["desert_sand_dunes_100"], "BaseHeight" : 1, + "Keywords": ["naval"], "CircularMap" : true, "XXXXXX" : "Optionally define other things here, like we would for a scenario" }