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

[MODCOMP] Multiple Favorite Civics

Discussion in 'Civ4 - Mod Components' started by TheLopez, Sep 15, 2010.

  1. TheLopez

    TheLopez Deity

    Joined:
    Jan 16, 2006
    Messages:
    2,525
    Location:
    Oregon
    Multiple Favorite Civics v0.1BtS
    By: TheLopez

    Last Updated 09/15/10

    Version: v0.1BtS
    Patch Compatibility: Beyond the Sword v3.19
    MP Compatible: ?
    Download Mod v0.1BtS

    Description:
    This mod expands the favorite civic feature so instead of leaders having a
    single favorite civic they can have multiple favorite civics. For instance
    instead of just having the representation civic as their favorite Julius Caesar
    now has representation and slavery as favorite civics. The following is the
    favorite civics tag definition for Julius Caesar:
    Code:
          <FavoriteCivics>
            <FavoriteCivic>
              <CivicType>CIVIC_REPRESENTATION</CivicType>
              <bFavoriteCivic>1</bFavoriteCivic>
            </FavoriteCivic>
            <FavoriteCivic>
              <CivicType>CIVIC_SLAVERY</CivicType>
              <bFavoriteCivic>1</bFavoriteCivic>
            </FavoriteCivic>
          </FavoriteCivics>
    
    Installation Instructions:

    1) Unzip this into the "bts_install_folder\Mods\" folder.
    2) Open the CivilizationIV.ini configuration file
    3) Change the Mod line to read: Mod = Mods\Multiple Favorite Civics
    4) Load the game.
    5) Then play as normal.


    -----Notes to Modmakers-----

    If you want to use the Water Animals Mod in your mod I have tried to make
    things as easy as possible for you. In the XML files modified sections are
    enclosed by:
    <!-- -->
    <!-- Multiple Favorite Civics Start -->
    <!-- -->
    and
    <!-- -->
    <!-- Multiple Favorite Civics End -->
    <!-- -->

    In the SDK files I have added // < Multiple Favorite Civics Start > and
    // < Multiple Favorite Civics End > in all of the places that I have made changes to
    the original files.

    In the python files I have added # < Multiple Favorite Civics Start > and
    # < Multiple Favorite Civics End > in all of the places that I have made changes to
    the original files.


    -----Version Information-----

    -----v0.1BtS------

    - Setup the Multiple Favorite Civics infrastructure

    - Changed the <FavoriteCivic> tag to <FavoriteCivics> and added the underlying
    required infrastructure to enable this feature.

    - Updated the CvPediaLeader.py file to correctly display more than one civic.

    -----===Credits & Thanks===-----

    - Exavier - Composite Mod - readme.txt format

    - PsiCorps For providing the idea for this mod.
     
  2. The_J

    The_J Say No 2 Net Validations Retired Moderator Supporter

    Joined:
    Oct 22, 2008
    Messages:
    31,776
    Location:
    DE/NL/FR
    Nice, again :goodjob:.

    :think: what will happen, when you set 2 civics from the same column as favourite?
    e.g. representation and universal suffrage?
     
  3. TheLopez

    TheLopez Deity

    Joined:
    Jan 16, 2006
    Messages:
    2,525
    Location:
    Oregon
    Good question. It will select the highest valued one... I wondered this myself when giving slavery to Alexander and then Julius. They used the slavery civic for a while but I had also given them the tech to have the Emancipation civic. A few turns later they switched to Emancipation... I thought this was a bug on my side until I contacted them and saw that it was cheaper and made their people happier to have Emancipation. So to answer your question, they will stick to their favorite civic until some other civic heavily outweighs the want to use their own favorite civic... don't believe me? Then try it out for yourself:
    1) Start a game with Alexander as one of the AI players.
    2) Play a turn (so Alexander will found his capital)
    3) Give Alexander Feudalism, Civil Service, Nationalism and Liberalism.
    4) Plant a great spy in his capital
    5) Contact him and check what his civics are (they should be the tier 1 civics)
    6) Play a few turns and you'll see that he will skip vassalage and go to Bureaucracy


    An alternate would be to first give him Feudalism only so he switches to Vassalage, wait a turn or two and then give him Civil Service, Nationalism and Liberalism. Give yourself Feudalism and then wait a couple of turns and then contact him. Look at what his message is in the trade screen if you try to get him to go to Vassalage.
     
  4. Cybah

    Cybah Emperor

    Joined:
    Jun 22, 2007
    Messages:
    1,480
    Any problems with sevopedia? Or untested? :p
     
  5. TheLopez

    TheLopez Deity

    Joined:
    Jan 16, 2006
    Messages:
    2,525
    Location:
    Oregon
    Its all pretty self contained so you shouldn't have any problems merging it in...
     
  6. PsiCorps

    PsiCorps FF: Babylon 5 mod team

    Joined:
    Dec 30, 2007
    Messages:
    1,425
    Location:
    Britain
    Excellent, thanks TheLopez, does exactly what i wanted it to do.
     
  7. dhaniell

    dhaniell Chieftain

    Joined:
    Oct 24, 2010
    Messages:
    30
    Location:
    Sweden
    Excellent mod. Unfortunately the .dll doesnt support 18+ civs :(.
     
  8. TheLopez

    TheLopez Deity

    Joined:
    Jan 16, 2006
    Messages:
    2,525
    Location:
    Oregon
    Thanks. This mod comp was not made to address the lack of 18+ civ support. You are more than welcome to take the source code for this mod and merge it into the sour e of a mod that does
     
  9. dhaniell

    dhaniell Chieftain

    Joined:
    Oct 24, 2010
    Messages:
    30
    Location:
    Sweden
    '

    And what would be the easiest way to do that? From what i've gathered there seems to be a whole science when it comes to editing .dll.files. :crazyeye:
     
  10. TheLopez

    TheLopez Deity

    Joined:
    Jan 16, 2006
    Messages:
    2,525
    Location:
    Oregon
    Get a free C++ compiler and IDE, get the SDK from the DLL directory in the BTS install folder. Make a backup copy of the files there and merge the two sets of source codes together. I would normally do it but right now I am really slammed at work.
     
  11. dhaniell

    dhaniell Chieftain

    Joined:
    Oct 24, 2010
    Messages:
    30
    Location:
    Sweden
    Thank you. As I feared, but I will look into it. Dont bother, after some reading about modding in civIV (total noob) I feel a little silly for "complaing" about something for which the mod was not intended for.

    A little more ontopic though, im having a issue when I install this mod according to your instructions about changing the .ini. The game just says something like "mods/Multi... invalid direction. Ignoring" Any idea why?
     
  12. LunarMongoose

    LunarMongoose King

    Joined:
    Jan 29, 2006
    Messages:
    731
    Gender:
    Male
    Location:
    Boston, MA, USA
    Hi Lopez! *hugs*

    I like this, will consider adding it to my mod, my only concern is that as it is the AIs tend to hammer me with requests/demands to change my civics... I'm a bit worried I'll be hearing from them even more often now heh. Though I suppose that could be fixed. :)
     
  13. justinian66

    justinian66 Chieftain

    Joined:
    Jul 22, 2010
    Messages:
    70
    Ive been looking for a mod like this forever and now i've finally stumbled upon it. But i have some questions about merging it into another mod. First off, im pretty noobish when it comes to modding, but i've been learning and experimenting for awhile with it. In the readme it says you've made changes to the SDK , Python, and XML files. If i were just to coppy the changes in those individual files itno the corresponding files in another mod, will it just crash the game or will it work? An explanation on how to merge this mod with others would be awesome, so if you wouldnt mind posting again on how to do this or provide me with a link to somewhere else that will help explain, it would be greatly appreciated!

    Thanks!
     

Share This Page