Skip to content
Contractsv1.9.0

Weather

⭐ Premium

Progress counts only while one of the listed weather states is active at the position of the player performing the action.

{
"type": "Weather",
"weathers": ["Rain", "Thunder"]
}
FieldTypeDescription
typestringExactly 'Weather'
weathersenum[]: Clear | Rain | Snow | Fog | ThunderWeather states that count. One of: Clear, Rain, Snow, Fog, Thunder. The condition is satisfied while any listed state is active, so ['Rain', 'Thunder'] reads as 'in the rain or during a thunderstorm'. Clear means none of the other four states are active. At least one entry is required, an empty list is invalid.
  • Any listed state matches. ["Rain", "Thunder"] reads as “in the rain or during a thunderstorm”. For “only in rain that is not a thunderstorm”, combine with Not.
  • Weather is read at the player’s position, not globally. The game shapes weather by terrain: deserts get about half the rain, and in the Arctic rain falls as snow instead. The same storm can be Rain in the forest and Snow on the ice sheet, and a player in the desert may not match Rain while the rest of the map does. Since snow only falls in the Arctic, Snow pairs naturally with Biome conditions.
  • The condition reads the sky, not the player. A player under a roof during a storm still matches Rain. If you want “actually got wet”, that is Player Wetness’s job, and the two compose: rain plus a low wetness bound makes a “fish in the rain while staying dry” contract.
  • Thresholds are built in and anchored to the game’s own numbers: any rain at all counts as Rain, any snow as Snow, Fog needs fog thick enough to matter, and Thunder matches whenever the game reports a thunderstorm. There is no intensity config.
  • Clear means none of the other four states are active at the player’s position.
  • At least one state is required. An empty list is invalid and the contract will not load.
  • Weather rolls to a new pattern roughly every 18 in-game hours, and servers get a stretch of clear skies right after a wipe. A short-lived contract can easily miss the weather it asks for, so weather-gated contracts fit daily or weekly rotations much better than hourly ones. The sibling environmental condition, Time of Day, has the same kind of timing caveat.

Catch 5 fish in the rain:

{
"type": "Fishing",
"amountRequired": 5,
"conditions": {
"in_the_rain": {
"type": "Weather",
"weathers": ["Rain"]
}
}
}

Kill 3 scientists during a thunderstorm:

{
"type": "Kill",
"amountRequired": 3,
"entities": ["@scientists"],
"conditions": {
"during_a_storm": {
"type": "Weather",
"weathers": ["Thunder"]
}
}
}