Available Network Session finding?

I am writing network code for listing the available network sessions to join, but am confused as to where Monogame internally gets this list? Is this something i have to implement on my own server somehow? All I can find is this:

// MonoGamePeer.cs
private static string masterServer = "monolive.servegame.com";
internal static string applicationIdentifier = "monogame";

Going to that address in the browser doesn’t work though. Also if I am meant to be able to change these settings to my own server, how come they are internal?

Any direction on this would be great, as otherwise the networking APIs are pretty great.

The MonoGame networking code is for local networking only. It does not support “Live” stuff.
It gets the available sessions on the network by doing a UDP broadcast.

We had a plan to have a server to allow people to do sessions across the internet (hence the “masterServer” static) but the community never managed to finish that off. Plus there was a cost of hosting that service which was too expensive at the time.

I do have a side project I am working on to improve the networking and make it more “plugin” based. The idea being that people can write a provider for a particular cloud service (like Proton or Steam) and just drop that in. But its a work in progress and its not working yet.


I see that’s a shame! Thanks for the info though, so Is the code not setup to work at all over the internet? It seems to all be there, is there something missing that would mean I couldn’t send packets remotely?

If not, I’ll probably commit some changes over the coming days, enough to make it possible to work.

Actually looking through the code it is quite a mess. I think I will wait for you to finish the new network architecture and in the meantime I’ll switch to use https://github.com/rlabrecque/Steamworks.NET

[I think completely off-topic, sort of]

Is it possible [Still a MonoGame Noob] for me to make a server system with ASP.NET and make it work with MonoGame? aka custom multiplayer engine? if so I might give it a go to create and host the mentioned thing… and even make it available as a service [Probably donation based unless it err Grows?]

Like a [borrowing a term] Master Server Host Platform which handles the cross communications… controls a lobby for matchmaking and as feature creep a chat lobby function, the lobby being used in applications not the website the server will just be a service with no front end for maximum performance… and eventually some form of Host Your Own package… err and not to miss the point, it handles the data exchange between players playing a match game.

[/ kind of finding out if worth making a topic on this in future first otherwise a wasted new topic entry]