The life cycle
One number carries a tornado's entire life, an age that climbs from 0 to 1 against its own total duration. The wind it carries, the width of its core, how far it leans: none of that is scripted moment to moment, all of it reads off that same clock. Only one value sits outside the rule, the peak wind itself, drawn once at birth and never touched again. What the clock changes is how much of that peak is actually blowing at any given instant.
The four stages
| Stage | What happens |
|---|---|
| Forming | The funnel hangs under the wall cloud without having reached the ground. Nothing is damaged while it stays there. |
| Touchdown | Contact has just happened, the debris cloud lifts off the ground and the wind starts counting for real. |
| Mature | Full width and full strength, most of the life of anything that ever earns a rating. |
| Roping | The funnel thins out while leaning over, still able to hurt, no longer able to widen. |
A fifth stage exists outside the table: plain disappearance once the clock reaches 1. The ability to do damage tracks these four rows closely but not exactly, it covers everything except forming and disappearance, which leaves a rope just as able to hurt someone as a tornado at full strength.
The wind curve
Mature width itself is fixed at birth by one formula,
coreRadiusAtEf0 × (peak wind / 29) ^ radiusGrowthExponent, and its
detail, six values and all, lives on the EF scale page.
What belongs here is the timing: wind ramps up smoothly to 45 percent of the life,
a little ahead of the midpoint the way measured tracks actually run, then eases back down to a
little over half its peak by the moment the funnel starts drawing out into a rope. The funnel's own
internal lightning, the flashes that light it from inside once it is down, follows that same ratio
to its peak: it stops under 35 percent intensity, well before the wind itself reaches zero. In
game, /vortex list shows the current stage and rating for every live tornado, a good
way to watch that curve happen instead of guessing at it. Width, meanwhile, shrinks even faster
than wind at that same point, which is what makes a rope still dangerous: thin to
look at, still carrying a real wind.
Width and lean
Three fixed fractions shape the silhouette, whatever the peak wind drawn at birth:
- On contact: the core is only 25 percent of its mature width the moment it touches down, which gives every tornado a real, visible ramp-up instead of arriving at full volume.
- At the end of the rope: 10 percent of mature width, never below an absolute floor of 0.8 blocks, since a core any thinner would have nothing left to draw.
- The lean: zero from contact through full strength, then up to 70 percent of the funnel's own height leaning backward through the final stretch, the visible sign of a tornado trailing behind the storm that is leaving it.
Do not judge a rope by how thin it looks. By the time a funnel starts drawing out, the wind has only fallen to a little over 55 percent of its peak, while the width keeps heading straight for its floor of 0.8 blocks. The two curves do not fall at the same rate, and that gap is exactly what makes the last stretch of a life misleading.
Movement and height
Once it splits off from its parent column, a funnel follows its own path with the same curved-drift system the mesocyclone used to move: 8 blocks per second by default, with a heading that can bend by 1.6 degrees per second instead of drawing a perfectly straight line. The top of the visible column, though, stays pinned to a fixed sky altitude rather than tracking the ground, 183 blocks by default, the very spot where Photon puts its cumulus layer at stock settings. Over high terrain that gap shrinks, but never to nothing: a funnel standing on a mountaintop still keeps at least 40 blocks of visible column above its own feet.
The tornado group, in brief
| Option | What it moves | Default |
|---|---|---|
| coreRadiusAtEf0 | The starting radius every width formula scales from, worked through in full on the EF scale page. | 6.0 |
| radiusGrowthExponent | How hard width reacts to each extra metre per second of wind. | 1.5 |
| lifespanMinTicks | Shortest possible life, 2 minutes, drawn with no link to strength. | 2400 |
| lifespanMaxTicks | Longest possible life, 12 minutes. | 14400 |
| travelSpeed | Ground drift speed once the funnel is on its own. | 8.0 |
| trackWander | How hard the heading can bend, in degrees per second. | 1.6 |
| turbulence | Noise layered on top of the steady wind field. | 0.22 |
| cloudBaseAltitude | The sky altitude the top of the visible column stays pinned to. | 183.0 |
| formingFraction | Share of the life spent reaching down before contact. | 0.12 |
| ropeOutFraction | Share of the life spent drawing out into a rope. | 0.18 |