1. Funnel Runners
  2. News
  3. Devlog #001 - Tornados and Destruction!

Devlog #001 - Tornados and Destruction!

[p]Hey Runners! 👋
Hope you guys are doing well.[/p][p]Today, let’s explore a little bit of our tornado and destruction systems, both of which are essential to gameplay, and honestly… they also gave us the most headaches during development. They’re not 100% final yet (we still want to optimise further), but they’re far enough along that I can finally talk about them properly.[/p][p][/p][p][/p][p]Are you new around here? Don’t worry, quick recap:[/p][p]In Funnel Runners, you have ~20 minutes to loot the city, fix the van, and escape before the F5 reaches you. You can do it solo, but it’s made for co-op chaos with friends. [/p][p]👉 Join here: Funnel Runners Discord [/p][hr][/hr][h2]The Tornado System[/h2][p]The tornado system was one of the trickiest things to implement. We wanted it to feel realistic, but without doing insane physics + wind calculations that change every second (that would destroy performance fast).[/p][p]The first big step for realism was variety. Tornados can spawn in any size, from a small F1 all the way to a menacing F5. The spawning sequence tries to replicate the real formation as closely as possible. And yes, they can affect the city even if they’re not fully formed yet.
[/p][p]\[Example of some tornados with different sizes and intensities]
[/p][p]When a tornado spawns, it generates a bunch of data based on its size:[/p]
  • [p]The area it affects[/p]
  • [p]The maximum wind speed it will reach[/p]
  • [p]The path it will take through the city (Yes, it can deviate from that path)[/p]
  • [p]and a few more.[/p]
[p]The most important ones for us are the area of effect and wind speed, because those two decide how the world reacts to that tornado. There’s no reason to check if an F1 in the south is affecting a tree on the north side of town, so we only evaluate objects inside the area of effect. Every object has its own thresholds. A tree might lose leaves from an F1, but it’ll probably still stand. That same tree near an F4/F5? Different story. [/p][p]\[different levels of destruction based on the intensity of tornados/weather] [/p][p][/p][hr][/hr][h2]The Destruction System[/h2][p]Our destruction system is completely original and coded by hand. We looked at pre-made plugins, but they were too heavy for what we wanted, so we went the “painful but worth it” route and built our own.[/p][p][/p][p]The idea is easy to understand (the implementation was not 😅):[/p][p]Each destructible asset has a resistance threshold. When it’s inside a tornado’s destruction area, it checks the current wind strength. If the wind is strong enough to pass that object’s threshold:[/p]
  • [p]Dust VFX kicks in[/p]
  • [p]Personalised particles/debris spawn (depends on the asset that is being destroyed, a fence and a wall will use different particles that match them)[/p]
  • [p]And behind the scenes, we swap the object to a broken version (or despawn it completely)[/p]
[p]The trick is that most of the “heavy stuff” is hidden by VFX and timing, so it looks intense without killing performance.[/p][p][/p][p]To make this possible, we also had to build locations like LEGO. Houses and other areas are assembled like “puzzle pieces” that blend together seamlessly, so when things break, they break in a way that still feels natural. To assemble these correctly, we needed to create + 100 structure pieces and their broken variations.[/p][p]\[Example of some areas and the modular pieces we use to assemble them][/p][p][/p][p]A lot of our destruction relies on visual tricks + VFX, not true “pieces flying around” physics destruction. That’s how we managed to keep the game stable and optimized for mid/low-end PCs, even when 100+ assets get destroyed at the same time.[/p][p][/p][hr][/hr][h2]Before I go…[/h2][p]If you guys want, tell me what you want the next devlog to be about:[/p]
  • [p]Weather system (and how it escalates)[/p]
  • [p]Repairs + tools[/p]
  • [p]“Funny moments” devlog with clips/screenshots[/p]
[p]And if you’re enjoying the progress so far, wishlisting helps a LOT. 🙏🌪️[/p][p][/p][p][/p]