• 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.

Trmdrg

First Lieutenant
Feb 19, 2015
200
41
1. My question may seem stupid and out of date, given that it comes from the mouth of a man who has been working on modification for years, but better late than never.

Is there a zero day in FtG? Does zero day actually exist?

The FtG displays ingame only 1 — 30 days of each month (28 for February). But I see day zero in the AGCEEP events (along with day one) (but there are no days 0 in the original FtG events). And if I create a scenario with 1 as its start day (startdate =), it starts on the 2nd day of the month instead of the first, but if I use 0 day, it starts on the 1st day.
Most importantly, I need to know is it better to use 0 day or 1 day in event scripts, monarch/leader and scenario files and why.
If the day is not specified (only the year is), which day does the game use, 0 or 1?

What is the last actual day of each month? 28 for February and 30 for all the others?
How many days does the FtG year consist of? 30 * 11 + 28 = 358? Or should it also contain hidden days zero?

And what about year zero? If I create a scenario with 0 as its start year, the game breaks — it fires all events from its entire event pool in the very first day. So, I think that the FtG world starts from the year = 1 month = january but hidden day = 0. Is this correct or not?


2. One more little question. When I use the "command = { type = country which = TAG }" script, does the country automatically use the new AI from the revolt.txt, or do I have to set it manually via scripts? Does the country instantly kill all its leaders and monarchs from the old country and get new ones?

Sorry for Engrish.
 
Last edited:
Day 0 in events is valid, but day 0 and day 1 are treated the same. The game, when processing events, checks whether the game date is greater than or equal to the event date.

The game engine uses a very simple calendar with 30 days per month and 360 days per year. This is scaled to the correct number of days per month for display purposes only. An event scripted to fire on the 31st of a 31-day month will fire on the 30th in game, since in the game engine both days are the same.

When changing a tag, all future historical leaders and monarchs will come from the new tag. Living leaders or monarchs will not die. And the AI is not changed.
 
Last edited:
  • 1
Reactions:
Day 0 in events is valid, but day 0 and day 1 are treated the same. The game, when processing events, checks whether the game date is greater than or equal to the event date.

The game engine uses a very simple calendar with 30 days per month and 360 days per year. This is scaled to the correct number of days per month for display purposes only. An event scripted to fire on the 31st of a 31-day month will fire on the 30th in game, since in the game engine both days are the same.

When changing a tag, all future historical leaders and monarchs will come from the new tag. Living leaders or monarchs will not die. And the AI is not changed.
Thank you for your answer.
So, there is no point in using day 0 instead of day 1 in events, leaders/monarchs files, scenario diplomatic treaties and control/ownerchange dates?

But then why does the game start on January 2nd if we change "startdate = { day = 0 month = january year = xxxx }" to "startdate = { day = 1 month = january year = xxxx }" in the scenario file?

I do not understand very well where the two days of February have gone and how to work with them, if the game displays only 28 days, and you say that there are 30 in the game mechanisms. Maybe there are 358 days in a year after all?

So, the earliest possible date in the game is "day = 1 month = january year = 1"? Without zeros in "day" and "year".
 
And I have found out that if our scenario has "startdate = { day = 0 month = january year = 432 }" (example from my mod, it is January 1st in the game) and we have events that should fire on "date = { day = 1 month = january year = 432 }", they fire only when we start the timer in the game (unpress the pause). But if these events have "date = { day = 0 month = january year = 432 }" then they fire even before timer, immediately after loading. Greater and equal in this case are not the same thing. Or 0 and 1 are not treated the same. Or I am confused.

And leaders. After loading a new game, there are no leaders with day = 1 startday. They appear only after unpausing. But day = 0 leaders are already there.

All this made me think that there are hidden days zero.
 
Last edited:
It's confusing because inside the engine, there is certainly a day 0. But we don't want to show a day 0 on the date in game. So there is conversion back and forth between 0-based and 1-based dates, and it's possible it's not entirely consistent.
 
It's confusing because inside the engine, there is certainly a day 0. But we don't want to show a day 0 on the date in game. So there is conversion back and forth between 0-based and 1-based dates, and it's possible it's not entirely consistent.
Hm. So, it exists in the engine.
I do not even know how many days I should write in the "offset = " for an event I want to fire in the year range, no more, no less. 358, 360 or 370 — 372 (with zero days)

Looks like I should use Day Zero in my events, diplomacy and leader dates. It is disgusting because I already changed all the dates to the day one after your first post here, lol.
Day Zero events fire before Day One ones. Kind of between months. Or on the first day of the month, and Day One — on the second.

Looks like the earliest possible date in the game is day = 0 month = january but year = 1 (year = 0 is buggy. Like the 1st — 19th years actually).

And I do not know which day the game chooses for dates without "day = " (only "year = ") inside its engine, 0 or 1. Edited: my experiment showed me now that the game uses "day = 0" if no day is specified (I experimented with events)! God, I really should not have changed the dates.
 
Last edited: