"Self" on a character blueprint

Does self always return the root component? With the default Character Blueprint the root component is a capsule. If I use the “Add Movement Input” node and leave the target as self is it referring to the capsule root component or the Character movement component?

EDIT: neither of the two are compatible with Add Movement Input’s target. What is self in this situation?

In this case Self is an instance of a class inheriting from Character and so on down the line until you get to Actor and finally UObject.

You can get a look at the inheritance tree by slecting Window in the editor and selecting “Class Viewer”

To be more specific Actor is the root of all objects placed in the world. Actor can have most any component as its root.

Pawn is an Actor that has a capsule as its root. That can’t be changed.

Character is a Pawn that has a Character Movement component. Because it is a pawn it has a capsule as its root
component.

A blueprint MyCharacter based on Character is an Actor, Pawn, Character and a MyCharacter_C by blueprint class auto naming.