right, well i've done some research and have discovered flashpoint has a problem doing the weather all at once. to that in a moment...
@karantan - thanks for the script. if i may humbly make some suggestions...
you call the script using [time for weather to change, delay until the next change] exec "weather.sqs". that's fine. however, in the script you don't rely on
time exactly, rather using an incrementing counter to decide how long the change takes and what the delay is.
a better way is as follows -
_cycle = _this select 0
_delay = _this select 1
#loop
_limit = _time
_cycle setFog random 1
~0.1
_cycle SetOvercast random 1
@(_time >= (_limit + _delay))
goto "loop"
that way the loop becomes time-based rather than counter-based, which is how the weather works.
anyway, i set up a test missionette with two repeating triggers. one trigger set fog, overcast and rain to 1 instantly. the other set them all to 0 instantly. they both worked, repeatedly, and instantly.
however, when i introduced a time-delay of 30 seconds, only the overcast would become active. no fog, no rain. i suspect in the case of rain, overcast has to be at least 0.7...
so then i activated the 'bad weather' trigger again, and lo, the rain would start pouring. the fog would still not get to 1 though, staying at what looks like around 0.75...
bearing in mind that the weather moves towards the forecast settings, that explains the fog i suppose.
the 'good weather' trigger works fine, with overcast, fog and rain all being set perfectly over the 30 seconds.
the script above works just fine, and yet it needs another fog command afterwards to get the fog right up to 1, and it begins receding almost immediately - due to the forecast.
so, in summary, full control of the weather requires repetition of the commands, staggered over time, in a loop to keep them at a constant level away from the forecast values - which i think is pretty much exactly what THobson explained earlier...