Add server authoritative fire spread state

This commit is contained in:
2026-05-19 12:19:15 -07:00
parent 168cd0e61f
commit dde42bf452
5 changed files with 201 additions and 1 deletions
+8
View File
@@ -361,6 +361,14 @@ structure risk accumulates with distance-based fuel presence, burn duration,
weather/wind, and the current fire-risk ratio before setting a replicated
structure ignition flag.
Active fire spread is still server-authoritative at the campfire/open-flame
source. Once grass/brush, forest, or structure ignition flags are set, the server
updates replicated fire intensities and an active spread radius. The spread rule
uses nearby fuel, ignition distance implied by the existing checks, wind/weather
modifiers, and a suppression-pressure hook that future rain, carried water,
dirt/sand, firebreaks, and tools can drive. This establishes deterministic fire
state for clients without letting clients decide whether the world is burning.
Campfires expose native extinguish logic through `AAgrarianCampfire::Extinguish`.
Extinguishing clears remaining fuel, turns off replicated lit state, and reuses
the same visual update path as natural fuel depletion.