Ticket #44161

Sharing Borders/Tiles with allies/team

오픈 날짜: 2022-03-23 03:32 마지막 업데이트: 2022-07-08 12:20

Reporter:
(Anonymous)
소유자:
Status:
Closed
Component:
MileStone:
Priority:
5 - Medium
Severity:
5 - Medium
Resolution:
Fixed
File:
1

Details

After playing a few co-op games with the AI, I would like to propose a diplomacy setting where players can choose to share borders/tiles. As of version 2.6 (latest stable release), borders and controlled tiles for allies, neighbors and enemy nations are the same, borders are calculated/defined by the size and proximity of the cities. Generally, I tend to ally with 1-2 neighbor nations against the rest of the world in games I play and generally we have cities that cause borders to overlap.

Since in the current gameplay, this makes it difficult as tiles that could be in one city's radius are unavailable if another city has its borders controlling it. Shared borders would treat the nations with cities as if their borders are the same country, allowing all tiles within the reach of the city to be utilized, provided its not currently in use by another city (same as building cities of the same nation/empire).

The setting would have 3 toggleable settings and an extra setting 1. Disabled - Default, each country has its own borders, no overlap 2. Enabled by 1 side: The side who agrees lets the nation its given shared access to any cities in the region to work tiles within its borders, however the other nation cannot (AI players no matter how friendly would never allow the player to harness their borders unless they can tangibly benefit (already have cities overlapping borders). 3. Enabled by both sides: Both sides can use tiles in each others borders. Extra setting: Can build cities - By default, shared borders would only allow cities already built with overlapping borders to take advantage of tiles accessible and unused. Can build cities allows the player(s) with permission to build new cities on friendly foreign borders.

For AI, the recommendation is the AI should only agree to share borders if they have overlapping borders and can benefit from using tiles that its cities can access but are not within its borders. For AI-player diplomacy, the AI would only agree if it has overlapping borders and has one or more cities that would benefit if it (unless it stands to lose more than it would gain in agreeing with the player). For players on the same team (not a diplomatic alliance, but an actual team, shared borders should be by default enabled between all team members

Ticket History (3/12 Histories)

2022-03-23 03:32 Updated by: None
  • New Ticket "Sharing Borders/Tiles with allies/team" created
2022-04-19 02:22 Updated by: cazfi
  • Component Update from Ruledit and ruleup to General
2022-04-19 02:32 Updated by: cazfi
댓글 올리기

Some way to allow cities to use also tiles within allied borders might be relatively easy to implement. Whether it makes more sense to have it as a global server setting, or as a treaty type like suggested, needs to be investigated. Not sure if we can get this done during 3.2 development cycle, but setting S3_2-d3f target anyway so that we at least evaluate the situation.

2022-04-24 03:08 Updated by: None
댓글 올리기

Reply To cazfi

Some way to allow cities to use also tiles within allied borders might be relatively easy to implement. Whether it makes more sense to have it as a global server setting, or as a treaty type like suggested, needs to be investigated. Not sure if we can get this done during 3.2 development cycle, but setting S3_2-d3f target anyway so that we at least evaluate the situation.

I was originally thinking it to be a configurable global server setting (especially the extra setting of allowing allies to build cities on your own borders). I suspect it won't be too difficult to implement but calibrating the AI to adapt to the settings if implemented without game breaking issues will likely take a fair amount of time, so its perfectly fine if this needs to be postponed beyond the next release

2022-05-03 06:11 Updated by: cazfi
댓글 올리기

Have started implementing this as a new clause type. Is a bit more complicated than I expected (server setting would have been just a couple of lines). Currently stuck with client's lacking information about active treaties (this would be the first clause type that client would need to know all the time, and not only during treaty negotiation)

Likely need to split parts of the work to new dependency tickets.

2022-05-03 07:04 Updated by: cazfi
댓글 올리기

Reply To cazfi

Likely need to split parts of the work to new dependency tickets.

Moving treaty list handling functionality from server/ to common/ so that we later can use it on client side too -> #44501

2022-05-03 11:21 Updated by: cazfi
댓글 올리기

Reply To cazfi

Moving treaty list handling functionality from server/ to common/ so that we later can use it on client side too -> #44501

While that's good development thread in itself, it's not really a dependency for this ticket. Implementation that would rely on that would have a bug that the effect would be active while players are negotiating, but not after they have agreed about it!

2022-07-03 05:35 Updated by: cazfi
  • 소유자 Update from (None) to cazfi
  • Resolution Update from None to Accepted
2022-07-03 05:40 Updated by: cazfi
댓글 올리기

Default client (gtk3.22) supported. gtk4-client has some code, but it's not functional (no clause is in gtk4-client). Other clients not touched.

2022-07-05 13:44 Updated by: cazfi
댓글 올리기

Reply To cazfi

Default client (gtk3.22) supported. gtk4-client has some code, but it's not functional (no clause is in gtk4-client). Other clients not touched.

I've got confused by the UI a couple of times, forgetting that the ruleset does not enable that new clause type. Time to do https://www.hostedredmine.com/issues/768421 and equivalent ones for the other clients.

2022-07-08 12:20 Updated by: cazfi
  • Status Update from Open to Closed
  • Resolution Update from Accepted to Fixed

Attachment File List

Edit

Please login to add comment to this ticket » Login