Steps to reproduce:
- Open the attached project and let it finish importing
- Open the scene Assets/Scenes/ToolsNreRepro.unity
- Force a domain reload: right-click any script in the Project window and select Reimport (or edit and save a script)
- After the reload finishes, enter Play mode and observe the Console
Actual results: NullReferenceException "Object reference not set to an instance of an object" at play start:
at Unity.Multiplayer.Tools.Adapters.Ngo1.Ngo1Adapter.RefreshClientIds (Ngo1Adapter.cs:120)
at Unity.Multiplayer.Tools.Adapters.Ngo1.Ngo1Adapter.Init (Ngo1Adapter.cs:70)
at Unity.Multiplayer.Tools.Adapters.Ngo1.Ngo1Adapter..ctor (Ngo1Adapter.cs:43)
at Unity.Multiplayer.Tools.Adapters.Ngo1.Ngo1AdapterInitializer.RegisterNetworkManager (Ngo1AdapterInitializer.cs:65)
at Unity.Multiplayer.Tools.Adapters.Ngo1.Ngo1AdapterInitializer.OnInstantiated (Ngo1AdapterInitializer.cs:79)
at Unity.Netcode.NetworkManager.Awake (NetworkManager.cs:1083)
It fires on the FIRST Play mode entry after every domain reload. Because script recompiles happen constantly during
development, the exception effectively appears on every edit-code-then-play iteration.
Expected results: The Multiplayer Tools NGO adapter initializes cleanly on the first Play after a domain reload - no exception.
Reproducible with versions: 2.2.9, 2.2.10, 2.2.11 (6000.7.0a5)
Not reproducible with versions: 2.1.0 , 2.2.8 (6000.7.0a5)
Tested on (OS): Windows 11