If possible to make a mod this could be an approximate solution to current HoF rules:
Make it impossible for the player to DoW any civilization to which it has an active "per turn" trade. (gpt, luxery etc.)
Also:
Make it so that barbarians dont pillage luxery or strat resource tiles. (This would solve abusing barbs to cancel deals).
Barbarians would still be annoying though as they pillage other stuff and stand on ur tiles.
The proper fix is for AIs to value cash deals less than for gpt deals, especially for those who have broken a deal in the past or are disliked. If a player has broken a per-turn deal in the past, the AI should refuse to pay cash for luxuries.
Well said Neuro and right to the point!
Precisely, fix the AIs so they don't make stupid deals that loses them great amounts of Wealth when a Civ declares War.
Placing restrictions on when War can be declared is nonsense. Very few civilizations in history did not declare War, because it was contrary to some arbitrary rule of conduct, especially "we can't declare War on our stupid neighbors", because they entrusted so much Wealth to us with no assurances that we would not renege. In deed, when has War not been the direct result of Greed in its many manifestations?
...
First you win the War, then you declare it. (Paraphrased from "The Art of War".) There should be no rules against a DoW, once you have made the determination that you have already won the War. Perhaps remaining in a State of War until Capitulation or Defeat should be the price for gaining Wealth via a DoW.
espacially with this very popular denounce chains since some patch - DOW espacially to more then 1 civ will usually lead to bigbig hate from all others making RAs impossible or at least very risky to sign, decreasing the terms of trade horribly (like 100 gold instead of 300 for a lux) and so on and so on.