Search Unity

  1. Megacity Metro Demo now available. Download now.
    Dismiss Notice
  2. Unity support for visionOS is now available. Learn more in our blog post.
    Dismiss Notice

List Matches Matches Count is 0 on remote PC?!? Matchmaking broken?

Discussion in 'Multiplayer' started by axldoyle, Apr 18, 2016.

  1. axldoyle

    axldoyle

    Joined:
    Nov 30, 2015
    Posts:
    9
    I've had my unity multiplayer project working fine for the last month or so and then I attempted to play my game last night and I couldn't connect to the unet server at all, so I changed my match host from mm-unet.unity3d.com to eu1-mm.unet.unity3d.com. That seemed to work, however I tested my game on two PC's over the internet today and the matchmaking just doesn't work.

    I can connect to matches made upon the local pc, however matchListResp.matches.Count returns 0 if a match is created by a remote pc, I have accepted the updated terms and conditions and the dashboard says everything should be fine, I've not gone over bandwidth and my CCU's are 0.

    Any help would be appreciated as this project is part of my dissertation that is in next week, so I'm currently dying a little bit inside.

    Thanks!

    Edit: Just to clarify matchListResp is a ListMatchResponse, I'm also using Unity 5.3.2f1
     
    Last edited: Apr 18, 2016
  2. versusco

    versusco

    Joined:
    Oct 10, 2014
    Posts:
    4
    Same here

    It works fine for about a week, but since yesterday it start to return 0 match count for remote servers. If 2 clients in the same LAN, matchmaking works. If over internet, it doesn't work.

    Didn't change anything to the network code.
     
  3. axldoyle

    axldoyle

    Joined:
    Nov 30, 2015
    Posts:
    9
    its weird with mine it works "over the internet" upon two computers on the same wifi network as well as two instances of the game running upon the same computer. I say over the internet because if i disconnect from the internet when testing two instances on the same pc then the matchmaking stops working. Therefore I can only assume it is actually using matchmaking and the relay server because it comes up in the logs that it is. When I test it over two computers on different networks however it dies a horrible death.
     
  4. versusco

    versusco

    Joined:
    Oct 10, 2014
    Posts:
    4
    Yes, that is exactly what happened in mine too.

    if 2 clients in the same LAN, they can find each other through the matchmaking relay server
    in the log it says connect to the mm.unet.unity3d.com...
    but they cannot find each other if they are in different network...

    It was working fine before yesterday.

    Anyone from unity here? Please help
     
  5. axldoyle

    axldoyle

    Joined:
    Nov 30, 2015
    Posts:
    9
    I've been trying to get help for the past few days and I've had no reply, do you know how to tag them or bring them into the posts? I hate being a noob on here sometimes lol
     
  6. JeremyUnity

    JeremyUnity

    Joined:
    Mar 4, 2014
    Posts:
    147
    Hi Everyone,
    I'm looking into this. @axldoyle, so i understand fully, when you run into this do you only get it using the main url (mm.unet.unity3d.com) or do you also see the issue when only using data center specific urls as well (eu1-mm-unet.unity3d.com for example)?
    If you can reproduce it, try pinging the URL you're using from each machine that should be able to connect and let me know what the results are.
     
  7. axldoyle

    axldoyle

    Joined:
    Nov 30, 2015
    Posts:
    9
    I get the problem with both urls, I just ping'd from both machines, they both pretty much came back with this:


    Pinging eu1-prod-mm.unet.unity3d.com [52.29.1.220] with 32 bytes of data:
    Reply from 52.29.1.220: bytes=32 time=33ms TTL=54
    Reply from 52.29.1.220: bytes=32 time=34ms TTL=54
    Reply from 52.29.1.220: bytes=32 time=34ms TTL=54
    Reply from 52.29.1.220: bytes=32 time=34ms TTL=54

    Ping statistics for 52.29.1.220:
    Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
    Approximate round trip times in milli-seconds:
    Minimum = 33ms, Maximum = 34ms, Average = 33ms

    I don't get any errors within the editor or dev builds and I've tried connecting between more than two different computers. the only other error I had was when I loaded up my project without realising I had to accept the updated terms and conditions. It freaked out for a while until I changed the match host. from mm to eu1-mm, I've since changed it back though and nothing happened, I've not touched any other parts of my code at all though.

    Thanks for the help!
     
  8. JeremyUnity

    JeremyUnity

    Joined:
    Mar 4, 2014
    Posts:
    147
    @axldoyle Thank you for the info. I've PM'd you just now with some more details.

    I'll reply in this thread with an update if i'm able to find out more about what's going on
     
  9. Barkers-Crest

    Barkers-Crest

    Joined:
    Jun 19, 2013
    Posts:
    159
    @JeremyUnity We had the same issue and it started 2 days ago. For us, both machines (1 in US and 1 in Canada) could host a match just fine. The CCU would show as reserved on developer.cloud.unity3d.com so I know for a fact the game was communicating with the matchmaking servers.

    However, ListMatches returned 0 results for remote machines. Both of us are able to match make if we run multiple instances on the same machine.
     
  10. JeremyUnity

    JeremyUnity

    Joined:
    Mar 4, 2014
    Posts:
    147
    Hi Everyone,
    I've been investigating with the help of @axldoyle and discovered an issue that will cause this in some cases based on proximity of two networks when creating a match on one and listing on another.
    I've applied a server side hotfix to correct this issue and you should hopefully not have any issues listing matches going forward. Please let me know if you do.
     
  11. santhutheking

    santhutheking

    Joined:
    Aug 28, 2016
    Posts:
    1
    Same Kind of problem Here..

    Code (CSharp):
    1. public string m_MatchID = "HelloRoom";
    2. public string m_Password = "Testing_02152";
    3. public uint m_MatchSize = 4;
    4. public bool m_Advrtise = true;
    5. public string m_PublicAddress = "192.168.0.101";
    6. public string m_PrivateAddress = "127.0.0.1";
    7. public int m_EloScoreMatch = 0;
    8. public int m_RequestDomain = 1;
    Created Match with :
    Code (CSharp):
    1. NetworkManager.singleton.StartMatchMaker();
    2. NetworkManager.singleton.matchMaker.CreateMatch(m_MatchRoom,m_MatchSize,m_Advrtise,m_Password,m_PublicAddress,m_PrivateAddress,m_EloScoreMatch,m_RequestDomain,OnMatchCreate);
    and on override OnMatchCreate :
    Code (CSharp):
    1. NetworkManager.singleton.matchMaker.ListMatches(0,10,m_MatchRoom,false,m_EloScoreMatch,m_RequestDomain,OnMatchList);
    and on override OnMatchList : getting matchlist.count == 0

    Iam Stuck here... documentation is not updated with 5.4.. can any one help me understand what iam doing wrong or is it a bug in unity.. :(