I have a problem with the Run Dedicated server option. I am making a melee weapon which will inflict damage based upon where it hits the enemy. For this I have my character, weapon and animation blueprint using interfaces and and casts to exchange animations.
With Run dedicated server off my setup works with no problems on both server and client.
With Run dedicated server on my setup doesn’t work the same as when I have it off. When I went into my blueprints debug filter I noticed that when the option is enabled it shows 6 instances of the blueprint (4 client and 2 server). I noticed that these extra clients “intercept” some of the Interface calls which causes my problem.
What causes these extra Instances?
What classes do consider as “client” and “server”?
All of the blueprints should have one client and one server instance per in game player as far as I know if that is what you mean. But for some reason i have more client instances than players in game which messes up the communication between blueprints.
Same here. Did you ever get to solving this issue?
I solved the issue. The additional instances are the servers, and each clients instance of the weapon blueprint. I used implemented a few multicast functions together with my run on server functions to make sure every instance gets all the communication. I also moved the apply damage event to my character blueprint. I also redid my interface calls. It appears that if you have an interface call in Blueprint A and you call it with a run on server function, in Blueprint B where the interface event lies the event will also be run on server. With this in mind i made some changes and now the haul things works better. I still have a problem where it seems that the weapon apply damage hitbox does not notice a pawn if that pawn is not possessed.