|
|
@@ -1,60 +1,96 @@
|
|
|
{
|
|
|
+ // "maxRoamingHeroes" - AI will never recruit new heroes above this value.
|
|
|
+ // Note that AI might end up with more heroes - due to prisons or if he has large number of heroes on start
|
|
|
+ //
|
|
|
+ // "maxpass" - ???
|
|
|
+ //
|
|
|
+ // "mainHeroTurnDistanceLimit" - AI will only run pathfinding for specified number of turns for his main hero.
|
|
|
+ // "scoutHeroTurnDistanceLimit" - AI will only run pathfinding for specified number of turns for his secondary (scout) heroes
|
|
|
+ // Limiting this will make AI faster, but may result in AI being unable to discover objects outside of this range
|
|
|
+ //
|
|
|
+ // "maxGoldPressure" - ???
|
|
|
+ //
|
|
|
+ // "useTroopsFromGarrisons" - AI can take troops from garrisons on map.
|
|
|
+ // Note that at the moment AI will not deliberately seek out such garrisons, he can only take troops from them when passing through.
|
|
|
+ // This option is always disabled on H3 RoE campaign maps to be in line with H3 AI
|
|
|
+ //
|
|
|
+ // "openMap" - AI will use map reveal cheat if cheats are enabled and AI is not allied with human player
|
|
|
+ // This improves AI decision making, but may lead AI to deliberately targeting targets that he should not be able to see at the moment
|
|
|
+ //
|
|
|
+ // "allowObjectGraph" - if used, AI will build "cache" for pathfinder on first turn, which should make AI faster. Requires openMap.
|
|
|
+ //
|
|
|
+ // "pathfinderBucketsCount" - ???
|
|
|
+ // "pathfinderBucketSize" - ???
|
|
|
+ //
|
|
|
+ // "retreatThresholdRelative" - AI will consider retreating from battle only if his troops are less than specified ratio compated to enemy
|
|
|
+ // "retreatThresholdAbsolute" - AI will consider retreating from battle only if total fight value of his troops are less than specified value
|
|
|
+ //
|
|
|
+ // "maxArmyLossTarget" - AI will try keep army loss below specified target
|
|
|
+ //
|
|
|
+ // "safeAttackRatio" - TODO: figure out how exactly it affects AI decision making
|
|
|
+ //
|
|
|
+ // "useFuzzy" - allow using of fuzzy logic. TODO: better description
|
|
|
+
|
|
|
+
|
|
|
"pawn" : {
|
|
|
- "maxRoamingHeroes" : 8,
|
|
|
+ "maxRoamingHeroes" : 3,
|
|
|
"maxpass" : 30,
|
|
|
"mainHeroTurnDistanceLimit" : 10,
|
|
|
"scoutHeroTurnDistanceLimit" : 5,
|
|
|
"maxGoldPressure" : 0.3,
|
|
|
"updateHitmapOnTileReveal" : false,
|
|
|
"useTroopsFromGarrisons" : true,
|
|
|
- "openMap": false,
|
|
|
+ "openMap": true,
|
|
|
"allowObjectGraph": false,
|
|
|
"pathfinderBucketsCount" : 1, // old value: 3,
|
|
|
"pathfinderBucketSize" : 32, // old value: 7,
|
|
|
- "retreatThresholdRelative" : 0.3,
|
|
|
- "retreatThresholdAbsolute" : 10000,
|
|
|
+ "retreatThresholdRelative" : 0,
|
|
|
+ "retreatThresholdAbsolute" : 0,
|
|
|
"safeAttackRatio" : 1.1,
|
|
|
+ "maxArmyLossTarget" : 0.5,
|
|
|
"useFuzzy" : false
|
|
|
},
|
|
|
|
|
|
"knight" : {
|
|
|
- "maxRoamingHeroes" : 8,
|
|
|
+ "maxRoamingHeroes" : 3,
|
|
|
"maxpass" : 30,
|
|
|
"mainHeroTurnDistanceLimit" : 10,
|
|
|
"scoutHeroTurnDistanceLimit" : 5,
|
|
|
"maxGoldPressure" : 0.3,
|
|
|
"updateHitmapOnTileReveal" : false,
|
|
|
"useTroopsFromGarrisons" : true,
|
|
|
- "openMap": false,
|
|
|
+ "openMap": true,
|
|
|
"allowObjectGraph": false,
|
|
|
"pathfinderBucketsCount" : 1, // old value: 3,
|
|
|
"pathfinderBucketSize" : 32, // old value: 7,
|
|
|
- "retreatThresholdRelative" : 0.3,
|
|
|
- "retreatThresholdAbsolute" : 10000,
|
|
|
+ "retreatThresholdRelative" : 0.1,
|
|
|
+ "retreatThresholdAbsolute" : 5000,
|
|
|
"safeAttackRatio" : 1.1,
|
|
|
+ "maxArmyLossTarget" : 0.35,
|
|
|
"useFuzzy" : false
|
|
|
},
|
|
|
|
|
|
"rook" : {
|
|
|
- "maxRoamingHeroes" : 8,
|
|
|
+ "maxRoamingHeroes" : 4,
|
|
|
"maxpass" : 30,
|
|
|
"mainHeroTurnDistanceLimit" : 10,
|
|
|
"scoutHeroTurnDistanceLimit" : 5,
|
|
|
"maxGoldPressure" : 0.3,
|
|
|
"updateHitmapOnTileReveal" : false,
|
|
|
"useTroopsFromGarrisons" : true,
|
|
|
- "openMap": false,
|
|
|
+ "openMap": true,
|
|
|
"allowObjectGraph": false,
|
|
|
"pathfinderBucketsCount" : 1, // old value: 3,
|
|
|
"pathfinderBucketSize" : 32, // old value: 7,
|
|
|
"retreatThresholdRelative" : 0.3,
|
|
|
"retreatThresholdAbsolute" : 10000,
|
|
|
"safeAttackRatio" : 1.1,
|
|
|
+ "maxArmyLossTarget" : 0.25,
|
|
|
"useFuzzy" : false
|
|
|
},
|
|
|
|
|
|
"queen" : {
|
|
|
- "maxRoamingHeroes" : 8,
|
|
|
+ "maxRoamingHeroes" : 6,
|
|
|
"maxpass" : 30,
|
|
|
"mainHeroTurnDistanceLimit" : 10,
|
|
|
"scoutHeroTurnDistanceLimit" : 5,
|
|
|
@@ -68,6 +104,7 @@
|
|
|
"retreatThresholdRelative" : 0.3,
|
|
|
"retreatThresholdAbsolute" : 10000,
|
|
|
"safeAttackRatio" : 1.1,
|
|
|
+ "maxArmyLossTarget" : 0.25,
|
|
|
"useFuzzy" : false
|
|
|
},
|
|
|
|
|
|
@@ -86,6 +123,7 @@
|
|
|
"retreatThresholdRelative" : 0.3,
|
|
|
"retreatThresholdAbsolute" : 10000,
|
|
|
"safeAttackRatio" : 1.1,
|
|
|
+ "maxArmyLossTarget" : 0.25,
|
|
|
"useFuzzy" : false
|
|
|
}
|
|
|
}
|