1. We have added a Gift Upgrades feature that allows you to gift an account upgrade to another member, just in time for the holiday season. You can see the gift option when going to the Account Upgrades screen, or on any user profile screen.
    Dismiss Notice

[R&F] Boost loyalty only if condition is met?

Discussion in 'Mod Creation Help' started by YayIguess, Mar 1, 2018.

  1. YayIguess

    YayIguess Chieftain

    Joined:
    Mar 1, 2018
    Messages:
    1
    Gender:
    Male
    So I'm making a Canada civ and I am trying to make the civ UA be any city on the same continent as the capital receives a boost in loyalty (ie +3/+4). I think I've figured out how to generically boost all cities loyalty, but I'm not sure how to go about making it only apply to certain cities.

    Slightly off-topic but is there a file that has a list of all modifiers in the game that is up-to-date with R&F?
     
  2. isau

    isau Warlord

    Joined:
    Jan 15, 2007
    Messages:
    2,751
    At a minimum it sounds like you need to add (or reuse one created by Firaxis) a RequirementSet that specifies which cities the Modifier will apply to.

    I just glanced at the database and don't right away see a RequirementSet that checks to be a sure city is on the same continent. There is one for different continents (CITY_NOT_OWNER_CAPITAL_CONTINENT_REQUIREMENTS). You should be able to create a new RequirementSet that reverses the requirements contained in that set by just copying the code that creates that RequirementSet and inversing the internal Requirements with the Inverse field.

    If you are using SQL you can view data about about that particular RequirementSet with this SQL query:

    Code:
    select * from requirementsets
    
    left join requirementsetrequirements on requirementsetrequirements.RequirementSetId = requirementsets.RequirementSetId
    
    left join requirements on requirements.requirementid = requirementsetrequirements.RequirementId
    
    left join requirementarguments on requirementarguments.RequirementId = requirements.requirementid
    
    where requirementsets.requirementsetid = 'CITY_NOT_OWNER_CAPITAL_CONTINENT_REQUIREMENTS'
    

    Screenshot below shows what that query would tell you about the existing implementation.


    upload_2018-3-1_0-42-45.png
     

Share This Page