• 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.
Status
Not open for further replies.

WignersFriend

Recruit
Nov 18, 2021
4
6
Short summary of your issue
Impossible to convert faith in high development counties

Game Version
1.5.0.1

What OS are you playing on?
Windows

What platform are you using?
Steam

What DLC do you have installed?
Royal Court,

Do you have mods enabled?
No

Have you tried verifying your game files (Steam only)?
No

How much "pain" is this causing you?
9

Please explain the issue you experienced in the most condensed way possible
I'm playing a game where I restored Rome and created a new religion and would like to convert the faith of my holdings. These holdings have very high development which slows down the 'convert faith in county' so much that it is impossible to convert them. I have set up the faith to have a lot of conversion-friendly modifiers, yet those modifiers all seem to be undone by the 'development penalty' for faith conversion. Putting a higher-learning patriarch in causes the development penalty to jump up so that it is impossible to convert the county under any circumstances. There is a brief moment after switching patriarchs where the development penalty hasn't updated yet where conversion can be done but this is a huge pain.

The patch notes for 1.5 included 'restructured Promote Culture and Convert Faith tasks modifier to avoid having negative progresses.' which seems like it is saying this should have been fixed but it is not. If it were just really slow it would be fine, but having zero progress despite huge faith-spreading modifiers cannot be right.

Please explain how to reproduce the issue
Have a county with very high development and try to convert the faith in it. No amount of faith-spreading modifiers will overcome the development penalty. The time to convert is infinite.

Is there anything else you think could help us identify/replicate the issue?
It seems like the development penalty is being calculated after the positive modifiers, overriding them and making them useless. Larger positive modifiers simply lead to a larger development penalty.

I have attached a save game
Yes

Upload Attachment
File(s) attached
 

Attachments

  • Hasteining_867_IronmanRomanTheoRepubMix.ck3
    39,8 MB · Views: 0
  • DevelopmentPenaltyHighDevelopment.png
    DevelopmentPenaltyHighDevelopment.png
    1,1 MB · Views: 0
  • DevelopmentPenaltyScalesWithPatriarch.png
    DevelopmentPenaltyScalesWithPatriarch.png
    1,2 MB · Views: 0
  • DevelopmentPenaltyTooLarge.png
    DevelopmentPenaltyTooLarge.png
    1,4 MB · Views: 0
I believe I have found where the error is in the code.


Here is an excerpt from the file '99_court_chaplain_values' lines 834-865

Code:
# Development penalty
convert_faith_development_penalty = {
    value = 0
    if = {
        limit = { exists = scope:county }
        add = scope:councillor.court_chaplain_conversion_base
        add = scope:councillor.court_chaplain_conversion_monthly_increase
        add = scope:councillor.court_chaplain_conversion_monthly_increase_perk_bonus
        add = {
            add = {
                add = scope:councillor.court_chaplain_progress_percentage
                multiply = scope:councillor.faith.fervor
            }
            subtract = {
                add = scope:councillor.court_chaplain_progress_percentage
                multiply = scope:county.faith.fervor
            }
            if = {
                limit = {
                    scope:councillor_liege = { has_perk = religious_icon_perk }
                }
                min = 0
            }
        }
        add = scope:councillor.court_chaplain_conversion_contextual_bonuses
        multiply = {
            subtract = scope:county.development_level
            divide = 100
            min = -0.9
        }
    }
}

And a snippet from '00_court_chaplain_tasks' lines 188-337

Code:
task_conversion = {
    position = councillor_court_chaplain


    task_type = task_type_county
    county_target = realm
    ai_county_target = realm
    task_progress = task_progress_percentage
    highlight_own_realm = yes


    effect_desc = {
        desc = task_conversion_effect_desc
        desc = {
            desc = council_task_possible_side_effects
            triggered_desc = {
                trigger = {
                    learning > mediocre_skill_rating
                }
                desc = task_conversion_opinion_gain
            }
            triggered_desc = {
                trigger = {
                    learning > mediocre_skill_rating
                }
                desc = task_conversion_development_gain
            }
            triggered_desc = {
                trigger = {
                    learning > mediocre_skill_rating
                }
                desc = task_conversion_levy_gain
            }
            triggered_desc = {
                trigger = {
                    learning < high_skill_rating
                }
                desc = task_conversion_resistance_to_conversion
            }
            triggered_desc = {
                trigger = {
                    learning < high_skill_rating
                }
                desc = task_conversion_opinion_loss
            }
        }
    }


    progress = {
        value = 0
        #Base conversion speed
        add = {
            value = court_chaplain_conversion_base
            desc = COURT_CHAPLAIN_PROGRESS_BASE
        }
        add = {
            value = scope:councillor.court_chaplain_conversion_monthly_increase
            desc = SCALED_COUNCILLOR_LEARNING_VALUE
        }
        #Fervor of Court Chaplain's Faith
        if = {
            limit = { # Conditional in order to not mess up the preview-tooltip
                exists = scope:county
                exists = scope:councillor.faith
                exists = scope:county.faith
            }
            add = {
                add = {
                    add = scope:councillor.court_chaplain_progress_percentage
                    multiply = scope:councillor.faith.fervor
                    multiply = convert_faith_fervor_modifier_scale
                }
                subtract = {
                    add = scope:councillor.court_chaplain_progress_percentage
                    multiply = scope:county.faith.fervor
                    multiply = convert_faith_fervor_modifier_scale
                }
                if = {
                    limit = {
                        scope:councillor_liege = { has_perk = religious_icon_perk }
                    }
                    min = 0
                }
                desc = COURT_CHAPLAIN_CONVERSION_FERVOR_IMPACT
            }
        }
        add = court_chaplain_conversion_contextual_bonuses
    
        # Development reduces the speed. Should be the last non-multiply modifier applied to avoid negative values
        if = {
            limit = {
                exists = scope:county
                scope:county = {
                    development_level > 0
                }
            }
            add = {
                value = scope:county.convert_faith_development_penalty
                desc = STEWARD_PROMOTE_CULTURE_DEVELOPMENT_PENALTY
            }
        }
    
        if = {
            limit = {
                scope:councillor.faith = {
                    has_doctrine_parameter = unreformed
                }
            }
            multiply = {
                value = conversion_unreformed_faith_penalty
                desc = COURT_CHAPLAIN_CONVERSION_UNREFORMED_FAITH_PENALTY
            }
        }
    
        # Conversion speed game rules
        if = {
            limit = {
                has_game_rule = slower_faith_conversion_speed
            }
            multiply = {
                value = slower_game_rule_value
                desc = GAME_RULE_SLOWER_REASON
            }
        }
        if = {
            limit = {
                has_game_rule = significantly_slower_faith_conversion_speed
            }
            multiply = {
                value = significantly_slower_game_rule_value
                desc = GAME_RULE_SIGNIFICANTLY_SLOWER_REASON
            }
        }
        if = {
            limit = {
                has_game_rule = faster_faith_conversion_speed
            }
            multiply = {
                value = faster_game_rule_value
                desc = GAME_RULE_FASTER_REASON
            }
        }
        if = {
            limit = {
                has_game_rule = significantly_faster_faith_conversion_speed
            }
            multiply = {
                value = significantly_faster_game_rule_value
                desc = GAME_RULE_SIGNIFICANTLY_FASTER_REASON
            }
        }
    }




As I understand it, the code for the development penalty is basically calculating what the conversion speed is before taking development into account, then it multiplies this by -development/100 (or -0.9, whichever is higher). This SHOULD make it so that high-development counties have (100-development)% of the usual conversion speed.

What has gone wrong is that first step: calculating the conversion speed. Specifically, in the code for converting counties (00_court_chaplain_tasks) the 'court_chaplain_conversion_increase_perk_bonus' does not seem to be included in the calculation. This means the actual conversion speed can be lower than what the development penalty thinks it is. This results in an overly-large development penalty.

I believe this could be fixed by removing line 841 from '99_court_chaplain_values'. Another option would be adding code to '00_court_chaplain_tasks' to properly include 'court_chaplain_conversion_increase_perk_bonus'.
 
Last edited:
  • 6
Reactions:
I think your first solution is the right one, because "court_chaplain_conversion_monthly_increase_perk_bonus" is already included in "court_chaplain_conversion_contextual_bonuses"
 
Hello,

Thank you for this report, we confirmed this issue and all the information has been sent to the developers.

We hope you continue to enjoy the game and preach the good word of your church.
 
  • 4Like
Reactions:
Status
Not open for further replies.