Hello,
I'm currently in the process of thinking out my plan for how enemies should interact with all clients within my networked world. My first thought has been to have a particular client act as the main client, where the enemies within the world will send it's particular Update (Transform, Attack, Death, ...) messages through this main client's Socket protocol. Upon the server end receiving these particular message it would then RELAY all clients, including the main client with the particular updates that the enemies are sending, upon the clients receiving the particular messages is when the Updates would be able to be visualized. It would seem the main client would possibly be quicker on re-acting since the server is currently hosted on the same machine, but it seems like it could be a good implementation assuming good latency for all clients.
The reason I've been thinking it might not be ideal for the client side to handle all enemy Updates without first sending them to the server, is because of the enemy possibly needing to target a specific player as well as needing to be in the same positions on each client's end or something like that.
Thank you for any insight.