I'm looking through someone else's Unreal code from an unrelated project right now, and one thing that stands out is they made a number of changes to the engine that in most cases could have been just child classes.
I'd recommend the latter, because sooner or later you're going to want to move on to a newer version and you don't want to have to redo all the engine customizations.