• Which the release of FS2020 we see an explosition of activity on the forun and of course we are very happy to see this. But having all questions about FS2020 in one forum becomes a bit messy. So therefore we would like to ask you all to use the following guidelines when posting your questions:

    • Tag FS2020 specific questions with the MSFS2020 tag.
    • Questions about making 3D assets can be posted in the 3D asset design forum. Either post them in the subforum of the modelling tool you use or in the general forum if they are general.
    • Questions about aircraft design can be posted in the Aircraft design forum
    • Questions about airport design can be posted in the FS2020 airport design forum. Once airport development tools have been updated for FS2020 you can post tool speciifc questions in the subforums of those tools as well of course.
    • Questions about terrain design can be posted in the FS2020 terrain design forum.
    • Questions about SimConnect can be posted in the SimConnect forum.

    Any other question that is not specific to an aspect of development or tool can be posted in the General chat forum.

    By following these guidelines we make sure that the forums remain easy to read for everybody and also that the right people can find your post to answer it.

Date Dependent Parameters


Two questions...

What is the correct format for having an effect display only on particular dates such as July 4th, December 31st, etc.? Can it be done in one string or do seperate files have to be created?

Also, would it be possible to have an effect occur, let's say, on the last day of every month?

I'm new at this and have tried a few things I thought would work but so far have only been able to get the effect to appear every day or only on one date.

Any help is appreciated.

PS - I am using XML.


Staff member
FSDevConf team
Resource contributor
See the effects parameters text file from the effects SDK (I have pasted it below). It lists the possible conditions you can check.

When you place you effect you can add these conditions with a string as second parameter, see this example from the BGLComp SDK:

effectName=” FW_Controller”
effectParams=” MOY=01,01;DOM=01,01;HOD=00,00;MOH=00,20;”/>

Effects Parameters

The options on the dialog are mostly self explanatory. The only one that
needs further explanation is the "Parameters" option. Parameters are semi-
colon delimited. The available parameters are:


Specifies that the effect occurs randomly. A random number is
generated between 0 and random_range; if the number generated
is less than random_threshold, the effect is not created.

x = random number from 0 to "random_range"
if (x < random_threshold) do nothing

For a 10% chance of seeing a certain effect:


40% chance:



Specifies that the effect occurs only if the sim time is within
the year range, inclusively.
To have an effect play for the year 1989, the parameter would be written as:



Specifies the months of the year (MOY), days of the month (DOM), hours of the
day (HOD), minutes of the hour (MOH), and seconds of the minute (SOM) for which the
effect occurs. All ranges are inclusive. Any combination of these
ranges may be used; the more used, the fewer valid date/times the
effect occurs. All times are in the local timezone.
MOY range: 1,12;
Where "1"= January, and "12"= December
DOM range: 1,31;
Where "1"= first day of the month, and "31"= last possible day of the month
HOD range: 0,23;
Where "0"= would be midnight
MOH range: 0,59;
Where "0"= would be the start of the duration of 60 minutes
SOM range: 0,59;
Where "0"= would be the start of the duration of 60 seconds


Specifies that the effect should only occur during certain periods
of the day. If the value is 1, the effect will occur. If the value
is 0, it will not. If none of these parameters are specified, the
effect will occur the entire day.


Specifies, in seconds, the duration of the effect. This parameter
my be a non-integer; i.e. 2.5.

Parameter precedence:

"RANDOM" takes highest precedence, then "DAWN," etc., and then "HOD," etc.

"RANDOM" is determined when the scenery is first loaded. If the random
check fails, the effect will not occur at all until the scenery is
completely reloaded (at which point it may fail the random check again).

It is possible to set up an effect's parameters such that the effect never
occurs. If any of the "DAWN," "DAY," etc. parameters are specified, they
take precedence over "HOD," "MOH," and "SOM." Therefore if you set
"NIGHT=0;" and "HOD=22;", the effect will not show at 10:00PM because it
should not appear at night.
Thanks Arno. I read all of those documents already but they didn't really help with my situation. I'm not sure that I made it clear what I was trying to do.

Basically, I want to have fireworks go off on various holidays such as New Year's, July 4th, Memorial Day, etc. My question is, do I have to make separate bgl files for each holiday? I can't seem to find any documentation that tells me how to have more than one non-consecutive date in the one XML code.

As far as the end of every month show I tried something like:

effectName=” FW_Controller”
effectParams=” MOY=01,12;DOM=31,31;HOD=00,00;MOH=00,20;”/>

but the fireworks just went off every night. The end-of-month thing is not as important as the various holidays.


Staff member
FSDevConf team
Resource contributor
For different dates you will have to place one effect for each holiday. These can all be in the same file, but you need to use a SceneryObject command for each.

For the end of month one, your code looks correct. But I remember that there was an error in the SDK about the use of comma and semi-column to seperate the different parameters, maybe they should be reversed, but I can't remember now.