Spread and weather options

Everything here lives in firescriptv2/config.lua. The behaviour behind these settings is explained in Spread, wind and weather — this is the reference for the option names.

Fire spread (Config.FireSpread)

  • Enabled — turn natural spread off entirely
  • Interval — seconds between spread evaluations
  • BaseChance — base probability a burning fire throws a new fire each interval. This is the difficulty dial — see the formula in Spread, wind and weather
  • SpreadRadius — maximum distance a child fire appears from its parent, in metres
  • MinStep — minimum distance, so children do not stack on the parent
  • MaxChildren — how many times one fire can spawn children
  • MergeDistance — do not spawn a child this close to an existing fire; they merge instead
  • GlobalCap — hard cap on total simultaneous fires created by spreading
  • ChildFlameFactor — a child fire gets this fraction of the parent's flames
  • ChildSpread — scatter, in metres, of a child fire's flames
  • ChildTimeout — seconds a spread child burns before going out on its own
  • MaxDrift — hard leash on how far a fire may spread from where it originally started

Front-only spreading

  • EdgeOnly — only fires on the edge of the burn may throw children
  • EdgeRadius — how far out a fire looks for neighbours
  • EdgeNeighbours — this many neighbours inside EdgeRadius counts as surrounded, and stops it breeding

This is what makes a fire advance as a front with a spent core behind it, and what makes it flankable.

Placement validation

The server has no world of its own, so before a child is placed the nearest player's client checks the spot.

  • ValidateLineOfSight — turn the check on
  • ValidateRange — how close a player must be for their client to be asked. Keep it inside FireDetectionRange — further out the world is not streamed for them either
  • ValidateTimeout — milliseconds to wait for the answer
  • RequireValidation — nobody close enough, or no answer in time, means the child is not spawned and the parent tries again next interval. Setting this false restores the old behaviour, which is exactly how you get fires floating in mid-air or burning inside a wall
  • MaxHeightStep — a child this far above or below its parent is a roof or a cellar, not spread
  • MaxDrop — how far below the parent the ground is searched for, for a bank or a step

Wind's effect on spread

  • WindInfluence — how tightly the wind aims the spread. 0 = children fly off in any direction, 1 = a narrow cone straight downwind. Direction only
  • WindRateMin / WindRateMax — what the wind does to the spread rate, mapped across the whole 0..1 wind strength range. WindRateMin at dead calm, WindRateMax at a full gale
  • WeatherWetPenalty — rain and snow multiply the spread chance by (1 - this)

Keeping the rate on its own dial is what gives the weather any real say in the outcome.

Reignition (Reignite)

  • Enabled — turn reignition off
  • Chance — chance an extinguished fire flares back up
  • Delay — seconds after put-out before the attempt
  • Flames / Spread — size of the reignited fire
  • Timeout — seconds the reignited fire lasts
  • RequireDryWindy — only reignite when it is dry and the wind is up

Wind and weather feed (Config.Weather)

  • DefaultWindDirection — degrees the wind blows toward. 0 = North, 90 = East
  • DefaultWindStrength — 0..1
  • DefaultWet — whether it starts wet
  • AutoDrift — slowly vary the wind on its own when there is no external feed
  • DriftInterval — seconds between drift steps
  • AutoDetect — read the game's actual weather and set wet/dry from it. Turn this off if a weather resource is pushing values in with FireScriptV2:SetWeatherWet
  • WetTypes — weather types treated as wet, i.e. that dampen fire spread
Can't find what you need? Ask on Discord — response in under 5 hours.