Tornado
Tornado creates a moving funnel with smoke, debris, wind audio, camera shake, and physics that pull, lift, and throw nearby vehicles, people, and props. It includes a standalone command and Disaster Hub integration.
POPULAR LINKS
- DISASTER HUB — Combined disasters and weather triggers
- HAIL STORM — Hail Storm documentation
- SEA STORM — Sea Storm documentation
- FLASH FLOOD — Flash Flood documentation
- ICE AGE — Ice Age documentation
- WEATHER — Big Daddy Weather documentation
- EAS — Emergency Alert System documentation
- ACE PERMISSIONS — Permission setup guide
- LOG COLLECTION — Gathering logs for support
{:links-list}
INSTALLATION
- Copy the complete packaged
BigDaddy-Tornadoresource into your server's resources folder. Use the package containingfxmanifest.lua,settings.ini, the DLLs,bridge, andhtml. - Enter your own product key from your account as
key1under[licensing]insettings.ini. - Start your weather resource first if you use one. Start
BigDaddy-EASif you want optional emergency alerts. - Add
ensure BigDaddy-Tornadotoserver.cfg. If you use Disaster Hub, start Tornado beforeBigDaddy-DisasterHub. - Restart the resource after configuration changes and reconnect before testing.
DO NOT RENAME THE FOLDER. Configuration and integration calls use the exact name
BigDaddy-Tornado.
{:is-danger}
Disaster Hub and EAS are optional.
Example start order
If you use Big Daddy Weather, EAS, and Disaster Hub together:
ensure BigDaddy-Weather
ensure BigDaddy-EAS
ensure BigDaddy-Tornado
ensure BigDaddy-DisasterHub
Include only the resources you have installed. If you use another weather provider, start that resource before Tornado instead.
CONFIGURATION
settings.ini
| Section | Setting | Deployed / fallback | Description |
|---|---|---|---|
[licensing] |
key1 |
Your product key | Enter your own product key here. |
[settings] |
UseEAS |
true / false |
Enables standalone emergency alerts when BigDaddy-EAS is started. |
[settings] |
EASTitle |
TORNADO WARNING / EMERGENCY ALERT SYSTEM |
Title passed to the standalone alert. |
[settings] |
EASMessage |
See below | Standalone tornado warning text. |
[settings] |
UseAcePermissions |
Not present / false |
Checks a player's permission during initialization, but does not restrict the command or trigger events. |
[settings] |
AcePermission |
Not present / command |
ACE object checked during initialization when permission checking is enabled. |
[settings] |
debug |
true / false |
Enables additional diagnostic messages where implemented. Some startup and effect messages always print. |
[settings] |
DesyncKey |
Included with the package | Internal synchronization value. Leave it unchanged. |
If EASMessage is absent, the source uses A Tornado has been spotted on the ground. Take shelter immediately.
COMMANDS
| Command | Purpose |
|---|---|
/starttornado |
Client command that requests a standalone tornado after successful client initialization. No supported arguments. |
TORNADO BEHAVIOR
Spawn location and movement
The server finds the most populated (by players) area on the map.
If no valid player position is available, the server chooses a random point from fixed map zones, weighted by each zone's area. These zones cover areas around Grand Senora, Harmony, Route 68, Zancudo, Paleto, Vespucci, Sandy airfield, and Little Seoul.
Forces and camera shake
Vehicles, peds, and objects can be affected by the tornado. Effects depend on distance from the funnel.
| Entity | Outer influence radius | Lift radius | Core throw radius |
|---|---|---|---|
| Vehicles | 40 meters | 20 meters | 8 meters |
| Human peds | 35 meters | 18 meters | 7 meters |
| Props | 30 meters | 16 meters | 6 meters |
Weather, duration, and cleanup
Standalone events request weather suspension through the bridge, then clients transition to THUNDER over ten seconds. After the transition and anchor-model loading, the client starts the tornado and waits for the full event duration. Unlike the server bridge timer, that client duration does not include the initial weather transition.
The server resumes its weather bridge approximately one selected duration after triggering, so standalone weather synchronization can resume around ten seconds before the client's tornado ends, plus any model-loading time. At client timer completion, Tornado stops its audio with a three-second fade and requests a ten-second transition to OVERCAST.
The funnel can also stop moving and deactivate when it reaches the end of its path. The inactive tick clears particles, visual anchors, the anchor blip, and camera shake. The separate duration timer still controls the sound-stop and final standalone weather request.
DISASTER HUB INTEGRATION
Start BigDaddy-Tornado before BigDaddy-DisasterHub, then select Tornado in /DisasterHub. The Hub can also request Tornado during eligible THUNDER weather checks. Configure TornadoChance and weather monitoring in the Hub's settings.
The Hub calls BigDaddy-Tornado:StartTornadoHub with a duration in seconds. This uses the same spawn selection, path, effects, forces, and audio without Tornado forcing its own weather, calling its own weather bridge, or sending its standalone EAS alert. Disaster Hub manages its own weather and alerts.
Tornado can combine with Hail Storm, Sea Storm, Flash Flood, and Blackout in the Hub menu. It cannot combine with Ice Age or Earthquake. When combined with Tornado, Hail Storm receives half the selected disaster duration.
WEATHER BRIDGE
Edit Config.WeatherBridge in bridge/weather.server.lua.
| Option | Default | Description |
|---|---|---|
Enabled |
true |
Enables bridge suspend/resume handling. Disabling it does not prevent standalone clients from requesting THUNDER and OVERCAST. |
Provider |
'auto' |
Detects the first started provider below, or uses an explicit identifier. |
RestorePreviousWeather |
true |
Used by the QB resume handler to request saved weather when available. |
Debug |
false |
Enables [WeatherBridge] diagnostics, including failed export calls. |
| Detection order / resource | Identifier | Implemented behavior |
|---|---|---|
BigDaddy-Weather |
bigdaddy |
Sends weather-sync suspend/resume events. |
qb-weathersync |
qb-weathersync |
Reads weather/dynamic state; attempts to disable dynamic weather and restore saved state on resume. |
cd_easytime |
cd_easytime |
Reads GetAllData on suspend; working suspend/resume hooks are not supplied. |
Renewed-Weathersync |
renewed |
Placeholder suspend/resume handling. |
vSync |
vsync |
Placeholder suspend/resume handling. |
vMenu |
vmenu |
Placeholder suspend/resume handling. |
This describes the local bridge implementation, not tested compatibility with every provider version. With no provider detected, the provider is none. You can also explicitly select none.
For another integration, select Provider='custom' and fill these Custom fields:
SuspendEventandResumeEvent: server events called with(enabled, reason).SuspendExportResourceandSuspendExportName: optional server export called on suspend with the same arguments.ResumeExportResourceandResumeExportName: optional server export called on resume with the same arguments.
If both an event and export are configured for an action, both run.
This version of Tornado's bridge exposes server exports Suspend(enabled, reason), Resume(reason), IsSuspended(), GetSuspendedReason(), and GetProvider(). Pass true to Suspend to request suspension. It does not include the GetCurrentWeather() export or custom weather-getter fields found in some other disaster bridges.
Bridge state does not prove that a provider paused: some hooks are placeholders and export failures are caught. Tornado has no automatic weather watcher of its own.
EMERGENCY ALERTS
Approximately ten seconds after a standalone trigger, Tornado sends EASTitle and EASMessage to BigDaddy-EAS:BuildEAS, with an empty alert-type argument. It only sends the alert when UseEAS=true and BigDaddy-EAS is started.
Hub-triggered tornadoes skip this standalone alert. Configure the Hub's UseEAS, TornadoEASAgency, TornadoEASType, and TornadoEASMessage for that path. Use TornadoEASType rather than TornadoEASMessageType; see Disaster Hub.