Randomization in missions is probably one of the best features that support "repeatable" missions. Think about it, every time you fly a mission you need to cope with different goals or weather. One day you are flying in clear sky, but the next day you find yourself in the cockpit trying to keep plane steady while "fighting" a storm or turbulence wind that was not there the day before.
OK, I might exaggerated a little, but you get the idea. For a long time I was playing with the idea to implement "random" into Mission-X, but I always postpone it since I wanted to make it right.. for me anyway. There is so much things you can achieve with randomness, but you need to remember that the plugin should have infrastructure to support a feature without breaking others. Randomizing the whole mission is a huge effort that might throw the plugin into directions I did not intended to and it might not be the correct approach, so what is right or wrong depends on the way we implement and the added value a feature brings to the table. This is why I decided to approach random implementation cautiously, In away I think I try to handle new features especially complex ones just like a "makeup" (don't get me wrong I do not use it), but if I see someone putting makeup I prefer it will be in small doses, just to highlight what you really want.
The next version of Mission-X will include first attempt to implement randomness to the weather system. In away, this is the best feature to start messing with and see how missions gain from it, does repeat-ability is fun and challenging, does a designer need to add more weather areas just to make the mission more challenging, Is it too distracting should we be able to just shut it down or at least have two version of same mission, one with randomness the other not.
How to implement the randomness feature
Since the feature is not final and many aspects of it might change during tests, I did try to keep it as simple as can be. My line of thought was: "you want to random ALL aspect of weather area", or "just a part of a weather area" (wind speed for example). So as a designer you should be able to choose one of these options: the "full" weather randomization or to pick the "partial" one.
As of this writing, the partial feature was implemented first, and also partially (no pun intended). The idea is to add randomness attribute instead of the original attributes. The attributes can coexist, but the random value will override the original attribute values. Lets see an example, before randomness:
wind_shear_speed_kt="0" turbulence="0" wind_turbulence_pct="0" />
If you want to randomize the wind speed you would write something like:
wind_shear_speed_kt="0" turbulence="0" wind_turbulence_pct="0" rnd_wind_min_max_speed_kt="2|25" />
So, "rnd_wind_min_max_speed_kt" will replace "wind_speed_kt".
The idea was to decrease the number of new attributes to minimum, but to give the plugin enough information to do what the designer wants.
In this case the plugin will read rnd_wind_min_max_speed_kt="2|25" and will translate it to: "pick a number between 2 and 25" and apply it as "wind_speed". The first value should be the lower and second value should be the higher one. You can also write: rnd_wind_min_max_speed_kt="25" and plugin will pick a number between 0 and 25. So the plugin has some rules if you won't provide the range of values and it is fine, the range allow you to better tune the randomization.
I guess you already figured out that the character: "|" is a divider between two numbers. I believe it is a neutral character, enough to not confuse designers with different symbols when using decimal values (I thought of using comma "," as separator).
If you will provide more than 2 numbers plugin will just ignore them.
I'll continue to modify and test this feature, and I'll update you as I'll have more concrete information and tests.