Results 1 to 9 of 9

Thread: [Rewrite] For those not on 2.0 timescale: Making events occur when you want them to

Hybrid View

Previous Post Previous Post   Next Post Next Post
  1. #1
    Relentless Bughunter Senior Member FactionHeir's Avatar
    Join Date
    Dec 2006
    Location
    London, UK
    Posts
    8,115

    Default [Rewrite] For those not on 2.0 timescale: Making events occur when you want them to

    Hello.
    My original tutorial is found in the citadel since about the time M2TW was released, but I figured I should repost it in this part of the forum where people actually look for modding tutorials.

    As such, find a slightly modified version of it here:

    Introduction:
    Have you ever been frustrated at the way turns to years is handled in M2TW, leaving your original royal family still reigning over your lands when the mongols invade or even when the black plague hits?
    Do you find it unrealistic how characters age by 0.5 years every winter but each turn makes 2 years pass?
    Have you thus changed your timescale to another value (i.e. 0.5 or 1.0 or any other) for more immersion factor?
    Have you wondered or been annoyed that this change then made mongols, timurids and all the other late game goodies never appear or appear when you already conquered the world?
    Or do you simply want to make things happen when you want them to?
    If so, this tutorial is for you.

    Please note that this only has an effect on new campaigns, not currently running ones due to the nature of the files involved

    The method:
    For this purpose, you want to be looking at the following files, that are found in your imperial_campaign folder, where your descr_strat.txt is also found.
    The files you need to change are the following:
    descr_events.txt
    campaign_script.txt
    desc_mercenaries.txt

    Note that all of these are read-only, so to fix that, just right-click, properties, uncheck read-only.

    Each of these files controls a different aspect of the events. The descr_events.txt is the main culprit and decides when what happens. The campaign script is mainly for when the actual mongol/timurid invasions occur and their waves, and descr_mercenaries controls when you get to hire certain mercenaries.

    descr_events.txt
    You will find a lot of words and numbers in that file. The numbers after the word "date" mean when those events appear.
    Note that date here refers to years, not turns. That means if you play under timescale 2.0 (the default), those dates mean [turns played]/2 and for timescale 1.0 means [turns played].
    Sometimes there is a second date given: this is the last date that this event will possibly occur (boundary)
    That is really the interesting part as you can modify those numbers to fit your needs and thus determine when you want which events to occur!

    Example:
    Code:
    event	historic	mongols_invasion_warn
    date	128 144
    This means that you get the mongol invasion warning (not the actual invasion) after playing 128 to 144 years. That on default timescale means 64 to 72 turns. If you were playing on timescale 0.5, you'd have to play 256 to 288 turns, which is probably never.

    Thus, if you play on 0.5 for instance, you want it to look like this:
    Code:
    event	historic	mongols_invasion_warn
    date	32 36
    If you play on 1.0, like this:
    Code:
    event	historic	mongols_invasion_warn
    date	64 72
    Note you can use any numbers there really and can make them appear wherever you want. Just keep in mind that the number is in years passed, not turns played and you need to use the appropriate conversion factor if any.

    campaign_script.txt
    This file controls when after the mongol_invasion_warn (or timurid warn) the actual invasion occurs. The format is the same as above, so date means years. As you can see, the first batch of mongols will invade:
    Code:
    event	counter	mongols_invasion
            	date	4 8
    4 to 8 years after the warn event occurs. Thus, if you play on 0.5 timescale, that is 8 to 16 years after the warning. To change this, do as above:

    For 0.5:
    Code:
    event	counter	mongols_invasion
            	date	1 2
    For 1.0:
    Code:
    event	counter	mongols_invasion
            	date	2 4
    Or again, any number you wish. For extra challenge you'd want to have them all appear 1 turn away from each other. Note that you not only change this single counter in this file but need to change all occurences of the various dates. The simplest way to do this is to continuously search for the word "date" and then change the numbers accordingly.

    descr_mercenaries.txt
    When you look at this file, you may feel slightly intimidated by the structure. It is fairly simple however, don't worry. Basically, you can see several things of importance. Some mercs become available as soon as gunpowder is developed. Those have the following tag:
    Code:
    events { gunpowder_discovered }
    Then some mercenaries are only available at certain times:
    Code:
    	unit Mercenary Pavise Crossbowmen	exp 0 cost 930 replenish 0.04 - 0.13 max 2 initial 0 start_year 1250 end_year 1450
    Which means this unit becomes available (i.e. starts pooling) at year 1250 and will no longer be available at 1450. Note that it refers to the game year, not years played.
    Considering the default start year is 1080 and the default timescale is 2.0, 1250 for instance means 85 turns played. So if you are playing on timescale 1.0 for instance, you want to change the above to this:

    Code:
    	unit Mercenary Pavise Crossbowmen	exp 0 cost 930 replenish 0.04 - 0.13 max 2 initial 0 start_year 1165 end_year 1265
    Note that you simply add the turn to year conversion onto 1080 to give the desired year number.
    Of course you might not even want mercenaries to disappear, so in this case simply delete that part of the code to make it look like this:

    Code:
    	unit Mercenary Pavise Crossbowmen	exp 0 cost 930 replenish 0.04 - 0.13 max 2 initial 0 start_year 1250
    Or you might want them to appear when the game starts, in which case you can also delete the start_year similar to the end_year.

    Further, you don't have to make it historical and as such you could just set the year you want them to appear. The game doesn't mind either way.

    Notes:
    I hope you enjoyed the more detailed rewrite of my original tutorial and if you have any questions or problems with this tutorial, please let me know by posting here or PMing me.

    If you are too lazy to make those changes, I am willing to send you my personal copy (for timescale 1.0) which is more modified than the above but fun to play. In that case PM me your email address so I can send it to you.
    Last edited by FactionHeir; 05-09-2007 at 19:07.
    Want gunpowder, mongols, and timurids to appear when YOU do?
    Playing on a different timescale and never get to see the new world or just wanting to change your timescale?
    Click here to read the solution
    Annoyed at laggy battles? Check this thread out for your performance needs
    Got low fps during siege battles in particular? This tutorial is for you
    Want to play M2TW as a Vanilla experience minus many annoying bugs? Get VanillaMod Visit the forum Readme
    Need improved and faster 2H animations? Download this! (included in VanillaMod 0.93)

  2. #2
    Slaying Pagans near you! Member TeutonicKnight's Avatar
    Join Date
    Oct 2004
    Posts
    151

    Default Re: [Rewrite] For those not on 2.0 timescale: Making events occur when you want them to

    FactionHeir, can I change this and have it affect a current game? Or will it only kick in on a new game?

  3. #3
    Relentless Bughunter Senior Member FactionHeir's Avatar
    Join Date
    Dec 2006
    Location
    London, UK
    Posts
    8,115

    Default Re: [Rewrite] For those not on 2.0 timescale: Making events occur when you want them to

    Those changes will sadly only affect a new game, not a running one.

    [edit]
    Updated first post to reflect this
    Last edited by FactionHeir; 05-09-2007 at 19:06.
    Want gunpowder, mongols, and timurids to appear when YOU do?
    Playing on a different timescale and never get to see the new world or just wanting to change your timescale?
    Click here to read the solution
    Annoyed at laggy battles? Check this thread out for your performance needs
    Got low fps during siege battles in particular? This tutorial is for you
    Want to play M2TW as a Vanilla experience minus many annoying bugs? Get VanillaMod Visit the forum Readme
    Need improved and faster 2H animations? Download this! (included in VanillaMod 0.93)

  4. #4

    Default Re: [Rewrite] For those not on 2.0 timescale: Making events occur when you want them to

    I have 1.02 and gunpowder event is in 210-220 not like in 1.1 where is 160-170 or somthing like that. Did any one have the same poblem?

  5. #5
    blaaaaaaaaaarg! Senior Member Lusted's Avatar
    Join Date
    Feb 2005
    Posts
    1,773

    Default Re: [Rewrite] For those not on 2.0 timescale: Making events occur when you want them to

    Yeah CA changed the date gunpwoder happens in 1.2.

  6. #6

    Default Re: [Rewrite] For those not on 2.0 timescale: Making events occur when you want them to

    Well i doesnt bother me at all. I like killing things whithout gunpowder anyway. That is the good thing about the medieval times. Otherways way playng the Medieval?

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
Single Sign On provided by vBSSO