Results 1 to 9 of 9

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

  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?

  7. #7

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

    can you create a second wave of mogols say 20 years after the first wave playing on the basic turn basis?

  8. #8
    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

    Yes you could.

    All you'd have to do is create a new event in the events file and then copy the exisiting mongol invasion in the campaign script and do some minor modifications to fit to your new event and other factors.

    Thats outside the scope of this particular tutorial though. Alpaca wrote something on the camapign script file a while back which you can read for details.
    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)

  9. #9

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

    Sorry to bump an old topic, but would I be right in just assuming you divide all the numbers by 4 seeing as you're also dividing the turn length by 4?

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