Subsystems which exist for each ULocalPlayer. For anything except games that support local multiplayer, you will have just one of these per subsystem type.
Accessing in Blueprints
Local Player Subsystems automatically get two blueprint nodes for accessing them:
- A get node without an input pin (
UK2Node_GetSubsystem
) - A get node with an input pin (
UK2Node_GetSubsystemFromPC
)
The node in both cases is named “Get Name of Local Player Subsystem”.
Both nodes require a player controller to exist - the difference is the first node attempts to read the player controller from “context”. In practice, it means the pinless variant can only be used in blueprint classes which extend PlayerController, or UUserWidget (UMG widgets). When used in UMG widgets, it attempts to use the widget’s owning player controller.
The second variant can be used anywhere, but you need to provide it a valid player controller into its input pin.