chillbaka1
Chieftain
- Joined
- Nov 13, 2016
- Messages
- 46
I'm not sure if anyone else has noticed, but once you reach the medieval/renaisance era, the AI will never take another city again. They wont take yours or another AI's, they just build massive armies and play games of chicken and "ooo i pillaged your farm" then stare at each other, then declare peace. The "survival of the fittest" part of civ V was my favorite part, watching the map evolve through the ages and I am determined to bring that back. I figured out part of the problem already but need a bit of help with the other parts.
Here's the part I already figured out: I think that the AI overly values self preservation. At first i thought it was trying to be cost efficient but then noticed that it basically uses builders, settlers, and all religious units as cannon fodder. Then i figured out the real problem. They are trying to minimize war weariness. So i went into GlobalParameters and changed all war weariness values to 0 and started a game. The AI is much much more aggressive and attacks my units much more often, but still never attacked my city once when it had 9 mechanized infantry surrounding it.
Here's what I cant figure out. There are four files that i've found in base>assets>gameplay>data>. GlobalParameters, BehaviorTrees, Operations, and Tactics. Ive done all i could in globalParameters and im having a hard time making sense of BehaviorTrees, but theres one that might fix everything. Heres the lines of code that i found in Operations.
<Row OperationName="Attack Enemy City" TargetType="TARGET_ENEMY_COMBAT_DISTRICT" OperationType="CITY_ASSAULT" BehaviorTree="Early City Assault" SelfStart="True" Priority="3" MaxTargetDistInRegion="-1" MaxTargetDistInArea="50" MaxTargetDistInWorld="0" MinOddsOfSuccess="0" />
<Row OperationName="Wartime Attack Enemy City" TargetType="TARGET_ENEMY_COMBAT_DISTRICT" OperationType="CITY_ASSAULT" BehaviorTree="Early City Assault" SelfStart="True" Priority="3" MaxTargetDistInRegion="-1" MaxTargetDistInArea="45" MaxTargetDistInWorld="-1" MinOddsOfSuccess="0" MustBeAtWar="true" />
<Row OperationName="Attack Walled City" TargetType="TARGET_ENEMY_COMBAT_DISTRICT" TargetParameter="1" OperationType="CITY_ASSAULT" BehaviorTree="Siege City Assault" SelfStart="True" Priority="3" MaxTargetDistInRegion="-1" MaxTargetDistInArea="30" MaxTargetDistInWorld="0" MinOddsOfSuccess="0" />
<Row OperationName="Wartime Attack Walled City" TargetType="TARGET_ENEMY_COMBAT_DISTRICT" TargetParameter="1" OperationType="CITY_ASSAULT" BehaviorTree="Siege City Assault" SelfStart="True" Priority="3" MaxTargetDistInRegion="-1" MaxTargetDistInArea="45" MaxTargetDistInWorld="-1" MinOddsOfSuccess="0" MustBeAtWar="true" />
I'm doing a bit of testing today to see if changing the MinOddsSuccess to 0 has any effect on their aggressiveness. There's one part of code that i am skeptical of changing and another that I can't figure out for the life of me and was wondering if you had any insight. Before (MinOddsSuccess = "0.25") there is a (priority = "3"). This is the part that I am a bit weary about. Do you think the "3" is a value that can simply just be changed like barbarian spawn distance, wonder placement ect. Or is it referencing a tree of behaviors? And the second part, also before MinOddsSuccess, is the (MaxTargetDistInArea = -1) and (MaxTargetDistInregion = -1). both of these make no sense to me. "Dist" could be district or distance, which both also make no sense. If they are districts, then the AI will never attack a city because the minimum districts would be zero. They would also never attack cities if the distance was -1 because you cant have negative distance. Sorry for the long post but i was just wondering if you had any input, thanks again for the help.
Just a quick disclaimer, I am not a seasoned modder, and this will be my first time. I would really like to get into it and I actually enjoy doing it, Id love to be apart of and contribute to the community. So if what i wrote here makes absolutely no sense, then i apologize.
Here's the part I already figured out: I think that the AI overly values self preservation. At first i thought it was trying to be cost efficient but then noticed that it basically uses builders, settlers, and all religious units as cannon fodder. Then i figured out the real problem. They are trying to minimize war weariness. So i went into GlobalParameters and changed all war weariness values to 0 and started a game. The AI is much much more aggressive and attacks my units much more often, but still never attacked my city once when it had 9 mechanized infantry surrounding it.
Here's what I cant figure out. There are four files that i've found in base>assets>gameplay>data>. GlobalParameters, BehaviorTrees, Operations, and Tactics. Ive done all i could in globalParameters and im having a hard time making sense of BehaviorTrees, but theres one that might fix everything. Heres the lines of code that i found in Operations.
<Row OperationName="Attack Enemy City" TargetType="TARGET_ENEMY_COMBAT_DISTRICT" OperationType="CITY_ASSAULT" BehaviorTree="Early City Assault" SelfStart="True" Priority="3" MaxTargetDistInRegion="-1" MaxTargetDistInArea="50" MaxTargetDistInWorld="0" MinOddsOfSuccess="0" />
<Row OperationName="Wartime Attack Enemy City" TargetType="TARGET_ENEMY_COMBAT_DISTRICT" OperationType="CITY_ASSAULT" BehaviorTree="Early City Assault" SelfStart="True" Priority="3" MaxTargetDistInRegion="-1" MaxTargetDistInArea="45" MaxTargetDistInWorld="-1" MinOddsOfSuccess="0" MustBeAtWar="true" />
<Row OperationName="Attack Walled City" TargetType="TARGET_ENEMY_COMBAT_DISTRICT" TargetParameter="1" OperationType="CITY_ASSAULT" BehaviorTree="Siege City Assault" SelfStart="True" Priority="3" MaxTargetDistInRegion="-1" MaxTargetDistInArea="30" MaxTargetDistInWorld="0" MinOddsOfSuccess="0" />
<Row OperationName="Wartime Attack Walled City" TargetType="TARGET_ENEMY_COMBAT_DISTRICT" TargetParameter="1" OperationType="CITY_ASSAULT" BehaviorTree="Siege City Assault" SelfStart="True" Priority="3" MaxTargetDistInRegion="-1" MaxTargetDistInArea="45" MaxTargetDistInWorld="-1" MinOddsOfSuccess="0" MustBeAtWar="true" />
I'm doing a bit of testing today to see if changing the MinOddsSuccess to 0 has any effect on their aggressiveness. There's one part of code that i am skeptical of changing and another that I can't figure out for the life of me and was wondering if you had any insight. Before (MinOddsSuccess = "0.25") there is a (priority = "3"). This is the part that I am a bit weary about. Do you think the "3" is a value that can simply just be changed like barbarian spawn distance, wonder placement ect. Or is it referencing a tree of behaviors? And the second part, also before MinOddsSuccess, is the (MaxTargetDistInArea = -1) and (MaxTargetDistInregion = -1). both of these make no sense to me. "Dist" could be district or distance, which both also make no sense. If they are districts, then the AI will never attack a city because the minimum districts would be zero. They would also never attack cities if the distance was -1 because you cant have negative distance. Sorry for the long post but i was just wondering if you had any input, thanks again for the help.
Just a quick disclaimer, I am not a seasoned modder, and this will be my first time. I would really like to get into it and I actually enjoy doing it, Id love to be apart of and contribute to the community. So if what i wrote here makes absolutely no sense, then i apologize.
Last edited: