• 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.

Rockphed

Uncultured Barbarian
19 Badges
Jan 31, 2017
1.121
106
  • Crusader Kings II
  • Crusader Kings II: Way of Life
  • Crusader Kings II: Holy Fury
  • Shadowrun Returns
  • Surviving Mars: Digital Deluxe Edition
  • Crusader Kings II: Jade Dragon
  • Surviving Mars
  • Crusader Kings II: Monks and Mystics
  • Crusader Kings II: Reapers Due
  • Crusader Kings II: Conclave
  • Crusader Kings II: Horse Lords
  • Crusader Kings II: Sword of Islam
  • Crusader Kings II: Sunset Invasion
  • Crusader Kings II: Sons of Abraham
  • Crusader Kings II: The Republic
  • Crusader Kings II: Rajas of India
  • Crusader Kings II: The Old Gods
  • Crusader Kings II: Legacy of Rome
  • Crusader Kings II: Charlemagne
I have generally avoided playing in Africa with Holy Fury enabled because of the rain events. Rather than continue hijacking the quick questions thread, I am going to draw the discussion over here. If I get particularly ambitious, I will put together a small mod that (hopefully) will make the rain events more fun and less catastrophic doom. I have quoted the relevant posts in a spoiler below.

Is there a simple way to mod out the Africa rain events? Or at least to remove (or turn the mtth to 100+ years) all the "pay a bunch of gold or see a bunch of people die" events? I would love for there to have been a game rule to turn them off since they are so annoying.


I agree, those are incredibly annoying.

The relevant events are in events\hf_african_flavor_events.txt.

The specific event you're talking about is HF.15121.

The event that triggers it is HF.15120 just above it, which picks from a number of events at random. HF.15121 is only one of the possibilities.

HF.15120 itself is called from HF.15098 immediately above that, which is called from on_bi_yearly_pulse in common\on_actions.txt.

You have a number of options. You could add in a modifier with factor = 0 in HF.15120 for the random chance of triggering HF.15121 to be zero, you could add another option to HF.15121 that the player can select that doesn't kill off people or destroy buildings (optionally in exchange for some cost of your choice), you could go into common\on_actions.txt and transfer HF.15098 from on_bi_yearly_pulse to on_decade_pulse (that would make all the random events from HF.15120 happen less often, not only the landslide flooding), or you could add ai = yes to the trigger for HF.15121 so it never fires for the player but will fire for other rulers.

I'm sure there are many more options you could choose to address this too, so have at it! Hopefully this helps.
Yeah, I occasionally play in Africa... then I get hit by these events and immediately move my entire demesne out because it's just not worth it.

I keep telling myself I want to rebalance these events to be fun instead of awful, but it's a big job because IMO they need to be fully reimagined (not just tweaked)...

You're right, it would be a big job, but I'd like to know if you had any specific ideas to make them fun? It'd give you, me, or someone else a starting point at least.

Off the top of my head:
  • Mouldy artifacts:
    • Cost to repair should be proportional to artifact quality
    • Cost to repair should be capped (and the cap should also be proportional to quality)
    • Some types of artifacts should never become mouldy:
      • Equipped artifacts
      • Unique artifacts (eg. ark of the covenant)
      • Maybe some semi-unique artifacts too?
      • Maybe some types of artifact, if they are active?
      • Maybe some types of artifact, if they are magical or otherwise resistant to deterioration? (eg. emerald tablet)
    • Some recognition of the fact that preserving artifacts is difficult, so you need to actively pay for it somehow.
      • Maybe a great scriptorium which costs money to maintain but occasionally duplicates your books?
      • Maybe this would fit better as an expansion of the existing great library - some way to turn on/off active maintenance, and when it's on you won't lose books and you might actually trigger the event which gives you a book (I've never seen it in a real game)?
      • If active maintenance sounds good, the armory feature in the ??fortress?? could unlock a similar decision for weapons and armor? And the throne room in the palace for crown jewels?
    • Some way for vassals to protect against artifact loss would be good too. (The previous point is very focused on top lieges.)
    • Eventually, once this category is fun, expand it to cover the entire world (because sub-Saharan Africa is hardly the only place in the world where unmaintained artifacts will decay).
  • Building collapse:
    • Gold cost should be capped
    • Gold cost should vary between options
    • Add more event options (and possibly short event chains) based on traits, and ensure the AI chooses appropriately. Eg:
      • Brave/strong/brawny - dive in yourself and carry out a daring rescue (event chain: gain friendship, gain martial, risk of wounds and death)
      • Greedy - use the collapse as an excuse to expropriate land (ie. gain gold).
  • Rains:
    • Holding a rain dance should not be a "pious option" for Muslims/Jews/Christians/etc
    • Add an option to spend the capital's prosperity to subsidise the affected province
    • Gold cost to subsidise a province should be capped (eg. proportional to {number of holding slots} for {tribals & nomads} and {number of holdings} for all non-tribals)
    • Heavy rains could expose ancient ruins (ie. new mini event chain)
    • Mitigate droughts by building cisterns in holdings (these would be a new type of building; the amount of water in the cistern would be tracked using province variables and updated in relevant events).
Basically, look at RD's epidemics (bad! really bad!), hospitals (really expensive!) and seclusion (unique events and event chains!), and try to do something similar for the rains. Of course, RD is an entire DLC, ie. thousands of hours of work, so you probably need to scale back your ambitions somewhat.

I've considered doing something about it in the past, but have never gotten around to it. My broad design ideas are:

- More options for preventative measures so that you can choose between taking your chances and spending money up front to hopefully avoid the worst outcomes (with some maintenance events to keep the preventative measures in place).

- More neutral/mildly negative outcomes so that it doesn't feel like disaster after disaster. It shouldn't generally rise to a level where the ruler personally needs to get involved, and memorable disasters (loss of courtiers/artefacts/etc.) shouldn't be frequent.

- Saner caps on the scaled_wealth; some of the events can be excessively costly.

- Other locations could use their own issues (e.g. unusually severe winters, earthquakes, floods near rivers) so that the "Just move out of Africa to avoid the weather/disaster mechanic!" isn't an option, because "Avoid at all cost!" is generally not good design.

I won't guarantee that I will ever get beyond "this would be nice", but the first step is to see how the rain events actually work. I must admit that I have only interacted with them a couple times (and I got myself out of Africa almost as fast as possible).

As for disaster events that could be used elsewhere, some ideas come to mind:
  • Volcanoes in various places could erupt. This could easily turn into the worst of the rain events, but having event chains (that last multiple years) where a province gets blasted and then slowly rebuilds could be interesting in Iceland and Italy.
  • Yearly floods along major rivers could bring massive crop yields (and prosperity/wealth) or famine and death. If the flood is too high or too low it can cause problems.
  • Winters in high mountains or the far north can drive men mad. But, if they don't get enough snow then the people suffer.

That, however, is likely getting ahead of things. First we would need to make the rain events in Africa fun and balanced. I suspect they included the catastrophic doom in an attempt at balance and not having a right answer, but when the game can randomly take several years worth of building (in time to acquire the gold and in time to build the thing) or my carefully groomed heir with 12 bloodlines and a PCS of 300, then it just becomes frustrating.
 
but when the game can randomly take several years worth of building (in time to acquire the gold and in time to build the thing) or my carefully groomed heir with 12 bloodlines and a PCS of 300, then it just becomes frustrating.

You know, that is possibly also something to look at; I've previously edited the nomad "Save your horse or your spouse" event as below

Original (CleanSlated):
Code:
any_spouse = {
    at_location = ROOT
    is_inaccessible_or_incapable_trigger = no
    ai = yes
}

My edit:
Code:
any_spouse = {
    at_location = ROOT
    is_inaccessible_or_incapable_trigger = no
    ai = yes
    OR = {
        is_maimed_trigger = yes
        is_weak_trigger = yes
        combat_rating < 50
    }
    OR = {
        is_maimed_trigger = yes
        is_strong_trigger = no
        is_ill = yes
    }
}

because some characters should either be invalid selections for some things or should be much less likely to be selected due to preferred_limits.

Unsure how buildings could be sanity checked without checking for individual types (which might be expensive, and which would require subjectively deciding that building type X cannot possibly be damaged by a flood); perhaps that should simply be rare but with some negative "Damaged buildings" modifier lowering e.g. levy size/recovery rate/tax rate that lasts for a good while if you don't elect to repair them.
 
Normally, I'm a solo modder, but I think this is one of the few areas of vanilla CK2 that could benefit from assembling a team to deal with the problem. (For one person, this is a daunting project. However, I think it can be segmented into a large number of independent small projects.)

I'm also of the view that it's better to publish frequent small updates instead of waiting 5 years for one massive-totally-game-changing update. In this context, this means something like: first make Africa playable; then make Africa enjoyable; then expand to new regions.

In other words, I'm up for making this a team effort, with shared github etc, if anyone else is?
 
Normally, I'm a solo modder, but I think this is one of the few areas of vanilla CK2 that could benefit from assembling a team to deal with the problem. (For one person, this is a daunting project. However, I think it can be segmented into a large number of independent small projects.)

I'm also of the view that it's better to publish frequent small updates instead of waiting 5 years for one massive-totally-game-changing update. In this context, this means something like: first make Africa playable; then make Africa enjoyable; then expand to new regions.

In other words, I'm up for making this a team effort, with shared github etc, if anyone else is?
I would love to do that, but I have stretched myself rather thin. I was going to, at least, figure out how the events worked and think up some ways to make them more fun.

Unfortunately, there is this completely undocumented bit of magic going on in the files.
Code:
change_rain_effect = yes
Every time I open the files to start figuring out what they are doing (and if there is a way to have them do something else), I see that and have to wonder what code it is calling up. It doesn't take a list of possible modifiers. It only takes "yes".

On the other hand, defining what would make the events " fun" seems impossible. On the surface, none of the events seem out of place. Taken together, however, they just seem to punish playing in Africa.

The first thing is to replace anywhere where it destroys buildings with a negative modifier. This should be straightforward, I just need to find time to do it.

Then I would like to replace the current single events with chains. I have a vision of a chain leading up to a mudslide or flood where one of the events will have an option to sit below a dam sipping tea because you are that confident in it. If you have high stewardship and/or architect your confidence is rewarded. If you are proud and unlearned you can end up embarrassed (and maybe dead).

Perhaps instead of "rain dance" being an event option it should be a decision. "Pray for rain" if you have a province in drought or drought risk. It would call up an event chain that might result in a weather reroll (or a direct weather change for lucky/effective imploring of the gods).
 
Every time I open the files to start figuring out what they are doing (and if there is a way to have them do something else), I see that and have to wonder what code it is calling up. It doesn't take a list of possible modifiers. It only takes "yes

It's likely a scripted_effect.
 
I would love to do that, but I have stretched myself rather thin. I was going to, at least, figure out how the events worked and think up some ways to make them more fun.

Unfortunately, there is this completely undocumented bit of magic going on in the files.
Code:
change_rain_effect = yes
Every time I open the files to start figuring out what they are doing (and if there is a way to have them do something else), I see that and have to wonder what code it is calling up. It doesn't take a list of possible modifiers. It only takes "yes".

It's a scripted effect. In this case, it's located at ...\common\scripted_effects\00_scripted_effects.txt (line 28121).

On the other hand, defining what would make the events " fun" seems impossible. On the surface, none of the events seem out of place. Taken together, however, they just seem to punish playing in Africa.

The first thing is to replace anywhere where it destroys buildings with a negative modifier. This should be straightforward, I just need to find time to do it.

Then I would like to replace the current single events with chains. I have a vision of a chain leading up to a mudslide or flood where one of the events will have an option to sit below a dam sipping tea because you are that confident in it. If you have high stewardship and/or architect your confidence is rewarded. If you are proud and unlearned you can end up embarrassed (and maybe dead).

Perhaps instead of "rain dance" being an event option it should be a decision. "Pray for rain" if you have a province in drought or drought risk. It would call up an event chain that might result in a weather reroll (or a direct weather change for lucky/effective imploring of the gods).
Nice ideas :)

For the dam, this is something that would benefit greatly from an event chain.
(1) Hidden event to decide dam quality 1-5 - random, weighted by realm stewardship and province prosperity;
(2) Event to inspect the dam - do it yourself or send your steward, correctness of report depends on stewardship/architect trait;
(3) Result of inspection received - choose last-minute repairs (increase dam quality by 1), evacuation, daring tea party under the dam, cruel disaster party above the dam, etc;
(4) Outcome: choose random rain amount of 3-5, dam fails if dam quality < rain amount, assign traits/consequences accordingly.

You could probably simplify the "divine intervention" by having only one path, with different localisation depending on religion. (Eg: "Pray for rain" for organised religions except reformed african, "rain dance" for africans and unreformed pagan.)