How to Diplomacy?

SwirlSlayer

Chieftain
Joined
Jul 26, 2019
Messages
35
Hi, I was wondering how to conduct diplomacy in the latest beta (Dec 20 2019). Over my last two games as America I've had what you would call "epic failures in diplomacy". Basically, despite (very generous) gifts and declaration of friendships, the whole world eventually turned against me. One AI would start a war with me, then another decides to do so, then another...soon enough, I'm at war with the whole world (I'm wondering if there's a kind of snowball effect when it comes to being declared war upon. Does the AI think that since your military is preoccupied with an enemy, you're an easier target?). Then everyone denounces me, ensuring every AI is against me for the rest of the game.

This has happened in my last two games as the USA, and it's kind of absurd. I'm at war all the time, and nations with a 1/5th of my military will declare war on me even though they have no chance of winning. I've honestly contemplated going Order, razing the whole world down, and resettling it with Americans, since diplomacy is completely impossible (and so warmonger scores completely negligible).

It doesn't matter if I have a ginormous military, give +30 gold or equivalent gifts, send a million trade routes to their nation...everyone attacks me endlessly. Can someone please teach me the ways of diplomacy?

Edit: Oh er I suppose I should mention I'm often at the top of the scoreboard, and in my last two games had the most cities...but that shouldn't turn all the AIs against me (I think)!
 
Last edited:
If you are winning and start getting ahead (10+ techs), any AI that isn't your vassal will probably end up declaring on you sooner or later (usually by the time you reach modern era most AIs will plot to try and kill you/ annoy you as much as possible through WC), has been happening for quite a long time. If you want to maintan good relationships you need to avoid being very ahead of other AIs, there is no way to avoid it.
 
There is indeed a snowball effect for war declarations, particularly if the AI is fiercely competitive with you and doesn't think any of your opponents are a match for them.

Should be a bit better next version with the proximity multiplier for approaches and some other changes.

Diplomacy is still in beta, and it's possible too much hostility weight was added.

Did you perchance backstab any of your friends? The AI gets pretty mad about betrayals.

It's also worth noting that the AI is very aggressive if you're way ahead in score, especially if you're close to winning the game.

Maybe try playing on a higher difficulty level if that's the case.
 
If the player is a runaway he should be getting DoW'ed by everyone, though, as he will otherwise just go on and win unchallenged. If this competitive behavior is not desired it can be turned off by setting the appropriate option Recursive added.
 
If you mouse over the AI's visible Approach (NEUTRAL/FRIENDLY/HOSTILE) you should get a list of reasons for the current relationship.

"Your behavior infuriates them." means the AI is upset about how much more successful you are than them.

If you want to disable the AI's victory competitiveness as @civplayer33 brought up, there is an option in the Community Patch > Core Files > Core Changes > DiploAIOptions.sql file.

Also, if you're not playing with the most recent hotfixes, then diplomacy will be really erratic, since the base 12-20 patch had a large number of diplomacy-related errors.
 
Last edited:
I'm currently playing a standard 8 players terra map as carthage *thank you random leader selection for choosing carthage in a map where most cities are land locked* got DOWed by 4 AIs after taking a tall tradition capital putting me ahead of everyone in terms of score while i'm still in medieval era, not just my close neighbours freaking Montezuma, Alexander and Harold Bluetooth but also my distant trade partners, Morroco and portugal that lead a cop war with me against montezuma.
 
I'll make a few adjustments for next version.
 
are there any lua hooks to affect diplo opinions or approach? ie can modders tune +/- opinion values from in-game events?

Community Patch > Core Files > Core Changes > DiploApproachWeights.sql/DiploOpinionWeights.sql (one of my recent contributions) allows you to tweak these.
 
Community Patch > Core Files > Core Changes > DiploApproachWeights.sql/DiploOpinionWeights.sql (one of my recent contributions) allows you to tweak these.

Thanks for the pointer. I guess i wanted to be able to mod the effects of certain actions in-game, that are not currently triggering any diplo score..

for example, i often lose patience with some AI civs when they park too many units in my territory for too long for no reason (typically when they're in neighbouring territory and that ob ends and is not renewed), sometimes leading to my own diplo "opinion" changing towards that civ and eventually not renewing the open borders... AI does not seem to respond the same way when I reciprocate these extended visits (maybe i just don't notice the effect?). So on each turn start lua gameevent trigger, I want to loop through a player x's units, check their plot, and for each x unit in player y's territory, decrease y's opinion score of x by z amount (for this example, a small negative change, maybe minimal integer value or decimal if possible towards negative opinion.. but there may be other moddable scenarios that warrant a larger change) to mimic the way my opinion works. ie on each playerdoturn, count x units in y territory , compute z from the count, and call something like "yPlayer.ChangeOpinion(x, z)". To balance this out if no units in territory during ob, i'd do the same with -z if that makes sense. I gather that nothing like this exists at the lua level?
 
Last edited:
Thanks for the pointer. I guess i wanted to be able to mod the effects of certain actions in-game, that are not currently triggering any diplo score..

for example, i often lose patience with some AI civs when they park too many units in my territory for too long for no reason (typically when they're in neighbouring territory and that ob ends and is not renewed), sometimes leading to my own diplo "opinion" changing towards that civ and eventually not renewing the open borders... AI does not seem to respond the same way when I reciprocate these extended visits (maybe i just don't notice the effect?). So on each turn start lua gameevent trigger, I want to loop through a player x's units, check their plot, and for each x unit in player y's territory, decrease y's opinion score of x by z amount (for this example, a small negative change, maybe minimal integer value or decimal if possible towards negative opinion.. but there may be other moddable scenarios that warrant a larger change) to mimic the way my opinion works. ie on each playerdoturn, count x units in y territory , compute z from the count, and call something like "yPlayer.ChangeOpinion(x, z)". To balance this out if no units in territory during ob, i'd do the same with -z if that makes sense. I gather that nothing like this exists at the lua level?

I can ask one of the devs to make an LUA hook for custom opinion/approach triggers.
 
Top Bottom