CONTENT CONTRACT · VERSION 1
climate
Ordered seasons and weighted weather changes on the simulation clock.
Signature
{ day_ticks: PositiveTicks, id: ContentId, kind: "climate", seasons: {SeasonDuration}, weather_period_ticks: PositiveTicks }Fields
| Name | Type | Meaning |
|---|---|---|
day_ticks | PositiveTicks | Number of simulation ticks in one full day. Range: 1…2147483647; Unit: tick |
id | ContentId | Package-qualified identity; unique within its declaring namespace. Length: 1…129; Pattern: ^[a-z][a-z0-9_]{0,31}:[a-z][a-z0-9_]{0,95}$ |
kind | "climate" | Discriminant |
seasons | {SeasonDuration} | Season order (the last is followed by the first), duration and weather of each season. Items: 1…64; Unique entries |
weather_period_ticks | PositiveTicks | Interval between deterministic weather selections. Range: 1…2147483647; Unit: tick |
Validated example
{
"day_ticks": 9000,
"id": "core:mild_climate",
"kind": "climate",
"seasons": [
{
"days": 7,
"season": "core:spring",
"weather_weights": [
{
"weather": "core:clear",
"weight": 50
},
{
"weather": "core:wind",
"weight": 15
},
{
"weather": "core:rain",
"weight": 30
},
{
"weather": "core:thunder",
"weight": 5
}
]
},
{
"days": 7,
"season": "core:summer",
"weather_weights": [
{
"weather": "core:clear",
"weight": 60
},
{
"weather": "core:wind",
"weight": 10
},
{
"weather": "core:rain",
"weight": 15
},
{
"weather": "core:thunder",
"weight": 15
}
]
},
{
"days": 7,
"season": "core:autumn",
"weather_weights": [
{
"weather": "core:clear",
"weight": 35
},
{
"weather": "core:wind",
"weight": 30
},
{
"weather": "core:rain",
"weight": 30
},
{
"weather": "core:thunder",
"weight": 5
}
]
},
{
"days": 7,
"season": "core:winter",
"weather_weights": [
{
"weather": "core:clear",
"weight": 35
},
{
"weather": "core:wind",
"weight": 15
},
{
"weather": "core:rain",
"weight": 5
},
{
"weather": "core:snow",
"weight": 45
}
]
}
],
"weather_period_ticks": 2250
}