Closed SubatomicPlanets closed 3 weeks ago
I looked around the code trying to see what I could change and I think it might actually be a really simple fix.
In the GetNetworkObjectToSpawn method in NetworkSpawnManager.cs on line 756 it says this:
networkObject = UnityEngine.Object.Instantiate(networkPrefabReference).GetComponent<NetworkObject>();
I believe the fix could be as simple as changing this line to this:
networkObject = UnityEngine.Object.Instantiate(networkPrefabReference, position, rotation).GetComponent<NetworkObject>();
I tested it using multiplayer play mode and it seemed to work.
You are indeed correct on this regression bug. I will have a PR up for this hopefully by today/tomorrow and it will be included in the v2.0.1 update.
Thank you for the follow up and the investigation you did (helped me quickly verify the bug with your findings).
Okay, great! Do you have any idea of when v2.0.1 will release?
Soon... I am not allowed to discuss actual dates but I can say within a few weeks from today.
Until then, you can always replace your com.unity.netcode.gameobjects manifest.json file entry with this:
"com.unity.netcode.gameobjects":"https://github.com/Unity-Technologies/com.unity.netcode.gameobjects.git?path=com.unity.netcode.gameobjects#develop-2.0.0",
That will provide you with the most recent fixes that have been merged for NGO v2. Once the new package update is released you can just update to that via the package manager.
This is now fixed in the newest version, closing this issue.
When using connection approval and setting the players position and rotation, it doesn't work correctly. It always spawns at 0,0,0 with rotation 0,0,0.
I upgraded from 1.7.1 to 2.0.0, and everything seems to be working fine (not a complex project) except for the spawning of players. Obviously they should spawn at the position and rotation that I set.
Example:
When adding Debug.Log to check the position and rotation, it prints the expected values (in my case, somewhere around 30, 60, 50 for position). This means the Transform spawner was found, and all of this is working. But when the player spawns, it's always at 0,0,0.
I tried different player prefabs and different settings, but nothing worked. I also just created a new project with the Bootstrap sample and just added this code to the BootstrapManager:
and
networkManager.ConnectionApprovalCallback += ApprovalCheck;
before it starts the host on line 21. Then I also enabled connection approval on the network manager in the scene. I would expect the player to spawn at 1,1,1 but it spawns at 0,0,0.I use Netcode 2.0.0 and Unity 6000.0.20f1 on Windows