mirror of
https://github.com/yairm210/Unciv.git
synced 2025-09-27 13:55:54 -04:00
Difficulty affects all AI yields now, which should widen the difficulty range - easy difficulties are now easier, and hard ones are harder
This commit is contained in:
parent
24b27a791f
commit
4f0f163c00
@ -5,8 +5,8 @@
|
||||
researchCostModifier:0.9,
|
||||
unhappinessModifier:0.4,
|
||||
aiCityGrowthModifier:1.6, // that is to say it'll take them 1.6 times as long to grow the city
|
||||
aiUnitMaintainanceModifier:1,
|
||||
aiConstructionModifier:0.6, // Replaces "Construction rate" and "Create rate" in original config
|
||||
aiUnitMaintenanceModifier:1,
|
||||
aiYieldModifier:0.6, // Replaces "Construction rate" and "Create rate" in original config
|
||||
aiFreeTechs:[],
|
||||
aiUnhappinessModifier:1
|
||||
},
|
||||
@ -16,8 +16,8 @@
|
||||
researchCostModifier:0.95,
|
||||
unhappinessModifier:0.6,
|
||||
aiCityGrowthModifier:1.3,
|
||||
aiUnitMaintainanceModifier:1,
|
||||
aiConstructionModifier:0.75,
|
||||
aiUnitMaintenanceModifier:1,
|
||||
aiYieldModifier:0.75,
|
||||
aiFreeTechs:[],
|
||||
aiUnhappinessModifier:1
|
||||
},
|
||||
@ -27,8 +27,8 @@
|
||||
researchCostModifier:1,
|
||||
unhappinessModifier:0.75,
|
||||
aiCityGrowthModifier:1.1,
|
||||
aiUnitMaintainanceModifier:1,
|
||||
aiConstructionModifier:0.9,
|
||||
aiUnitMaintenanceModifier:1,
|
||||
aiYieldModifier:0.9,
|
||||
aiFreeTechs:[],
|
||||
aiUnhappinessModifier:1
|
||||
},
|
||||
@ -38,8 +38,8 @@
|
||||
researchCostModifier:1,
|
||||
unhappinessModifier:1,
|
||||
aiCityGrowthModifier:1,
|
||||
aiUnitMaintainanceModifier:0.85,
|
||||
aiConstructionModifier:1,
|
||||
aiUnitMaintenanceModifier:0.85,
|
||||
aiYieldModifier:1,
|
||||
aiFreeTechs:[],
|
||||
aiUnhappinessModifier:1
|
||||
},
|
||||
@ -49,8 +49,8 @@
|
||||
researchCostModifier:1.1,
|
||||
unhappinessModifier:1,
|
||||
aiCityGrowthModifier:0.9,
|
||||
aiUnitMaintainanceModifier:0.8,
|
||||
aiConstructionModifier:1.15,
|
||||
aiUnitMaintenanceModifier:0.8,
|
||||
aiYieldModifier:1.15,
|
||||
aiFreeTechs:["Pottery"],
|
||||
aiUnhappinessModifier:0.9
|
||||
},
|
||||
@ -60,8 +60,8 @@
|
||||
researchCostModifier:1.2,
|
||||
unhappinessModifier:1,
|
||||
aiCityGrowthModifier:0.85,
|
||||
aiUnitMaintainanceModifier:0.75,
|
||||
aiConstructionModifier:1.25,
|
||||
aiUnitMaintenanceModifier:0.75,
|
||||
aiYieldModifier:1.25,
|
||||
aiFreeTechs:["Pottery","Animal Husbandry"],
|
||||
aiUnhappinessModifier:0.85
|
||||
},
|
||||
@ -71,8 +71,8 @@
|
||||
researchCostModifier:1.3,
|
||||
unhappinessModifier:1,
|
||||
aiCityGrowthModifier:0.75,
|
||||
aiUnitMaintainanceModifier:0.65,
|
||||
aiConstructionModifier:1.5,
|
||||
aiUnitMaintenanceModifier:0.65,
|
||||
aiYieldModifier:1.5,
|
||||
aiFreeTechs:["Pottery","Animal Husbandry","Mining"],
|
||||
aiUnhappinessModifier:0.75
|
||||
},
|
||||
@ -82,8 +82,8 @@
|
||||
researchCostModifier:1.5,
|
||||
unhappinessModifier:1,
|
||||
aiCityGrowthModifier:0.6,
|
||||
aiUnitMaintainanceModifier:0.5,
|
||||
aiConstructionModifier:2,
|
||||
aiUnitMaintenanceModifier:0.5,
|
||||
aiYieldModifier:2,
|
||||
aiFreeTechs:["Pottery","Animal Husbandry","Mining","The Wheel"],
|
||||
aiUnhappinessModifier:0.6
|
||||
}
|
||||
|
@ -292,7 +292,7 @@
|
||||
strength:24,
|
||||
cost: 150,
|
||||
requiredTech:"Gunpowder",
|
||||
upgradesTo:"Rifleman,"
|
||||
upgradesTo:"Rifleman"
|
||||
obsoleteTech:"Rifling",
|
||||
hurryCostModifier:20
|
||||
},
|
||||
@ -305,7 +305,7 @@
|
||||
strength:28,
|
||||
cost: 150,
|
||||
requiredTech:"Gunpowder",
|
||||
upgradesTo:"Rifleman,"
|
||||
upgradesTo:"Rifleman"
|
||||
obsoleteTech:"Rifling",
|
||||
hurryCostModifier:20
|
||||
},
|
||||
|
@ -21,7 +21,7 @@ android {
|
||||
applicationId "com.unciv.game"
|
||||
minSdkVersion 14
|
||||
targetSdkVersion 26
|
||||
versionCode 170
|
||||
versionCode 172
|
||||
versionName "2.10.9"
|
||||
}
|
||||
|
||||
|
@ -140,9 +140,6 @@ class CityConstructions {
|
||||
} else
|
||||
currentConstruction = saveCurrentConstruction
|
||||
|
||||
var productionToAdd = cityStats.production
|
||||
if(!cityInfo.civInfo.isPlayerCivilization())
|
||||
productionToAdd *= cityInfo.civInfo.gameInfo.getPlayerCivilization().getDifficulty().aiConstructionModifier
|
||||
addProduction(Math.round(cityStats.production))
|
||||
val productionCost = construction.getProductionCost(cityInfo.civInfo.policies.adoptedPolicies)
|
||||
if (inProgressConstructions[currentConstruction]!! >= productionCost) {
|
||||
|
@ -87,6 +87,23 @@ class CityStats {
|
||||
return stats
|
||||
}
|
||||
|
||||
private fun getStatPercentBonusesFromDifficulty(): Stats {
|
||||
val stats = Stats()
|
||||
|
||||
val civ = cityInfo.civInfo
|
||||
if (!civ.isPlayerCivilization()) {
|
||||
val modifier = civ.gameInfo.getPlayerCivilization().getDifficulty().aiYieldModifier
|
||||
stats.production += modifier
|
||||
stats.science += modifier
|
||||
stats.food += modifier
|
||||
stats.gold += modifier
|
||||
stats.culture += modifier
|
||||
}
|
||||
|
||||
return stats
|
||||
}
|
||||
|
||||
|
||||
private fun getGrowthBonusFromPolicies(): Float {
|
||||
var bonus = 0f
|
||||
if (cityInfo.civInfo.policies.isAdopted("Landed Elite") && cityInfo.isCapital())
|
||||
@ -258,14 +275,13 @@ class CityStats {
|
||||
newStatPercentBonusList["Railroad"]=getStatPercentBonusesFromRailroad()
|
||||
newStatPercentBonusList["Marble"]=getStatPercentBonusesFromMarble()
|
||||
newStatPercentBonusList["Computers"]=getStatPercentBonusesFromComputers()
|
||||
newStatPercentBonusList["Difficutly"]=getStatPercentBonusesFromDifficulty()
|
||||
statPercentBonusList=newStatPercentBonusList
|
||||
|
||||
val statPercentBonuses = Stats()
|
||||
for(bonus in statPercentBonusList.values) statPercentBonuses.add(bonus)
|
||||
|
||||
//val stats = Stats()
|
||||
for (stat in newBaseStatList.values) stat.production *= 1 + statPercentBonuses.production / 100
|
||||
//stats.production *= 1 + statPercentBonuses.production / 100 // So they get bonuses for production and gold/science
|
||||
|
||||
val statsFromProduction = getStatsFromProduction(newBaseStatList.values.map { it.production }.sum())
|
||||
newBaseStatList["Construction"] = statsFromProduction
|
||||
|
@ -138,7 +138,7 @@ class CivilizationInfo {
|
||||
var cost = baseUnitCost*totalPaidUnits*(1+gameProgress)
|
||||
cost = cost.pow(1+gameProgress/3) // Why 3? To spread 1 to 1.33
|
||||
if(!isPlayerCivilization())
|
||||
cost *= gameInfo.getPlayerCivilization().getDifficulty().aiUnitMaintainanceModifier
|
||||
cost *= gameInfo.getPlayerCivilization().getDifficulty().aiUnitMaintenanceModifier
|
||||
if(policies.isAdopted("Autocracy")) cost = cost*0.66f
|
||||
return cost.toInt()
|
||||
}
|
||||
|
@ -9,8 +9,8 @@ class Difficulty: INamed {
|
||||
var researchCostModifier:Float = 1f
|
||||
var unhappinessModifier = 1f
|
||||
var aiCityGrowthModifier = 1f
|
||||
var aiUnitMaintainanceModifier = 1f
|
||||
var aiConstructionModifier = 1f
|
||||
var aiUnitMaintenanceModifier = 1f
|
||||
var aiYieldModifier = 1f
|
||||
var aiFreeTechs = ArrayList<String>()
|
||||
var aiUnhappinessModifier = 1f
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user