Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Justifiable wars #11554

Open
wants to merge 8 commits into
base: master
Choose a base branch
from
Open

Justifiable wars #11554

wants to merge 8 commits into from

Conversation

tuvus
Copy link
Collaborator

@tuvus tuvus commented May 3, 2024

This PR adds in formal and surprise wars
Part of #11380, #10070

A Civ that has denounced another Civ for 5 turns may declare a formal war instead of a surprise war. A formal war caries the current diplomatic penalties of -5 relations to most Civs for warmongering. If the Civ has not denounced the other civ they will get a warmongering penalty of -20.
Join wars are treated as a formal war.

The type of war that you will declare is shown on the declare war confirmation screen.

Pictures

Note, I have fixed the spelling of "suprised" to "surprised" since this picture

DeclareFormalWar

DeclareSurpriseWar

I also added a new Wars tutorial page to help inform players about this. We don't have to add it to another document in order to translate it right?

Picture

WarsTutorialPage

Finally I added in a little AI change that makes them use formal wars around 80% of the time and surprise wars 20% of the time.
In the future I plan to add extra logic that tells the military units to prepare for wars against civilizations that were denounced.

The AI will also prepare for wars by moving their units to the closest city to denounced civilizations. This is just experimental and is a placeholder for a much more robust system.

@AdityaMH
Copy link
Contributor

AdityaMH commented May 3, 2024

using civ6 diplomacy logic for civ5 diplomacy. nice.

also this 5y i'm waiting from beginning. denounce benefit, and ai doing denouncing.

@yairm210
Copy link
Owner

yairm210 commented May 4, 2024

This is a departure from Civ V spec, and thus should be behind some kind of unique in modoptions

Copy link

github-actions bot commented May 4, 2024

This pull request has conflicts, please resolve those before we can evaluate the pull request.

# Conflicts:
#	core/src/com/unciv/logic/civilization/diplomacy/DeclareWar.kt
Copy link

github-actions bot commented May 5, 2024

Conflicts have been resolved.

@github-actions github-actions bot removed the Conflicts label May 5, 2024
@SomeTroglodyte
Copy link
Collaborator

Would this plausibly correlate with city-state promises to protect, city-state quests, cs non-war tribute extortion and so on?

@tuvus
Copy link
Collaborator Author

tuvus commented May 5, 2024

Not really?

@SomeTroglodyte
Copy link
Collaborator

So when I wanna protect my pet city-state I'll be the big bad stinky warmonger -20 with this?

Hey, how about a console command diplomacy addmodifier carthage the-huns 20 -> displayed as The magic eight-ball said +20 or somesuch?

Probably marginal as the most obvious case would be the pet cs is at war already with the bully and trouncing the bully then would count as "justifiable" (oh my that still tastes dégeulasse - that word and the W word on the same page - 🤮 - there are NO excuses for any lack of respect, let alone aggression - well, it's not live, it's a 4x game: eXtort eXterminate eXtinguish eXecute massaXre - oops that was number five)

@tuvus
Copy link
Collaborator Author

tuvus commented May 6, 2024

Would disabling it via an option similar to the espionage one with the name "extended diplomacy" or something similar work? We will probably have other changes to go under this category later that do affect the AI.

So when I wanna protect my pet city-state I'll be the big bad stinky warmonger -20 with this?

The problem here is that there is no join wars option with the city-state, since the diplomacy is disabled.
Would adding a button on their screen work?

@SomeTroglodyte
Copy link
Collaborator

Would adding a button on their screen work

I have no idea - my interjection was a little Monty Python hiding-behind-bushes thing. Get someone thinking - not me - in this case you! And then - responsibility delegated - forget about it. Sometimes Very Efficient. SVE, not SEP - well, SEP too.

But you see - I agree diplomacy need not follow what Civ5 does exactly, at worst needs some gate to enable advanced features. But once started - where's proper demands? Idea: Hey you overran Jerusalem - give it back or else. Implementation: Declare War, conquer and liberate Jerusalem. Then while you wait for the peace blocking timer to expire you accidentally wipe the bully out... Just an example that there's ample room and toeing the line how to improve in small steps without incurring regressions elsewhere is a humongous task - kudos for the chuzpah to even begin.

@yairm210
Copy link
Owner

yairm210 commented May 6, 2024

When I was in basic army training, they showed the How Not To Be Seen sketch, with subtitles
Maybe a third of the people knew English, I was the only one who knew this was a comedy sketch, including the commanders, I was giggling the entire time
Someone somewhere had a really good sense of humor 🤣

@SomeTroglodyte
Copy link
Collaborator

Reminds me of an art cinema - town-funded - showing the original Texas Chainsaw Massacre. Serious folk. One person giggling the entire time.... That freezer scene - oops, friend still alive - better slam the lid shut and run! 🤪 🏃 🪚

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants