In Mirror, that's where the List Server comes into play. With the NetworkListServer component, games created are added to the List Server for others to join. There is no visual list of rooms though - that's a design decision I made for this asset: one button to play, basically to comply with mobile practices. If there is a room available for the selected game mode, other users will join it randomly.
More information on this is on page 16 in the documentation pdf. I just tried to open the Mirror website again, but now the whole website is currently offline.
The Photon implementation works the same, however without the need of a separate List Server.
Currently preparing an update for submission to the Asset Store. It should be available later today.
Upon testing, points 1 & 2 & 3 did not occur anymore on 10/10 game launches.
I discovered a rare issue with the device log getting spammed and a Socket exception, where the causing line is in the Mirror code itself. I hope you understand that I am not able to deliver fixes in Mirror within the asset, but if you run into that, the following if-catches should be added in the NetworkDiscoveryBase script.
async Task ReceiveGameBroadcastAsync(UdpClient udpClient)
// only proceed if there is available data in network buffer, or otherwise Receive() will block
// average time for UdpClient.Available : 10 us
if (udpClient == null) return;
if (udpClient.ReceiveAsync() == null) return;
@baron @baron Ah, ok so it was a design choice when restarting from the end game menu to effectively quit and find another game (possibly with someone else)?! Weird as this could be achieved by the player by hitting quit + play. In my mind "Restart" means starting a new game with the same players.
Thanks for the repro steps. I was able to reproduce this using the latest Mirror Asset Store release, 30.2.2.
after they connect, exit one of them => both are brought to the main menu
Just a note on that part - this only happens if you disconnect the master client hosting the game. Disconnecting a client does not stop the master from continuing playing.
In the OnClientDisconnect method in the NetworkManagerCustom script, I tried adding a "hard" disconnect using StopHost() like this:
//switch from the online to the offline scene after connection is closed
When testing, 10 out of 10 times the issue you mentioned did not occur anymore. However there was a rare issue when starting a game on both applications at the same time, both clients would think they are the master, but actually land in the same room. Please let me know if you experience that issue at some point. Usually, this should not happen as you would not try to start multiple instances as a host on the same device.
Are they stacked on top of each other? I.e. maybe their colliders overlap so only one can move at a time?
Could you provide steps to reproduce this in one of the example scenes?
Side note: the bot logic is very simple, their first target position is indeed the center of the map. However if they encounter enemies on their way, they will try to chase them and move to a random position around their target, or a spawn location of one of the other teams.
We are publishing assets on the Unity Asset Store since 2013. I'm not discussing with you about new Unity versions, it is a fact that they are not stable at all. You can see this in multiple threads on the Unity forums.
If you can't get our asset to work (I have to note that this is the only time I heard of), please send me your invoice number via email (info[at]rebound-games[dot]com) and I'll issue a refund.