1
0
mirror of https://github.com/vcmi/vcmi.git synced 2025-11-06 09:09:40 +02:00

NKAI: fix defense tasks priority evaluation

This commit is contained in:
Andrii Danylchenko
2023-03-19 19:04:12 +02:00
parent 06fcbf891b
commit ab84cb9931
5 changed files with 56 additions and 20 deletions

View File

@@ -591,7 +591,7 @@ public:
uint64_t upgradeValue = armyUpgrade.getUpgradeValue();
evaluationContext.armyReward += upgradeValue;
evaluationContext.strategicalValue += upgradeValue / armyUpgrade.hero->getTotalStrength();
evaluationContext.strategicalValue += upgradeValue / (float)armyUpgrade.hero->getArmyStrength();
}
};
@@ -627,7 +627,7 @@ private:
continue;
auto creature = creatureInfo.second.back().toCreature();
result += creature->AIValue * town->getGrowthInfo(creature->level).totalGrowth();
result += creature->AIValue * town->getGrowthInfo(creature->getLevel() - 1).totalGrowth();
}
return result;
@@ -648,6 +648,9 @@ public:
auto strategicalValue = std::sqrt(armyIncome / 20000.0f) + dailyIncome / 3000.0f;
if(evaluationContext.evaluator.ai->buildAnalyzer->getDevelopmentInfo().size() == 1)
strategicalValue = 1;
float multiplier = 1;
if(treat.turn < defendTown.getTurn())