I think war weariness might be slightly broken.
In my current game, although my civics are not ideal (but i'll come back to that) I have all the anti war-weariness buildings I can make at my current level of tech (just got proper tanks). I declared war and invaded my neighbor. Five turns later (only five) every city has ALL of it's population unhappy, and so is massively starving! At first I guessed I might have some bug in the modifiers due to changing assets since i started the game, so I checked in the debugger. It turns out the modifiers were fine and furthermore even if I were to change civics so that I had NO civic choice with a war weariness penalty, I would STILL be in the all population unhappy state!
This strikes me as unreasonable.
I then delved a bit more into the actual mechanics of war weariness, which are approximately as follows:
You have a base war weariness modifier for your civilization relative to the one you are at war with. Normally this is flat, but it's possible to get wonders that give enemies extra war weariness etc. (it was flat in my example)
You also have a current war weariness percent (which starts at 0). Each turn your current war weariness is modified by your base modifier and by your civic and city modifiers in each city to give a percent angry due to war in that city.
Each battle you fight adds to our current war weariness. The amount added depends on whether you win or lose the battle (losing adds twice as much as winning), and the relative culture in the tile the battle was fought between you and the enemy (fighting totally on 100% home soil adds nothing, on totally enemy soil you pay double, relative to the base).
Now the problem in my game was that although I had much better tech (tanks vs riflemen and sherrifs) my enemy still had a very large number of units, so even though I was winning almost all battles each was still costing a battle penalty (doubled due to foreign soil also). Simply because so many units were involved this mounts up fast, leading to totally untenable war weariness only a few turns in.
The issue he is that war weariness does not scale sensibly with army sizes in the game, which in turn depend on factors like game speed and map size.
I'd like to gather suggestons for possible changes. Here are a couple I would suggest for discussion (but please also add others as well as discuss these)
Discuss...
In my current game, although my civics are not ideal (but i'll come back to that) I have all the anti war-weariness buildings I can make at my current level of tech (just got proper tanks). I declared war and invaded my neighbor. Five turns later (only five) every city has ALL of it's population unhappy, and so is massively starving! At first I guessed I might have some bug in the modifiers due to changing assets since i started the game, so I checked in the debugger. It turns out the modifiers were fine and furthermore even if I were to change civics so that I had NO civic choice with a war weariness penalty, I would STILL be in the all population unhappy state!
This strikes me as unreasonable.
I then delved a bit more into the actual mechanics of war weariness, which are approximately as follows:
You have a base war weariness modifier for your civilization relative to the one you are at war with. Normally this is flat, but it's possible to get wonders that give enemies extra war weariness etc. (it was flat in my example)
You also have a current war weariness percent (which starts at 0). Each turn your current war weariness is modified by your base modifier and by your civic and city modifiers in each city to give a percent angry due to war in that city.
Each battle you fight adds to our current war weariness. The amount added depends on whether you win or lose the battle (losing adds twice as much as winning), and the relative culture in the tile the battle was fought between you and the enemy (fighting totally on 100% home soil adds nothing, on totally enemy soil you pay double, relative to the base).
Now the problem in my game was that although I had much better tech (tanks vs riflemen and sherrifs) my enemy still had a very large number of units, so even though I was winning almost all battles each was still costing a battle penalty (doubled due to foreign soil also). Simply because so many units were involved this mounts up fast, leading to totally untenable war weariness only a few turns in.
The issue he is that war weariness does not scale sensibly with army sizes in the game, which in turn depend on factors like game speed and map size.
I'd like to gather suggestons for possible changes. Here are a couple I would suggest for discussion (but please also add others as well as discuss these)
- Scale the battle penalty for map size (bigger map size implies lower per-battle penalty since armies will tend to be larger)
- instead of counting a base amount for a won battle, and twice for a loss, count it on a sliding scale depending on the health percentage lost (so a loss loses all health and thus counts full, but a trivial win where you take no health loss at all counts nothing as there are no body bags to send home involved). This would mean easy steam-roller wins invoke very little war weariness in the home population, which seems reasonable as their sons and daughters are not dying in quantity, and the homeland is going from victory to victory.
Discuss...