• We have updated our Community Code of Conduct. Please read through the new rules for the forum that are an integral part of Paradox Interactive’s User Agreement.

Victoria 3 - Dev Diary #146 - Diplomatic Treaties

16_9.jpg


Hello Victorians,

My name is Alex, I’m a multiclass programmer and designer on Victoria 3 and today it’s finally time for another Dev Diary on this very Happy Thursday!
Today we will be taking a look at Diplomatic Treaties, one of the features arriving with the free 1.9 update on June 17 together with our Mechanics Pack “Charters of Commerce”.

Before we begin though, I should mention that today is a public holiday (ig_tradeunions) for us here in Sweden (and in a lot of other places). This dev diary was as usual written ahead of time, but when it comes to questions, this means I won’t actually be around to answer them when it comes out. Instead, Martin will be around to answer some of your more pressing questions to begin with and I’ll try to answer any remaining important questions on Monday (as we also get tomorrow off as a bridge day).

With all that said, I should also remind you that as always any values, texts, designs, graphics etc. are work in progress and are subject to change!

But now, without further ado, enter Treaties:

DD146_01.gif

Diplomatic Treaties​

As part of the changes to the World Market we described in Dev Diary #143 and with Trade Routes as you know them going away, we wanted to introduce a new mechanic that let you actively establish pointed strategic ways of elevating your industries or exploiting other countries through trade. We wanted more ways for you to peacefully (but aggressively) compete against your rivals (and allies) and establish your dominance across the globe.

Initially, this was drafted to be a relatively simple tit-for-tat deal: “you give me grain, I give you coal”. But we of course got thinking and, particularly in the context of how often the community asks for more in-depth diplomacy, we thought: what if we went a step or two (or twenty) further and made it a full-blown system of treaties where you can weigh a bunch of different types of things against each other? Maybe to get Prussia to agree to an alliance you can sweeten the deal by promising to give them a certain amount of weapons every week. Or maybe you can say you’ll pay off Haiti’s debts in exchange for them granting you investment rights.

And well, that’s what we did.

Diplomatic Treaties are a new way for you to interact with other countries diplomatically. They are, in a way, a natural extension of what the diplomatic actions and pacts currently in the game do (more on that later), but instead of just having you propose one thing at a time in a vacuum, you can combine them and have the whole context of what you want be available and weighted together.

Pedro had some aggressive negotiation tactics
DD146_02.png

In short, the way it works is like this: you decide you want a treaty with another country, so you open the Treaty Draft panel (shown in the animation above). You then select what articles you’d like to have, both offers and requests. When you’re happy you send the proposal to the other country. They can then look at what you have proposed and either accept or reject of course, but they can also choose to negotiate further. Negotiating further lets them tweak the proposal however they want and then send it back to you. This is then repeated until either you agree on a treaty or you decide to just end the process. Assuming you sign the treaty, it is now in effect and remains so until either side withdraws from it.

A big crux on a system like this is of course how the AI handles it. We want to make sure that you can’t just scam the AI, but we also want you to feel you are drafting clever treaties and making use of any advantages you might have. In particular, we also want to feed into the fantasy of you being able to draft clearly unequal treaties with other countries because maybe you are able to remind them that you have big boats and a big army next door. These are all goals we have in mind while working on the balancing of this feature.

Before we go into the details of this a bit more though, I want to specifically address something I know will come up in the comments: are multilateral treaties possible? No. Making this system support multilateral treaties would be on a completely different level of complexity and would be a massive undertaking. If nothing else it would immensely complicate the UX and require a completely different way of tackling AI, drafting and all that. So, unfortunately, it’s not feasible. That is of course not to say that we don’t want multilateral treaties (they would be super cool!) or that a system like that couldn’t in the future build on treaties, but at least for now, it’s not something we are doing.

Enough of that though, let’s dive into the details.

Articles​

This is the core part of treaties that actually defines what they do. Articles have a few different classifications. On a fundamental level, articles can be either Mutual or Directional. This mostly just indicates whether the article is something that affects both sides equally or not. A prime example of a mutual article is an Alliance: both sides are involved equally. On the other hand, Transfer Goods is an example of a Directional article: one side (the source) is sending the goods and the other (the target) is receiving them.

The next important aspect of articles is Inputs. Some articles have required inputs and others do not. Again, an Alliance is just an Alliance, you don’t need to define anything else, but for Transfer Goods you need to specify which goods you want to transfer and how many.

Supporting Texas with some good ol’ ammo
DD146_03.png

Articles can have a number of different inputs depending on what they’re meant to do.

What these inputs are actually used for differs and is up for the article to define.

As for what articles you can expect to be in the game, a lot of them will be things we are moving over from the old diplomatic actions system. This includes of course Alliances and Defensive Pacts, but also e.g. State Transfer and Join Power Bloc and if you own Sphere of Influence, Investment Rights.

For the majority of the articles that have counterparts as diplomatic actions, the corresponding diplomatic actions or pacts will be removed and Treaties will be the new way through which you access them. Do note that not all diplomatic actions have been made into articles, only the ones that made sense, this means that actions like Declare Rivalry or Improve Relations will still work as they used to.

We’ve taken the opportunity to rework Treaty Ports by turning them into an article instead of a consequence of geography. No Treaty, no Treaty Port! (Historical treaties aren’t setup yet, so ignore the date and binding time details)
DD146_04.png
In addition to those, we also have some completely new articles coming with 1.9. One of them Lino talked about on the previous Dev Diary DD #145: Military Access. That Dev Diary already went into detail on how Military Access works, so let’s talk about the other new article coming with 1.9: Transit Rights.

Who’s gonna play Switzerland as their first run when 1.9 drops?
DD146_05.png

If Military Access lets you march your troops through another country, Transit Rights lets landlocked countries pass through a country to access the world market. This can be chained through multiple countries if needed. Switzerland stans can calm down.

Ending a Treaty​

A Treaty ends when either side withdraws from the treaty. Easy. Of course, if you gave away Angola in exchange for Spain transferring you a certain amount of money every week, you want to make sure they actually follow through and you don’t get scammed. This is where binding periods come in.

When signing a treaty, you also define for how long that treaty will be binding (e.g. 5, 10, 15 years). When the binding duration for the treaty lapses, either side can end the treaty at any point without consequences.

We’re still looking at a few alternatives for how to pick the binding period. This is one, but it could also maybe be a slider?
DD146_06.png

You can still end a treaty before the binding period ends of course, but then you would be in breach of the treaty and subject to hefty penalties depending on the articles present in the treaty.

(Re)Negotiation​

If you made some poor choices and a Treaty is really not good for you, you can attempt to renegotiate the treaty instead of just withdrawing from it. To do so, you select what treaty you want to renegotiate and simply click on the button. This will bring you to a flow similar to the original drafting panel, but instead of having a blank slate, the existing articles will be the baseline. From there you can add or remove articles, change inputs or even change the binding period. When you’re happy, you send the proposal as usual and the other side has the opportunity to respond. If they agree, great, the old treaty is replaced with this new one. If they reject your offer though, the old treaty remains in force as it was.

New Granada is starting to feel like maybe this wasn’t such a good deal after all
DD146_07.png

It is worth noting though that some articles are not renegotiable. This mostly applies to articles that have some kind of immediate effect upon signing, like transferring a state, because you can’t just undo that simply by changing the terms somewhat.

Non-fulfillment Consequences​

Say you are playing as Belgium and you need paper, but don’t feel like actually making it yourself. You could set up a treaty where you give the Netherlands some of your Sulfur and in exchange they give you some of the Paper they produce. They agree to this, but then for whatever reason, say a foreign power annexed their only paper mills, they are not able to produce the Paper they should deliver to you. This would likely lead to a shortage of Paper in the Dutch Market which would mean they are not able to deliver the Paper to you.

In such a case, the Netherlands would be considered to be in non-fulfillment of their part of the Treaty. When that happens, generally one of two things will happen depending on what Article is not being fulfilled: if it’s a serious breach, like not answering the call of an Alliance, that will break the whole treaty and the party at fault will receive all the penalties tied to an early withdrawal if the treaty is still binding.

For less serious breaches though, like with the example above, what happens is that the other side of the treaty will be inactive until the breach is addressed, at which point the treaty resumes as usual. In our example, if the Netherlands stopped delivering Paper because they had a shortage due to not producing it, Belgium would stop delivering Sulfur in return as well. This would then hold until the Paper deliveries resume. If there are any other articles on Belgium’s side (including mutual articles) those are also inactivated for as long as the other side is in non-fulfillment. The side that isn’t fulfilling one of their articles stays active though.

Finally, I’d like to note that not all articles will be non-fulfillable. For some articles like investment rights, you can’t not fulfill it, it just happens anyway.

Obligations​

As usual, you can call in obligations to make countries more likely to accept a treaty you propose. When it comes to how you get those obligations we’re making some changes though. Broadly speaking, you will be able to say you consider a certain treaty as essentially a favor to the other side. This will reduce their acceptance of the treaty, but in turn, if the binding period of the treaty lapses and everyone fulfills their parts it will grant you an obligation you can then use as usual.

Signed treaties will take on different names depending on different circumstances. There will also be some historical treaties scripted in with their historical names. Additionally, you will also be able to give your treaties a custom name if you so wish. (shout out to Default Window Line Two)
DD146_08.png

Modding​

As always we have made an active effort to keep this feature as moddable as possible. Many times when thinking about how to solve a certain problem we could see an easy solution which would just work within the assumptions of what we have planned to do with the feature and a more complicated solution where making things work on a more abstract level meant more combinations were possible for modders and as much as possible we chose the latter. As such, I’d like to take a little bit of time to talk about what you can do with this system, primarily centered around modding articles.
A lot of article modding is similar to diplomatic action modding: you can set AI weights, modifiers, effects, costs and so on. What is a bit different here with how articles work, is that you are also able to set if an article should be mutual or directional, but more importantly, you can have the article take any combination of the following inputs (although only one of each):

  • Quantity
  • Goods
  • Building Type
  • Law Type
  • Strategic Region
  • Country
  • State
  • Company
You can then reference these inputs in the immediate effect of the article to do whatever you want that can be done in an effect block.

A little example of how flags and inputs are set in script on articles
DD146_09.png

There are of course some significant parts of articles that are hard coded, but we tried to make them flexible in that. For instance, most vanilla articles work by setting behavior flags. So Transfer Goods has an is_transfer_goods flag. This then tells the code what behavior it should call and makes it take in the expected inputs that is_transfer_goods requires. There’s also say is_investment_rights, or is_alliance. And the cool thing here is that you can actually to some degree combine these. So if you want to make an article that grants both military access and transit rights at the same time, you can do that. The main limitation here is if you have two flags that look at the same input type, they will have to use the same input. So combining transfer goods with no tariffs would necessarily both target the same input.

Another cool thing you can do is mod the non-fulfillment conditions. You could for instance have a version of Transfer Goods that is only active while the countries are at peace or something and then if that is broken maybe you’d want the treaty to auto-break or maybe you want it to freeze instead. Up to you.

Charters of Commerce​

While everything I have described so far will be part of the free 1.9 update, the Mechanics Pack Charters of Commerce will also include a number of new articles exclusive to it:

  • No Tariffs on Goods
    • The country is not allowed to set tariffs on a specific input good when trading with the World Market
  • No Subventions on Goods
    • The country is not allowed to set subventions on a specific input good when trading with the World Market
  • Prohibit trade of good with World Market
    • The country is not allowed to trade a specific input good with the World Market
  • Law commitment
    • The country commits to passing a specific law. As long as they don’t, their side is not fulfilled and the other side of the treaty is inactive
  • Non-Colonization Agreement
    • The country is not allowed to colonize a specific strategic region
  • Grant Monopoly to Foreign Company
    • Tune in to the next dev diary when Lino will talk more about this

Portugal would really like to be left alone with their colonies
DD146_10.png




I feel like there is something I forgot to mention…hmmm

Just one more thing​

There’s one more thing I’d like to show before we end this though. In addition to the flow I’ve already explained above, there’s another way Treaties can be used: Diplomatic Plays.

In 1.9, as part of the free update, we’re adding a new war goal: Enforce Treaty Article. This war goal lets you select between a number of articles that are specifically classified (in script) as enforceable. You can select this war goal multiple times targeting different articles. Then, at the end of the war, all instances of the war goal against the same country will result in a War Reparations Treaty against that country. This treaty, being enforced, cannot be withdrawn from.

What this means is that on a base level you can have war reparations work as they used to, but if you prefer, as part of war reparations you can instead demand getting investment rights in the country in question. Or you can prohibit them from trading weapons and artillery with the world market. Or you could mod some other article we haven’t thought about and do that instead. Or all of the above.

Now you’ll have more ways in which you can make the Prussians pay
DD146_11.png




Alright, now that was actually all I had to show you today. I hope you are as excited about all this as I have been to tell you about it. It’s been a whole journey to work on it and it’s awesome finally getting to share it with you all. Let me know what you think: are there any article combinations you are particularly excited about? And for the modders out there, have the modding gears started turning already? I’m very much looking forward to seeing what clever treaties you all come up with and hearing about all the backstabbing in MP when 1.9 releases on June 17.

Before that though, Lino will be back in two weeks to tell you some more about what we have been cooking with Companies and Executives. Until then!

DD146_12.jpg

 
  • 195Love
  • 74Like
  • 6
  • 4
Reactions:
An amazing DD! Very excited to play the game with these changes.

I think an interesting way to introduce multi-country treaties would be to make it possible to sign treaties between power blocs.
Hmm, this is a great idea, both for treaties and for expanding power blocs.

Maybe some power blocs could be completely tied to their leader's decisions on signing the treaty or not, while others might use a weighted voting system, with the weight depending on the bloc's tenets.

Edit: Perhaps treaties articles should be limited by the type of bloc itself, so someone in a free trade zone doesn't end guaranteeing some far away province
 
  • 2Like
Reactions:
Edit: Perhaps treaties articles should be limited by the type of bloc itself, so someone in a free trade zone doesn't end guaranteeing some far away province
You can still get Defensive Cooperation principle as any type of Power Bloc so that one should probably not be entirely based on type. Alliances however (rather than defensive diplomatic pacts) would indeed probably not fit for Trade League power blocs as you say.
 
  • 2
Reactions:
Didn’t get a chance to comment yesterday, but not much to say other than “great job, this sounds fantastic, I can’t wait”. 1.9 really seems like it’s going to be the biggest upgrade this game has ever seen, somehow even more than 1.7.

I agree with those who want to see the treaty mechanism or something similar integrated into diplomatic plays, but I can recognize that obviously something like that is massively out of scope for this update, and honestly the diplomatic play probably should be left alone until there’s a navy rework that it can leverage.

Keep it up (and let’s hopefully get the navy rework to accompany the Iberian narrative pack)!
 
  • 4
Reactions:
Would it be possible to negotiate a partition of a third party with the AI with this system? Like for example France and Netherlands making an agreement to partition Belgium.
 
  • 5Like
  • 1Haha
Reactions:
Might just be the placeholder values, but longer binding times would be nice. Need a 99 year lease of Hongkong etc. Also, just say 1 year rather than 365 days to keep things consistent.
 
  • 3
  • 1Like
Reactions:
This all looks amazing to play with, well done. I have a question though about transit rights and a certain play pattern.

Let's say I'm playing as a (United) Netherlands, and want to focus my empire on trade, shipping, and globalization. As a part of that (and in the future hopefully with the help of the Rhine) I want to provide the overseas shipping to the Swiss for anything they're trading to and from the global market.

Is there a way I can profit off of that? Or would I have to trade with the Swiss, and then afterwards trade that away globally? Can I through treaties establish that the Swiss get transit rights through [collection of states] to reach me? Or could any of those options maybe be easy to mod in if they're not included?

Cheers, and thanks for all the hard work
 
  • 1Like
Reactions:
Love the ideas here with the treaties for sure.

That said, I'd love to see 99 and 100 years being added as time limiters for treaties, with a period that is considered "binding" as existing (up to maybe 25 years) with a way to time out a treaty entirely after a certain period of time passes automatically at a much longer timeframe?

And along those lines, can we temporarily cede land if we were inclined (say create a lease of a province or treaty port) with a time limit to it, or are all territorial changes fundamentally permanent? That's a little unclear I think (though it may've been covered in answers already, I haven't looked through responses yet, but will be momentarily).

Lastly, do you plan to create a ledger of treaties/agreements anywhere? Nominally speaking all agreements are registered internationally, either formally (in the modern era) or informally, so we can see the exact nature of various agreements that the AI might be making amongst themselves. And lastly, will any such ledger only show currently active treaties? Or will it also show all historical treaties in any possible ledger for our perusal if we wanted to dig deep into the archives to try and dissect the precise nature of a relationship over time?
 
  • 1Like
Reactions:
Will it be possible to renew treaties? Say the time runs out and both parties like the existing deal.
I got the impression that they didn't expire, they just stopped being binding. After that point parties can leave without penalty, but if they're happy they can just keep it going. A way to re-bind for another X years might be nice though.
 
  • 6Like
Reactions:
This system looks incredible, if it can be integrated well with the existing diplomatic play and power bloc systems it might make for the best diplo system I've seen
 
  • 2Like
  • 1
Reactions:
It would be great if you could lock an article as non-negotiable. You haven't explained how the negotiating process looks in detail but I'm afraid it might end up like in Civilization series where often the other party just keeps removing from the deal the one thing you really care about.
 
  • 3
  • 2Like
Reactions:
Will this overhaul the regime change mechanic? Right now it's basically non functional for its presumed purpose, wanting to change another nation to have the same power structure as your county (changing another country to a council republic with a cooperative economy like yours) because of all the weird checks and barriers and how sometimes it literally does nothing.
 
  • 1
Reactions:
Would Russia's acquisition of Outer Manchuria use this treaty mechanic?View attachment 1288905
Realistically, under current mechanics, it should be a diplo play that triggers when China has the Taiping Rebellion, and which China backs down from, I’d think. Similar to Japan with market opening.

Or in another world, it’s Russia threatening to join the second opium war and China convincing them not to do so by giving up outer Manchuria.
 
  • 1
Reactions:
How does goods transfer work again? Does it establish free trade in that good between your markets, does it trade the good with your market in general like now but with a subsidy? It’s a defined amount being transferred from one market to another is it? And if so, is the government buying it and then selling it inside the other market? Because Vic3 doesn’t have stockpiles.
 
  • 1
Reactions:
But what if they gave us Total War bilateral treaties? :eek:

View attachment 1289205
While this is worded funny, that’s a pretty standard coerced NAP and can have pretty valid reasons to be offered.

Basically, “we just have to have no threat from your direction. It’s to our mutual benefit that we ensure this with a bilateral treaty, but if not, we will unilaterally ensure this by force”.
 
  • 3
Reactions: