moretrim / ccHFM

Community Curated HFM
14 stars 3 forks source link

Delay in Persian Kurdish tag autonomy revocation #105

Closed rogerburks closed 3 years ago

rogerburks commented 3 years ago

References isssue #103

The code for the decision revoke_kurdish_autonomy does not seem to be working as intended, based on some observations regarding the Bedr Khan Rebellion. Take for instance Bohtan upon rebellion, which does not include any part of Tabriz, nor any province that is normally part of Persia:

image

Yet, Persia's triggered war against Bohtan has war goals to Acquire Tabriz, and Acquire Luristan, but Bohtan has no province from either of these states:

image

This suggests that the event chain is incomplete, and that Bohtan is meant to annex the Persian Kurdistan satellites when the event expands Bohtan. Additional evidence of this is indicated by the code in event 986503, which attempts to annex Kurdish any_country to Bohtan. It includes the Persian satellites Mukriyan (MKN) and Ardalan (RDL). However, these tags, when played by the a.i., are invariably annexed to Persia by this time and their cores are replaced by Kurdistan cores.

https://github.com/moretrim/ccHFM/blob/e9e6e9bad7e585acd1b082da13b73e0374f1d6e5/ccHFM/events/Ottoman%20Empire.txt#L1969-L1984

This suggests that the early annexation of a.i. Mukriyan and Ardalan in revoke_kurdish_autonomy is firing prematurely. Ardalan is reported to have ended in 1865 at the earliest. Mukriyan officially ended circa 1800, but held local control of its area until World War I.

It is realistic to believe that Bedr Khan should have control of the Persian Kurdish cores, given mention that he extended his control to Mahabad, and therefore it seems appropriate to annex them to Bohtan, and then to return them to Persia after the rebellion. This does not happen to a player controlled Ardalan or Mukriyan, which both already have protection against annexation by involved decisions and events.

One reason to fix this is that it makes intuitive sense to take Tabriz early as the Ottoman Empire, but the surprising results of the post-rebellion event make the retained provinces potentially inaccessible to the Ottomans. If Mukriyan continues to survive until at least the rebellion is defeated, the player can better know when to take Tabriz.

This commit delays revoke_kurdish_autonomy until at least after Bohtan has been annexed, at most until Persia reaches 50% westernization progress. The westernization progress change is followed from the unfinished HFM 1.28 development branch.

During testing as an observer, Bohtan looks good with the fix in place. After the war, the Kurdish tags are not present anymore:

image

Player protection remains for Persian Kurdish tags during Bohtan formation:

image

and it is retained for when Persia reaches 50% westernization, which is good, since this is the only reliable way to make Kurdistan in my experience: image

rogerburks commented 3 years ago

Ah yes I only noticed the naming convention yesterday. Definitely good stuff, although I had forgotten to apply it here. I have a ton of namespaced stuff in the in-progress Yemen update.