I know this gets asked fairly regularly, but after having had to take a long break, I’m just now coming back to UE. Even before, I’d had issue with when to use the controller classes, so I wanted to see if I understood it better, after having looked through docs and comments again:
Say I have a CharacterPawn. It contains all information relevant to the character, itself, e.g. mesh, HP, maybe a list of attacks, etc. Nothing specifically about controls, though it may contain information that is relevant when being controlled, like walk speed.
In one instance of gameplay, I’d like players to control the character. In this case, I’d possess it with a PlayerController, which contains the actual interface for the player moving the character back and forth when pressing directional buttons, attacking on attack button presses, jumping, whatever.
In another instance, I’d like the character to just be ambiently walking around while the player does other things. In this case, I’d possess it with an AiController, which tells the character to move around automatically, without player input, using an assigned blackboard/behavior tree.
Same character, possessed by two different controllers depending on the situation.
Is this proper usage?