I have a very basic test project setup with NGUI and TNet similar to the setup in the TNet video tutorial.
On the starting scene I have a TNManager script, and a Simple 2D UI with host, join, load level, and disconnect buttons with a DontDestroyOnLoad script on it.
Host OnClick calls:
TNServerInstance.Start(tpc, upd); // 5127, 5127
Join OnClick calls:
TNManager.Connect(ip.text, Convert.ToInt32(port.text)); // local private IP, 5127
Load level OnClick calls:
if (TNManager.isHosting) TNManager.LoadLevel(startLevel);
Disconnect OnClick calls:
TNManager.Disconnect();
if (TNManager.isHosting) TNServerInstance.Stop();
I also have an empty called Status with a NetworkStatus script on it that contains all the TNet built in notifications with debugs to help me see what's going on. The OnNetworkConnect event calls the following on success.
TNManager.JoinChannel(channelID, null, false, 2, "");
If I start two instances, I click host then join on the first instance and the server is created and joined successfully. On the second instance, I click join and all is well. When I click load level from the server instance, both clients are disconnected from the server and redirected to the disconnect scene called during OnNetworkDisconnect().
I don't know why TNManager.LoadLevel is disconnecting the clients from the server.