What Blueprints types should i use for which features?

Hello i have a small problem,
i’ve read the docs but not sure about it.
When i create a “Player” and an “Ai_enemy” how can i share some features between both and what options and things should i put into the level blueprint etc?

Making Controlls like movement health etc > Player blueprint
Hunting, Attacking player > Ai_enemy blueprint?
Things like open doors, health calculation for example when you get attacked it will decrease your life etc.
And lets say i want to create a Player2 (for example for someone who can play on a Gamepad) and another enemy… now the idea is also to make the blueprints able to share thru blueprints and i’m not sure which blueprints should i use for what.

Make a Base class that you will use for your player as well as AI, then just make child class from the base class. One for player and one for enemy. By using it, all the variables defined in base class can be used in the child classes.