getActorLocation What is "this" on server?

Ok I’m a little confused here. In the blueprint below the client calls this event that is run on the server. Initially I was trying to set target for getActorLocation but after watching a tutorial just left it as “this” and it worked. But shouldn’t “this” be the servers character. How does it know it’s the clients?

I think it works like this because you (the client) are sending a function request to the server that you want to execute “Event X” in your local copy of the blueprint (that runs on the server) which is actually already owned by your player controller. So as far as I understand the networking logic, unreal can tell which instance of the player character is owned by which player controller and so the server knows who wants to execute a custom event. So it doesn’t matter if it’s a server, client or multicast event.

Please correct me if I’m wrong - I’m also trying to get into this topic deeper at the moment :smiley:

Best regards,
Daniel

Ahh right. It’s still running in the script INSIDE that pawn regardless of who is executing. Makes sense. Thanks!