Set different characters to hosting client and client?

Hi, im quite new to blueprint scripting, right now im having trouble distinguishing which input is from the host and which is from the client

Right now i have this blueprint. By my logic whenever P is pressed, it should check if the current pc is the server and if it is, set it to control character 1. If its not, set it to control character 2.


However, this only works for the server. If i press P and im the server, i control character 1. But if im Client and i press P, nothing happens. Could anyone help me with this?

When executed on server, Get Player Controller 0 gets you the player controller local to the server, instead of executing in server from the multicast you could use IsLocalController to know is the controller for that specific Client and then posses the pawn accordingly