Need help with a simple change (or so it seems)

KotoThatGuy

Chieftain
Joined
Jan 29, 2023
Messages
1
Hi, wonderful person! I'm new to modding but I've already made several changes to the game that in my opinion make total sense. The next change is to ease the burden of Educator Pingala. He's a culture and science governor and is my favorite however, I don't think he has anything to do with Great Generals, Great Prophets, Engineers and Merchants. So I want to move double Great Person points of that kind to other governors' promotions. First, great prophets to Cardinal Moksha. Sounds simple, right?
We need to modify a single city's output for a certain type of great person when the governor's promotion is active. I made the following xml:
Code:
<?xml version="1.0" encoding="utf-8"?>
<GameInfo>
    <Types>
        <Row Type="MODIFIER_SINGLE_CITY_ADJUST_GREAT_PERSON_POINTS_PERCENT" Kind="KIND_MODIFIER"/>   
    </Types>
    <DynamicModifiers>
        <Row>
            <ModifierType>MODIFIER_SINGLE_CITY_ADJUST_GREAT_PERSON_POINTS_PERCENT</ModifierType>
            <CollectionType>COLLECTION_OWNER_CITY</CollectionType>
            <EffectType>EFFECT_ADJUST_GREAT_PERSON_POINTS_PERCENT</EffectType>
        </Row>
    </DynamicModifiers>
    <Modifiers>
        <Row>
            <ModifierId>DOUBLE_PROPHET_POINTS</ModifierId>
            <ModifierType>MODIFIER_SINGLE_CITY_ATTACH_MODIFIER</ModifierType>
            <SubjectRequirementSetId>CITY_HAS_GOVERNOR_PROMOTION_CARDINAL_BISHOP</SubjectRequirementSetId> <!-- Described somewhere else-->
        </Row>
        <Row>
            <ModifierId>TRAIT_DOUBLE_PROPHET_POINTS</ModifierId>
            <ModifierType>MODIFIER_SINGLE_CITY_ADJUST_GREAT_PERSON_POINTS_PERCENT</ModifierType>
        </Row>
    </Modifiers>
    <ModifierArguments>
        <Row>
            <ModifierId>DOUBLE_PROPHET_POINTS</ModifierId>
            <Name>ModifierId</Name>
            <Value>TRAIT_DOUBLE_PROPHET_POINTS</Value>
        </Row>
        <Row>
            <ModifierId>TRAIT_DOUBLE_PROPHET_POINTS</ModifierId>
            <Name>GreatPersonClassType</Name>
            <Value>GREAT_PERSON_CLASS_PROPHET</Value>
        </Row>
        <Row>
            <ModifierId>TRAIT_DOUBLE_PROPHET_POINTS</ModifierId>
            <Name>Amount</Name>
            <Value>100</Value>
        </Row>
    </ModifierArguments>
    <GovernorPromotionModifiers>
        <!-- Cardinal Moksha-->
        <Row>
            <GovernorPromotionType>GOVERNOR_PROMOTION_CARDINAL_BISHOP</GovernorPromotionType>
            <ModifierId>DOUBLE_PROPHET_POINTS</ModifierId>
        </Row>
    </GovernorPromotionModifiers>
</GameInfo>

It works fine, until you realize that when Moksha is in the city, the effect is not limited to that city but to the entire game in general. I looked through GameEffects table in my liteSQL and EFFECT_ADJUST_GREAT_PERSON_POINTS_PERCENT seems to be the only one described by the devs to suit one city and one type of specific person. Other effects increase ALL great people at once. Need your help!
 
Top Bottom