Scriptsnx_fourseasons
Changelog
Version history for nx_fourseasons.
2.2.0 (2026-06-15)
Added
- Multi-language support. All in-game text, including the admin menu, now loads from editable per-language files under
locales/<code>.jsonand is chosen withConfig.Language. Eleven languages ship: English, Finnish, German, French, Brazilian Portuguese, Spanish, Turkish, Dutch, Italian, Polish, and Chinese. - UI customization panel. New Customize and Help buttons let players rescale the forecast and weather widget, switch glass presets (liquid or frosted), and reposition or resize the UI in a live edit mode.
Changed
- Refreshed the liquid glass look with a brighter, more reflective surface and subtle edge color.
- In-game time now advances smoothly between server syncs.
- Wind speed follows the
UseMetricsetting instead of the active language. - Bundled the UI fonts locally, so the interface no longer depends on an external CDN.
Removed
- The old
Config.Locale,Config.WarningMessages, andConfig.WeatherMessagestables (and their*Fimirrors) are replaced by thelocales/<code>.jsonfiles. If you customized any of that text, move your wording into the matching locale file and keep the keys and the%sand{placeholder}tokens intact.
Fixed
- Gameplay flooding now triggers and recedes reliably.
- Slippery-road traction applies consistently in wet and icy weather.
- The forecast window always closes correctly and reads properly in clear weather.
- Players joining mid-session now sync the current weather, flood, and forecast state.
Security
- Hardened server-side validation and time and weather sync against abuse.
Performance
- Lower resource usage, smoother weather and rain transitions, and reduced network traffic.
2.1.1 (2026-05-03)
Changed
- Ped shivering animation disabled. Other cold-weather effects (screen FX, breath, notifications) still apply.
Fixed
TriggerEmergencyAlertis now forward-declared soBroadcastWeatherWarningcan call it before its definition.
2.1.0 (2026-04-29)
Added
Config.StormSystems.Blackout.DurationTiersfor opt-in weighted blackout duration tiers per weather type. Pulses can roll fixed values or random ranges, useful for dramatic multi-minute thunderstorm outages alongside the default short pulses.
Changed
- Temperature calculation is now weather-aware on every weather type. Snow and blizzard enforce hard physics caps below freezing, rain and thunder require above-freezing, and seasonal bounds apply only when they don't contradict the active weather. Forecast generation mirrors the same rules.
EnsureSeasonalTemperatureno longer applies temperature overrides. The base calculation drives temperature end to end. Only the admin menu can set a manual override.- THUNDER and BLIZZARD odds reduced across all seasons. Storm weather is now noticeably rarer.
Fixed
- Stale
seasonalandforecasttemperature overrides are dropped on resource load instead of leaking through restarts. Onlymanualadmin overrides persist. - Winter blizzards no longer display positive temperatures from the old
+5°Ccap.
2.0.0 (2026-04-25)
Added
- Liquid Glass HUD pipeline and redesigned forecast UI with hover-expand day cards.
- Intra-day prediction timeline rendered on the Today forecast card (vertical sidebar layout).
- Sliding-window forecast refresh that preserves future entries instead of regenerating.
- Wind debris system with weight-class physics, particle layers, and intensity tiers.
- Storm systems: blackout weather rules (per-weather eligibility for
RAINandBLIZZARD), gradual ocean wave transitions (~5s lerp), strike FX distance culling, production ocean/boat tuning. - Admin experimental "high" ocean option.
- Framework bridge with centralized event constants (ESX/QBCore/QBox-ready).
Changed
- Flattened visual effects into a single toggle list.
- Simplified weather intensity to 4 steps; simplified slipperiness and visibility test steps.
- Merged storm and flood admin tools into a single menu; moved effects testing under system tools.
- Unified day cards with hover-expand intraday forecast.
- Forecast now uses intraday prediction slots on expiry instead of random weather.
- Fahrenheit toggle removed from forecast UI (kept as config-only option).
- Localized flood strings and added missing locale keys.
Fixed
- Particle cloud first-frame indoor flash, variety, drifting offsets, and indoor check.
- Wind effect registration timing and angular spin range; wind data tables incorrectly scoped inside
falling_leavesbranch. - Wind sound volume clamping and burst thread cancellation latency.
- Season briefly showing "Unknown" when opening the forecast.
- Seasonal temp overrides leaking on load.
- Config defaults:
TimeSyncon, duration range 5–15, intraday locale keys. LoadPtfxAssetinfinite loop (added timeout).Database:SetSettingand other DB calls wrapped inpcall.- Removed lightning strike "nearby" notification.
- Warning system removed from admin menu; ghost
ApplyIntervalMsconfig reference removed.
Internal
- Deobfuscated
gamerenderand added design doc. - Consolidated duplicated client
GetLocaleand server helpers intoutils. - Made internal
sync.luaglobals local; removed dead code (LastWeather, unreachableHALLOWEENweather type, dead branches insync.lua). - Cleaned up config dead code and compat aliases.
- Polish + optimize pass: thread lifecycle, dedup, SQL schema, debug logs.
1.3.0 (2026-04-17)
Initial documentation.