This plugin lets you tag rooms with different zones, and define weather rules for each of those zones.
To work, this plugin needs MOG_Weather_EX, and the companion plugin WorldWeatherZones.js (a template plugin which you will modify in order to define the behavior of your weather zones).
For example, one room could be:
While another is:
(Rooms without zones will not experience weather at all.)
You can configure a range of steps which the player must take before the weather in each zone changes, and/or trigger weather changes, prevent the weather from changing, or check on the status of the weather, using Script blocks in your events.
To force the weather to change (for example, when the player rests):
To change the range of steps the player must take before the weather changes:
$gameSystem._minStepsUntilWeatherChange = 200;
$gameSystem._maxStepsUntilWeatherChange = 500;
To stop the weather from changing based on steps:
$gameSystem._stepsUntilWeatherChange = -1;
(Weather changes based on steps will resume when you call changeWeather, unless you ALSO set _minStepsUntilWeatherChange or _maxStepsUntilWeatherChange to -1.)
In a conditional branch, you can check some things about the weather system.
For example: are you currently in a desert?
$dataMap.meta['WorldWeather.Zone'] == 'Desert'
Are there are least 100 steps until the weather changes again?
$gameSystem._stepsUntilWeatherChange >= 100
Are weather changes by walking currently disabled?