Why do survival systems always turn into spaghetti?
I’ve been working on a survival system for Unreal Engine and ran into the same problem I’ve hit before:
Health, hunger, thirst, regen, damage, timers… it all starts clean, then slowly becomes tightly coupled and painful to extend.
You tweak one system -> something else breaks.
You add a new mechanic -> suddenly everything depends on everything.
So I stopped patching it and rebuilt it as a modular component system instead.
One thing I kept noticing as well - there are some great systems on FAB/Marketplace that look solid on the surface, but they’re often built to do exactly what they ship with… and not much beyond that.
As soon as you try to add something like stamina, oxygen, sanity, etc., you’re either rewriting parts of it or working around it.
That’s what pushed me to design this differently:
Core systems (health, hunger, thirst) are modular
Everything is data-driven
And there are actual extension paths (not just “good luck”)
I even held back on including extra systems like stamina and oxygen as prebuilt features, and instead documented how to build them using the base classes - so it’s something you can actually extend properly, not just use as-is.
Before I launch it, I’m curious:
What’s the most annoying part of building survival mechanics?
What usually breaks first for you?
Do you prefer fully custom systems, or reusable frameworks?
Feels like everyone solves this differently, and I’m interested to hear how others approach it.


Replies