I made two different projetcs, one for the server and another for client. The server is calling Network.Instantiate every time a client connects, but this is giving me the following erros in client.
Network.Instantiate on the receiving client failed because the asset couldn't be found in the project
I have the same prefab on the client project. By the way, I clonned the whole scene from the server project, so why it don't find the prefab?
When I run two instances of the same project is works. Is there a problem using Network.Instantiate with diferent projects? Even if the scene is the same in the two projects?
Should I instantiate using RPCs instead?
Hi there, i dont know if you're having the same problem, but I ran into a similar issue and resolved it. first though:
the design that you're going for is almost certainly a bad idea. DO NOT branch your build unless you have a really, really, really good reason to do so. Networking in unity is designed to be handled from the same build. I dont know what you're trying for, but it could very well be that you don't understand the networking system in unity.
ANYWAY. the solution. you need to be using external revision control with unity, so that it stores a .meta file next to every asset in your assets directory. find this meta file for the prefab you want and edit it in a text editor. that guid entry that you see needs to match on both builds. this is how unity identifies that the objects are, in fact, the same...
Put the prefab inside “Resources” folder or create a public reference to it in the scene.
But actually you shouldn’t make different projects for server and client.