- Home /
Multiplayer Projectile Instantiation
Hey guys playing around with a multiplayer shooter game and was wondering what the best way to handle instantiating the projectiles would be. Ive heard that Network.Instantiate is not the best way to go and it does seem to cause some problems for me because the projectiles are all still being spawned with a new client connecting(even ones that have already been destroyed using Network.Destroy.
Also note that the projectiles have random values assigned to them so if I was to do my own RPC to make the instance of the player that is firing fire a projectile would they all get the same random value?
Please any help would be of great use and thanks for your time.
Answer by Tasku · Oct 19, 2012 at 10:14 PM
Might be a little late but here it goes.
Random numbers are always calculated on the local machine meaning if you leave it up to the client he will not spawn the same type of random that everyone else will. To achieve this either send the random number generated to everyone else via an RPC call or the proper but more difficult way to do it is to send the random seed the server generated when the player connects so that all players RNG's will be the same.
Your other question Network.Destroy is not buffered. You need to call network destroy and RPC.Remove as an RPC.AllBuffered call so that new clients that connect will not see that bullet.
Your answer
Follow this Question
Related Questions
Problem with Network.Instantiate on instantiating a bullet. 1 Answer
Passing random values to a client. 0 Answers
Network.Instantiate is CHAOS. 1 Answer
Multiplayer projectiles 0 Answers
server command works from host, but not from remote client 2 Answers