Index: binaries/data/mods/public/maps/random/alpine_lakes.js =================================================================== --- binaries/data/mods/public/maps/random/alpine_lakes.js +++ binaries/data/mods/public/maps/random/alpine_lakes.js @@ -1,90 +1,27 @@ +Engine.LoadLibrary("rmbiome"); Engine.LoadLibrary("rmgen"); Engine.LoadLibrary("rmgen-common"); -if (randBool()) -{ - RandomMapLogger.prototype.printDirectly("Setting late spring biome.\n"); +setBiome(g_MapSettings.Biome ?? "alpine/winter"); +const isLateSpringBiome = g_MapSettings.Biome !== "alpine/winter"; - setFogThickness(0.26); - setFogFactor(0.4); +setFogThickness(isLateSpringBiome ? 0.26 : 0.19); +setFogFactor(isLateSpringBiome ? 0.4 : 0.35); - setPPEffect("hdr"); - setPPSaturation(0.48); +setPPEffect("hdr"); +setPPSaturation(isLateSpringBiome ? 0.48 : 0.37); +if (isLateSpringBiome) +{ setPPContrast(0.53); setPPBloom(0.12); - - var tPrimary = ["alpine_dirt_grass_50"]; - var tForestFloor = "alpine_forrestfloor"; - var tCliff = ["alpine_cliff_a", "alpine_cliff_b", "alpine_cliff_c"]; - var tSecondary = "alpine_grass_rocky"; - var tHalfSnow = ["alpine_grass_snow_50", "alpine_dirt_snow"]; - var tSnowLimited = ["alpine_snow_rocky"]; - var tDirt = "alpine_dirt"; - var tRoad = "new_alpine_citytile"; - var tRoadWild = "new_alpine_citytile"; - var tShore = "alpine_shore_rocks_grass_50"; - var tWater = "alpine_shore_rocks"; - - var oPine = "gaia/tree/pine"; - var oBerryBush = "gaia/fruit/berry_01"; - var oDeer = "gaia/fauna_deer"; - var oFish = "gaia/fish/generic"; - var oRabbit = "gaia/fauna_rabbit"; - var oStoneLarge = "gaia/rock/alpine_large"; - var oStoneSmall = "gaia/rock/alpine_small"; - var oMetalLarge = "gaia/ore/alpine_large"; - - 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"; -} -else -{ - RandomMapLogger.prototype.printDirectly("Setting winter spring biome.\n"); - - setFogFactor(0.35); - setFogThickness(0.19); - setPPSaturation(0.37); - setPPEffect("hdr"); - - var tPrimary = ["alpine_snow_a", "alpine_snow_b"]; - var tForestFloor = "alpine_forrestfloor_snow"; - var tCliff = ["alpine_cliff_snow"]; - var tSecondary = "alpine_grass_snow_50"; - var tHalfSnow = ["alpine_grass_snow_50", "alpine_dirt_snow"]; - var tSnowLimited = ["alpine_snow_a", "alpine_snow_b"]; - var tDirt = "alpine_dirt"; - var tRoad = "new_alpine_citytile"; - var tRoadWild = "new_alpine_citytile"; - var tShore = "alpine_shore_rocks_icy"; - var tWater = "alpine_shore_rocks"; - - var oPine = "gaia/tree/pine_w"; - var oBerryBush = "gaia/fruit/berry_01"; - var oDeer = "gaia/fauna_deer"; - var oFish = "gaia/fish/generic"; - var oRabbit = "gaia/fauna_rabbit"; - var oStoneLarge = "gaia/rock/alpine_large"; - var oStoneSmall = "gaia/rock/alpine_small"; - var oMetalLarge = "gaia/ore/alpine_large"; - - var aGrass = "actor|props/flora/grass_soft_dry_small_tall.xml"; - var aGrassShort = "actor|props/flora/grass_soft_dry_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_dry.xml"; - var aBushSmall = "actor|props/flora/bush_medit_sm_dry.xml"; } -const pForest = [tForestFloor + TERRAIN_SEPARATOR + oPine, tForestFloor]; +const pForest = [g_Terrains.forestFloor + TERRAIN_SEPARATOR + g_Gaia.tree1, g_Terrains.forestFloor]; const heightSeaGround = -5; const heightLand = 3; -const g_Map = new RandomMap(heightLand, tPrimary); +const g_Map = new RandomMap(heightLand, g_Terrains.mainTerrain); const numPlayers = getNumPlayers(); const mapSize = g_Map.getSize(); @@ -104,31 +41,38 @@ "PlayerTileClass": clPlayer, "BaseResourceClass": clBaseResource, "CityPatch": { - "outerTerrain": tRoadWild, - "innerTerrain": tRoad + "outerTerrain": g_Terrains.roadWild, + "innerTerrain": g_Terrains.road }, "StartingAnimal": { }, "Berries": { - "template": oBerryBush + "template": g_Gaia.fruitBush }, "Mines": { "types": [ - { "template": oMetalLarge }, - { "template": oStoneLarge } + { "template": g_Gaia.metalLarge }, + { "template": g_Gaia.stoneLarge } ] }, "Trees": { - "template": oPine, + "template": g_Gaia.tree1, "count": scaleByMapSize(3, 12) }, "Decoratives": { - "template": aGrassShort + "template": g_Decoratives.grassShort } }); Engine.SetProgress(20); -createMountains(tCliff, avoidClasses(clPlayer, 20, clHill, 8), clHill, scaleByMapSize(10, 40) * numPlayers, Math.floor(scaleByMapSize(40, 60)), Math.floor(scaleByMapSize(4, 5)), Math.floor(scaleByMapSize(7, 15)), Math.floor(scaleByMapSize(5, 15))); +createMountains(g_Terrains.cliff, + avoidClasses(clPlayer, 20, clHill, 8), + clHill, + scaleByMapSize(10, 40) * numPlayers, + Math.floor(scaleByMapSize(40, 60)), + Math.floor(scaleByMapSize(4, 5)), + Math.floor(scaleByMapSize(7, 15)), + Math.floor(scaleByMapSize(5, 15))); Engine.SetProgress(30); @@ -136,7 +80,7 @@ createAreas( new ChainPlacer(1, Math.floor(scaleByMapSize(4, 8)), Math.floor(scaleByMapSize(40, 180)), 0.7), [ - new LayeredPainter([tShore, tWater], [1]), + new LayeredPainter([g_Terrains.shore, g_Terrains.water], [1]), new SmoothElevationPainter(ELEVATION_SET, heightSeaGround, 5), new TileClassPainter(clWater) ], @@ -144,65 +88,82 @@ scaleByMapSize(5, 16), 1); -paintTerrainBasedOnHeight(3, Math.floor(scaleByMapSize(20, 40)), 0, tCliff); -paintTerrainBasedOnHeight(Math.floor(scaleByMapSize(20, 40)), 100, 3, tSnowLimited); +paintTerrainBasedOnHeight(3, Math.floor(scaleByMapSize(20, 40)), 0, g_Terrains.cliff); +paintTerrainBasedOnHeight(Math.floor(scaleByMapSize(20, 40)), 100, 3, g_Terrains.snowLimited); createBumps(avoidClasses(clWater, 2, clPlayer, 20)); const [forestTrees, stragglerTrees] = getTreeCounts(500, 3000, 0.7); createForests( - [tPrimary, tForestFloor, tForestFloor, pForest, pForest], - avoidClasses(clPlayer, 20, clForest, 17, clHill, 0, clWater, 2), - clForest, - forestTrees); + [g_Terrains.mainTerrain, g_Terrains.forestFloor, g_Terrains.forestFloor, pForest, pForest], + avoidClasses(clPlayer, 20, clForest, 17, clHill, 0, clWater, 2), + clForest, + forestTrees); Engine.SetProgress(60); g_Map.log("Creating dirt patches"); createLayeredPatches( - [scaleByMapSize(3, 6), scaleByMapSize(5, 10), scaleByMapSize(8, 21)], - [[tDirt,tHalfSnow], [tHalfSnow,tSnowLimited]], - [2], - avoidClasses(clWater, 3, clForest, 0, clHill, 0, clDirt, 5, clPlayer, 12), - scaleByMapSize(15, 45), - clDirt); + [scaleByMapSize(3, 6), scaleByMapSize(5, 10), scaleByMapSize(8, 21)], + [[g_Terrains.dirt, g_Terrains.halfSnow], [g_Terrains.halfSnow, g_Terrains.snowLimited]], + [2], + avoidClasses(clWater, 3, clForest, 0, clHill, 0, clDirt, 5, clPlayer, 12), + scaleByMapSize(15, 45), + clDirt); g_Map.log("Creating grass patches"); createPatches( - [scaleByMapSize(2, 4), scaleByMapSize(3, 7), scaleByMapSize(5, 15)], - tSecondary, - avoidClasses(clWater, 3, clForest, 0, clHill, 0, clDirt, 5, clPlayer, 12), - scaleByMapSize(15, 45), - clDirt); + [scaleByMapSize(2, 4), scaleByMapSize(3, 7), scaleByMapSize(5, 15)], + g_Terrains.tier2Terrain, + avoidClasses(clWater, 3, clForest, 0, clHill, 0, clDirt, 5, clPlayer, 12), + scaleByMapSize(15, 45), + clDirt); Engine.SetProgress(65); g_Map.log("Creating stone mines"); createMines( - [ - [new SimpleObject(oStoneSmall, 0, 2, 0, 4, 0, 2 * Math.PI, 1), new SimpleObject(oStoneLarge, 1, 1, 0, 4, 0, 2 * Math.PI, 4)], - [new SimpleObject(oStoneSmall, 2,5, 1,3)] - ], - avoidClasses(clWater, 3, clForest, 1, clPlayer, 20, clRock, 10, clHill, 1), - clRock); + [ + [ + new SimpleObject(g_Gaia.stoneSmall, 0, 2, 0, 4, 0, 2 * Math.PI, 1), + new SimpleObject(g_Gaia.stoneSmall, 1, 1, 0, 4, 0, 2 * Math.PI, 4) + ], + [ + new SimpleObject(g_Gaia.stoneSmall, 2,5, 1,3) + ] + ], + avoidClasses(clWater, 3, clForest, 1, clPlayer, 20, clRock, 10, clHill, 1), + clRock); g_Map.log("Creating metal mines"); createMines( - [ - [new SimpleObject(oMetalLarge, 1,1, 0,4)] - ], - avoidClasses(clWater, 3, clForest, 1, clPlayer, 20, clMetal, 10, clRock, 5, clHill, 1), - clMetal -); + [ + [new SimpleObject(g_Gaia.metalLarge, 1,1, 0,4)] + ], + avoidClasses(clWater, 3, clForest, 1, clPlayer, 20, clMetal, 10, clRock, 5, clHill, 1), + clMetal); Engine.SetProgress(70); createDecoration( [ - [new SimpleObject(aRockMedium, 1, 3, 0, 1)], - [new SimpleObject(aRockLarge, 1, 2, 0, 1), new SimpleObject(aRockMedium, 1, 3, 0, 2)], - [new SimpleObject(aGrassShort, 1, 2, 0, 1)], - [new SimpleObject(aGrass, 2, 4, 0, 1.8), new SimpleObject(aGrassShort, 3, 6, 1.2, 2.5)], - [new SimpleObject(aBushMedium, 1, 2, 0, 2), new SimpleObject(aBushSmall, 2, 4, 0, 2)] + [ + new SimpleObject(g_Decoratives.rockMedium, 1, 3, 0, 1) + ], + [ + new SimpleObject(g_Decoratives.rockLarge, 1, 2, 0, 1), + new SimpleObject(g_Decoratives.rockMedium, 1, 3, 0, 2) + ], + [ + new SimpleObject(g_Decoratives.grassShort, 1, 2, 0, 1) + ], + [ + new SimpleObject(g_Decoratives.grass, 2, 4, 0, 1.8), + new SimpleObject(g_Decoratives.grassShort, 3, 6, 1.2, 2.5) + ], + [ + new SimpleObject(g_Decoratives.bushMedium, 1, 2, 0, 2), + new SimpleObject(g_Decoratives.bushSmall, 2, 4, 0, 2) + ] ], [ scaleByMapAreaAbsolute(16), @@ -217,8 +178,8 @@ createFood( [ - [new SimpleObject(oDeer, 5, 7, 0, 4)], - [new SimpleObject(oRabbit, 2, 3, 0, 2)] + [new SimpleObject(g_Gaia.mainHuntableAnimal, 5, 7, 0, 4)], + [new SimpleObject(g_Gaia.secondaryHuntableAnimal, 2, 3, 0, 2)] ], [ 3 * numPlayers, @@ -229,7 +190,7 @@ createFood( [ - [new SimpleObject(oBerryBush, 5, 7, 0, 4)] + [new SimpleObject(g_Gaia.fruitBush, 5, 7, 0, 4)] ], [ randIntInclusive(1, 4) * numPlayers + 2 @@ -239,7 +200,7 @@ createFood( [ - [new SimpleObject(oFish, 2, 3, 0, 2)] + [new SimpleObject(g_Gaia.fish, 2, 3, 0, 2)] ], [ 15 * numPlayers @@ -250,7 +211,7 @@ Engine.SetProgress(85); createStragglerTrees( - [oPine], + [g_Gaia.tree1], avoidClasses(clWater, 5, clForest, 3, clHill, 1, clPlayer, 12, clMetal, 6, clRock, 6), clForest, stragglerTrees); Index: binaries/data/mods/public/maps/random/alpine_lakes.json =================================================================== --- binaries/data/mods/public/maps/random/alpine_lakes.json +++ binaries/data/mods/public/maps/random/alpine_lakes.json @@ -4,6 +4,7 @@ "Script" : "alpine_lakes.js", "Description" : "High Alpine mountains surrounding deep valleys strung with mountain streams and finger-like lakes.", "CircularMap" : true, - "Preview" : "alpine_lakes.png" + "Preview" : "alpine_lakes.png", + "SupportedBiomes": "alpine/" } } Index: binaries/data/mods/public/maps/random/alpine_valley.js =================================================================== --- binaries/data/mods/public/maps/random/alpine_valley.js +++ binaries/data/mods/public/maps/random/alpine_valley.js @@ -1,3 +1,4 @@ +Engine.LoadLibrary("rmbiome"); Engine.LoadLibrary("rmgen"); Engine.LoadLibrary("rmgen-common"); @@ -226,71 +227,16 @@ } }; -if (randBool()) -{ - RandomMapLogger.prototype.printDirectly("Setting late spring biome.\n"); - var tPrimary = ["alpine_dirt_grass_50"]; - var tForestFloor = "alpine_forrestfloor"; - var tCliff = ["alpine_cliff_a", "alpine_cliff_b", "alpine_cliff_c"]; - var tSecondary = "alpine_grass_rocky"; - var tHalfSnow = ["alpine_grass_snow_50", "alpine_dirt_snow"]; - var tSnowLimited = ["alpine_snow_rocky"]; - var tDirt = "alpine_dirt"; - var tRoad = "new_alpine_citytile"; - var tRoadWild = "new_alpine_citytile"; - - var oPine = "gaia/tree/pine"; - var oBerryBush = "gaia/fruit/berry_01"; - var oDeer = "gaia/fauna_deer"; - var oRabbit = "gaia/fauna_rabbit"; - var oStoneLarge = "gaia/rock/alpine_large"; - var oStoneSmall = "gaia/rock/alpine_small"; - var oMetalLarge = "gaia/ore/alpine_large"; - - 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"; -} -else -{ - RandomMapLogger.prototype.printDirectly("Setting winter biome.\n"); - var tPrimary = ["alpine_snow_a", "alpine_snow_b"]; - var tForestFloor = "alpine_forrestfloor_snow"; - var tCliff = ["alpine_cliff_snow"]; - var tSecondary = "alpine_grass_snow_50"; - var tHalfSnow = ["alpine_grass_snow_50", "alpine_dirt_snow"]; - var tSnowLimited = ["alpine_snow_a", "alpine_snow_b"]; - var tDirt = "alpine_dirt"; - var tRoad = "new_alpine_citytile"; - var tRoadWild = "new_alpine_citytile"; - - var oPine = "gaia/tree/pine_w"; - var oBerryBush = "gaia/fruit/berry_01"; - var oDeer = "gaia/fauna_deer"; - var oRabbit = "gaia/fauna_rabbit"; - var oStoneLarge = "gaia/rock/alpine_large"; - var oStoneSmall = "gaia/rock/alpine_small"; - var oMetalLarge = "gaia/ore/alpine_large"; - - var aGrass = "actor|props/flora/grass_soft_dry_small_tall.xml"; - var aGrassShort = "actor|props/flora/grass_soft_dry_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_dry.xml"; - var aBushSmall = "actor|props/flora/bush_medit_sm_dry.xml"; -} +setBiome(g_MapSettings.Biome ?? "alpine/winter"); var heightLand = 3; var heightOffsetBump = 2; var snowlineHeight = 29; var heightMountain = 30; -const pForest = [tForestFloor + TERRAIN_SEPARATOR + oPine, tForestFloor]; +const pForest = [g_Terrains.forestFloor + TERRAIN_SEPARATOR + g_Gaia.tree1, g_Terrains.forestFloor]; -const g_Map = new RandomMap(heightLand, tPrimary); +const g_Map = new RandomMap(heightLand, g_Terrains.mainTerrain); const numPlayers = getNumPlayers(); const mapCenter = g_Map.getCenter(); @@ -311,25 +257,25 @@ "PlayerTileClass": clPlayer, "BaseResourceClass": clBaseResource, "CityPatch": { - "outerTerrain": tRoadWild, - "innerTerrain": tRoad + "outerTerrain": g_Terrains.roadWild, + "innerTerrain": g_Terrains.road }, "StartingAnimal": { }, "Berries": { - "template": oBerryBush + "template": g_Gaia.fruitBush }, "Mines": { "types": [ - { "template": oMetalLarge }, - { "template": oStoneLarge } + { "template": g_Gaia.metalLarge }, + { "template": g_Gaia.stoneLarge } ] }, "Trees": { - "template": oPine + "template": g_Gaia.tree1 }, "Decoratives": { - "template": aGrassShort + "template": g_Decoratives.grassShort } }); Engine.SetProgress(20); @@ -337,7 +283,7 @@ new MountainRangeBuilder({ "pathplacer": new PathPlacer(undefined, undefined, undefined, 0.4, scaleByMapSize(3, 12), 0.1, 0.1, 0.1), "painters":[ - new LayeredPainter([tCliff, tPrimary], [3]), + new LayeredPainter([g_Terrains.cliff, g_Terrains.mainTerrain], [3]), new SmoothElevationPainter(ELEVATION_SET, heightMountain, 2), new TileClassPainter(clHill) ], @@ -357,8 +303,8 @@ Engine.SetProgress(35); -paintTerrainBasedOnHeight(heightLand + 0.1, snowlineHeight, 0, tCliff); -paintTerrainBasedOnHeight(snowlineHeight, heightMountain, 3, tSnowLimited); +paintTerrainBasedOnHeight(heightLand + 0.1, snowlineHeight, 0, g_Terrains.cliff); +paintTerrainBasedOnHeight(snowlineHeight, heightMountain, 3, g_Terrains.snowLimited); g_Map.log("Creating bumps"); createAreas( @@ -372,7 +318,7 @@ createAreas( new ClumpPlacer(scaleByMapSize(40, 150), 0.2, 0.1, Infinity), [ - new LayeredPainter([tCliff, tSnowLimited], [2]), + new LayeredPainter([g_Terrains.cliff, g_Terrains.snowLimited], [2]), new SmoothElevationPainter(ELEVATION_SET, heightMountain, 2), new TileClassPainter(clHill) ], @@ -384,7 +330,7 @@ g_Map.log("Creating forests"); const [forestTrees, stragglerTrees] = getTreeCounts(500, 3000, 0.7); const types = [ - [[tForestFloor, tPrimary, pForest], [tForestFloor, pForest]] + [[g_Terrains.forestFloor, g_Terrains.mainTerrain, pForest], [g_Terrains.forestFloor, pForest]] ]; var size = forestTrees / (scaleByMapSize(2,8) * numPlayers); @@ -406,7 +352,12 @@ createAreas( new ClumpPlacer(size, 0.3, 0.06, 0.5), [ - new LayeredPainter([[tDirt, tHalfSnow], [tHalfSnow, tSnowLimited]], [2]), + new LayeredPainter( + [ + [g_Terrains.dirt, g_Terrains.halfSnow], + [g_Terrains.halfSnow, g_Terrains.snowLimited] + ], + [2]), new TileClassPainter(clDirt) ], avoidClasses(clForest, 0, clHill, 0, clDirt, 5, clPlayer, 12), @@ -416,28 +367,34 @@ for (const size of [scaleByMapSize(2, 32), scaleByMapSize(3, 48), scaleByMapSize(5, 80)]) createAreas( new ClumpPlacer(size, 0.3, 0.06, 0.5), - new TerrainPainter(tSecondary), + new TerrainPainter(g_Terrains.tier2Terrain), avoidClasses(clForest, 0, clHill, 0, clDirt, 5, clPlayer, 12), scaleByMapSize(15, 45)); Engine.SetProgress(65); g_Map.log("Creating stone mines"); -var group = new SimpleGroup([new SimpleObject(oStoneSmall, 0, 2, 0, 4, 0, 2 * Math.PI, 1), new SimpleObject(oStoneLarge, 1, 1, 0, 4, 0, 2 * Math.PI, 4)], true, clRock); +var group = new SimpleGroup( + [ + new SimpleObject(g_Gaia.stoneSmall, 0, 2, 0, 4, 0, 2 * Math.PI, 1), + new SimpleObject(g_Gaia.stoneLarge, 1, 1, 0, 4, 0, 2 * Math.PI, 4) + ], + true, + clRock); createObjectGroupsDeprecated(group, 0, avoidClasses(clForest, 1, clPlayer, 20, clRock, 10, clHill, 1), scaleByMapSize(4,16), 100 ); g_Map.log("Creating small stone mines"); -group = new SimpleGroup([new SimpleObject(oStoneSmall, 2,5, 1,3)], true, clRock); +group = new SimpleGroup([new SimpleObject(g_Gaia.stoneSmall, 2,5, 1,3)], true, clRock); createObjectGroupsDeprecated(group, 0, avoidClasses(clForest, 1, clPlayer, 20, clRock, 10, clHill, 1), scaleByMapSize(4,16), 100 ); g_Map.log("Creating metal mines"); -group = new SimpleGroup([new SimpleObject(oMetalLarge, 1,1, 0,4)], true, clMetal); +group = new SimpleGroup([new SimpleObject(g_Gaia.metalLarge, 1,1, 0,4)], true, clMetal); createObjectGroupsDeprecated(group, 0, avoidClasses(clForest, 1, clPlayer, 20, clMetal, 10, clRock, 5, clHill, 1), scaleByMapSize(4,16), 100 @@ -446,7 +403,7 @@ g_Map.log("Creating small decorative rocks"); group = new SimpleGroup( - [new SimpleObject(aRockMedium, 1,3, 0,1)], + [new SimpleObject(g_Decoratives.rockMedium, 1,3, 0,1)], true ); createObjectGroupsDeprecated( @@ -457,7 +414,10 @@ g_Map.log("Creating large decorative rocks"); group = new SimpleGroup( - [new SimpleObject(aRockLarge, 1,2, 0,1), new SimpleObject(aRockMedium, 1,3, 0,2)], + [ + new SimpleObject(g_Decoratives.rockLarge, 1,2, 0,1), + new SimpleObject(g_Decoratives.rockMedium, 1,3, 0,2) + ], true ); createObjectGroupsDeprecated( @@ -469,7 +429,7 @@ g_Map.log("Creating deer"); group = new SimpleGroup( - [new SimpleObject(oDeer, 5,7, 0,4)], + [new SimpleObject(g_Gaia.mainHuntableAnimal, 5,7, 0,4)], true, clFood ); createObjectGroupsDeprecated(group, 0, @@ -479,7 +439,7 @@ g_Map.log("Creating berry bush"); group = new SimpleGroup( - [new SimpleObject(oBerryBush, 5,7, 0,4)], + [new SimpleObject(g_Gaia.fruitBush, 5,7, 0,4)], true, clFood ); createObjectGroupsDeprecated(group, 0, @@ -489,7 +449,7 @@ g_Map.log("Creating rabbit"); group = new SimpleGroup( - [new SimpleObject(oRabbit, 2,3, 0,2)], + [new SimpleObject(g_Gaia.secondaryHuntableAnimal, 2,3, 0,2)], true, clFood ); createObjectGroupsDeprecated(group, 0, @@ -499,7 +459,7 @@ Engine.SetProgress(85); createStragglerTrees( - [oPine], + [g_Gaia.tree1], avoidClasses(clForest, 1, clHill, 1, clPlayer, 12, clMetal, 6, clRock, 6), clForest, stragglerTrees); @@ -508,7 +468,7 @@ var planetm = 1; group = new SimpleGroup( - [new SimpleObject(aGrassShort, 1,2, 0,1, -Math.PI / 8, Math.PI / 8)] + [new SimpleObject(g_Decoratives.grassShort, 1,2, 0,1, -Math.PI / 8, Math.PI / 8)] ); createObjectGroupsDeprecated(group, 0, avoidClasses(clHill, 2, clPlayer, 2, clDirt, 0), @@ -517,9 +477,9 @@ Engine.SetProgress(90); g_Map.log("Creating large grass tufts"); -group = new SimpleGroup( - [new SimpleObject(aGrass, 2,4, 0,1.8, -Math.PI / 8, Math.PI / 8), new SimpleObject(aGrassShort, 3,6, 1.2,2.5, -Math.PI / 8, Math.PI / 8)] -); +group = new SimpleGroup([ + new SimpleObject(g_Decoratives.grass, 2,4, 0,1.8, -Math.PI / 8, Math.PI / 8), + new SimpleObject(g_Decoratives.grassShort, 3,6, 1.2,2.5, -Math.PI / 8, Math.PI / 8)]); createObjectGroupsDeprecated(group, 0, avoidClasses(clHill, 2, clPlayer, 2, clDirt, 1, clForest, 0), planetm * scaleByMapSize(13, 200) @@ -527,9 +487,9 @@ Engine.SetProgress(95); g_Map.log("Creating bushes"); -group = new SimpleGroup( - [new SimpleObject(aBushMedium, 1,2, 0,2), new SimpleObject(aBushSmall, 2,4, 0,2)] -); +group = new SimpleGroup([ + new SimpleObject(g_Decoratives.bushMedium, 1,2, 0,2), + new SimpleObject(g_Decoratives.bushSmall, 2,4, 0,2)]); createObjectGroupsDeprecated(group, 0, avoidClasses(clHill, 1, clPlayer, 1, clDirt, 1), planetm * scaleByMapSize(13, 200), 50 Index: binaries/data/mods/public/maps/random/alpine_valley.json =================================================================== --- binaries/data/mods/public/maps/random/alpine_valley.json +++ binaries/data/mods/public/maps/random/alpine_valley.json @@ -4,6 +4,7 @@ "Script" : "alpine_valley.js", "Description" : "High Alpine mountains bordering deep valleys.", "Preview" : "alpine_valley.png", - "CircularMap" : true + "CircularMap" : true, + "SupportedBiomes": "alpine/" } } Index: binaries/data/mods/public/maps/random/rmbiome/alpine/late_spring.json =================================================================== --- /dev/null +++ binaries/data/mods/public/maps/random/rmbiome/alpine/late_spring.json @@ -0,0 +1,37 @@ +{ + "Description": { + "Title": "Late Spring", + "Description": "Gras grows through the snow." + }, + "Terrains": { + "mainTerrain": ["alpine_dirt_grass_50"], + "forestFloor": "alpine_forrestfloor_snow", + "cliff": ["alpine_cliff_a", "alpine_cliff_b", "alpine_cliff_c"], + "tier2Terrain": "alpine_grass_rocky", + "halfSnow": ["alpine_grass_snow_50", "alpine_dirt_snow"], + "snowLimited": ["alpine_snow_rocky"], + "dirt": "alpine_dirt", + "road": "new_alpine_citytile", + "roadWild": "new_alpine_citytile", + "water": "alpine_shore_rocks", + "shore": "alpine_shore_rocks_grass_50" + }, + "Gaia": { + "tree1": "gaia/tree/pine", + "fruitBush": "gaia/fruit/berry_01", + "mainHuntableAnimal": "gaia/fauna_deer", + "secondaryHuntableAnimal": "gaia/fauna_rabbit", + "fish": "gaia/fish/generic", + "stoneLarge": "gaia/rock/alpine_large", + "stoneSmall": "gaia/rock/alpine_small", + "metalLarge": "gaia/ore/alpine_large" + }, + "Decoratives": { + "grass": "actor|props/flora/grass_soft_small_tall.xml", + "grassShort": "actor|props/flora/grass_soft_large.xml", + "rockLarge": "actor|geology/stone_granite_med.xml", + "rockMedium": "actor|geology/stone_granite_med.xml", + "bushMedium": "actor|props/flora/bush_medit_me.xml", + "bushSmall": "actor|props/flora/bush_medit_sm.xml" + } +} Index: binaries/data/mods/public/maps/random/rmbiome/alpine/winter.json =================================================================== --- /dev/null +++ binaries/data/mods/public/maps/random/rmbiome/alpine/winter.json @@ -0,0 +1,37 @@ +{ + "Description": { + "Title": "Winter", + "Description": "It's hard to see anything. The snow glares." + }, + "Terrains": { + "mainTerrain": ["alpine_snow_a", "alpine_snow_b"], + "forestFloor": "alpine_forrestfloor_snow", + "cliff": ["alpine_cliff_snow"], + "tier2Terrain": "alpine_grass_snow_50", + "halfSnow": ["alpine_grass_snow_50", "alpine_dirt_snow"], + "snowLimited": ["alpine_snow_a", "alpine_snow_b"], + "dirt": "alpine_dirt", + "road": "new_alpine_citytile", + "roadWild": "new_alpine_citytile", + "water": "alpine_shore_rocks", + "shore": "alpine_shore_rocks_icy" + }, + "Gaia": { + "tree1": "gaia/tree/pine_w", + "fruitBush": "gaia/fruit/berry_01", + "mainHuntableAnimal": "gaia/fauna_deer", + "secondaryHuntableAnimal": "gaia/fauna_rabbit", + "fish": "gaia/fish/generic", + "stoneLarge": "gaia/rock/alpine_large", + "stoneSmall": "gaia/rock/alpine_small", + "metalLarge": "gaia/ore/alpine_large" + }, + "Decoratives": { + "grass": "actor|props/flora/grass_soft_dry_small_tall.xml", + "grassShort": "actor|props/flora/grass_soft_dry_large.xml", + "rockLarge": "actor|geology/stone_granite_med.xml", + "rockMedium": "actor|geology/stone_granite_med.xml", + "bushMedium": "actor|props/flora/bush_medit_me_dry.xml", + "bushSmall": "actor|props/flora/bush_medit_sm_dry.xml" + } +}