Search Unity

  1. We have added dedicated sub-forums for UNet, the experimental MLAPI and Unity Transport Package. Please use the new forums to discuss related topics.
    Dismiss Notice
  2. How can our website serve you better? Give us your feedback. Take our survey and let us know.
    Dismiss Notice

Mirror MatchMaking

Discussion in 'Multiplayer' started by Paradeth, May 4, 2021.

  1. Paradeth

    Paradeth

    Joined:
    Jul 17, 2020
    Posts:
    11
    The newer version of Mirror deprecates NetworkMatchChecker for a global interest management on the network manager. So, how to tell Mirror which match the player belongs too? Is there another function, or does the interest management handle it somehow? The examples still use NetworkMatchChecker but it gives a deprecated message on the prefabs with that component.

    Not sure how to proceed. Thanks in advance!
     
  2. jaz_123

    jaz_123

    Joined:
    May 15, 2021
    Posts:
    3
    Did you manage to figure this out? I am having the same problem and can't find out what to use instead.
     
  3. Paradeth

    Paradeth

    Joined:
    Jul 17, 2020
    Posts:
    11
    Not directly no. I am still trying to work all this out. Mainly, how to separate players within matches. I have researched Azure playfab which has some really nifty options and you can use their servers for free as you develop. I found some vids by Dapper Dino (good stuff) that helps explain this a bit. From my understanding, if you use the multiplayer servers on playfab, each match starts its own server instance so the games are separated that way as opposed to dealing with it in mirror. You still can use mirror to communicate but you don't "have" to. Playfab has all kinds of API calls and server side cloud routines available. I'm still learning all of this in my spare time. Playfab also has queues you can use for different kinds of games and provides matchmaking options too. I will likely end up using Mirror for most of it but let Playfab handle the matchmaking. I hope this helps.

    Here is one of Dapper's vids on the subject
     
    jaz_123 and BenniKo like this.
  4. jaz_123

    jaz_123

    Joined:
    May 15, 2021
    Posts:
    3
    Thank you so much, that's really helpful. I will check this out.
     
  5. Paradeth

    Paradeth

    Joined:
    Jul 17, 2020
    Posts:
    11
    I found this article very helpful for playfab. Note, it does not require mirror but I've found using mirror otherwise is useful but let playfab handle that matches. Keep in mind they offer these servers for free during development but you will eventually need to pay for their services. But, if you're game is making enough $$$ then it won't matter :)

    In the article, it states the getmatch provides a server ip and port. which means each match has its own virtual server for the duration of the match. When that server fires up it fires up a server based version of your unity program. If its using mirror, you can then use mirror to handle the game processes or whichever network process you choose like MLAPI.

    Note, once you have enough testing, you can probably get a rough monthly cost idea from their server metrics. You may need to consider an investment strategy until there are enough sales / IAPs to cover that monthly cost. If you go the mirror match making route, you are not tied to playfab directly as much. Which makes it easier to port your game to another service, which may be cheaper.

    https://docs.microsoft.com/en-us/gaming/playfab/features/multiplayer/matchmaking/quickstart
     
unityunity