From b26e6a442a5d3fd1bd376cc7860416163071a855 Mon Sep 17 00:00:00 2001 From: Mythos_Ruler Date: Wed, 4 Jul 2012 01:08:51 +0000 Subject: [PATCH] - Updated Persian Stable and Barracks portraits. - Updated Carth and Pers civ files. - Updated some Carth structure templates. This was SVN commit r12065. --- .../portraits/structures/pers_barracks.png | 4 +- .../portraits/structures/pers_stable.png | 4 +- binaries/data/mods/public/civs/cart.json | 42 ++++++++++- binaries/data/mods/public/civs/pers.json | 6 +- .../data/mods/public/maps/random/oasis.js | 70 +++++++++++-------- .../attack_tower_crenellations.json | 4 +- .../structures/cart_embassy_celtic.xml | 2 +- .../structures/cart_embassy_iberian.xml | 2 +- .../structures/cart_embassy_italiote.xml | 2 +- .../templates/structures/cart_super_dock.xml | 3 +- 10 files changed, 93 insertions(+), 46 deletions(-) diff --git a/binaries/data/mods/public/art/textures/ui/session/portraits/structures/pers_barracks.png b/binaries/data/mods/public/art/textures/ui/session/portraits/structures/pers_barracks.png index 2b34943c16..dc038edcc8 100644 --- a/binaries/data/mods/public/art/textures/ui/session/portraits/structures/pers_barracks.png +++ b/binaries/data/mods/public/art/textures/ui/session/portraits/structures/pers_barracks.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:80aa0d89907171de4a374eac0268defd0f7bc67a7e57da7b90335b21196c8f0a -size 28478 +oid sha256:0a6d6c797176bc56f81e5dd663966d811e09c30667f57048c53740361689afbe +size 30776 diff --git a/binaries/data/mods/public/art/textures/ui/session/portraits/structures/pers_stable.png b/binaries/data/mods/public/art/textures/ui/session/portraits/structures/pers_stable.png index 144f15aad4..e7e9a729c0 100644 --- a/binaries/data/mods/public/art/textures/ui/session/portraits/structures/pers_stable.png +++ b/binaries/data/mods/public/art/textures/ui/session/portraits/structures/pers_stable.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:576b312e28f1a985371880aa0eabb2240142d692c9c007adb968c087c1d736de -size 25381 +oid sha256:29658feadf94240ebe07c52279d5b52c143c838721246890ba17aed54d760c96 +size 30027 diff --git a/binaries/data/mods/public/civs/cart.json b/binaries/data/mods/public/civs/cart.json index 244a13ab33..14c78da337 100644 --- a/binaries/data/mods/public/civs/cart.json +++ b/binaries/data/mods/public/civs/cart.json @@ -19,12 +19,12 @@ { "Name": "Exploration", "History": "Nobody knew better than the Carthaginians where in the ancient world they were going and going to go; their merchant traders had missions to everywhere.", - "Description": "All hominid units +2 LOS." + "Description": "All units +2 vision range." }, { "Name": "Colonisation", "History": "Carthaginians established many trading centres as colonies and ultimately held dominion over 300 cities and towns in North Africa alone.", - "Description": "BT 33% all buildings and structures." + "Description": "Build time reduced -33% for all structures." } ], "Heroes": @@ -63,7 +63,7 @@ { "Name": "Roundup", "History": "Not unlike the Iberian Peninsula, North Africa was known as horse country, capable of producing up to 100,000 new mounts each year. It was also the home of the North African Forest Elephant.", - "Description": "The resource cost of training horse-mounted units (cavalry) or War Elephant Super Units is reduced by a fixed amount of 5% per animal corralled appropriate to kind. " + "Description": "The resource cost of training horse-mounted units (cavalry) or War Elephant is reduced by a fixed amount of 5% per animal corralled appropriate to kind." } ], "TeamBonuses": @@ -76,6 +76,42 @@ ], "Structures": [ + { + "Name":"Naval Shipyard", + "Class":"", + "Emblem":"", + "History":"The structure is based upon the centre island of the inner harbour constructed to house the war fleet of the Carthaginian navy at Carthage.", + "Requirements":".", + "Phase":"", + "Special":"Construct warships for the Carthaginian navy." + }, + { + "Name":"Celtic Embassy", + "Class":"", + "Emblem":"", + "History":"The Celts supplied fierce warrior mercenaries for Carthaginian armies.", + "Requirements":".", + "Phase":"", + "Special":"Hire Celtic mercenaries." + }, + { + "Name":"Italiote Embassy", + "Class":"", + "Emblem":"", + "History":"When Hannibal invaded Italy and defeated the Romans in a series of battles, many of the Italian peoples subject to Rome, including the Italian Greeks and powerful Samnites, revolted and joined the Carthaginian cause.", + "Requirements":".", + "Phase":"", + "Special":"Hire Italian mercenaries." + }, + { + "Name":"Iberian Embassy", + "Class":"", + "Emblem":"", + "History":"The Iberians were known as fierce mercenaries, loyal to their paymasters.", + "Requirements":".", + "Phase":"", + "Special":"Hire Iberian mercenaries." + } ], "StartEntities": [ diff --git a/binaries/data/mods/public/civs/pers.json b/binaries/data/mods/public/civs/pers.json index 43a8dace1c..dbbd92271f 100644 --- a/binaries/data/mods/public/civs/pers.json +++ b/binaries/data/mods/public/civs/pers.json @@ -18,12 +18,12 @@ { "Name": "Naval Craftsmanship", "History": "Early Achaemenid rulers acted towards making Persia the first great Asian empire to rule the seas. The Great King behaved favourably towards the various sea peoples in order to secure their services, but also carried out various marine initiatives. During the reign of Darius the Great, for example, a canal was built in Egypt and a Persian navy was sent exploring the Indus river. According to Herodotus, some 300 ships in the Persian navy were retrofitted to carry horses and their riders.", - "Description": "Cypriad Galleys gain the unique ability to transport cavalry" + "Description": "Phoenician triremes gain the unique ability to train cavalry units." }, { "Name": "Persian Architecture", "History": "The Persians built the wonderful 1200 mile-long Royal Highway from Sardis to Susa; Darius the Great and Xerxes also built the magnificent Persepolis; Cyrus the Great greatly improved Ecbatana and virtually 'rebuilt' the old Elamite capital of Susa.", - "Description": "Increases hitpoints of all structures." + "Description": "Increases hitpoints of all structures." } ], "Heroes": @@ -66,7 +66,7 @@ { "Name": "Great King's Levy", "History": "The Persians could and did levy a large number of infantry during wartime due to the sheer size of the Achaemenid Empire and the way in which it was set-up. In general the Persian infantry was well trained and fought with great tenacity. However while this was true the infantry were poor hand-to-hand, close combat fighters. Also, with the exception of the elite regiments, the Persian infantry was not a standing professional force.", - "Description": "All Persian Citizen Infantry units are available at a reduced cost to represent their quick mobilization and light status in comaparion to the other civs." + "Description": "All Persian Citizen Infantry units are available at a reduced cost." } ], "TeamBonuses": diff --git a/binaries/data/mods/public/maps/random/oasis.js b/binaries/data/mods/public/maps/random/oasis.js index c4fb908a0e..f3cb43f3a3 100644 --- a/binaries/data/mods/public/maps/random/oasis.js +++ b/binaries/data/mods/public/maps/random/oasis.js @@ -10,7 +10,7 @@ var tGrassA = ["desert_dirt_persia_1", "desert_dirt_persia_2"]; var tGrassB = "dirta"; var tGrassC = "medit_dirt_dry"; var tHill = ["desert_dirt_rocks_1", "desert_dirt_rocks_2", "desert_dirt_rocks_3"]; -var tDirt = ["desert_lakebed_dry", "desert_lakebed_dry_b"]; +var tDirt = ["desert_dirt_rough","desert_dirt_rough","desert_dirt_rough", "desert_dirt_rough_2", "desert_dirt_rocks_2"]; var tRoad = "desert_city_tile";; var tRoadWild = "desert_city_tile";; var tGrassPatch = "desert_dirt_rough";; @@ -63,7 +63,7 @@ var clPlayer = createTileClass(); var clHill = createTileClass(); var clForest = createTileClass(); var clWater = createTileClass(); -var clDirt = createTileClass(); +var clPassage = createTileClass(); var clRock = createTileClass(); var clMetal = createTileClass(); var clFood = createTileClass(); @@ -232,24 +232,26 @@ RMS.SetProgress(20); // create bumps log("Creating bumps..."); placer = new ClumpPlacer(scaleByMapSize(20, 50), 0.3, 0.06, 1); -painter = new SmoothElevationPainter(ELEVATION_MODIFY, 4, 2); -createAreas( - placer, - painter, +painter = new SmoothElevationPainter(ELEVATION_MODIFY, 4, 3); +createAreas( placer, painter, avoidClasses(clWater, 5, clPlayer, 10, clBaseResource, 6), scaleByMapSize(30, 70) ); +log("Creating dirt Patches..."); +placer = new ClumpPlacer(80, 0.3, 0.06, 1); +var terrainPainter = new TerrainPainter(tDirt); +createAreas( placer, terrainPainter, avoidClasses(clWater, 10, clPlayer, 10, clBaseResource, 6), scaleByMapSize(15, 50) ); + log("Creating Dunes..."); -placer = new ClumpPlacer(100, 0.3, 0.06, 1); +placer = new ClumpPlacer(120, 0.3, 0.06, 1); var terrainPainter = new TerrainPainter(tDune); -painter = new SmoothElevationPainter(ELEVATION_MODIFY, 18, 25); -createAreas( - placer, - [terrainPainter, painter], +painter = new SmoothElevationPainter(ELEVATION_MODIFY, 18, 30); +createAreas( placer, [terrainPainter, painter], avoidClasses(clWater, 13, clPlayer, 10, clBaseResource, 6), scaleByMapSize(15, 50) ); + log("Creating actual oasis..."); var size = mapSize * 0.2; size *= size; @@ -259,18 +261,11 @@ fz = fractionToTiles(0.5); ix = round(fx); iz = round(fz); placer = new ClumpPlacer(size*1.1, 0.8, 0.2, 10, ix, iz); -terrainPainter = new LayeredPainter( - [pOasisForestLight,tShoreBlend, tWater, tWater, tWater], // terrains - [scaleByMapSize(6,20),3, 5, 2] // widths - ); -var elevationPainter = new SmoothElevationPainter(ELEVATION_SET, // type - -3, // elevation - 15 // blend radius - ); +terrainPainter = new LayeredPainter( [pOasisForestLight,tShoreBlend, tWater, tWater, tWater], [scaleByMapSize(6,20),3, 5, 2] ); +var elevationPainter = new SmoothElevationPainter(ELEVATION_SET, -3, 15 ); createArea(placer, [terrainPainter, elevationPainter, paintClass(clWater)], null); RMS.SetProgress(50); -if(mapSize > 150) -{ +if(mapSize > 150) { log ("creating path through"); var pAngle = randFloat(0, TWO_PI); var px = round(fx) + round(fractionToTiles(0.13 * cos(pAngle))); @@ -280,8 +275,12 @@ if(mapSize > 150) var path = new PathPlacer(px,py,pex,pey,scaleByMapSize(7,18), 0.4,1,0.2,0) terrainPainter = new TerrainPainter(tGrass); elevationPainter = new SmoothElevationPainter(ELEVATION_MODIFY, 4, 5 ); - createArea(path, [terrainPainter, elevationPainter, paintClass(clDirt)], null); + createArea(path, [terrainPainter, elevationPainter, paintClass(clPassage)], null); } +log("Creating some straggler trees around the Passage..."); +group = new SimpleGroup([new SimpleObject(ePalmTall, 1,1, 0,0),new SimpleObject(ePalmShort, 1,2, 1,2), new SimpleObject(aBushA, 0,2, 1,3)], true, clForest); +createObjectGroups(group, 0, stayClasses(clPassage,1), scaleByMapSize(60,250), 100 ); + log("Creating stone mines..."); // create large stone quarries group = new SimpleGroup([new SimpleObject(eStoneMine, 1,1, 0,0),new SimpleObject(ePalmShort, 1,2, 3,3),new SimpleObject(ePalmTall, 0,1, 3,3) @@ -332,7 +331,7 @@ RMS.SetProgress(70); */ log("Creating small decorative rocks..."); group = new SimpleGroup( [new SimpleObject(aRock, 2,4, 0,2)], true, undefined ); -createObjectGroups(group, 0, avoidClasses(clWater, 3, clForest, 0, clPlayer, 10, clHill, 1, clFood, 20), 30, 10 ); +createObjectGroups(group, 0, avoidClasses(clWater, 3, clForest, 0, clPlayer, 10, clHill, 1, clFood, 20), 30, scaleByMapSize(10,50) ); RMS.SetProgress(70); // create deer @@ -396,7 +395,7 @@ group = new SimpleGroup( [new SimpleObject(aBushB, 1,2, 0,2), new SimpleObject(aBushA, 2,4, 0,2)] ); createObjectGroups(group, 0, - avoidClasses(clWater, 2, clHill, 1, clPlayer, 1, clDirt, 1), + avoidClasses(clWater, 2, clHill, 1, clPlayer, 1, clPassage, 1), scaleByMapSize(10, 40), 20 ); log ("Creating Sand blows and beautifications"); @@ -422,22 +421,33 @@ for (var sandx = 0; sandx < mapSize; sandx += 4) group = new SimpleGroup( [new SimpleObject(aReedsA, 5,12, 0,2),new SimpleObject(aReedsB, 5,12, 0,2)], true, undefined, sandx,sandz ); createObjectGroup(group, 0); } + if (getTileClass(clPassage).countInRadius(sandx,sandz,2,true) > 0) { + if (Math.random() < 0.4) + { + group = new SimpleGroup( [new SimpleObject(aWaterFlower, 1,4, 1,2)], true, undefined, sandx,sandz ); + createObjectGroup(group, 0); + } else if (Math.random() > 0.3 && getHeight(sandx,sandz) < -1.9) + { + group = new SimpleGroup( [new SimpleObject(aReedsA, 5,12, 0,2),new SimpleObject(aReedsB, 5,12, 0,2)], true, undefined, sandx,sandz ); + createObjectGroup(group, 0); + } + } } } } setSkySet("sunny"); -setSunColour(0.8,0.55,0.26); +setSunColour(0.914,0.827,0.639); setSunRotation(PI/3); -setSunElevation(0.785398/1.9); +setSunElevation(0.5); setWaterTint(0.411765,0.466667,0.3); // muddy brown setWaterReflectionTint(0.55, 0.4, 0.55); // muddy brown -setWaterMurkiness(1.2); +setWaterMurkiness(2.0); setWaterShininess(1.46484); -setWaterWaviness(2); +setWaterWaviness(0); setWaterColour(0.294118,0.34902,0.694118); -setWaterReflectionTintStrength(0.199219); -setTerrainAmbientColour(0.392157, 0.47451, 0.654902); +setWaterReflectionTintStrength(0.25); +setTerrainAmbientColour(0.45, 0.5, 0.6); setUnitsAmbientColour(0.501961, 0.501961, 0.501961); // Export map data diff --git a/binaries/data/mods/public/simulation/data/technologies/attack_tower_crenellations.json b/binaries/data/mods/public/simulation/data/technologies/attack_tower_crenellations.json index 759aa56388..519b3f332a 100644 --- a/binaries/data/mods/public/simulation/data/technologies/attack_tower_crenellations.json +++ b/binaries/data/mods/public/simulation/data/technologies/attack_tower_crenellations.json @@ -7,7 +7,7 @@ "requirementsTooltip": "Unlocked in Town Phase.", "icon": "crenelations.png", "researchTime": 20, - "tooltip": "Install crenellations and murder holes to increase the number of arrows fired per garrisoned soldier +50%.", - "modifications": [{"value": "BuildingAI/GarrisonArrowMultiplier", "multiplier": 1.5}], + "tooltip": "Install crenellations and murder holes to double the number of arrows fired per garrisoned soldier.", + "modifications": [{"value": "BuildingAI/GarrisonArrowMultiplier", "multiplier": 2.0}], "affects": ["Defensive Tower"] } \ No newline at end of file diff --git a/binaries/data/mods/public/simulation/templates/structures/cart_embassy_celtic.xml b/binaries/data/mods/public/simulation/templates/structures/cart_embassy_celtic.xml index bb3908d28a..527944a05f 100644 --- a/binaries/data/mods/public/simulation/templates/structures/cart_embassy_celtic.xml +++ b/binaries/data/mods/public/simulation/templates/structures/cart_embassy_celtic.xml @@ -17,7 +17,7 @@ cart Celtic Embassy - The Carthaginian army was a cosmopolitan affair, made up of mercenaries from dozens of lands. + The Celts supplied fierce warrior mercenaries for Carthaginian armies. Hire Celtic mercenaries. Research improvements for these mercenaries. structures/celtic_embassy.png diff --git a/binaries/data/mods/public/simulation/templates/structures/cart_embassy_iberian.xml b/binaries/data/mods/public/simulation/templates/structures/cart_embassy_iberian.xml index 9820b6ec7d..ea0fbe7b7b 100644 --- a/binaries/data/mods/public/simulation/templates/structures/cart_embassy_iberian.xml +++ b/binaries/data/mods/public/simulation/templates/structures/cart_embassy_iberian.xml @@ -10,7 +10,7 @@ cart Iberian Embassy - The Carthaginian army was a cosmopolitan affair, made up of mercenaries from dozens of lands. + The Iberians were known as fierce mercenaries, loyal to their paymasters. Hire Iberian mercenaries. Research improvements for these mercenaries. structures/iberian_embassy.png diff --git a/binaries/data/mods/public/simulation/templates/structures/cart_embassy_italiote.xml b/binaries/data/mods/public/simulation/templates/structures/cart_embassy_italiote.xml index b8885de1f1..69904a0d82 100644 --- a/binaries/data/mods/public/simulation/templates/structures/cart_embassy_italiote.xml +++ b/binaries/data/mods/public/simulation/templates/structures/cart_embassy_italiote.xml @@ -13,7 +13,7 @@ cart Italiote Embassy - The Carthaginian army was a cosmopolitan affair, made up of mercenaries from dozens of lands. + When Hannibal invaded Italy and defeated the Romans in a series of battles, many of the Italian peoples subject to Rome, including the Italian Greeks and powerful Samnites, revolted and joined the Carthaginian cause. Hire Italian mercenaries. Research improvements for these mercenaries. structures/italian_embassy.png diff --git a/binaries/data/mods/public/simulation/templates/structures/cart_super_dock.xml b/binaries/data/mods/public/simulation/templates/structures/cart_super_dock.xml index ea3b590b38..86b40e4d27 100644 --- a/binaries/data/mods/public/simulation/templates/structures/cart_super_dock.xml +++ b/binaries/data/mods/public/simulation/templates/structures/cart_super_dock.xml @@ -20,7 +20,8 @@ 500 400 - 400 + 200 + 0