Unity game data manager for Unity using hierarchical structures. Data Inheritance!.
The following code defines a Datablock that can then be used via the built in editor and used for data inheritance.
public class SpellDatablock : Datablock
{
public int manaCost;
public string description;
public float castingTime;
}