Expand flexibility of contactturns
Isn't all that possible already? While we don't have requirement type for "active contact", it's implicit from the fact that you can have the meeting at all.
Reply To cazfi
Isn't all that possible already? While we don't have requirement type for "active contact", it's implicit from the fact that you can have the meeting at all.
Did something happen lately in 3.2? My understanding is you have "contactturns" on and this allows all pacts, or you have it off and embassy is required. There is no way to make cease-fire and peace pacts allowable with contact, but all other pacts allowed only by embassy. ... Or it used to be this way, unless something changed I don't know about.
Reply To lexxie9952
Did something happen lately in 3.2?
Clause requirements went in 2019 (whether you consider that "lately" or not, is up to you): https://www.hostedredmine.com/issues/768208
IIRC they were included in the never-merged updates I submitted to FCW.
Wow, super! Please don't confuse the fact I'm learning to code freeciv pretty well by now, with the fact I have any competence at all in git things, which I do not, and is quite frustrating (probably for both of us!) But I do what I can to try to help both of us.
So, if I understand correctly, implement this, and require Embassy for everything except Cease-fire or Peace.
In multiplayer games with high number of players, the default state of "War" after meeting can create some ridiculous situations, such as huge cost of diplomacy making 15 diplomats just to get a status other than "War" with nations in the region. Well, just ignore it and make a verbal peace deal, right? No, because "War" diplrel has in-game consequences such as disallowing players to make alliances and in some cases can even break people's pacts etc.
At FCW, several years ago we hard-coded an emergency playability patch using "contactturns", where, you are allowed to do Cease-fire or Peace without embassy based on "contactturns" meeting. BUT require embassy for all other pacts. This has worked so well that people can't even imagine (large multiplayer) games without it. However, it remains an ugly hack-patch living in a fork of the main project. What the rest of the project needs and deserves is to selectively allow/disable certain types of pacts based on embassy AND/OR contactturns. That is, some pacts require contactturns, other pacts require embassy, and the ruleset or game settings can decide it.
Afterthought: Always when making things like this, it's good to think ahead, whether 3 easy lines of code can expand functionality to other cases. e.g., how hard was it to add "Always" flag for tp_defense instead of just "Alight" and "Block"? In the spirit of such good practices, I fell that in addition to "Contact" and "Embassy" another req condition for pacts can be "Always", since it almost codes itself into the solution anyway.