Well, I’m trying to create a turn based rpg where the units are not spawned in the game world, they don’t have a “physical” representation in the 3D world. So having them as Actors it will be pointless.
Now bear with me, this is just some way of me on trying to figure out how to create various blueprints and logic and inheritance and the rest in this situation.
It all worked fine with creating a blueprint class derived from the base Object class.
So I have a blueprint that represent a basic unit. Derived from Object class. This unit has various variables, level, strength, dexterity, you get the idea. Most importantly it has the logic, functions to calculate various unit attributes like the health based on various items from inventory, skills, this stuff.
Then I create a child blueprint, and we call this Rat. It inherits all the variables of the blueprint above and i can set the values to be custom for the Rat enemy.
Good,
now same concept for items, as above, we end with an item called Ring of Health.
I want the Rat character to have an inventory variable and i want to assign this Ring of Health (and others items) to this variable.
Weeeeelll, it doesn’t work, the Ring of Health that is a child of BaseItem which is child of Object, this one doesn’t show in the interface. 
So, tables,
tables I find them a bit difficult to work with, and they have this crazy reset behavior if you want to change the struct they are based on. And they can even get corrupted for some reason. Since I don’t have everything planned before I may end up wanting some sort of skill or attribute down the line and I can lose the work on a table that contains various enemies or items.
Tables also don’t have any functions support.
In the end, because I need to get myself a programmer duck, instead of posting on forums, I’ve managed to make this work by using Primary Assets and Data Assets. A primary asset have places for variables and functions, and I can select the derived Data Assets in the editor UI.
Downside is that you can’t override the Primary Data assets functions if you want to change how something is calculated.
But probably I’m just thinking all this wrong 