Tech tree total overhaul - Based it on G&K but removed all war-only techs, normalized bonuses across techs

This commit is contained in:
Yair Morgenstern 2017-12-21 14:45:49 +02:00
parent d81cb8cda7
commit 14c75d7cc4
7 changed files with 217 additions and 300 deletions

View File

@ -80,7 +80,7 @@
greatPersonPoints:{production:1}, greatPersonPoints:{production:1},
isWonder:true, isWonder:true,
unique:"WorkerConstruction", unique:"WorkerConstruction",
requiredTech:"Masonry" requiredTech:"Mathematics"
}, },
{ {
name:"Temple", name:"Temple",
@ -96,6 +96,7 @@
name:"The Oracle", name:"The Oracle",
description: "Provides a free social policy - todo", description: "Provides a free social policy - todo",
culture:3, culture:3,
greatPersonPoints:{science:1},
isWonder:true, isWonder:true,
requiredTech:"Philosophy" requiredTech:"Philosophy"
}, },
@ -107,7 +108,7 @@
isWonder:true, isWonder:true,
percentStatBonus:{science:50}, percentStatBonus:{science:50},
requiredBuildingInAllCities:"Library", requiredBuildingInAllCities:"Library",
requiredTech:"Philosophy" requiredTech:"Civil Service"
}, },
{ {
name:"Stable", name:"Stable",
@ -130,6 +131,7 @@
{ {
name:"Hanging Gardens", name:"Hanging Gardens",
description: "", description: "",
greatPersonPoints:{culture:1},
food:10, food:10,
culture:1, culture:1,
isWonder:true, isWonder:true,
@ -166,13 +168,15 @@
description: "", description: "",
culture:1, culture:1,
happiness:10, happiness:10,
greatPersonPoints:{gold:1},
isWonder:true, isWonder:true,
requiredTech:"Theology" requiredTech:"Metal Casting"
}, },
{ {
name:"Hagia Sophia", name:"Hagia Sophia",
description: "+33% great person generation in all cities", description: "+33% great person generation in all cities",
culture:1, culture:1,
greatPersonPoints:{culture:1},
isWonder:true, isWonder:true,
unique:"GreatPersonGenerationIncrease", unique:"GreatPersonGenerationIncrease",
requiredTech:"Theology" requiredTech:"Theology"
@ -181,6 +185,7 @@
name:"Chichen Itza", name:"Chichen Itza",
description: "Length of golden ages increased +50%", description: "Length of golden ages increased +50%",
culture:1, culture:1,
greatPersonPoints:{production:1},
isWonder:true, isWonder:true,
unique:"GoldenAgeLengthIncrease", unique:"GoldenAgeLengthIncrease",
requiredTech:"Currency" requiredTech:"Currency"
@ -198,6 +203,7 @@
name:"Machu Pichu", name:"Machu Pichu",
description: "Gold from all trade routes +25%", description: "Gold from all trade routes +25%",
gold:5, gold:5,
greatPersonPoints:{gold:1},
culture:1, culture:1,
isWonder:true, isWonder:true,
unique:"TradeRouteGoldIncrease", unique:"TradeRouteGoldIncrease",
@ -256,9 +262,19 @@
name:"Angkor Wat", name:"Angkor Wat",
description: "Cost of aquiring new tiles reduced by 25%", description: "Cost of aquiring new tiles reduced by 25%",
culture:1, culture:1,
greatPersonPoints:{production:1},
isWonder:true, isWonder:true,
unique:"NewTileCostReduction", unique:"NewTileCostReduction",
requiredTech:"Education" requiredTech:"Chivalry"
},
{
name:"Porcelain Tower",
description: "A free great scientist appears, production to science conversion in cities increased by 33%",
culture:1,
greatPersonPoints:{science:2},
isWonder:true,
unique:"ScienceConversionIncrease",
requiredTech:"Physics"
}, },
{ {
name:"Ironworks", name:"Ironworks",
@ -363,7 +379,7 @@
}, },
{ {
name:"The Louvre", name:"The Louvre",
description: "Free Great Artist appears near the city", description: "A Free Great Artist appears near the city",
culture:1, culture:1,
happiness:4, happiness:4,
isWonder:true, isWonder:true,
@ -374,6 +390,7 @@
name:"Public School", name:"Public School",
description: "+1 science per 2 population", description: "+1 science per 2 population",
science:3, science:3,
specialistSlots:{science:1},
requiredBuilding:"University", requiredBuilding:"University",
maintainance:3, maintainance:3,
hurryCostModifier:0, hurryCostModifier:0,
@ -417,7 +434,7 @@
culture:5, culture:5,
isWonder:true, isWonder:true,
unique:"PolicyCostReduction", unique:"PolicyCostReduction",
requiredTech:"Telegraph" requiredTech:"Plastics"
}, },
{ {
name:"Broadcast Tower", name:"Broadcast Tower",

View File

@ -1,6 +1,7 @@
[ [
{ {
columnNumber: 1, columnNumber: 1,
era:"Ancient",
techCost: 35, techCost: 35,
buildingCost:60, buildingCost:60,
techs:[ techs:[
@ -24,6 +25,7 @@
}, },
{ {
columnNumber: 2, columnNumber: 2,
era:"Ancient",
techCost: 55, techCost: 55,
buildingCost:75, buildingCost:75,
wonderCost:185, wonderCost:185,
@ -38,7 +40,7 @@
name:"Calendar", name:"Calendar",
row:2, row:2,
prerequisites:["Pottery"], prerequisites:["Pottery"],
description:"Allows your workers to build Plantations, which grant access to several luxury resources" description:"Allows your workers to build Plantations, which grant access to several luxury resources, and the Stonehenge wonder, providing culture"
}, },
{ {
name:"Writing", name:"Writing",
@ -50,30 +52,31 @@
name:"Trapping", name:"Trapping",
row:5, row:5,
prerequisites:["Animal Husbandry"], prerequisites:["Animal Husbandry"],
description:"Allows your workers to build Camps and Trading Posts, which increase gold produced and grant access to several luxury resources" description:"Allows your workers to build Camps, increasing gold and granting access to several luxury resources. Also enables construction of Circuses, providing happiness."
}, },
{ {
name:"The Wheel", name:"The Wheel",
row:6, row:6,
prerequisites:["Animal Husbandry"], prerequisites:["Animal Husbandry"],
description:"Allows construction of roads to your capital city, providing gold from trade" description:"Allows construction of roads, speeding movement and providing gold from trade. ALSO WATERWHEELS-TODO"
}, },
{ {
name:"Masonry", name:"Masonry",
row:9, row:9,
prerequisites:["Mining"], prerequisites:["Mining"],
description:"Allows workers to build quarries, granting access to stone and marble resources, and clear marshes. Also enables construction of the Pyramids wonder." description:"Allows workers to build quarries, granting access to stone and marble resources."
}, },
{ {
name:"Bronze Working", name:"Bronze Working",
row:10, row:10,
prerequisites:["Mining"], prerequisites:["Mining"],
description:"Allows workers to remove jungles" description:"Allows workers to remove jungles and clear marshes"
} }
] ]
}, },
{ {
columnNumber: 3, columnNumber: 3,
era:"Classical",
techCost: 115, techCost: 115,
buildingCost:100, buildingCost:100,
wonderCost:250, wonderCost:250,
@ -85,55 +88,38 @@
prerequisites:["Sailing"], prerequisites:["Sailing"],
description:"Does nothing since we have no sea tiles - In theory, Allows construction of lighthouses, providing more food for sea tiles" description:"Does nothing since we have no sea tiles - In theory, Allows construction of lighthouses, providing more food for sea tiles"
}, },
{
name:"Philosophy",
row:3,
prerequisites:["Writing"],
description:"Allows construction of temples, which generate culture, and the Oracle and National College wonders"
},
{ {
name:"Horseback Riding", name:"Horseback Riding",
row:5, row:5,
prerequisites:["The Wheel"], prerequisites:["Trapping","The Wheel"],
description:"Allows construction of stables, which increase production on cattle, sheep and horses, and the Circus Maximus wonder" description:"Allows construction of stables, which increase production on cattle, sheep and horses, and the Circus Maximus wonder"
}, },
{ {
name:"Mathematics", name:"Mathematics",
row:7, row:7,
prerequisites:["The Wheel"], prerequisites:["The Wheel"],
description: "Enables construction of the Hanging Gardens wonder." description: "Enables construction of the Hanging Gardens wonder. Also enables construction of the Pyramids wonder."
}, },
{ {
name:"Construction", name:"Construction",
row:9, row:9,
prerequisites:["Masonry"], prerequisites:["Masonry"],
description:"Allows construction of colloseums, which generate happiness, and building lumber mills on forests, providing production" description:"Allows construction of colosseums, which generate happiness, and building lumber mills on forests, providing production"
},
{
name:"Iron Working",
row:10,
prerequisites:["Bronze Working"],
description:"Reveals Iron on map"
} }
] ]
}, },
{ {
columnNumber: 4, columnNumber: 4,
era:"Classical",
techCost: 305, techCost: 305,
buildingCost:120, buildingCost:120,
wonderCost:300, wonderCost:300,
techs:[ techs:[
{ {
name:"Theology", name:"Philosophy",
row:2, row:3,
prerequisites:["Calendar","Philosophy"], prerequisites:["Writing","Calendar"],
description:"Enables construction of Monasteries, the Hagia Sophia and Notre Dame, providing culture, Great Person generation, and happiness, respectively" description:"Allows construction of temples, which generate culture, and the Oracle wonder"
},
{
name:"Civil Service",
row:4,
prerequisites:["Trapping","Philosophy"],
description:"Enables the Chichen Itza wonder, which increases the length of golden ages"
}, },
{ {
name:"Currency", name:"Currency",
@ -148,18 +134,46 @@
description:"Enables construction of aqueducts, which speed up city growth" description:"Enables construction of aqueducts, which speed up city growth"
}, },
{ {
name:"Metal Casting", name:"Iron Working",
row:10, row:10,
prerequisites:["Construction","Iron Working"], prerequisites:["Bronze Working"],
description:"Enables constrution of Forges and Workshops, increasing production" description:"Reveals Iron on map"
} }
] ]
}, },
{ {
columnNumber: 5, columnNumber: 5,
era:"Medieval",
techCost: 535, techCost: 535,
buildingCost:160, buildingCost:160,
wonderCost:400, wonderCost:400,
techs:[
{
name:"Theology",
row:2,
prerequisites:["Philosophy"],
description:"Enables construction of Monasteries, providing culture, and the Hagia Sophia, increasing Great Person generation"
},
{
name:"Civil Service",
row:4,
prerequisites:["Horseback Riding","Philosophy"],
description:"Enables the Chichen Itza wonder, which increases the length of golden ages, and the National College, increasing science"
},
{
name:"Metal Casting",
row:10,
prerequisites:["Construction","Iron Working"],
description:"Enables construction of Forges and Workshops, increasing production, and the Notre Dame wonder, providing happiness,"
}
]
},
{
columnNumber: 6,
era:"Medieval",
techCost: 855,
buildingCost:200,
wonderCost:500,
techs:[ techs:[
{ {
name:"Compass", name:"Compass",
@ -172,39 +186,34 @@
name:"Education", name:"Education",
row:3, row:3,
prerequisites:["Theology","Civil Service"], prerequisites:["Theology","Civil Service"],
description:"Allows cities to convert production to science, construction of Universities which provide science, and construction of the Angkor Wat wonder" description:"Allows cities to convert production to science, construction of Universities which provide science"
}, },
{ {
name:"Chivalry", name:"Chivalry",
row:5, row:5,
prerequisites:["Horseback Riding","Civil Service","Currency"], prerequisites:["Civil Service","Currency"],
description:"???" description:"Enables construction of the Angkor Wat wonder, reducing cost of aquiring new tiles, construction of Trading Posts on tiles, providing gold"
}, },
{ {
name:"Machinery", name:"Machinery",
row:8, row:8,
prerequisites:["Engineering"], prerequisites:["Physics"],
description:"Speeds movement speed on roads and allows you to construct the Ironworks wonder, which gives a massive boost in production" description:"Speeds movement speed on roads and allows you to construct the Ironworks wonder, which gives a massive boost in production"
}, },
{ {
name:"Physics", name:"Physics",
row:9, row:9,
prerequisites:["Engineering","Metal Casting"], prerequisites:["Engineering","Metal Casting"],
description:"Contributes only war-relatied things - on hold until AI is introduced" description:"Enables construction of the Porcelain Tower, increasing production to science production"
},
{
name:"Steel",
row:10,
prerequisites:["Metal Casting"],
description:"Contributes only war-relatied things - on hold until AI is introduced"
} }
] ]
}, },
{ {
columnNumber: 6, columnNumber: 7,
techCost: 855, era:"Renaissance",
buildingCost:200, techCost: 1265,
wonderCost:500, buildingCost:250,
wonderCost:625,
techs:[ techs:[
{ {
name:"Astronomy", name:"Astronomy",
@ -222,7 +231,7 @@
name:"Banking", name:"Banking",
row:6, row:6,
prerequisites:["Chivalry"], prerequisites:["Chivalry"],
description:"Enables construction of banks, giving a serious boost in gold to your empire" description:"Enables construction of banks, increasing gold, and allows construciton of the Forbidden Palace, decreasing unhappiness form population"
}, },
{ {
name:"Printing Press", name:"Printing Press",
@ -230,19 +239,14 @@
prerequisites:["Machinery","Physics"], prerequisites:["Machinery","Physics"],
description:"Enables construction of the Theatre and Taj Mahal, increasing happiness" description:"Enables construction of the Theatre and Taj Mahal, increasing happiness"
}, },
{
name:"Gunpowder",
row:10,
prerequisites:["Physics","Steel"],
description:"Contributes only war-relatied things - on hold until AI is introduced"
}
] ]
}, },
{ {
columnNumber: 7, columnNumber: 8,
techCost: 1265, era:"Renaissance",
buildingCost:250, techCost: 1755,
wonderCost:625, buildingCost:300,
wonderCost:750,
techs:[ techs:[
{ {
name:"Navigation", name:"Navigation",
@ -259,22 +263,17 @@
{ {
name:"Chemistry", name:"Chemistry",
row:9, row:9,
prerequisites:["Gunpowder"], prerequisites:["Machinery"],
description:"Mines and Quarries provide +1 production" description:"Mines and Quarries provide +1 production"
},
{
name:"Metallurgy",
row:10,
prerequisites:["Gunpowder"],
description:"Contributes only war-relatied things - on hold until AI is introduced"
} }
] ]
}, },
{ {
columnNumber: 8, columnNumber: 9,
techCost: 1755, era:"Industrial",
buildingCost:300, techCost: 2585,
wonderCost:750, buildingCost:360,
wonderCost:920,
techs:[ techs:[
{ {
name:"Archaeology", name:"Archaeology",
@ -286,68 +285,70 @@
name:"Scientific Theory", name:"Scientific Theory",
row:4, row:4,
prerequisites:["Navigation","Acoustics","Economics"], prerequisites:["Navigation","Acoustics","Economics"],
description:"This is a lie, change!!!" description:"Reveals coal and allows construction of Public Schools, providing science"
},
{
name:"Military Science",
row:6,
prerequisites:["Economics","Chemistry"],
description:"Contributes only war-relatied things - on hold until AI is introduced"
}, },
{ {
name:"Fertilizer", name:"Fertilizer",
row:9, row:9,
prerequisites:["Chemistry"], prerequisites:["Chemistry"],
description:"+1 food from Farms, Plantations and Pastures" description:"+1 food from Farms, Plantations and Pastures"
},
{
name:"Rifling",
row:10,
prerequisites:["Metallurgy"],
description:"Contributes only war-relatied things - on hold until AI is introduced"
}
]
},
{
columnNumber: 9,
techCost: 2585,
buildingCost:360,
wonderCost:920,
techs:[
{
name:"Biology",
row:4,
prerequisites:["Archaeology","Scientific Theory"],
description:"Reveals oil and allows construction of oil wells, and construction of hospitals, which provide a large amount of food"
},
{
name:"Steam Power",
row:6,
prerequisites:["Scientific Theory","Military Science"],
description:"Enables construction of factories, boosting production"
},
{
name:"Dynamite",
row:9,
prerequisites:["Military Science","Fertilizer","Rifling"],
description:"Contributes only war-relatied things - on hold until AI is introduced"
} }
] ]
}, },
{ {
columnNumber: 10, columnNumber: 10,
era:"Industrial",
techCost: 3405, techCost: 3405,
buildingCost:500, buildingCost:500,
wonderCost:1060, wonderCost:1060,
techs:[ techs:[
{ {
name:"Electricity", name:"Biology",
row:4, row:4,
prerequisites:["Biology","Steam Power"], prerequisites:["Archaeology","Scientific Theory"],
description:"Reveals Aluminium on map and allows construction of stock exchange, providing gold" description:"Reveals oil and allows construction of oil wells, and construction of hospitals, providing a large amount of food"
}, },
{ {
name:"Replaceable Parts", name:"Electricity",
row:5,
prerequisites:["Scientific Theory"],
description:"Reveals Aluminium on map and allows construction of stock exchange, increasing gold"
},
{
name:"Steam Power",
row:6,
prerequisites:["Scientific Theory"],
description:"Enables construction of factories, boosting production, and increases produciton of lumber mills, "
},
{
name:"Dynamite",
row:9,
prerequisites:["Fertilizer"],
description:"Contributes only war-relatied things - on hold until AI is introduced"
}
]
},
{
columnNumber: 11,
era:"Modern",
techCost: 4505,
buildingCost:500,
wonderCost:1250,
techs:[
{
name:"Refrigeration",
row:2,
prerequisites:["Electricity"],
description:"Does nothing since we have no sea tiles - In theory, allows construction of offshore platforms and submarines"
},
{
name:"Radio",
row:5,
prerequisites:["Electricity"],
description:"Allows construction of broadcast towers and the Eiffel Tower, increasing culture"
},
{
name:"Flight",
row:6, row:6,
prerequisites:["Steam Power"], prerequisites:["Steam Power"],
description:"Contributes only war-relatied things - on hold until AI is introduced - todo" description:"Contributes only war-relatied things - on hold until AI is introduced - todo"
@ -360,66 +361,23 @@
} }
] ]
}, },
{
columnNumber: 11,
techCost: 4505,
buildingCost:500,
wonderCost:1250,
techs:[
{
name:"Refrigeration",
row:2,
prerequisites:["Electricity"],
description:"Does nothing since we have no sea tiles - In theory, allows construction of offshore platforms and submarines"
},
{
name:"Telegraph",
row:4,
prerequisites:["Electricity"],
description:"Allows construction of the Crito Redentor, reducing cost of new policies"
},
{
name:"Radio",
row:5,
prerequisites:["Electricity"],
description:"Allows construction of broadcast towers and the Eiffel Tower, increasing culture"
},
{
name:"Flight",
row:6,
prerequisites:["Replaceable Parts"],
description:"Contributes only war-relatied things - on hold until AI is introduced - todo"
},
{
name:"Combustion",
row:8,
prerequisites:["Replaceable Parts"],
description:"Contributes only war-relatied things - on hold until AI is introduced - todo"
}
]
},
{ {
columnNumber: 12, columnNumber: 12,
era:"Modern",
techCost: 5605, techCost: 5605,
buildingCost:500, buildingCost:500,
wonderCost:1250, wonderCost:1250,
techs:[ techs:[
{
name:"Penicillin",
row:1,
prerequisites:["Refrigeration"],
description:"Enables construction of medical labs, alowing for greater city growth"
},
{ {
name:"Plastics", name:"Plastics",
row:2, row:2,
prerequisites:["Refrigeration"], prerequisites:["Refrigeration"],
description:"Allows construction of Research Lab, increasing science" description:"Allows construction of Research Lab, increasing science, and the Cristo Redentor, reducing cost of new policies"
}, },
{ {
name:"Electronics", name:"Electronics",
row:5, row:5,
prerequisites:["Telegraph"], prerequisites:["Flight","Radio"],
description:"Contributes only war-relatied things - on hold until AI is introduced - todo" }, description:"Contributes only war-relatied things - on hold until AI is introduced - todo" },
{ {
name:"Mass Media", name:"Mass Media",
@ -428,23 +386,44 @@
description:"Allows construction of Stadiums and the Sydney Opera House, boosting happiness" description:"Allows construction of Stadiums and the Sydney Opera House, boosting happiness"
}, },
{ {
name:"Radar", name:"Combustion",
row:8, row:8,
prerequisites:["Radio","Flight","Combustion"], prerequisites:["Railroad"],
description:"Contributes only war-relatied things - on hold until AI is introduced - todo"
},
{
name:"Atomic Theory",
row:8,
prerequisites:["Combustion"],
description:"Contributes only war-relatied things - on hold until AI is introduced - todo" description:"Contributes only war-relatied things - on hold until AI is introduced - todo"
} }
] ]
}, },
{ {
columnNumber: 13, columnNumber: 13,
era:"Atomic",
techCost: 7035, techCost: 7035,
buildingCost:500, buildingCost:500,
techs:[
{
name:"Penicillin",
row:1,
prerequisites:["Refrigeration"],
description:"Enables construction of medical labs, alowing for greater city growth"
},
{
name:"Computers",
row:4,
prerequisites:["Electronics","Mass Media"],
description:"Contributes only war-relatied things - on hold until AI is introduced - todo"
},
{
name:"Nuclear Fission",
row:10,
prerequisites:["Combustion"],
description:"Allows construction of Nuclear Plants, increasing production"
}
]
},
{
columnNumber: 14,
era:"Atomic",
techCost: 8465,
buildingCost:750,
techs:[ techs:[
{ {
name:"Ecology", name:"Ecology",
@ -452,71 +431,17 @@
prerequisites:["Penicillin","Plastics"], prerequisites:["Penicillin","Plastics"],
description:"Enables construction of Solar Plants on cities near deserts, increasing production" description:"Enables construction of Solar Plants on cities near deserts, increasing production"
}, },
{
name:"Computers",
row:4,
prerequisites:["Electronics","Mass Media","Radar"],
description:"Contributes only war-relatied things - on hold until AI is introduced - todo"
},
{ {
name:"Rocketry", name:"Rocketry",
row:6, row:6,
prerequisites:["Radar"], prerequisites:["Combustion","Electronics"],
description:"Contributes only war-relatied things - on hold until AI is introduced - todo" }, description:"Allows you to construct the Apollo Project, to find a way off of this planet!"
{
name:"Lasers",
row:8,
prerequisites:["Radar"],
description:"Contributes only war-relatied things - on hold until AI is introduced - todo"
},
{
name:"Nuclear Fission",
row:10,
prerequisites:["Atomic Theory"],
description:"Allows construction of Nuclear Plants, increasing production"
}
]
},
{
columnNumber: 14,
techCost: 8465,
buildingCost:750,
techs:[
{
name:"Globalization",
row:2,
cost:10445,
prerequisites:["Ecology","Computers"],
description:"Theoretically enables united nation - tthere's no ai so we'll leave it be for now"
},
{
name:"Robotics",
row:4,
prerequisites:["Computers"],
description:"Allow construction of SS Boosters, a vital part of the spaceship, and the Spaceship Factory, which speeds the production of spaceship parts"
},
{
name:"Satellites",
row:6,
prerequisites:["Rocketry"],
description:"Allow construction of the SS Cockpit, a vital part of the spaceship"
},
{
name:"Stealth",
row:8,
prerequisites:["Lasers"],
description:"Contributes only war-relatied things - on hold until AI is introduced - todo"
},
{
name:"Advanced Ballistics",
row:10,
prerequisites:["Atomic Theory"],
description:"Contributes only war-relatied things - on hold until AI is introduced - todo"
} }
] ]
}, },
{ {
columnNumber: 15, columnNumber: 15,
era:"Information",
techCost: 9675, techCost: 9675,
buildingCost:750, buildingCost:750,
wonderCost:1250, wonderCost:1250,
@ -524,7 +449,7 @@
{ {
name:"Robotics", name:"Robotics",
row:4, row:4,
prerequisites:["Computers"], prerequisites:["Computers","Rocketry"],
description:"Allow construction of SS Boosters, a vital part of the spaceship, and the Spaceship Factory, which speeds the production of spaceship parts" description:"Allow construction of SS Boosters, a vital part of the spaceship, and the Spaceship Factory, which speeds the production of spaceship parts"
}, },
{ {
@ -532,54 +457,22 @@
row:6, row:6,
prerequisites:["Rocketry"], prerequisites:["Rocketry"],
description:"Allow construction of the SS Cockpit, a vital part of the spaceship" description:"Allow construction of the SS Cockpit, a vital part of the spaceship"
},
{
name:"Stealth",
row:8,
prerequisites:["Lasers"],
description:"Contributes only war-relatied things - on hold until AI is introduced - todo"
},
{
name:"Advanced Ballistics",
row:10,
prerequisites:["Atomic Theory"],
description:"Contributes only war-relatied things - on hold until AI is introduced - todo"
} }
] ]
}, },
{ {
columnNumber: 16, columnNumber: 16,
era:"Information",
techCost: 9675, techCost: 9675,
buildingCost:750, buildingCost:750,
wonderCost:1250, wonderCost:1250,
techs:[ techs:[
{ {
name:"Particle Physics", name:"Particle Physics",
row:5, row:4,
prerequisites:["Ecology","Computers"], prerequisites:["Ecology","Computers","Nuclear Fission"],
description:"Allow construction of the SS Engine, a vital part of the spaceship" description:"Allow construction of the SS Engine, a vital part of the spaceship"
}, },
{
name:"Nuclear Fusion",
row:8,
prerequisites:["Satellites","Stealth","Advanced Ballistics"],
description:"Theoretically enables united nation - tthere's no ai so we'll leave it be for now"
}
]
}
{
columnNumber: 16,
techCost: 9675,
buildingCost:750,
wonderCost:1250,
techs:[
{
name:"Globalization",
row:2,
cost:10445,
prerequisites:["Ecology","Computers"],
description:"Theoretically enables united nation - tthere's no ai so we'll leave it be for now"
},
{ {
name:"Nanotechnology", name:"Nanotechnology",
row:5, row:5,
@ -589,7 +482,8 @@
] ]
} }
{ {
columnNumber: 16, columnNumber: 17,
era:"Future",
techCost: 9675, techCost: 9675,
buildingCost:750, buildingCost:750,
wonderCost:1250, wonderCost:1250,
@ -597,7 +491,7 @@
{ {
name:"Future Tech", name:"Future Tech",
row:5, row:5,
prerequisites:["Globalization","Nanotechnology","Nuclear Fusion"], prerequisites:["Nanotechnology","Particle Physics"],
description:"Who knows what the future holds?" description:"Who knows what the future holds?"
} }
] ]

View File

@ -13,7 +13,7 @@
production:1, production:1,
turnsToBuild:7, turnsToBuild:7,
techRequired:"Construction", techRequired:"Construction",
improvingTech:"Scientific Theory", improvingTech:"Steam Power",
improvingTechStats:{production:1} improvingTechStats:{production:1}
}, },
{ {
@ -30,7 +30,7 @@
terrainsCanBeBuiltOn:["Plains","Grassland","Desert","Hill","Tundra","Forest","Jungle","Flood plains"], terrainsCanBeBuiltOn:["Plains","Grassland","Desert","Hill","Tundra","Forest","Jungle","Flood plains"],
gold:1, gold:1,
turnsToBuild:7, turnsToBuild:7,
techRequired:"Trapping", techRequired:"Chivalry",
improvingTech:"Economics", improvingTech:"Economics",
improvingTechStats: {gold:1} improvingTechStats: {gold:1}
}, },
@ -95,7 +95,7 @@
name:"Remove Marsh", name:"Remove Marsh",
turnsToBuild:6, turnsToBuild:6,
terrainsCanBeBuiltOn:["Marsh"], terrainsCanBeBuiltOn:["Marsh"],
techRequired:"Masonry" techRequired:"Bronze Working"
}, },

View File

@ -129,11 +129,12 @@ public class CityInfo {
//idle ppl //idle ppl
stats.production += getFreePopulation(); stats.production += getFreePopulation();
CivilizationInfo civInfo = CivilizationInfo.current();
if(!isCapital() && isConnectedToCapital(RoadStatus.Road)) { if(!isCapital() && isConnectedToCapital(RoadStatus.Road)) {
// Calculated by http://civilization.wikia.com/wiki/Trade_route_(Civ5) // Calculated by http://civilization.wikia.com/wiki/Trade_route_(Civ5)
double goldFromTradeRoute = CivilizationInfo.current().getCapital().population * 0.15 double goldFromTradeRoute = civInfo.getCapital().population * 0.15
+ population * 1.1 - 1; + population * 1.1 - 1;
if(CivilizationInfo.current().getBuildingUniques().contains("TradeRouteGoldIncrease")) goldFromTradeRoute*=1.25; // Machu Pichu speciality if(civInfo.getBuildingUniques().contains("TradeRouteGoldIncrease")) goldFromTradeRoute*=1.25; // Machu Pichu speciality
stats.gold += goldFromTradeRoute; stats.gold += goldFromTradeRoute;
} }
@ -141,22 +142,26 @@ public class CityInfo {
FullStats statPercentBonuses = cityConstructions.getStatPercentBonuses(); FullStats statPercentBonuses = cityConstructions.getStatPercentBonuses();
if(isCapital() || isConnectedToCapital(RoadStatus.Railroad)) statPercentBonuses.production += 25; if(isCapital() || isConnectedToCapital(RoadStatus.Railroad)) statPercentBonuses.production += 25;
if(CivilizationInfo.current().isGoldenAge()) statPercentBonuses.production+=20; if(civInfo.isGoldenAge()) statPercentBonuses.production+=20;
IConstruction currentConstruction = cityConstructions.getCurrentConstruction(); IConstruction currentConstruction = cityConstructions.getCurrentConstruction();
if(currentConstruction instanceof Building && ((Building)currentConstruction).isWonder && if(currentConstruction instanceof Building && ((Building)currentConstruction).isWonder &&
CivilizationInfo.current().getCivResources().containsKey(GameBasics.TileResources.get("Marble"))) civInfo.getCivResources().containsKey(GameBasics.TileResources.get("Marble")))
statPercentBonuses.production+=15; statPercentBonuses.production+=15;
stats.production*=1+statPercentBonuses.production/100; // So they get bonuses for production and gold/science stats.production*=1+statPercentBonuses.production/100; // So they get bonuses for production and gold/science
if(cityConstructions.currentConstruction.equals("Gold")) stats.gold+=stats.production/4; if(cityConstructions.currentConstruction.equals("Gold")) stats.gold+=stats.production/4;
if(cityConstructions.currentConstruction.equals("Science")) stats.science+=stats.production/4; if(cityConstructions.currentConstruction.equals("Science")) {
if (civInfo.getBuildingUniques().contains("ScienceConversionIncrease"))
stats.science += stats.production / 3;
else stats.science += stats.production / 4;
}
stats.gold*=1+statPercentBonuses.gold/100; stats.gold*=1+statPercentBonuses.gold/100;
stats.science*=1+statPercentBonuses.science/100; stats.science*=1+statPercentBonuses.science/100;
stats.culture*=1+statPercentBonuses.culture/100; stats.culture*=1+statPercentBonuses.culture/100;
boolean isUnhappy =CivilizationInfo.current().getHappinessForNextTurn() < 0; boolean isUnhappy = civInfo.getHappinessForNextTurn() < 0;
if (!isUnhappy) stats.food*=1+statPercentBonuses.food/100; // Regular food bonus revoked when unhappy per https://forums.civfanatics.com/resources/complete-guide-to-happiness-vanilla.25584/ if (!isUnhappy) stats.food*=1+statPercentBonuses.food/100; // Regular food bonus revoked when unhappy per https://forums.civfanatics.com/resources/complete-guide-to-happiness-vanilla.25584/
stats.food -= population * 2; // Food reduced after the bonus stats.food -= population * 2; // Food reduced after the bonus
if(isUnhappy) stats.food /= 4; // Reduce excess food to 1/4 per the same if(isUnhappy) stats.food /= 4; // Reduce excess food to 1/4 per the same

View File

@ -31,7 +31,7 @@ public class TechPickerScreen extends PickerScreen {
public TechPickerScreen(final UnCivGame game) { public TechPickerScreen(final UnCivGame game) {
super(game); super(game);
Technology[][] techMatrix = new Technology[16][10]; // Divided into columns, then rows Technology[][] techMatrix = new Technology[17][10]; // Divided into columns, then rows
for (Technology technology : GameBasics.Technologies.linqValues()) { for (Technology technology : GameBasics.Technologies.linqValues()) {
techMatrix[technology.column.columnNumber-1][technology.row - 1] = technology; techMatrix[technology.column.columnNumber-1][technology.row - 1] = technology;

View File

@ -102,19 +102,6 @@ public class Building extends NamedStats implements IConstruction, ICivilopedia
public boolean isBuildable(CityConstructions construction){ public boolean isBuildable(CityConstructions construction){
CivilizationInfo civInfo = UnCivGame.Current.civInfo; CivilizationInfo civInfo = UnCivGame.Current.civInfo;
if(construction.isBuilt(name)) return false; if(construction.isBuilt(name)) return false;
if(requiredNearbyImprovedResources!=null) {
boolean containsResourceWithImprovement = construction.getCity().getTilesInRange()
.any(new Predicate<TileInfo>() {
@Override
public boolean evaluate(TileInfo tile) {
return tile.resource != null
&& requiredNearbyImprovedResources.contains(tile.resource)
&& tile.getTileResource().improvement.equals(tile.improvement);
}
});
if(!containsResourceWithImprovement) return false;
}
if (requiredTech != null && !civInfo.tech.isResearched(requiredTech)) return false; if (requiredTech != null && !civInfo.tech.isResearched(requiredTech)) return false;
if (isWonder && civInfo.cities if (isWonder && civInfo.cities
.any(new Predicate<CityInfo>() { .any(new Predicate<CityInfo>() {
@ -145,6 +132,20 @@ public class Building extends NamedStats implements IConstruction, ICivilopedia
!civInfo.getCivResources().keySet().contains(GameBasics.TileResources.get(requiredResource))) !civInfo.getCivResources().keySet().contains(GameBasics.TileResources.get(requiredResource)))
return false; // Only checks if exists, doesn't check amount - todo return false; // Only checks if exists, doesn't check amount - todo
if(requiredNearbyImprovedResources!=null) {
boolean containsResourceWithImprovement = construction.getCity().getTilesInRange()
.any(new Predicate<TileInfo>() {
@Override
public boolean evaluate(TileInfo tile) {
return tile.resource != null
&& requiredNearbyImprovedResources.contains(tile.resource)
&& tile.getTileResource().improvement.equals(tile.improvement);
}
});
if(!containsResourceWithImprovement) return false;
}
if("SpaceshipPart".equals(unique)){ if("SpaceshipPart".equals(unique)){
if(!civInfo.getBuildingUniques().contains("ApolloProgram")) return false; if(!civInfo.getBuildingUniques().contains("ApolloProgram")) return false;
if(civInfo.scienceVictory.requiredParts.get(name)==0) return false; // Don't need to build any more of these! if(civInfo.scienceVictory.requiredParts.get(name)==0) return false; // Don't need to build any more of these!

View File

@ -2,12 +2,12 @@ package com.unciv.models.gamebasics;
import java.util.ArrayList; import java.util.ArrayList;
public class TechColumn public class TechColumn {
{ public int columnNumber;
public int columnNumber; public String era;
public GameBasics gameBasics; public GameBasics gameBasics;
public ArrayList<Technology> techs = new ArrayList<Technology>(); public ArrayList<Technology> techs = new ArrayList<Technology>();
public int techCost; public int techCost;
public int buildingCost; public int buildingCost;
public int wonderCost; public int wonderCost;
} }