Concept of "communities" rather than single "servers" for server/game browser

One of the big issues I have had with the old GMod server browser is that it did not distinguish between servers belonging to the same “community”.

This had three-fold implications:

  1. Communities with a lot of servers had more visibility in the server browser simply because they occupied more lines in the listing.
  2. Contrariwise, smaller communities with multiple servers but small player counts suffered, because individually their servers didn’t amount to a significant player count, but together they might have had a bigger player count.
  3. Communities with a lot of different servers under different gamemodes had poor discoverability because their servers were spread over different categories.

It would be nice if there was a way to logically group dedicated S&box servers based on which “community” they belong to. The creation of a community would probably involve registering an API token or something akin to that. This can exist in parallel to the easy matchmaking system that @garry suggested.

For example, if a player is browsing the “SboxRP” gamemode category, instead of seeing 5 entries for “MegaRP Community” with 50 players each, they’ll see one entry with 250 players. When they click on that entry, it will expand to show all of the servers in this gamemode belonging to this community. An additional button could take the player to an “overview” of the community where they can discover that this community also has a “Deathmatch” server.

I think a system like this would greatly aid discoverability overall.

Another related use-case would be the support of server-groups that logically form a single “game world” but are hosted on separate machines (or processes, assuming a high-core count server) to better utilize server resources. When a player enters some game area, for example, they would be taken to another server. In this case it could be useful if the community/gamemode tuple could specify a “default” server for players to enter. Still, the player count would be actually reflective of the actual number of people playing on that community.

Overall, I think developers should have a wide range of options to make gamemodes and/or communities that can efficiently scale horizontally, as this is a very severe issue in GMod where a server starts to really struggle at around 50-60 players.

8 Likes

That’s actually a really simple but interesting idea. You could probably do something like Left 4 Dead does and link them to a steam group for quick joining based on groups as well.

And what you’re saying is absolutely correct. Thousands of servers for 1 community drown out the few smaller ones

I don’t know if it will help GAMEMODE visibility, but it will certainly declutter the browser

1 Like

I’ve already seen a few other threads mentioning the gamemode discoverability issue - so I thought that creating yet another thread would be redundant, and I don’t really have any solid ideas for that problem anyway.

Every solution would have one downside or another, the only way I can think of to solve the gamemode clutter issue of GMod would be to:

  1. Either give the players the option to view all servers and then use different sorting options to discover different kinds of servers (hot, all-time popular, rising, 1-week popularity, etc.)
  2. Curate the gamemode categories. One of the problems in GMod right now is that everyone can define their own gamemode category, but this just clutters up the gamemode list and bumps big communities up. An ideal solution would add gamemodes to the list based on some criteria (i.e. original and well-developed gamemode, or popular gamemode, etc.)
  3. Similar to pt. 3 (and can actually coexist) is to offer pre-defined categories that players can sort gamemodes by. When I’m in a mood for a casual Fretta-like gamemode I’m not really interested in seeing 20 variations of StarWars RP. Make it so that you can only choose one. Possible examples are - Minigames, RP, Building, PvP, Other, Experimental, Social, Joke, etc.

Neither of these are perfect and will likely need additional iterations to arrive at a proper solution. But these are just my 2 cents.

EDIT:

Another thing just popped into my head. The format of game server names in GMod is abhorrent the way people use it.

No, [BOX|Shit|Fuck|PissAddon|] MySUPER RP - ADMINS WANTED (no rdm) is not a good server name and just makes it harder to view the server list. A partial solution for this would be to enforce a reduced character set for server names (blacklisted punct. characters, length), but this could run into issues with unicode and languages other than English (how do you define which letters are valid for e.g. Arabic or Japanese? IIRC Unicode doesn’t really offer fine-grained categorizations)

Something like a column set of Community - Server Name - Gamemode - Category - Addons and some filters (addons, categories, player counts, etc.) would IMO go a long way in furthering the usability of the server browser.

2 Likes

Maybe there could be more primary sorting methods, so players could group the servers by community or by gamemode, and then within each could sort each group by popularity, ping, or “score”.

2 Likes

I think all this hugely depends on how the UI for the server browser will be in it’s final form. At the end of the day people want more players to make more money, so new things/PR techniques will come up depending on how people view the server list to begin with. I do agree with the community idea though.

It’s a great idea in concept (minus the 3 servers of 50 showing as 150 players, I think that misrepresents it in a way) but in reality knowing how desperate some server owners can be they’ll likely try to keep their servers from showing up under one community for the sake of controlling more screenspace.

Good suggestion, that’s actually where the single lobby server could be pretty useful. Having single point of entry for a big project, divided to multiple instances - Source 2 networking

I actually really like the idea of being able to form server collections within a gamemode. Multi-server is a death sentence on gmod, doing this would open up a lot of possibilities without requiring you to strain one server with the entire playerbase

1 Like

Very true. This is why I think any of the ideas I’ve brought up here are far from perfect and would need to be further refined.

An ideal (in theory) solution would involve some kind of moderation or oversight over the game list. But this requires having trusted people who would have the time to do so. So this is hardly an ideal solution in practice.

Still, I think that by iterating on these concepts, as well as all the other ideas people have brought up here and in the other threads, a solution which is much better than the GMod’s one can be arrived at.

1 Like

You’ve shared some thoughts here that I very much agree with.

Recording metrics like you’d see on third party services (playercount times, uptimes) would allow for a lot of meaningful filtering like “Active at these times” and very rarely if ever require moderation. It would also be really useful to see that this kind of information(including that graph) just by clicking on the server listing.

On the note of organizing communities, I had the thought of letting owners “register” their server so that they can be given an ID that only they can use on their server(s), and with it they are granted a page they can customize with markup and pictures like you see on the workshop now. Users can easily see this page from the browser, possibly inline.

A registered server system would also easily allow for a “Sort by community” option where you can see a list of communities and choose to refine from there.

I wrote up a big post yesterday but I think it’d be much better if I just drew a picture of exactly what I mean with all this. Maybe later today.

What I’d like to see is a possibility for the user to filter, group and sort servers by a wide variety of filters (maybe even introduce filter presets, shipping a few sensible default ones to pick from and allow the user to create their own filter presets).

Another useful thing would be exposing more server information to the server info API, like the list of installed addons, maybe some text (or even html) description, with all that viewable in the server browser before actually connecting to the server.

There’s a big issue in Garry’s Mod with the user knowing virtually nothing about the server he’s about to connect, usually it’s not a big deal in other games, but in gmod/s&box with the huge variability of servers/gamemodes there should be more summary info available.

1 Like

My thoughts exactly. What if you could see what SWEPs a TTT server has, and what jobs a DarkRP server has, all without any effort from the user or server owner?

It’d be simply wonderful to see exactly how much I have to download and why. 500MBs of donator skins and dubstep music? No thank you, onto the next.

2 Likes

Having info how much we should download from server and what this content are is a best idea, for sure.

2 Likes

Another way to do this could be like how Minecraft does their server listings client side. Let people add servers by IP/Hostname with a nickname. Then allow servers to set a MOTD (message of the day) that will show in the server listings on the client below their nickname, this could be set with an admin console command or in a config file. Then create a website or let the community make a website where server owners can list their IPs, adding a webhooked button to directly add the server to your list in-game. IMO those websites are not hard to create and could make everything a lot easier for the game and easily allow for expansion.

Not everyone wants to expose their server’s IP, and in general binding a server to a particular IP address is a fairly old mechanic that doesn’t scale up well to modern needs.

A community might want to put their servers behind gateways or proxies to add some level of DDoS resistance, or use several IP addresses for network redundancy or some other purpose.

This is particularly relevant for people hosting servers out of their homes, who don’t want to venture into the rabbit hole that is managing your own server, but still want to mess around with having a dedicated server of their own. Exposing their IP is just asking for trouble (been there, done that, got DDoS’d on my personal network).

Nevermind that this completely isolates people who can’t host using a public IP that they are fully in control of. This is why Steam’s P2P mechanic is such a big deal.

Minecraft is a terrible example of how a server browser should be done. There is no server browser in fact, it’s just a primitive list of saved hosts.

1 Like

Yes that’s what I’m saying. This thread and others mention how congested the server browser can get which makes it hard to find new servers. So making that into a website or allowing the community to do it for you just makes more sense to me. Then there’s 2 separate options in-game: Servers (listings of the servers you’ve saved) and Server Browser (an iframe, which is probably not the right term for C# but whatever, showing the server listing website). This could also just be done with a favorites system if it’s really a necessity to build the server browser into the client but I’m just pitchin an idea.

You’re trying to narrow down the whole server browser to “favourites” tab. Why, lol, when you can have more than that?

I’m not, I’m just saying that the idea I was pitching above could be simplified into adding a “favourites” tab rather than the whole website thing.

Any Source game including gmod has a favourites tab, I don’t think anyone would doubt that S&box will also have it.

The discussion is more about what additional means of server discovery can be implemented