Beschreibung

LS25 Tornado Physics v3.0.0.0

Tornado Physics V3 (Destruction & Livestock Update)

Experience the most advanced weather destruction engine ever built for Farming Simulator.

This is not just a script—it is a full physics overhaul for the in-game tornado. Tornado Physics V3 takes the standard visual effect and gives it real teeth, adding accurate suction, object lifting, vehicle damage, and for the first time: Livestock Consequences.

From standard 2x maps to massive 16x terrains, the storm now scales intelligently, calculating dynamic drag, mass resistance, and rotational forces to create a terrifyingly realistic simulation.
🌪️ MAIN FEATURES

True Physics Engine: Replaces the game’s static wind with a dynamic vortex. Vehicles are lifted, spun Counter-Clockwise (matching the visual clouds), and thrown based on their mass. Heavier tractors resist longer; lighter equipment flies instantly.

Livestock Danger (Husbandry): The storm is now a threat to your farm’s economy. If a tornado crosses a pasture, animals will be lost.

Dynamic Immunity: Large map support automatically scales immunity timers (up to 30+ minutes on 16x maps) to prevent unfair wipes during long storms.

Toggleable: Disabled by default. Turn it on if you crave the risk!

Intelligent Map Scaling: Whether you play on a standard map or a 64km 16x map, the tornado automatically detects the world size and scales its radius, damage zones, and pull strength to match.

Geo-Fencing Safety: No more losing tractors to the void. The mod detects map boundaries and safely drops vehicles before they are thrown out of the world.

🔧 TOTAL CONTROL (In-Game Config)

Forget editing Lua files. You can now tune every aspect of the destruction live via the console:

Adjust Power: Make the storm weaker or turn up the ejection force to launch tractors across the map.

Adjust Size: Manually override the storm radius (t_set radius).

Toggle Damage: Turn off vehicle damage or bale lifting if you just want the visual chaos.

Save Settings: Type t_save and your custom physics configuration is permanently saved.

🚜 COMPATIBILITY & SAFETY

AutoRepair Support: Automatically suppresses the „AutoRepair“ mod during storms so mechanics don’t try to fix vehicles while they are flying.

Mission/Store Safety: Fixed bugs where borrowed mission vehicles or vehicles in the shop menu would take phantom damage.

Multiplayer Ready: Fully server-synced. Clients see the same destruction the host does.

Performance Optimized: The script sleeps when no storms are active and uses optimized spatial scanning to minimize lag, even on high-object maps.

📜 KEY COMMANDS (Open Console with ~)

t_husbandry – Toggle animal death ON/OFF.

t_set radius [70/140] – Set storm base size (Rec: 70 for 4x Maps, 140 for 16x).

t_save – Save your current settings.

t_status – View active storm data and map scale.

Credits: Scripting & Physics Engine by whitevamp

V3.0.0.0
***

# Tornado Physics V3 (Release 107)

**A massive overhaul bringing dynamic physics, full configuration, and dangerous new consequences.**

### 🐛 BUG FIXES
* **Store Safety:** Fixed an issue where vehicles would take damage or get dirty immediately while spawning at the Store location.
* **Mission Equipment:** Fixed a bug where borrowed Mission Vehicles were incorrectly taking storm damage.
* **Dirt Glitch:** Fixed an issue where vehicles would instantly become 100% dirty upon exiting a building or the shop menu.

### 🆕 NEW FEATURE: Livestock Destruction (Husbandry)
* **The Storms Now Kill:** Tornadoes that pass over animal pastures will now cause livestock casualties.
* **Dynamic Immunity:** After a strike, pastures gain temporary immunity to prevent total wipes. On larger maps (4x, 16x), this timer automatically scales up (up to 30+ minutes) to account for the tornado’s travel time.
* **Safety Switch:** Disabled by default. Toggle it on if you want the risk!

### ⚙️ PHYSICS & ENGINE OVERHAUL
* **Fixed „Barber Pole“ Effect:** Physics rotation now matches the visual particle spin (Counter-Clockwise). Objects orbit naturally instead of fighting the texture.
* **Geo-Fencing System:** Added a safety boundary at the map edge. The tornado will drop vehicles safely before they are thrown off the map.
* **Smart Map Scaling:** The mod now correctly detects 4x, 16x, and 64x maps. Tornadoes are now properly massive on large maps (e.g., 700m wide EF-5s on 16x maps).
* **AutoRepair Support:** Automatically pauses the „AutoRepair“ mod while a vehicle is being held by the storm, preventing the „infinite repair loop.“

## 📜 COMMAND REFERENCE
All commands can be typed directly into the in-game console (`~`).

### ✅ Standard Commands (Gameplay)
These are the main commands most players will use.

| Command | Description |
| :— | :— |
| **`t_save`** | **Save Settings.** Saves all current tweaks to `modSettings/TornadoPhysics_Config.xml`. |
| **`t_status`** | **Check Status.** Shows active storms, map scale, and object count. |
| **`t_husbandry`** | **Toggle Animal Death.** Turns livestock casualties ON or OFF. |
| **`t_immunity [sec]`** | **Set Safety Timer.** Sets how long pastures are safe after a strike (e.g., `t_immunity 600`). |
| **`t_toggle [option]`** | **Toggle Features.** Options: `lift_bales`, `lift_logs`, `indoor_damage`, `outdoor_damage`. |

### 🔧 Advanced Commands (Tuning & Admin)
For server admins and modders who want to fine-tune the destruction.

| Command | Description |
| :— | :— |
| **`t_set radius [x]`** | Set the **Base Radius** (Default: 35). *Recommended: 70 for 4x Maps, 140 for 16x Maps.* |
| **`t_set power [x]`** | Set **Ejection Power** (Default: 20). How hard the tornado throws tractors. |
| **`t_set heavy [x]`** | Set **Heavy Mass Threshold** (Default: 3.0). Vehicles heavier than this resist suction more. |
| **`t_set fence [x]`** | Set **Border Buffer** (Default: 40). Distance from map edge where physics stop. |
| **`t_set dmg_in [x]`** | Set **Inner Damage Rate** (Default: 0.25). Damage per second in the funnel. |
| **`t_set dmg_out [x]`** | Set **Outer Damage Rate** (Default: 0.08). Damage per second in the wind zone. |
| **`t_randomize`** | **Force Resize.** Forces the tornado to pick a new random size (EF-0 to EF-5). |
| **`t_ring`** | **Debug Ring.** Toggles a red ring showing the tornado’s active suction zone. |
| **`t_debug`** | **Telemetry.** Toggles text labels above flying objects (Speed/Mass/Status). |

***

V2.0.0.0
Summary: This update is a complete rewrite of the physics engine. It addresses performance issues (FPS drops), adds realistic indoor safety checks, and introduces new gameplay mechanics like player ejection and distance-based damage scaling.
Changelog 2.0.0.0

🚀 Performance & Optimization

Target List System: Replaced the global vehicle loop with a „Target List.“ The script now only calculates physics for objects actually near the tornado, eliminating FPS lag on maps with high vehicle counts.
Chunked Searching: The tornado searcher now scans the map in small batches (chunks) rather than all at once, preventing game freezes when the tornado spawns.
Smart Caching: Roof detection checks are now cached for 1 second, significantly reducing CPU usage during storms.

🛡️ Indoor Safety System (New)

5-Point Roof Scanner: Implemented a multi-point laser scan (Center, Front, Back, Left, Right) to detect building roofs. Vehicles inside barns are now safe from suction.
High-Clearance Scanning: Scanners now start 2.5m above the object to prevent large machines (like Combines) from blocking their own safety checks.
Safety Buffer: Newly detected objects have a 2.0-second „Safety Lock“ to ensure the script confirms they are outdoors before applying any lift forces. Fixes the „floating tractor“ bug inside sheds.

⚙️ Physics & Gameplay Improvements

Player Ejection: Added a safety system that automatically kicks the player out of the vehicle if it gets sucked into the tornado core (< 35m) to prevent motion sickness.
Distance-Based Damage: Damage now scales with proximity.
Outer Zone (80-100%): Wind only, no damage.
Mid Zone (50-80%): Light paint scratches.
Eye (0-50%): Heavy damage and mechanical failure.
Engine Kill: Vehicles with >90% damage now have their engines stalled continuously, simulating a „totaled“ state, but can still be repaired/reset properly.
Log „Tractor Beam“: Added specific logic for logs to rotate and lift them realistically within the funnel. ( Do note that if this feature is enable you have a hi chance of losing the logs permanently, you have been warned.)
Spawn Immunity: Added a 3-second grace period for vehicles bought from the shop to prevent instant damage if the shop is near a storm.

🐛 Bug Fixes

Fixed „Bouncing Bales“ where objects would repeatedly drop and catch.
Fixed an issue where resetting a „Broken“ vehicle would leave it permanently bricked.
Fixed vehicles detecting their own cabs as „Roofs“ and disabling physics outdoors.

🛠️ How to Enable Developer Mode (FS25)

To use the new console commands included in this mod (like t_set radius or t_status), you must enable the developer console in Farming Simulator 25.

Navigate to your FS25 settings folder:
Windows: Documents\My Games\FarmingSimulator2025\
Steam (Linux/Proton): ~/.steam/steam/steamapps/compatdata/[AppID]/pfx/drive_c/users/steamuser/Documents/My Games/FarmingSimulator2025/
Open the file game.xml with a text editor (Notepad, VS Code, etc.).
Scroll to the very bottom and look for the <development> tag.
Change <controls>false</controls> to <controls>true</controls>.
Save the file and launch the game.

How to use:

Press the Tilde (~) or Backtick (`) key (usually under ESC) once to open the log.
Press it a second time to open the command input line.
Press Tab to cycle through available commands.

Mod Commands:
indoor_damage – vehicles inside buildings will take damage (though physics are disabled). (Default off)
outdoor_damage – vehicles outside will take damage and physics forces. (Default on)
random_size – the tornado scale is randomized upon spawning. (Default on) (note: default set in the script is 0.5% min to 5.0% max size increase. so 1/2 of original (game default size.) to 5x larger.)
t_toggle lift_bales – Turns bale physics on/off on the fly. (Default is on.)
t_toggle lift_logs – Turns logs physics on/off on the fly. (Default is off.) ( Do note that if this feature is enable you have a hi chance of losing the logs permanently, you have been warned.)

Credits

whitevamp