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

Dynamic Byzantium

Discussion in 'Rhye's and Fall Modmods' started by Baldyr, Oct 3, 2010.

  1. Baldyr

    Baldyr "Hit It"

    Joined:
    Dec 5, 2009
    Messages:
    5,530
    Location:
    Sweden
    This is a small mod-scenario enabling the AI only controlled Byzantine Civilization to spawn in the 3000 BC scenario for the RFC Epic/Marathon v2.1 mod-mod. It will not work for the official release for Rhye's and Fall of Civilization, so don't even try it.

    Installation


    To install, unpack the .py files contained in the attached .zip archive to the ...\Sid Meier's Civilization 4\Beyond the Sword\Mods\RFCMarathon\Assets\Python\ folder.

    Note that you need to replace the default version of the CvRFCEventHandler.py file with the one supplied with this mod-scenario. Also note that installing this mod-scenario will install the PyScenario scenario scripting application to your mod. To disable both PyScenario and the mod-scenario permanently, simply replace the CvRFCEventHandler.py with the original version. (Installing any future release of the RFC Epic/Marathon mod-mod will also do the trick.)

    Description

    The mod-scenario is actually a PyScenario script that will check if the Roman Civilization is alive during the 4th century AD and has negative Stability. Then, and only then, will the Empire be split into a Western and a Eastern part. Only Roman cities will initially flip to the newly born Byzantine Civilization - and if plausible the capital will be Constantinople.

    Note that if the Celtic Civilization is still around at this point it will "collapse" into independent cities in order to make room for the new Civilization. (The two actually share the player and team instances in the game, so both can't exist in the same scenario.)

    A second flip in the 5th century will convert any minor cities in the Mediterranean region to the Byzantines - and if the original Roman Civ has collapsed by then its former holdings will join the new Eastern Roman Empire.

    Scenario maker's notes
    Spoiler :
    As this mod-scenario is done with PyScenario it is both readily editable - and can also be included in other mod-mods or directly copy-pasted into another PyScenario script. There is one thing to consider however, and this is the Custom.py file that is included with this release. Because this Python module holds the custom civilization() method that is used to actually change the Celtic Civ into the Byzantine one.

    To enable this method into another PyScenario script you both need to include the Custom module and add these lines to your own Scenario.py file:
    Code:
    from Custom import *
    Trigger.civilization = civilization
    This is the API entry for the custom Action:

    civilization( eCiv=None, flag=None, eLeader=None )
    Changing any of the default None values to a valid value will change the properties of the Target Player. The eCiv setting is however not a PlayerTypes value but rather the CivilizationTypes value for the new Civ. The flag setting is the string name of the new flag graphic. And the eLeader setting is the preferred LeaderHeadTypes value for the new leader.

    Note however that due to limitations in the mod and in the Python tools available this probably shouldn't be done with any Major Civs - nor can it be used to change the name of any player. But it should be quite possible to do something like having the Holy Roman Empire to be the original German Civ - and later - if the Civ has collapsed - respawn it as the proper (modern) German Civ. Because the dynamic names in the mod would pretty much mirror this transformation anyway.

    These limitations is the reason why the civilization() method is released in the form of a add-on rather than as a part of the main PyScenario library of Trigger methods.
     

    Attached Files:

  2. KMRblue1027

    KMRblue1027 The Crown!

    Joined:
    Mar 4, 2010
    Messages:
    2,194
    Location:
    Hamilton, NJ
    Wow cool I might need to use this. :)
     
  3. Baldyr

    Baldyr "Hit It"

    Joined:
    Dec 5, 2009
    Messages:
    5,530
    Location:
    Sweden
    Well, at least test it! I haven't actually played it myself so I would be very interested to hear what you think!
     
  4. KMRblue1027

    KMRblue1027 The Crown!

    Joined:
    Mar 4, 2010
    Messages:
    2,194
    Location:
    Hamilton, NJ
    I'm kinda in the middle of getting back into Civ2:ToT to play multiplayer with my dad and his girlfriend. (We don't have 3 computers that can run Civ4 :sad:)
     
  5. Power_of_Beer

    Power_of_Beer Prince

    Joined:
    Jan 15, 2009
    Messages:
    303
    Location:
    Sol III
    I get defeated at the start of the game, installed it exactly how you described it :(
     
  6. Baldyr

    Baldyr "Hit It"

    Joined:
    Dec 5, 2009
    Messages:
    5,530
    Location:
    Sweden
    This does not sound good. Either you're not using the current version of RFC Epic/Marathon (v2.1) or you messed up the install or I have messed up the mod.

    Can anyone else confirm that the mod-scenario works, please?
     
  7. Power_of_Beer

    Power_of_Beer Prince

    Joined:
    Jan 15, 2009
    Messages:
    303
    Location:
    Sol III
    Ok I messed up the version, now it works.

    I did three testruns, vikings, normal speed. Two times the Empire got split; In one of them, Constantinople seemed to be razed by barbarians (I got the message that the empire got split).
    The other one, they are alive, but only with Constantinople, surrounded by Greece and Babylonia. There is a bug with the message announcing the ne capital as you can see :)

    Edit 2: I played about 15 more turns; the message keeps appearing every turn. Furthermore, Inverness became also Byzantine.
     
  8. Baldyr

    Baldyr "Hit It"

    Joined:
    Dec 5, 2009
    Messages:
    5,530
    Location:
    Sweden
    This is good news! :king:

    Also, thanks for the bug report! :goodjob:

    I've attached a replacement Scenario.py file with the fix to this post. The main download is also updated.
     

    Attached Files:

  9. Baldyr

    Baldyr "Hit It"

    Joined:
    Dec 5, 2009
    Messages:
    5,530
    Location:
    Sweden
    This mod-mod is up for updating to the current version of RFCM. If anyone has any feedback they'd like to share, now would be a good time.
     
  10. G-Max

    G-Max Deity

    Joined:
    May 20, 2006
    Messages:
    2,556
    I would have eliminated the Gauls entirely and replaced all of their functions with Barbarians (i.e., when those three cities spawn in France, they do so as Barbarian cities). Then you wouldn't need to convert them to Byzantines.
     
  11. Leoreth

    Leoreth 心の怪盗団 Moderator

    Joined:
    Aug 23, 2009
    Messages:
    33,093
    Gender:
    Male
    Location:
    Leblanc
    The Gauls need to stay Gauls or else Rome's problems are even easier solved by the Great Wall.
     
  12. G-Max

    G-Max Deity

    Joined:
    May 20, 2006
    Messages:
    2,556
    Problems? The Gauls provide three free cities in France and do jack else.
     
  13. aprogressivist

    aprogressivist Chieftain

    Joined:
    Aug 15, 2009
    Messages:
    62
    Surely this shouldn't happen if Greece is around? I mean, the Byzantine Empire was for all intents and purposes the Greek parts of the Empire picking up the Roman ball when it got dropped. It's really odd to see Greece and the Byzantines around...
     
  14. Baldyr

    Baldyr "Hit It"

    Joined:
    Dec 5, 2009
    Messages:
    5,530
    Location:
    Sweden
    You're probably right, and I might update this scenario when I release the new PyScenario version (no arrival date yet). But since I posted this as a sample scenario it would for all intended purposes be alright if you went ahead and implemented whatever change you like yourself. Because what you propose isn't very hard to implement, actually, and once you get the hang of it you'd be able to make your own scenarios also.
     

Share This Page