• We have updated our Community Code of Conduct. Please read through the new rules for the forum that are an integral part of Paradox Interactive’s User Agreement.

Cheexsta

Veni, vidi, vici
60 Badges
Dec 22, 2005
2.897
62
  • Europa Universalis IV: Cradle of Civilization
  • Europa Universalis IV: Common Sense
  • Europa Universalis IV: Cossacks
  • Europa Universalis IV: Mare Nostrum
  • Stellaris
  • Stellaris: Galaxy Edition
  • Stellaris: Galaxy Edition
  • Stellaris Sign-up
  • Europa Universalis IV: Rights of Man
  • Stellaris: Digital Anniversary Edition
  • Stellaris: Leviathans Story Pack
  • Stellaris - Path to Destruction bundle
  • Europa Universalis IV: Mandate of Heaven
  • Europa Universalis IV: Third Rome
  • Stellaris: Synthetic Dawn
  • Mount & Blade: Warband
  • Stellaris: Humanoids Species Pack
  • Stellaris: Apocalypse
  • Europa Universalis IV: Rule Britannia
  • Stellaris: Distant Stars
  • Stellaris: Megacorp
  • Imperator: Rome Deluxe Edition
  • Imperator: Rome
  • Imperator: Rome Sign Up
  • Stellaris: Ancient Relics
  • Stellaris: Lithoids
  • Stellaris: Federations
  • Imperator: Rome - Magna Graecia
  • Stellaris: Necroids
  • Stellaris: Nemesis
  • Heir to the Throne
  • Crusader Kings II: Legacy of Rome
  • Crusader Kings II: The Old Gods
  • Crusader Kings II: Rajas of India
  • Crusader Kings II: The Republic
  • Crusader Kings II: Sons of Abraham
  • Crusader Kings II: Sunset Invasion
  • Crusader Kings II: Sword of Islam
  • Europa Universalis III
  • Europa Universalis III: Chronicles
  • Divine Wind
  • Europa Universalis IV
  • Europa Universalis IV: Art of War
  • Europa Universalis IV: Conquest of Paradise
  • Europa Universalis IV: Wealth of Nations
  • Crusader Kings II
  • Europa Universalis III Complete
  • Magicka
  • Europa Universalis III Complete
  • Europa Universalis IV: Res Publica
Hey fellas, I'm having trouble getting the "month = { " trigger to work properly.

Now, what I'm trying to do is get an even firing in a specific month. I've found that you can consistently get an event to fire almost immediately (within 2-3 days) when you set the MTTH to -1 day, so that's no issue. Here are the triggers that I'm using:

Code:
	trigger = {
		government = republic
		tag = ROM
		month = 3
	}
Now, looking at the EU3 modding documentation, the month trigger looks for whether the current month is the same or before the value given. In this example, the event will fire during January, February or March.

I'm aware that it will keep firing, that's something that can be worked out easily once I have this hurdle overcome.

The obvious way around this is to add:

Code:
		NOT = { month = 2 }
so that it doesn't trigger before March. However, it looks like this trigger doesn't like the NOT boolean, so adding this line means the event won't fire. I've tried removing the original month trigger, but it looks like the NOT completely messes it up.

The only other way I can think of doing this is by adding a title that is automatically given to all characters in January (month = 1) and removed after a 2-month term, replacing it with another title that expires in January. This would allow the event to keep track of the months by using a trigger that checks for which title the characters have at any given time.

This is a bit of an inelegant solution, though, and I was wondering if anyone knows how to fix this within the event itself?
 
I think january is month = 0 not month = 1.

Are you sure that the EU3 modding docs are right on the before issue? Seems opposite to every other trigger out there. And if it is wrong it would explain why the event doesn't trigger.
 
The docs mention both month and year as being equal to or before.

I hadn't considered that January = 0, I just assumed it was the same as the dating system (ie 474.1.1 = Jan 1st, 474 AUC).

Without the NOT line, the event triggers just fine. It just triggers before March as well, which is not what I want. So I'm pretty sure that the trigger is correct.

It's as soon as I add the NOT line that it messes up; it doesn't trigger at all, even after letting the game go for a few years.
 
The docs mention both month and year as being equal to or before.

I hadn't considered that January = 0, I just assumed it was the same as the dating system (ie 474.1.1 = Jan 1st, 474 AUC).

Without the NOT line, the event triggers just fine. It just triggers before March as well, which is not what I want. So I'm pretty sure that the trigger is correct.

It's as soon as I add the NOT line that it messes up; it doesn't trigger at all, even after letting the game go for a few years.

Indeed 0=january, 1=february, etc. So, if you want in to trigger in march you need to set up: month=2
 
Ok, I stand corrected on that point, then. But the issue still stands: setting month = 2 means that the event will trigger during any month before and up to March, and adding NOT = { month = 1 } will stop the event from firing at all.
 
Perhaps this is relates to the way MTTH is calculated by the engine. Try setting the event span to two months rather than one. Or try using month = 0. It could be that the game needs at least two months to calculate MTTH properly.
 
Ok, I stand corrected on that point, then. But the issue still stands: setting month = 2 means that the event will trigger during any month before and up to March, and adding NOT = { month = 1 } will stop the event from firing at all.

I haven't modded this before, but doesn't it have something to do with the order of statements? I mean there might be a difference between putting the NOT statement before and after month = 2? Give it a try, wont' hurt.
 
Thanks for the replies, guys. To clarify, I've already tried using the NOT statement on its own, like the following:

Code:
	trigger = {
		government = republic
		tag = ROM
		NOT = { month = 2 }
	}
(I know it's the wrong month, but the even never fired anyway, even after a few years of waiting.)

By my logic, the above statement should mean that if the country is Rome, is still a republic and is not before (nor including) March, the event should fire, but it doesn't. It should also eliminate any possible issues with ordering.

Moreover, I've tried setting titles to be triggered on the first month of every year. Incidentally, I actually had the trigger as "month = 1" but the title still triggered as soon as the game started. I then set the title loss trigger to be when it expires, and set the expiry date to 1 month after it was given. However, for some reason the title kept re-triggering whenever it was lost.

I wonder if the "month" trigger is broken? Or am I just not using it properly? Maybe the MTTH days = -1 is the culprit?
 
I never used the month trigger in my mod but had some weird bugs too with triggers.

I have not VV, some ideas you could try to check if month is the culprit:
- use the month trigger in an event you are already 100% sure is working, or better in a dummy event with only "not = month" as trigger.
- change your event to "is_triggered_only=yes" and fire your event in the console at various dates, and see what it says about the month trigger.
- search for the trigger in the vanilla events to see if it is actually used and especially if used with "not" (I did a search on Rome 1.3 and the trigger is never used).
- mtth > -1.

Hope this helps and good luck!
 
Thanks Djack for the suggestions, I will try them out.

- search for the trigger in the vanilla events to see if it is actually used and especially if used with "not" (I did a search on Rome 1.3 and the trigger is never used).
The trigger is not used in VV at all. Nor is it used in vanilla EU3IN. The only instance I could find of it was in Magna Mundi, for a 'death of Columbus' event, and even that had a MTTH of 3 months so it wasn't intended to be a precise event anyway.