starting host and creating match
I want to start a host and a client on the same machine and I also want to create a match so the game room will be accessible in a list of matches:
public void CreateMatch()
{
networkMatch = gameObject.AddComponent<NetworkMatch>();
NetworkLobbyManager networkLobbyManager = networkManager.GetComponent<NetworkLobbyManager>();
networkLobbyManager.StartHost();
CreateMatchRequest create = new CreateMatchRequest();
create.name = "MS_" + Guid.NewGuid().ToString("N");
create.size = 2;
create.advertise = true;
create.password = "";
networkMatch.CreateMatch(create, OnMatchCreate);
}
public void OnMatchCreate(CreateMatchResponse matchResponse)
{
if (matchResponse.success)
{
Utility.SetAccessTokenForNetwork(matchResponse.networkId, new NetworkAccessToken(matchResponse.accessTokenString));
NetworkServer.Listen(new MatchInfo(matchResponse), 9000);
Debug.Log("Create match succeeded");
}
else {
Debug.LogError("Create match failed");
}
}
If I do this, the row NetworkServer.Listen()
will cause three error:
Cannot open socket on ip {*} and port {7705}; check please your network, most probably port has been already occupied
host id out of bound id {-1} max id should be greater 0 and less than {1}
Host doesn't exist
And the room will not be joinable. It will be joinable by specifying my ip if I remove the networkMatch.CreateMatch()
.
Answer by Gatau · Dec 30, 2015 at 02:54 AM
As described here, I had to StartHost()
at OnMatchCreate
passing a MatchInfo
object.
public void OnMatchCreate(CreateMatchResponse matchResponse)
{
if (matchResponse.success)
{
matchInfo = new MatchInfo(matchResponse);
Utility.SetAccessTokenForNetwork(matchResponse.networkId, new NetworkAccessToken(matchResponse.accessTokenString));
networkLobbyManager.StartHost(matchInfo);
Debug.Log("Create match succeeded");
}
else {
Debug.LogError("Create match failed");
}
}
I also removed the NetworkServer.Listen(new MatchInfo(matchResponse), 9000);
row
Your answer
Follow this Question
Related Questions
Hosting my localhost game online? 0 Answers
How can I make a simple Lobby scene, while staying in the same scene all the time? 0 Answers
MatchInfoSnapshot currentSize returns 1 instead of 0 0 Answers
Client's object spawn position and rotation network bug? 0 Answers
Do i need my own game servers if i use steamworks' matchmaking system? 1 Answer