Blueprint techniques to create quite elaborate stats system? (Like Diablo?)

Hello!
I am long time dev, but I still struggle (or maybe not?) with managing a lot of data. I am making this concept of managing your boat, with crew, and all the items, machines, and all of that is effecting the global stats of the boat itself.

I know I can’t use data tables, since they hold only static data - I would need some kind of data table that would hold a lot of data, and I could change it.
For example, how would you go about storing and modifing:
FuelLevel, ElectricityInMW, WaterLevel, Temperature, FuelConsimption and countless others…, and modifing this from different places?
I am using variable “Maps” right now, to mofify and check different values - add to them, substract to them, etc. But I am not sure if that’s the right way to go.
Another example I have all of a sudden 3 fuel tanks on the boat. Each fuel tank has different amount of fuel, so through interfaces I call main function inside of the parent BP (ship), to calculate the fuel levels. Would you guys go thorugh this with Interfaces also?

Too many questions, but I am genuinely interested how would someone do for example with Diablo 2 - having thousands of items, that can modify thousands of parametes…
Thanks

Strongly recommend you to take a look on GAS: GitHub - tranek/GASDocumentation: My understanding of Unreal Engine 4's GameplayAbilitySystem plug

Thank you, will check.