Problem With Multiplayer

hi and sorry for my bad english,
i have two question about multiplayer system,
1.when we execute print screen on event begin play in pawn , why give us two result for one client or server, like this
but when we execute print screen on event begin play in player controller, only give us one result per client or server.
can any one explaint to me why execute twice , and how we can execute it only once, ty

  1. i have collision sphere , and i execute print screen on event component begin overlap,and i overlap on only one client but like the last question gives me two result , i dont know why , plz help me

even i recore video for this
[http://lexyfile.ir/g/Untitled_Project2.mp4][3]
plz watch it and tell me where the problem is

I am not sure exactly why it happens twice in the pawn and on overlap but I suspect there is something to do with interaction between the replication and the logging system. (Logging is somehow replicated again maybe?)

I imagine the difference in behavior (between Pawns and Controllers) is due to the fact that Controllers are replicated differently than Pawns. The server has all Controllers but each client only has its own Controller. The Pawns are replicated to all clients and the server so each client and the server has all pawns.

If this is causing any problems you can always split the logic with events set to run “on owning client only” or “on server only”.

You can check this tutorial on network replication if you have not already.

Also there is a very good explanation of the network infrastructure in eXi’s Multiplayer Network Compendium.

If something happens in a multiplayer network game, it happens on each machine separately. So if your pawn overlaps a trigger volume, for example, the server machine has a copy of your pawn in its world which overlaps the trigger volume, and the client machine has a copy of your pawn that overlaps a client copy of the trigger volume on the client machine, so it makes sense to me that the server will print a message AND the client will also print a message when it happens on the client. And any other clients on which it happens will also do the same thing, and it’s nice to see which one is printing the message, because some things don’t always happen on all machines, and nothing happens at exactly the same time if it does happen on all machines.

First of all , ty for ur answer realy appreciate it.
I search all the forum and answerhub
I read the eXi’s Multiplayer Network Compendium.
And i working on multiplayer games for month
I dont have any problem , i figure out every problem
But i realy dont get it this problem with the collison sphere
I do overlap in client but fire the overlap event on server
U can simply try it ur self

First of all , ty for ur answer realy appreciate it.
Well thats make sense
But i create inventory system
And this system use the begin and end overlap
But only shoud trigger on the local machine
Every thing work in local machine and its ok
But when run twice
Give me error en ue4 and everything going to break

When im on the client 3 and collison sphere overlap with some static mesh on server
Fire the overlap event on server and the other clients
Some times only on server

hmm. Sorry I don’t know. Do you have an example where only the client or only the server causes a PrintString?

this is the third person blueprint, i added custom event that run on owning client , in the event create widget and add it to viewport, but every node in the server pawn run one time for each client, its means , if it was 5 client, this custom event going to create widget for every player and add it to their screen but also its going to add server widget to all clients screen, i dont know if u get what im saying
i record this video for better understanding
[http://lexyfile.ir/i/Untitled_Project4444444.mp4][2]

in the overlap event , no matter what client or server overlap with something, when the overlap event fire on each client its going to fire it in other clients ,
i just simply need when the client overlap with something , only the client overlap event fire
not fire the other client events
[http://lexyfile.ir/j/Untitled_Project5555.mp4][3]

I think for this usage you just need to add the Authority switch and use the remote pin in you only want the client that owns the Player to do it and not let the server who doesnt own the Player do it.